Sistema operacional

Clasificado en Outras materias

Escrito el en português con un tamaño de 5,59 KB

 

Os principais Componentes do kernel do SO são : Gerenci de processador, gerencia de memoria, sistema de arquivos e gerencia de entreda e saida.

Gerencia de processos : Existem várias informações que o sistema operacional deve manter a respeito dos
processos. No "programa" sistema operacional, um processo é representado por um registro.
Esse registro é chamado de bloco descritor de processo ou simplesmente descritor de
processo (DP). No DP, fica tudo que o sistema operacional precisa saber sobre o processo.
Um processo quase sempre faz parte de alguma fila e os próprios descritores de processo são
utilizados como elementos dessas filas, implementadas como listas encadeadas. Abaixo está
uma lista de campos normalmente encontrados no DP:
- Prioridade do processo no sistema, usada para definir a ordem na qual os processos
recebem o processador;
- Localização e tamanho da memória principal ocupada pelo processo;
- Identificação dos arquivos abertos no momento;
- Informações para contabilidade, como tempo de processador gasto, espaço de
memória ocupado, etc;
- Estado do processo: apto, executando, bloqueado;
- Contexto de execução quando o processo perde o processador, ou seja, conteúdo dos
registradores do processador quando o processo é suspenso temporariamente;
- Apontadores para encadeamento dos blocos descritores de processo.

Chaveamento de contexto : A base da multiprogramação
é o compartilhamento do processador entre os processos. Em um sistema multiprogramado, é
necessário interromper processos para continuá-los mais tarde. Essa tarefa é chamada de
chaveamento de processo, ou chaveamento de contexto de execução. O local usado para
salvar o contexto de execução de um processo é o seu próprio bloco descritor.

Threads : Um processo é uma abstração que reúne uma série de atributos como espaço de
endereçamento, descritores de arquivos abertos, permissões de acesso, quotas, etc. Um
processo possui ainda áreas de código, dados e pilha de execução. Também é associado ao
processo um fluxo de execução. Por sua vez, uma thread nada mais é que um fluxo de
execução. Na maior parte das vezes, cada processo é formado por um conjunto de recursos
mais uma única thread.
A idéia de multithreading é associar vários fluxos de execução (várias threads) a um
único processo. Em determinadas aplicações, é conveniente disparar várias threads dentro do
mesmo processo (programação concorrente). É importante notar que as threads existem no
interior de um processo, compartilhando entre elas os recursos do processo, como o espaço
de endereçamento (código e dados). Devido a essa característica, a gerência de threads
(criação, destruição, troca de contexto) é "mais leve" quando comparada com processos.
Threads são muitas vezes chamadas de processos leves

Escalonador de curto prazo : Seleciona entre os processos em estado de pronto que estão na memória, para serem executados pelo processador. O escalonador de curto prazo faz decisões de escalonamento muito mais frequentemente que os de médio e longo prazo.

Escalonador de medio prazo : é responsavel por colocar e retirar os processos da memoria (controle de swap)

Escalonador de longo prazo : quando a maquina esta sobrecarregada, este escalonador agenda as tarefas para serem executadas no futuro, utilizado normalmente em servidores.