Escolar Documentos
Profissional Documentos
Cultura Documentos
Bibliografia
Bibliografia Bsica:
TANENBAUM, A. S. Sistemas Operacionais Modernos. So Paulo : Prentice-Hall, 2004.
SILBERSCHATZ, A., GAGNE, G., GALVIN, P. B. Sistemas Operacionais com Java:
conceitos e aplicaes. Rio de Janeiro : Campus, 2004.
Bibliografia Complementar:
DEITEL, H. M., DEITEL, P.J., CHOFINES, D.R. Sistemas Operacionais. So Paulo :
Pearson Prenticce-Hall, 2005.
OLIVEIRA, R. S., CARISSIMI, A. S., TOSCANI, S. S. Sistemas Operacionais. Porto Alegre :
Instituto de Informtica da UFRGS: Editora Sagra Luzzatto, 2004.
TANENBAUM, A. S., WOODHULL. Sistemas Operacionais: projeto e implementao.
2a. ed.. Porto Alegre : Bookman, 2000.
Material das aulas: http://www.professores.uff.br/mquinet
Introduo
Sistema computacional: conjunto de recursos
computacionais, parte hardware e parte software
Essencialmente, um sistema computacional
consiste em:
hardware;
programas do sistema;
programas de aplicao.
Por que?
Sistemas de computadores modernos so compostos por
diversos dispositivos:
Processadores;
Memria;
Controladoras;
Monitor;
Alta Complexidade
Teclado;
Mouse;
Impressoras;
Etc...
4
Por que?
Com tantos dispositivos, surge a necessidade de
gerenciamento e manipulao desses diversos
dispositivos
Tarefa difcil
SISTEMAS OPERACIONAIS
5
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;
Software
Programas de Aplicao;
Programas do Sistema;
6
Introduo
Sistema Operacional: software que controla os
recursos do sistema computacional e oferece ao
usurio uma interface para interagir com cada um
destes recursos
Estrutura em Nveis de um SO
11
Objetivos de um Sistema
Operacional
Apresentar ao usurio do computador uma forma
amena de utilizar a mquina. Criar uma mquina
virtual, de fcil compreenso para o usurio, com
caractersticas diferentes da mquina fsica;
Realizar o melhor uso possvel do hardware
disponvel, aumentando o desempenho do
sistema e diminuindo o custo.
12
13
Histrico de Evoluo
Primeira Gerao
Primeira Gerao (1940-1955): Vlvulas
1940: John von Neumann cria o primeiro computador
digital (ainda primitivo. baseado em vlvulas)
14
Histrico de Evoluo
Primeira Gerao
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 hardwired;
Praticamente todos os problemas submetidos eram
clculos numricos diretos (tabelas de seno, logaritmos,
etc);
15
Histrico de Evoluo
Primeira Gerao
Final dos anos 40: primeiro computador eletrnico
ENIAC (Electronic Numerical Integrator And
Computer);
1950: surgem os cartes perfurados
Os programas eram codificados nos cartes e sua leitura era
feita por mquina
operadores de mquina;
16
Histrico de Evoluo
Segunda Gerao
Segunda Gerao (1955-1965) Transistores e
Sistemas em Batch
O desenvolvimento dos transistores tornou o
computador mais confivel possibilitando sua
comercializao - Mainframes;
Separao entre projetistas, fabricante, programadores
e tcnicos de manuteno;
No entanto, devido aos altos custos, poucos tinham
acesso a essa tecnologia somente grandes empresas,
rgos governamentais ou universidades;
17
Histrico de Evoluo
Segunda Gerao
Surge a idia de linguagem de programao de alto nvel
Fortran (desenvolvida pela IBM 1954-1957);
Cartes perfurados ainda so utilizados
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
18
Histrico de Evoluo
Segunda Gerao
Histrico de Evoluo
Terceira Gerao
Terceira Gerao (1965-1980) Circuitos integrados e
Multiprogramao
Produtos Incompatveis
Mquinas imensas e poderosas
orientadas a palavra (7094)
Mquinas comerciais
orientadas a caracter (1401)
Histrico de Evoluo
Terceira Gerao
System/360
Srie de mquinas com software compatvel;
Essas mquinas diferiam apenas no
desempenho, variando da 1401 at a 7094;
preo
Histrico de Evoluo
Terceira Gerao
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
23
Histrico de Evoluo
Terceira Gerao
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.
24
Histrico de Evoluo
Terceira Gerao
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;
Eliminao de mquinas como as 1401 e a necessidade
de se ficar andando entre as mquinas
25
Histrico de Evoluo
Terceira Gerao
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
Timesharing
26
Histrico de Evoluo
Terceira Gerao
Timesharing: cada usurio tinha um terminal on-line
disposio;
Primeiro sistema Timesharing: CTSS (Compatible Time Sharing
System) 7094 modificado.
Ex.: se 20 usurios esto ativos e 17 esto ausentes, o processador
alocado a cada um dos 3 jobs que esto sendo executados;
27
Histrico de Evoluo
Terceira Gerao
Surge o MULTICS (Multiplexed Information and Computing
Service), predecessor do UNIX;
Fruto de uma idia do MIT, Bell Labs e General Electric, de desenvolver
um computador que suportasse centenas de usurios simultneos em
timesharing
Codificado em PL/I, o que atrapalhou seu desenvolvimento
(compilador fraco)
Apesar do fracasso comercial, teve enorme influncia em SOs futuros
28
Histrico de Evoluo
Quarta Gerao
Quarta Gerao (1980-1990) Computadores
Pessoais
Com a tecnologia de circuitos integrados de larga escala
(LSI) surgem chips com milhares de transistores
encapsulados em um centmetro quadrado de silcio
Intel 8080 (1974)
IBM PC (incio dos anos 80)
Apple Apple e Macintosh
29
Histrico de Evoluo
Quarta Gerao
Intel 8080 CP/M da Digital Research Gary Kildall)
CP/M (Control Program for MicroComputer) sistema operacional
baseado em disco;
IBM PC - DOS
Inicialmente, a IBM tentou utilizar o CP/M, mas Kildall no quis
nenhum acordo;
IBM procurou Bill Gates pedindo um sistema operacional para rodar e
ser vendido juntamente com o IBM PC;
Bill Gates comprou a empresa que desenvolvia o DOS (Disk Operating
System): Seattle Computer Products; Desenvolvedor: Tim Paterson;
30
Histrico de Evoluo
Quarta Gerao
Evoluo do DOS
Histrico de Evoluo
Quinta Gerao - (1990
(1990--hoje)
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
32
Histrico de Evoluo
Quinta Gerao (1990(1990-hoje)
O protocolo de comunicaes TCP/IP tornou-se
largamente utilizado (Depto. de Defesa dos EUA) e as LANs
(Local Area Networks) tornaram-se mais prticas e
econmicas com o surgimento do padro Ethernet,
desenvolvido pela Xerox;
Desenvolvimento e popularizao do modelo cliente/servidor;
Difuso das redes de computadores
Internet
33
Histrico de Evoluo
Quinta Gerao - (1990
(1990--hoje)
Sistemas Operacionais Distribudos:
Apresenta-se como um sistema operacional centralizado, mas que,
na realidade, tem suas funes executadas por um conjunto de
mquinas independentes;
distribuda,
software
livre,
35
O Zoolgico de Sistemas
Operacionais
Sistemas operacionais de computadores de grande porte;
Sistemas operacionais de servidores;
Sistemas operacionais de multiprocessadores;
Sistemas operacionais de computadores pessoais;
Sistemas operacionais de tempo real;
Sistemas operacionais embarcados;
Sistemas operacionais de cartes inteligentes;
Sistemas operacionais para dispositivos mveis
36
Arquiteturas de Sistemas
Operacionais
Arquitetura Monoltica
Todos os componentes do SO esto contidos no ncleo,
comunicando-se diretamente entre si
Rapidez na comunicao, mas complexidade no cdigo
Arquitetura em Camadas
Componentes autocontidos, em camadas
componentes que realizam tarefas similares
de
37
Arquiteturas de Sistemas
Operacionais
Arquitetura de microncleo
Tambm uma forma de arquitetura em camadas
(modular)
Somente uma pequena parte dos servios pode acessar
diretamente o hardware
38
Na dvida...
40