Estrutura de Sistemas Operacionais
Os primeiros sistemas operacionais foram desenvolvidos inteiramente em assembly e o código possuía cerca de um milhão de instruções. Com a evolução dos sistemas, as linhas de código chegaram perto dos 20 milhões. Nos sistemas operacionais atuais, 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, ou seja, o sistema pode ser facilmente modificado para poder ser executado em outra arquitetura de hardware. Uma 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.
O sistema operacional é o principal software instalado no computador e é responsável pala interação entre o hardware e os softwares, também responsável pela manipulação de arquivos, sendo as suas principais operações de arquivo o armazenamento, a criação, a cópia, a remoção e a atribuição. É uma camada de software que opera entre o hardware e os programas aplicativos voltados ao usuário final.
Estrutura de Sistemas Operacionais
A estrutura e o funcionamento de um SO são tópicos de difícil compreensão. Um SO não é executado como uma aplicação sequencial, com início, meio e fim.
Kernel
O kernel é o núcleo do sistema operacional, sendo responsável direto por controlar tudo ao seu redor. Desde os dispositivos usuais, como unidades de disco, portas de comunicação, dispositivos lógicos e de hardware até interpretadores de comandos, etc.
É formado por um conjunto de rotinas que oferecem serviços aos usuários, às aplicações e ao próprio sistema. É o kernel que faz a comunicação diretamente com o hardware. Todos os outros componentes do sistema operacional fazem a comunicação com o Kernel e este faz a interface entre os aplicativos e o hardware.
As principais funções do kernel são: -