Estrutura de Sistemas Operacionais
Operacionais
Colaboradores
BADEW HECNE
CAIO RIBEIRO DOS SANTOS
MARIANGELA PELASSA MUXAGATA
MARJORI TAMISE DE CARVALHO SOUZA
WALACE DA CUNHA RODRIGUES
Introdução
Os primeiros sistemas operacionais foram desenvolvidos inteiramente em assembly e o código possuía cerca de um milhão de instruções.
Atualmente, o número de linhas de código pode chegar a cerca de 40 milhões, como no caso do Microsoft Windows 2000, sendo grande parte do código escrito em linguagens de alto nível, no caso C/C++.
A vantagem de se desenvolver sistemas operacionais em linguagens de alto nível é a portabilidade.
A desvantagem dessa implementação é a perca de desempenho , visto que, o assembly por ser uma linguagem de máquina é muito mais rápido e leve
Kernel
O kernel é o núcleo do sistema operacional, sendo responsável direto por controlar tudo ao seu redor;
É formado por um conjunto de rotinas que oferecem serviços aos usuários, às aplicações e ao próprio sistema.
Kernel
As principais funções do kernel são:
- tratamento de interrupções e exceções;
- criação e eliminação de processos; - sincronização e comunicação entre processos;
- escalonamento e controle de processos;
- gerencia de memória;
- gerencia de sistema de arquivos;
- gerencia de dispositivos de E/S.
Sistemas Monolíticos
Todos os componentes do núcleo operam em modo núcleo e se interrelacionam conforme suas necessidades, sem restrições de acesso entre si, pois o código no nível núcleo tem acesso pleno a todos os recursos e áreas de memória.
Vantagem: Desempenho, qualquer componente do núcleo pode acessar os demais componentes, toda a memória ou mesmo dispositivos periféricos. Desvantagem: Caso um componente do núcleo perca o controle devido a algum erro, esse problema pode se alastrar rapidamente por todo o núcleo, levando o sistema ao colapso.
A arquitetura monolítica foi a primeira forma de organizar os sistemas operacionais, sistemas UNIX antigos e o MS-DOS seguiam