THE
Este artigo ou secção contém uma lista de referências no fim do texto, mas as suas fontes não são claras porque não são citadas no corpo do artigo, o que compromete a confiabilidade das informações. (Março de 2019) |
THE é um sistema operacional desenvolvido por um time liderado por Edsger Dijkstra, descrito em monografia entre 1965 e 1966 e publicado em 1968. Dijkstra nunca nomeou o sistema; "THE" é simplesmente a abreviação de "Technische Hogeschool Eindhoven", o nome em neerlandês da Universidade de Tecnologia de Eindhoven, nos Países Baixos. O sistema THE é basicamente um sistema batch que suporta multitarefa; não foi desenvolvido para ser multiusuário.
Ele introduziu as primeiras formas de segmentação de memória baseada em software, livrando os programadores de serem forçados a usar localizações físicas na memória. Isso foi feito através de um compilador ALGOL modificado (a única linguagem suportada no sistema operacional) para gerar automaticamente chamadas às rotinas do sistema.
Camadas
editarA arquitetura do THE é significativa devido ao seu uso de estruturas por camadas, no qual as camadas superiores dependem somente das camadas inferiores:
- A camada 0 é responsável pelos aspectos de multiprogramação do sistema. Ela decide qual processo é alocado na CPU, lida com interrupções e realiza a troca de contexto para a mudança de processos.
- A camada 1 é responsável pela alocação de memória para os processos.
- A camada 2 é responsável pela comunicação entre processos e pela comunicação entre o sistema operacional e o interpretador de comandos. O sistema usa semáforos para sincronização.
- A camada 3 gerencia toda a Entrada/Saída entre dispositivos conectados ao computador, o que inclui armazenar temporariamente as informações sendo comunicadas.
- A camada 4 consiste dos programas do usuário. Existem cinco processos que lidam com a compilação, execução e interação dos programas.
- A camada 5 tinha controle geral do sistema, chamada operador de sistema.
A divisão do núcleo em camadas era similar ao que modelo em anel do Multics. Vários sistemas operacionais seguintes usaram o conceito de camadas de alguma forma, como o Windows NT e o Mac OS X, ainda que com menos camadas.
Referências
editar- E. W. Dijkstra (14 de junho de 1965). «EWD 126: The Multiprogramming System for the EL X8 THE» (em inglês). Consultado em 23 de maio de 2007
- E. W. Dijkstra. «EWD 196: The structure of the 'THE'-multiprogramming system» (em inglês). Consultado em 23 de maio de 2007