As Várias Partes de um Sistema Operacional

Um sistema operacional de um computador que é usado por muitas pessoas ao mesmo tempo, é um sistema complexo. Contém milhões de linhas de instruções escritas por programadores. Para tornar os sistemas operacionais mais fáceis de serem escritos, eles são construídos como uma série de módulos, cada módulo sendo responsável por uma função. Os módulos típicos em um grande SO multiusuário geralmente são:
1 - Núcleo (Kernel em inglês - também conhecido como "executivo")
2 - Gerenciador de processo
3 - Escalonador (Scheduler, em inglês)
4 - Gerenciador de arquivo

O núcleo de um sistema operacional é algumas vezes chamado de EXECUTIVO em tempo real. Algumas das funções executadas por ele são:
-chaveamento entre programas
-controle e programação de dispositivo de hardware
-gerenciamento de memória
-gerenciamento de processos
-escalonamento de tarefas
-comunicação entre processos
-processamento de exceções e de interrupção

Nosso sistema simples de monitoração de segurança não teria todas as funções acima, já que provavelmente seria um sistema mono-tarefa, executando apenas um programa. Como tal, não precisaria processar permutas entre mais de um programa ou permitir comunicação entre programas (comunicação entre processos). A gerência da memória seria desnecessária, já que o programa residiria permanentemente em ROM ou em EPROM (uma forma programável especial de ROM).

Um sistema operacional projetado para manusear um grande número de usuários precisaria de um núcleo para executar todas as funções acima. Programas de usuários geralmente são armazenados em disco, assim precisa ser carregado em memória antes de ser executado. Isso apresenta a necessidade de gerência da memória, já que a memória do computador precisaria ser pesquisada para localizar uma área livre para carregar um programa de usuário na mesma. Quando o usuário tivesse encerrada a execução do programa, a memória consumida por ele precisaria ser liberada e se tornaria disponível para outro usuário quando solicitado.

Gerenciamento e Escalonamento (Scheduling) de processos também são necessários, de forma que todos os programas possam ser executados razoavelmente. Não há como um programa de um usuário específico ser executado numa área de extensão, negando o funcionamento de qualquer outro programa, e fazendo todos os outros usuários esperarem. Adicionalmente, alguns programas poderiam precisar ser executados mais freqüentemente que outros, por exemplo, checando comunicações de rede ou imprimindo. Alguns programas podem precisar ser suspensos temporariamente, e serem reiniciados depois, assim introduzindo a necessidade da comunicação inter-programas.


fonte: http://www.oficinadanet.com.br/artigo/851/o_que_e_um_sistema_operacional/1

Nenhum comentário:

Postar um comentário