THE (sistema operacional)

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa

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 se 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.

A 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 | editar código-fonte]