Arquitetura De Sistemas Operacionais C Pia
Sistemas monolíticos
Neste tipo de estrutura, o SO é escrito como uma coleção de rotinas, onde cada rotina pode chamar qualquer outra rotina, sempre que for necessário. Estruturas dos sistemas operacionais – Sistemas monolíticos Portanto, o sistema é estruturado de forma que as rotinas podem interagir livremente umas com as outras. Quando esta técnica é usada, cada rotina no sistema possui uma interface bem definida em termos de parâmetros e resultados.
A figura a seguir mostra um exemplo de um sistema monolítico:
A figura a seguir mostra um exemplo de uma chamada de sistema “read”.
Os serviços do SO (gerenciamento de processos, gerenciamento de memória, gerenciamento do sistema de arquivos, ...) são implementados por meio de System Calls em diversos módulos, executando em Modo Núcleo. Estruturas dos sistemas operacionais – Sistemas monolíticos Como todos os módulos (rotinas) executam no mesmo espaço de endereçamento, um bug em um dos módulos pode derrubar o sistema inteiro. Evidentemente que esta é uma situação indesejável. Tal código executa em Modo Núcleo. Não existe ocultação de informação, o que também é indesejável, pois cada rotina é visível a qualquer outra. A Figura a seguir mostra o processo de criação de um código executável de um SO Monolítico.
Embora possa parecer que não há quase estruturação em um SO Monolítico, existe um pouco de estruturação quando os serviços do SO são solicitados por meio das System Calls. Como vantagem dos SOs Monolíticos pode-se afirmar que, se a implementação do sistema está completa e confiável, a forte integração interna dos componentes permite que detalhes de baixo nível do hardware sejam efetivamente explorados, fazendo com que um bom SO Monolítico seja altamente eficiente. Entre os SOs Monolíticos estão as versões tradicionais do UNIX, incluindo o Linux, e também o MS-DOS.
Sistemas em Camadas
A idéia por trás deste tipo de SO é fazer a organização por meio de hierarquia de