Pular para o conteúdo principal

Resumo Sistemas Operacionais (part2)


Definições sobre Sistemas Operacionais.


Há alguns anos um sistema operacional era definido como o software que controla o hardware, o panorama dos sistemas de computador evoluiu significativamente, exigindo uma definição mais rica. Hoje, as aplicações são desenvolvidas para serem executadas simultaneamente. O sistema operacional separa as aplicações do hardware por elas acessado e é primordialmente, um gerenciador de recursos.

Baixe AQUI o Material Completo.

Espaço de Endereço do Processo

Um processo tem seu próprio espaço de endereço, que consiste em:
Região de texto
→ Armazena o código que o processador executa.
Região de dados
→ Armazena variáveis e memória alocada dinamicamente.
Região de pilha
→ Armazena instruções e variáveis locais para chamadas ativas ao procedimento.


Estados de processo: ciclo de vida de um processo

Um processo passa por uma série de estados de processo distinto:
Estado de execução
   ● O processo está sendo executado em um processador.
Estado “de pronto”
   ● O processo poderia ser executado em um processador se houvesse algum disponível.
Estado bloqueado
   ● O processo está aguardando a ocorrência de algum evento para prosseguir.

O sistema operacional mantém uma lista de prontos e uma lista de bloqueados para armazenar referências a processos que não estão sendo executados.


Gerenciamento de processo

Os sistemas operacionais prestam certos serviços fundamentais aos processos. Por exemplo:
■ Criam processos.
■ Destroem processos.
■ Suspendem processos.
■ Retomam processos.
■ Mudam a prioridade de um processo.
■ Bloqueiam processos.
■ Acordam (ativam) processos.
■ Despacham processos.
■ Capacitam os processos à comunicação inter-processos (IPC).


Estados de processo e estados de transição
Estados de processo
■ O ato de designar um processador ao primeiro processo da lista de prontos é denominado despacho.
■ O sistema operacional usam um temporizador de intervalo para permitir que um processo seja executado durante um intervalo de tempo específico ou quantum.
■ A multitarefa cooperativa permite que todo processo seja executado até o fim.

Estados de transição
■ Até agora, existem quatro estados de transição possíveis:
   ● Quando um processo é despachado, ele transita de pronto para em execução.
   ● Quando o quantum de um processo expira, ele transita de em execução para pronto.
   ● Quando um processo é bloqueado, ele transita de em execução para bloqueado.
   ● Quando um evento ocorre, ele transita de bloqueado para pronto.


Blocos de controle de processo (PCBs) /Descritores de processo

Os PCBs mantêm as informações que o sistema operacional precisa para gerenciar o processo.

■ Normalmente, eles incluem as seguintes informações:
   ● Número de identificação de processo (PID).
   ● Estado do processo.
   ● Contador de programa.
   ● Prioridade de escalonamento.
   ● Credenciais.
   ● Um ponteiro para o processo-pai.
   ● Ponteiros para os processos-filho.
   ● Ponteiros para localizar os dados e instruções do processo na memória.
   ● Ponteiros para recursos alocados.


Modelos de thread

Três são os modelos de thread mais conhecidos:
  ■ Threads de usuário
  ■ Threads de núcleo
  ■ Uma combinação de ambos



Os threads de usuário executam operações de suporte a threads no espaço do usuário.
   ■ Isso significa que os threads são criados por bibliotecas em tempo de execução que não podem executar instruções privilegiadas nem acessar as primitivas do núcleo diretamente.


Os threads de núcleo tentam resolver as limitações dos threads de usuário mapeando cada Thread para o seu próprio contexto de execução.
   ■ O thread de núcleo oferece mapeamento de thread um-para um.
      ● Vantagens: maior escalabilidade, interatividade e rendimento.
      ● Desvantagens: sobrecarga decorrente do chaveamento de contexto e menor portabilidade em virtude de as APIs serem específicas ao sistema operacional.

Os threads de núcleo nem sempre são a solução ideal para as aplicações.











Comentários

+ Vistas

Programas em "C" 1º Período de Sistemas - FAMINAS

Programa Calcula média de n Números. #include <stdio.h> int n,cont; float media,soma=0, numeroDoFor=0; int main(){     printf("Quantos numeros voce quer calcular?\n");     scanf("%i",&n);     for(cont=1;cont<= n; cont++){     //Usando if alternativo        (!numeroDoFor) ? printf("Informe um numero: ")  : printf("Informe outro numero: ");        scanf("%f",&numeroDoFor);        fflush(stdin);        soma+=numeroDoFor;     }   //fim for     printf("Soma = %.2f \n",soma);     printf("Media = %.2f \n",soma/n);       getchar();       return 0;  } Programa Calcula média do Aluno #include <stdio.h> int n1,n2; int main(){     printf("PROGRAMA MEDIA \n\n");       printf("Digite a nota\n");     scanf("%i",...

Comandos Utilizados em Redes Linux

Configuração de endereço IPv4 fixo ifconfig eth0 192.168.1.1 netmask 255.255.255.0   (configura um ip manualmente) ifconfig eth0:1 192.168.1.1 netmask 255.255.255.0 (configura um alias, um segundo endereço ip) ifconfig eth0.1 192.168.1.1 netmask 255.255.255.0   (configura IP com dot1.q) ifconfig eth0 (verifica se a configuração foi realizada com sucesso) ifconfig eth0 down (desativa a placa de rede eth0) ifconfig eth0 up (ativa a placa de rede eth0) ifdown eth0 (desativa a placa de rede eth0) ifup eth0 (ativa a placa de rede eth0)   Configuração de gateway IPv4  fixo # route add default gw 192.168.10.10 (configura um gateway) # route (mostra se o gateway foi configurado) ou # route -n   Remove a rota default # route del default   Configurar uma rota para a rede 172.16.0.0/16 indo para o endereço 192.168.2.1 # route add -net 172.16.0.0 netmask 255.255.0.0 gw 192.168.2.1   Verificar a tabela de rotas # r...

Porque Utilizar Gateway de Pagamentos em Sua Empresa

    Qualquer loja online ou física, independente do ramo de atuação, precisa oferecer ao cliente diversas formas de pagamento. E, claro, com um sistema de segurança altamente eficiente para a proteção de informações dos consumidores para que eles façam suas compras sem se preocupar com crimes eletrônicos ou vazamento de informações.     Para atender essa demanda com estabilidade, a melhor alternativa para qualquer empresa certamente é o   gateway de pagamento . Neste post você vai entender o por quê.  O que é um gateway de pagamento? Um gateway nada mais é do que o sistema utilizado pelos e-commerces (e lojas físicas) para efetuar a transmissão de dados entre os lojistas, bancos e clientes. Os gateways são usados pelas companhias para o processamento de pagamentos do cartão de crédito e Boletos Bancários. É como se fosse um terminal de cartão de crédito que pode ser facilmente encontrado em lojas de varejo e de comércio. Para que você...