Você está na página 1de 38

Universidade Federal do Par Instituto de Cincias Exatas e Naturais Faculdade de Computao

EN05177 - SISTEMAS OPERACIONAIS

Aula 1 - Histrico
Profa. Regiane S. Kawasaki Francs

Slides de autoria de Sarita Mazzini Bruschi baseados no livro Sistemas Operacionais Modernos de A. Tanenbaum

Roteiro
Por

que necessrio um sistema operacional que um Sistema Operacional

Histrico

Por qu?

Sistemas de computadores modernos so compostos por diversos dispositivos:


Processadores; Memria; Controladoras; Monitor; Teclado; Mouse; Impressoras; Etc...

Alta Complexidade

Por qu?

Com tantos dispositivos, surge a necessidade de gerenciamento e manipulao desses diversos dispositivos

Tarefa difcil

SISTEMAS OPERACIONAIS
4

O que um SO?

Software responsvel por gerenciar dispositivos que compem um sistema computacional e realizar a interao entre o usurio e esses dispositivos; Hardware

Processador; Memria Principal; Dispositivos de Entrada/Sada;


Programas de Aplicao; Programas do Sistema;
5

Software

Arquitetura do Sistema
Sistemas de Banco
Compiladores Navegadores Web Editores

Reserva de Passagens Interpretadores de Comando

APLICATIVOS PROGRAMAS DO SISTEMA

SISTEMA OPERACIONAL
Linguagem de Mquina

Micro Arquitetura

HARDWARE

Dispositivos Fsicos

Arquitetura do Sistema

Hardware: Diversas camadas

Dispositivos fsicos:

Circuitos (chips) Cabos Transistores Capacitores Memria Disco rgido etc...

Arquitetura do Sistema

Micro Arquitetura: dispositivos fsicos so agrupados para formar unidades funcionais


CPU processamento; ULA (Unidade Lgica Aritmtica) operaes aritmticas. Essas operaes podem ser controladas por software (micro programas) ou por circuitos de hardware;

Arquitetura do Sistema

Linguagem de Mquina: conjunto de instrues interpretadas pelos dispositivos que compem a micro arquitetura;

Possui entre 50 e 300 instrues; Realiza operaes por meio de registradores; Baixo nvel de abstrao; Ex.: Assembly.

Sistema Operacional

Pode atuar de duas maneiras diferentes:

Como mquina estendida (top-down) tornar uma tarefa de baixo nvel mais fcil de ser realizada pelo usurio; Como gerenciador de recursos (bottomup) gerenciar os dispositivos que compem o computador;

10

Sistema Operacional como Mquina Estendida

Ex.: como feita a entrada/sada de um disco flexvel tarefa: Leitura e Escrita

SO: baixo nvel de detalhes


Nmero de parmetros; Endereo de bloco a ser lido; Nmero de setores por trilha; Modo de gravao.

Usurio: alto nvel abstrao simples


Visualizao do arquivo a ser lido e escrito; Arquivo lido e escrito; Arquivo fechado.

11

Sistema Operacional como Gerenciador de Recursos

Gerenciar todos os dispositivos disponveis no computador

recursos

Ex.: se dois processos querem acessar um mesmo recurso, por exemplo, uma impressora, o SO responsvel por estabelecer uma ordem para que ambos os processos possam realizar sua tarefa de utilizar a impressora. Uso do HD; Uso da memria.

Coordena a alocao controlada e ordenada dos recursos.

12

Roteiro
Por

que necessrio um sistema operacional que um Sistema Operacional

Histrico

13

Tendncia da Computao

14

Histrico de Evoluo (SO)


Anos 40.
Nenhum Sistema Operacional Instrues por fios e vlvulas Painel de controle

Operador = Programador
Para compartilhar a mquina planilha de horrios Ex. ENIAC (Electronic Numerical Integrator And Computer)
Problema no ENIAC: inseto (BUG) entre fio de sada e de entrada impedia envio dos dados -> erro

15

Histrico de Evoluo (SO)


Anos 40.
Mesmo

grupo de pessoas projetava, construa, programava, operava e fazia a manuteno de cada mquina; O acesso s mquinas era feito por meio de reserva de tempo: cada usurio fazia sua programao diretamente nos painis das mquinas hard-wired; Mquinas realizavam clculos numricos;
16

Histrico de Evoluo (SO)


Anos 50.
Surge a idia de Jobs e cartes perfurados Os programas eram codificados nos cartes e sua leitura era feita por mquina operadores de mquina; Operador responsvel por carregar montadores, compiladores, etc. e ativar job com programa desenvolvido pelo programador

Estrutura de um 17 job em Fortran

Histrico de Evoluo (SO)


Anos 50.

Operao: cada programa (job) ou conjunto de programas escrito e perfurado por um programador era entregue ao operador da mquina para que o mesmo fosse processado alto custo Sistemas em Batch (lote) Consistia em coletar um conjunto de jobs e fazer a gravao desse conjunto para uma fita magntica
18

Histrico de Evoluo (SO)


Anos 50.

Sistemas em Batch (lote)

Programador leva Operador leva fita Jobs e gravao dosfita com Grava lote de jobs Execuo dos Operador Impresso dos leva 19 cartes para leitora em fita para processamento em fita de sada Resultados resultados resultados

Histrico de Evoluo (SO)


Anos 60.
Aplicaes

que eram CPU-bound no tinham problema com relao ao tempo que se precisava esperar para realizar E/S Aplicaes que eram IO-bound gastavam de 80 a 90% do tempo realizando E/S

Enquanto isso, a CPU ficava parada


Soluo

Multiprogramao

20

Histrico de Evoluo (SO)


Anos 60.

Multiprogramao

Dividir a memria em diversas partes e alocar a cada uma dessas partes um job. Manter na memria simultaneamente uma quantidade de jobs suficientes para ocupar 100% do tempo do processador, diminuindo a ociosidade. Importante: o hardware que protegia cada um dos jobs contra acesso indevidos de outros jobs.
21

Histrico de Evoluo (SO)


Anos 60.
Mquinas

separadas para E/S e processamento Operadores precisavam ficar andando entre as mquinas
Soluo

Spooling
22

Histrico de Evoluo (SO)


Anos 60.

Spooling

Simultaneous Peripheral Operation On Line:


Possibilitar que a leitura de cartes de jobs fosse feita direta do disco; Assim que um job terminava, o sistema operacional j alocava o novo job uma partio livre da memria direto do disco.
23

Histrico de Evoluo (SO)


Anos 60.

Mesmo com o surgimento de novas tecnologias, o tempo de processamento ainda era algo crtico. Para corrigir um erro de programao, por exemplo, o programador poderia levar horas pois cada job era tratado dentro de um lote
Soluo

TimeSharing

24

Histrico de Evoluo (SO)


Anos 60.

TimeSharing

Cada usurio tem um terminal on-line disposio:

Primeiro sistema TimeSharing: CTSS (Compatible Time Sharing System) 7094 modificado Cada usurio tem a sensao de possuir o computador apenas para ele Ex.: se 20 usurios esto ativos e 17 esto ausentes, o processador alocado a cada um dos 3 jobs que esto sendo executados

25

Histrico de Evoluo (SO)


Anos 70.

Cada mquina possua um Sistema Operacional diferente

Por exemplo, OS/360 para o System/360; MULTICS (GE) Incompatibilidade

Sistemas Operacionais de Propsito Geral

26

Histrico de Evoluo (SO)


Anos 70.

Sistemas Operacionais de Propsito Geral

Unics
Time

Sharing System
por Ken Thompson no MULTICS
27

Proposto

Setembro/1969 Baseado Deu

origem ao Unix

Histrico de Evoluo (SO)


Anos 80.

Sistemas Operacionais de Propsito Geral

DOS (Disk Operating System)

A IBM tentou utilizar o CP/M, mas Kildall no quis nenhum acordo;


IBM procurou Bill Gates solicitando SO para o

IBM PC;

Bill Gates comprou a empresa que desenvolvia o DOS Seattle Computer

Products; Desenvolvedor: Tim Paterson;

28

Histrico de Evoluo (SO)


Anos 80.

Sistemas Operacionais de Propsito Geral

DOS (Disk Operating System)

Lanado em 1981
Monousurio Desenvolvido para computadores Pessoais

Linha de comando
29

Histrico de Evoluo (SO)


Anos 80.

Sistemas Operacionais de Propsito Geral

Macintosh Operating System

(Mac OS)
Lanado

em 1984

Sistemas

baseados em janelas (GUI


30

Graphical User Interface)

Histrico de Evoluo (SO)


Anos 80.

Sistemas Operacionais de Propsito Geral

Windows
1985
Iniciou

como uma interface grfica para o DOS


31

Multiprogramao

Histrico de Evoluo (SO)


Anos 90.

Sistemas Operacionais de Propsito Geral

Linux
1991
Desenvolvido

voluntariamente por programadores de todo o mundo


32

Multiusurio

Histrico de Evoluo (SO)


Anos 90. Era da computao distribuda
um

processo dividido em

subprocessos que executam em sistemas multiprocessados e em redes

de computadores ou at mesmo em
sistemas virtualmente paralelos
33

Histrico de Evoluo (SO)


Anos 90. Sistemas Operacionais Distribudos :

Apresenta-se como um sistema operacional centralizado, mas que, na realidade, tem suas funes executadas por um conjunto de mquinas independentes; Usurios conhecem a localizao dos recursos que esto utilizando e no tm a viso de um sistema centralizado

Sistemas Operacionais em Rede;

Vrios outros...
34

Tipos de Sistemas Operacionais

Sistemas Operacionais de Tempo Real

Importante:

Gerenciamento de Tempo; Gerenciamento de processos crticos (avies, caldeiras);

RTLinux (Real Time Linux).

35

Tipos de Sistemas Operacionais


Anos 2000.

Sistemas Operacionais Orientados a Objetos


Reuso Interface orientada a objetos Portabilidade;

JavaOS

Sistemas Operacionais Embarcados: telefones, aparelhos eletrodomsticos; PDAs.

36

Sistemas Paralelos

Mquinas que possuem mais de um processador Tipos:

Sistemas fortemente acoplados


Processadores compartilham memria e relgios comuns Comunicao realizada atravs da memria

Sistemas fracamente acoplados


Processadores no compartilham memria Comunicao realizada atravs da troca de mensagens

Sistemas Paralelos

Você também pode gostar