A EVOLUÇÃO DOS SISTEMAS OPERACIONAIS
Pesquisas Acadêmicas: A EVOLUÇÃO DOS SISTEMAS OPERACIONAIS. Pesquise 862.000+ trabalhos acadêmicosPor: MarceloLuz • 30/5/2014 • 1.717 Palavras (7 Páginas) • 422 Visualizações
A EVOLUÇÃO DOS SISTEMAS OPERACIONAIS
3 - A Terceira Geração (1965 - 1980): CIs e Multiprogramação
Nos anos 60, muitos fabricantes de computadores tinham duas linhas de produto distintas e totalmente incompatíveis. Por um lado havia os computadores científicos, em grande escala, orientado por palavras, tais como o 7094, que era usado para cálculos numéricos em ciência e engenharia. Por outro lado, havia os computadores comerciais, orientados por caracter, tais como o 1401, que era vastamente usado para classificação em fita e impressão, por bancos e companhias de seguros.
O desenvolvimento e a manutenção de duas linhas de produto completamente diferentes era uma proposta cara para os fabricantes. Além do mais, os clientes em potencial para aquisição de novos computadores necessitavam inicialmente de uma máquina pequena, para mais tarde, com o crescimento, terem uma máquina maior em que pudessem rodar todos os seus programas mais rapidamente.
A IBM, no intuito de resolver ambos os problemas de uma só tacada, introduziu o sistema /360. O 360 era uma série de máquinas compatíveis por software, variando de tamanho a partir do 1401 até o mais potente 7094. As máquinas diferiam apenas em preço e performance (capacidade de memória, velocidade do processador, número de periféricos I/O permitidos, e assim por diante). Já que todas as máquinas tinham a mesma arquitetura e o mesmo conjunto de instruções, pelo menos em teoria, programas escritos para uma máquina poderiam rodar em todas as outras. Além disso, o 360 foi projetado para manusear tanto computação comercial como computação científica. Assim, uma única família de máquinas poderia satisfazer às necessidades de todos os clientes. Em anos subsequentes, a IBM apresentou os sucessores compatíveis com a linha 360, usando uma tecnologia mais moderna, conhecidos como séries 370, 4300, 3080 e 3090.
O 360 foi a primeira linha de computadores a usar (em pequena escala) circuitos integrados (CIs), fornecendo uma maior vantagem em preço/performance sobre as máquinas da segunda geração, que eram construidas de transistores individuais. Isso foi um sucesso imediato e a idéia de uma família de computadores compatíveis foi logo adotada por todos os outros fabricantes. Os descendentes dessas máquinas ainda hoje estão em uso em grandes centros de computação.
A maior força da idéia de "uma família" foi simultaneamente a sua maior durabilidade. A intenção era que todo o software, incluindo o sistema operacional, deveria trabalhar em todos os modelos. Ele tinha de rodar em sistemas pequenos que muitas vezes já substituia 1401s para cópias de cartões em fitas e em sistemas muito grandes, que muitas vezes substituia 7094s para fazer cálculos demorados e outras computações pesadas. Ele deveria ser bom em sistemas com poucos periféricos e em sistemas com muitos periféricos. Ele tinha de trabalhar em ambientes comerciais e em ambientes científicos. Acima de tudo, ele tinha de ser eficiente em todos esses usos diferentes.
Não havia uma maneira através da qual a IBM (ou outra companhia) pudesse solucionar todas essas exigências conflitantes. O resultado foi um sistema operacional enorme e extraordinariamente complexo, provavelmente de dois ou três ordens de magnitude maior do que o FMS. Ele consistia de milhares de linhas de linguagem assembly escritas por centenas de programadores e continha centenas e centenas de depurações que necessitavam de contínuas versões a fim de corrigí-los. Cada nova versão fixava algumas depurações e introduzia outras novas, tal que o número de depurações provavelmente permanecia constante com o tempo.
A despeito de seu enorme tamanho e de seus problemas, o OS/360 e os sistemas operacionais similares da terceira geração, produzidos por outros fabricantes, satisfizeram razoavelmente bem a seus clientes. Eles também popularizaram várias técnicas ausentes nos sistemas operacionais da segunda geração. Provavelmente, a mais importante dessas técnicas foi a multiprogramação. No 7094, quando o job que estava sendo executado tinha uma pausa esperando que uma operação em fita ou em qualquer outro periférico I/O fosse completada, a CPU simplesmente ficava ociosa até que a operação I/O fosse encerrada. Em cálculos científicos pesados, as operações de I/O não são frequentes, e essse tempo ocioso é insignificante. Em processamento de dados comerciais, as operações de I/O consomem frequentemente entre 80 a 90 porcento do tempo total, exigindo alguma providência sobre isso.
A solução foi particionar a memória em várias partes, com um job diferente em cada partição, como mostrado na Fig. 3. Enquanto um job estava esperando que uma operação I/O fosse concluida, um outro job poderia usar a CPU. Se vários jobs pudessem ocupar a memória no mesmo instante, a CPU estaria sempre ocupada quase que em 100% do tempo. Ter múltiplos jobs na memória, por sua vez, requer hardware especial para proteger cada job contra danos e entrelaçamento entre eles, e o 360 e outros sistemas da terceira geração eram equipados com esse hardware.
Partições da Memória
Figura 3 - Um sistema de multiprogramação com três jobs na memória
Um outro grande aspecto presente nos sistemas operacionais da terceira geração era a habilidade de ler jobs de cartões para o disco assim que eles eram trazidos à sala do computador. Assim, sempre que um job tinha a sua execução encerrada, o sistema operacional poderia carregar um novo job do disco numa nova partição vazia e executá-lo. Essa técnica é chamada de "spooling" (de "Simultaneous Perifheral Operation On Line") e também era usada para a saída. Com o "spooling", os 1401s não precisavam ser tão grandes e a utilização da fita diminuiu bastante.
Apesar dos sistemas operacionais da terceira geração terem sido bem apropriados para a execução de programas envolvendo grandes cálculos científicos e de processamento de dados comerciais compactos, eles eram ainda, basicamente, sistemas em "batch". Muitos programadores sentiam saudades dos dias da primeira geração, quando eles tinham a máquina toda para eles por poucas horas, mas
...