Cronograma - · PDF fileCronograma • Introdução ... (Alemanha)...
date post
17-Dec-2018Category
Documents
view
233download
0
Embed Size (px)
Transcript of Cronograma - · PDF fileCronograma • Introdução ... (Alemanha)...
1
SOP - TADSFundamentos de Sistemas
Operacionais
Prof. Ricardo Jos [email protected]
Material cedido por:Prof. Rafael Rodrigues Obelheiro
Prof. Maurcio Aronne Pillon
Cronograma
Introduo Histrico dos SOs Conceitos de SO
2
Introduo [1/3]
Complexidade dos sistemas computacionais modernos: Muitos recursos a serem controlados:
Hardware Memria, Processador, Dispositivos de E/S Software Aplicativos que interagem com o hardware
A programao em linguagem de mquina pode ser uma tarefa rdua;
Ex.: A busca de um arquivo no disco pode ser sofrvel, com inmeras variveis consideradas;
O hardware complexo, os recursos, so complicados de lidar e apresentam interfaces difceis
Como seria programar considerando cada parmetro e particularidade de cada recurso?
Introduo [2/3]
O que um sistema operacional? Duas vises para essa pergunta:
Uma mquina estendida Esconde os detalhes complicados do funcionamento do
hardware
Oferece uma interface mais amigvel para as aplicaes Uma espcie de Mquina Virtual
Um gerenciador de recursos Cada programa utiliza o recurso durante um tempo Cada programa ocupa um certo espao no recurso
3
Introduo [3/3]
Camadas do Sistema operacional
Cronograma
Introduo Histrico dos SOs Conceitos de SO
4
Histrico dos SOs [1/15]
Podemos dividir em 4 geraes: Primeira gerao (1945-1955)
Vlvulas, painis de programao
Segunda gerao (1955-1965) Transistores, sistemas em lote (batch)
Terceira gerao (1965-1980) CIs, multiprogramao
Quarta gerao (1980 Dias atuais) Computadores pessoais
Histrico dos SOs [2/15]
Primeira Gerao (1945-1955): Howard Aiken (Harvard), John von Neumann (Princeton), J.
Presper Eckert e William Mauchley (Pensilvnia) e Konrad Zuse(Alemanha) construram mquinas de calcular;
Sistema totalmente mecnico (rels lentos), ciclo medidos em segundos;
A primeira evoluo foi substituir rels por vlvulas O mesmo grupo de pessoas, projetava, construa, programava,
operava, realizava a manuteno de cada mquina Engenharia, Desenvolvimento, Operao e Suporte
Programao feita com cdigo absoluto, muitas vezes conectando plugs em painis
No haviam ainda sistemas operacionais Os prprios usurios
5
Histrico dos SOs [3/15] ENIAC
Histrico dos SOs [4/15]
Quadro de Plugues IBM 402
6
Histrico dos SOs [5/15]
Segunda Gerao (1955-1965): Introduo do transistor (substituio das vlvulas) Computadores passaram a ser mais confiveis
Fabricados e comercializados na expectativa de tivessem uma vida til maior, executando algum trabalho importante
As funes foram bem separadas: Projetistas, Fabricantes, Programadores e tcnicos de
manuteno Passaram a ser denominadas de computadores de
grande porte (mainframes) Devido ao alto custo do equipamento, buscou-se uma
maneira de reduzir o desperdcio Adotou-se o sistema em lote (batch)
Histrico dos SOs [6/15] Sistema em lote (batch)
1401 Mquina inferior, mas suficiente para ler, copiar fitas e imprimir sada
7094 Muito superior, mas cara, melhor utilizar em operaes mais complexas
a) Os programadores levavam os cartes para o 1401
b) O 1401 gravava o lote de jobs em fitac) O operador levava a fita de entrada para o 7094d) O 7094 executava o processamento
e) O 1401 imprimia as sadas
7
Histrico dos SOs [7/15]
Estrutura de um job tpico
Histrico dos SOs [8/15] Terceira gerao: famlias de computadores
Na segunda gerao os computadores eram radicalmente entre si, e se tornavam incompatveis:
IBM 7094: Clculo intensivo, orientado a palavra IBM 1401: Processamento comercial, orientado a caracter
Estas diferenas representavam: Custos significativos ao fabricante; Custos e inconvenincias para os usurios que precisavam migrar de
plataforma A IBM introduziu a famlia 360
Primeiros computadores a usar CIs (circuitos integrados) Srie de mquinas: Porte do 1401 Porte do 7094 Idia principal propiciar compatibilidade de software e hardware
O SO devia executar tanto nas mquinas pequenas quanto nas grandes
Os requisitos e caractersticas diferentes se tornaram um pesadelo para os desenvolvedores:
Milhes de linhas de Assembly, milhares de programadores Corrigia-se um bug, gerava-se outro; Fred Brooks, escreveu um livro contando suas experincias com esse
projeto: The Mythical Man-Month
8
Histrico dos SOs [9/15] Sistema Multiprogramado (3 Gerao) No 7094, quando um job parava para aguardar uma E/S, a CPU
simplesmente mantinha-se ociosa; Em clculos cientficos Baixa ociosidade Dados comerciais 80-90% do tempo era destinado a E/S Ociosidade Soluo: Dividir a memria em 3 partes
Enquanto uma tarefa esperava a concluso da E/S outra poderia ser processada
Deu origem aos sistemas de tempo compartilhado (timesharing)
Histrico dos SOs [10/15]
3 Gerao MULTICS MULTiplexed Information and Computing Service Computador Utilitrio capaz de atender a centenas de
usurios simultneos CPU equivalente a um 386, maior capacidade de E/S;
O projeto foi um fracasso comercial (menos de 100 instalaes), contudo, com usurios fiis (at a dcada de 90)
Extremamente influente no ponto de vista tcnico Lanou diversas idias usadas at hoje
Servidor de internet centralizado, onde mquinas mais simples so conectadas, a maior parte do trabalho ocorre no servidor
Em alguns casos ainda superior Tratamento de E/S
9
Histrico dos SOs [11/15]
3 Gerao UNIX Ken Thompson (Bell Labs) e o PDP-7 (origem do UNIX)
Minicomputador, escreveu uma verso monousurio do MULTICS UNIX;
Cdigo amplamente divulgado Vrias organizaes desenvolveram suas prprias verses
System V AT&T BSD Universidade da Califrnia em Berkeley
Para evitar incompatibilidade entre verses o IEEE lanou um padro de desenvolvimento o POSIX
Sistema feito por programadores para programadores Caractersticas principais:
Ferramentas de desenvolvimento cooperativo Interfaces simples, elegantes, consistentes e sem frescuras Conceito de ferramentas de software: pequenos programas que
desempenham funes especficas e que podem ser combinados
Histrico dos SOs [12/15]
3 Gerao Thompson, Ritchie e um PDP-11
10
Histrico dos SOs [13/15] 4 Gerao Computadores pessoais (microcomputadores)
Os microcomputadores no eram muito diferentes do PDP-11, porm eram muito mais baratos
Desenvolvimento de CIs em larga escala (large scale integration - LSI), que so chips contendo milhares de transistores em um centmetro quadrado de silcio
Em 1974, a Intel lanou o 8080, primeira CPU de 8 bits de propsito geral
Em 1977, a Digital Research (Gary Kildall) reescreveu o CP/M (ControlProgram for Microcomputers) para rodar em outras CPUs alm do 8080
Nos anos 80, a IBM solicitou a um desconhecido desenvolvedor de interpretador Basic, Bill Gates, o contato de uma empresa que pudesse desenvolver um SO para o IBM PC
Bill Gates comprou o DOS (Disk Operating System) e vendeu IBM o DOS/Basic. A Microsoft ainda contratou o desenvolvedor do DOS, Tim Paterson, lanando o conhecido MS-DOS
Histrico dos SOs [14/15]
4 Gerao Computadores pessoais (microcomputadores) CP/M e MS-DOS, entre outros, eram todos baseados na
digitao de comandos Doug Engelbart (Stanford) inventou uma interface grfica
voltada para o usurio (GUI - Graphical User Interface) O Apple Macintosh foi o primeiro SO a incorporar esta idia Devido ao sucesso comercial da Apple, a Microsoft tambm
resolveu incorporar esta idia Os computadores tornaram-se cada vez mais poderosos
Em vez das pessoas esperarem pelo computador, o computador e que espera por elas
Necessidade de SOs mais sofisticados Surgimento de redes de computadores, com sistemas
operacionais de rede e sistemas operacionais distribudos
11
Histrico dos SOs [15/15]
Tipos de Sistemas Operacionais SOs para mainframes
Processamento simultneo de muitas tarefas e E/S SOs para servidores
Servir mltiplos usurios de uma vez, compartilhar recursos de hardware e software
SOs para multiprocessadores SOs para computadores pessoais SOs de tempo real:
Tempo parmetro fundamental SOs embarcados:
Controlam dispositivos que no aceitam aplicativos de usurios (eletrodomsticos)
Vdeos complementares http://www.youtube.com/watch?v=gQbTea
yG6Dg http://www.youtube.com/watch?v=5ocq6_
3-nEw http://www.youtube.com/watch?v=Nb_W3
Llc9KQ
12
Cronograma
Introduo Histrico dos SOs Conceitos de SO
Conceitos de SO [1/7]
Processos Um processo basicamente um programa em execuo Cada processo possui um espao de endereamento
Faixa de endereos na memria onde ele pode ler e escrever
Cada entrada na tabela de processos possu informaes sobre o estado do processo (Executando, Bloqueado, Pronto)
Processos podem se comunicar Comunicao interprocessos(IPC)
rvores de processos Um processo no surge do nada, ele filho de outro processo.
13
Conceitos de SO [2/7]
Deadlock Situaes que surgem na interao entre
processos onde o progresso impossvel:a) Deadlock potencialb) Deadlock real
Conceitos de SO [3/7]
Gerncia de memria Define como a memria principal alocada
para os processos Implementa mecanismos de p