Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO



Documentos relacionados
Prof. Antonio Fundamentos de Sistemas Operacionais UNIP/2015

Sistemas Operacionais. Professor Leslier Soares Corrêa

Sistemas Operacionais

SISTEMAS OPERACIONAIS

SOP Sistemas Operacionais Módulo 03: História e Evolução

Cursos de Computação. Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 01 - História e Funções dos Sistemas Operacionais

A primeira geração dos computadores ocorreu de 1945 a 1955 e tinha como principal característica o uso de válvulas e painéis de programação.

História dos SOs. Tópicos

Programador Web - Pronatec

Prof. Gregorio Perez 2007

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Breve Histórico de Sistemas Operacionais

Sistemas Operacionais

Fundamentos de Sistemas Computacionais Introdução

INTRODUÇÃO AOS SISTEMAS OPERACIONAIS SEMANA 03

A Evolução dos Sistemas Operacionais

Sistemas Operacionais

Histórico dos Sistemas Operacionais

Sistemas Operacionais I. Introdução

Sistemas Operacionais e Introdução à Programação. Módulo 1 Sistemas Operacionais

Introdução aos Sistemas Operacionais. Computador = hardware + software. Como é formado o meu computador? E como estes componentes se comunicam?

Everson Scherrer Borges João Paulo de Brito Gonçalves

Introdução a Computação

Apresentação. Ementa da Disciplina. Objetivo da Disciplina. DCA-108 Sistemas Operacionais

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES. Prof. André Dutton

Conceitos Básicos sobre Sistemas Operacionais

Introdução a Sistemas Operacionais Aula 04. Prof. Msc. Ubirajara Junior biraifba@gmail.com

Resumo até aqui. Gerenciamento Proteção Compartilhamento. Infra-estrutura de Software

UFRJ IM - DCC. Sistemas Operacionais I. Unidade I Introdução. 11/02/2014 Prof. Valeria M. Bastos

Arquitetura de Computadores. Introdução aos Sistemas Operacionais

UFRJ IM - DCC. Sistemas Operacionais I

Sistemas Operacionais Arquitetura e organização de sistemas operacionais: Introdução. Prof. MSc. Hugo Souza

Sistemas Operacionais Introdução. Professora: Michelle Nery

Sistemas Operacionais. Prof. Marcos Ribeiro Quinet de Andrade Instituto de Ciência e Tecnologia - ICT Universidade Federal Fluminense - UFF

Infra-Estrutura de Software. Introdução. (cont.)

Introdução. O que vimos. Infraestrutura de Software. (cont.) História dos Sistemas Operacionais. O que vimos 12/03/2012. Primeira geração:

Introdução. Sistemas Operacionais

Sistemas Operativos. Funções genéricas de um S.O.

Sistemas Operacionais

Sistemas Operacionais

Sistemas Operacionais

Classificação de SO (Sistemas Operacionais) Técnico de Informática 2º. Módulo Profa. Madalena Pereira da Silva

Sistemas Operacionais

Sistemas Operacionais 2014 Introdução. Alexandre Augusto Giron

Conceitos e Evolução Capítulos 1 e 2

Introdução aos Sistemas

Sistemas Operacionais. Prof. André Y. Kusumoto

4 Estrutura do Sistema Operacional Kernel

Nível do Sistema Operacional

Fundamentos da Informática. História dos Computadores Prof. Hélder Almeida

SISTEMAS OPERACIONAIS

Sistemas Operacionais. INTRODUÇÃO Prof. Rafael Alberto Vital Pinto FACSUL/CESUR

SISTEMAS OPERACIONAIS

Prof.: Roberto Franciscatto. Capítulo 1 Introdução

Sistemas Operacionais

Sistemas de Lotes (2) Sistemas de Lotes (3) Layout da MP em Sistemas de Lotes. Minimizar o tempo de resposta

Abstrações e Tecnologias Computacionais. Professor: André Luis Meneses Silva /msn: andreluis.ms@gmail.com Página: orgearq20101.wordpress.

INFORMÁTICA APLICADA À ADMINISTRAÇÃO I

Sistemas Operacionais

Pós-Graduação, Maio de 2006 Introdução aos Sistemas Operacionais. Prof. Dr. Ruy de Oliveira CEFET-MT

Sistema Operacional Correção - Exercício de Revisão

Sistemas Operacionais

Classificação Quanto. Sistemas de Lotes (2) Sistemas de Lotes (3)

Sistemas Operacionais

Fundamentos de Sistemas Operacionais

Introdução à Sistemas Operacionais. Glauber Magalhães Pires

AUTOMAÇÃO DE ESCRITÓRIOS ADE

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN

Histórico dos Computadores

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 02 - Estrutura dos Sistemas Operacionais. Cursos de Computação

Sistemas Operacionais

Capítulo 1. Introdução

Edeyson Andrade Gomes.

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação

Introdução aos Sistemas de Computação

Apresentação da disciplina. Sistemas Operacionais I N. A disciplina. O Professor. Áreas de atuação na pesquisa. Referências bibliográficas básicas

Sistemas de Informações Gerenciais

Introdução à Ciência da Computação

Informática Instrumental Aula 1. Prof. Msc. Fernando Nakayama de Queiroz

Sistemas Operacionais

Capítulo 1 Introdução

Sistemas Operacionais Aula 03: Estruturas dos SOs. Ezequiel R. Zorzal

SSC0640 Sistemas Operacionais I

Sistemas Operacionais

Material 5 Administração de Recursos de HW e SW. Prof. Edson Ceroni

SISTEMAS OPERACIONAIS 2007

Disciplina: Introdução à informática Profª Érica Barcelos

Introdução a Computação

SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA

Arquitetura e Organização de Computadores

Unidade I FUNDAMENTOS DE SISTEMAS. Prof. Roberto Macias

Introdução. Nível do Sistema Operacional. Introdução. Um Sistema Operacional... Introdução a Sistemas Operacionais

Computador Digital Circuitos de um computador (Hardware)

SO - Conceitos Básicos. Introdução ao Computador 2010/01 Renan Manola

- Aula 2 ESTÁGIOS DA EVOLUÇÃO DA ARQUITETURA DOS COMPUTADORES

Modelos de Arquiteturas. Prof. Andrêza Leite

Transcrição:

Sistemas Operacionais Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Bibliografia Bibliografia Básica: TANENBAUM, A. S. Sistemas Operacionais Modernos. São Paulo: Prentice-Hall, 2004. SILBERSCHATZ, A., GAGNE, G., GALVIN, P. B. Sistemas Operacionais com Java: conceitos e aplicações. Rio de Janeiro: Campus, 2004. Bibliografia Complementar: DEITEL, H. M., DEITEL, P.J., CHOFINES, D.R. Sistemas Operacionais. São Paulo : Pearson Prenticce-Hall, 2005. OLIVEIRA, R. S., CARISSIMI, A. S., TOSCANI, S. S. Sistemas Operacionais. Porto Alegre: Instituto de Informática da UFRGS: Editora Sagra Luzzatto, 2004. TANENBAUM, A. S., WOODHULL. Sistemas Operacionais: projeto e implementação. 2a. ed.. Porto Alegre: Bookman, 2000. Material das aulas: http://www.professores.uff.br/mquinet 2

Introdução Sistema computacional: conjunto de recursos computacionais, parte hardware e parte software Essencialmente, um sistema computacional consiste em: hardware; programas do sistema; programas de aplicação. 3

Por que? Sistemas de computadores modernos são compostos por diversos dispositivos: Processadores; Memória; Controladoras; Monitor; Alta Complexidade Teclado; Mouse; Impressoras; Etc... 4

Por que? Com tantos dispositivos, surge a necessidade de gerenciamento e manipulação desses diversos dispositivos Tarefa difícil SISTEMAS OPERACIONAIS 5

O que é um SO? Software responsável por gerenciar dispositivos que compõem um sistema computacional e realizar a interação entre o usuário e esses dispositivos; Hardware Processador; Memória Principal; Dispositivos de Entrada/Saída; Software Programas de Aplicação; Programas do Sistema; 6

Introdução Sistema Operacional: software que controla os recursos do sistema computacional e oferece ao usuário uma interface para interagir com cada um destes recursos 7

Estrutura em Níveis de um SO 8

O que é um Sistema Operacional? É uma máquina estendida (abordagem topdown, abstraçao do todo para as partes ) Oculta os detalhes complicados que têm quer ser executados Apresenta ao usuário uma máquina virtual, mais fácil de usar É um gerenciador de recursos (abordagem bottom-up abstração das partes para o todo ) Gerencia todas as partes de um sistema complexo Cada programa tem um tempo com o recurso Cada programa tem um espaço no recurso 9

Sistema Operacional como Máquina Estendida Ex.: como é feita a entrada/saída de um disco flexível tarefa: Leitura e Escrita SO:baixoníveldedetalhes Número de parâmetros; Endereçodeblocoaserlido; Número de setores por trilha; Modo de gravação; Usuário: alto nível abstração simples Visualizaçãodoarquivoaserlidoeescrito; Arquivoélidoeescrito; Arquivo é fechado. 10

Sistema Operacional como Gerenciador de Recursos Gerenciar todos os dispositivos e recursos disponíveis no computador Ex.: se dois processos querem acessar um mesmo recurso, por exemplo, uma impressora, o SO é responsável por estabelecer uma ordem para que ambos os processos possam realizar sua tarefa de utilizar a impressora. UsodoHD; Usodamemória; Coordena a alocação controlada e ordenada dos recursos; 11

Objetivos de um Sistema Operacional Apresentar ao usuário do computador uma forma amena de utilizar a máquina. Criar uma máquina virtual, de fácil compreensão para o usuário, com características diferentes da máquina física; Realizar o melhor uso possível do hardware disponível, aumentando o desempenho do sistema e diminuindo o custo. 12

Histórico de Evolução (SO) Meados do século XIX: Charles Babbage (1792-1871), por volta de 1833, projetou o primeiro computador. No entanto, a pouca tecnologia da época não permitiu que o projeto tivesse sucesso. Máquina analítica: NãotinhaumSO; Percebeu que precisava de um software que possibilitasse seu uso; Contratou Ada Lovelace, que se tornou a 1ª programadora 13

Histórico de Evolução Primeira Geração Primeira Geração(1940-1955): Válvulas 1940: John von Neumann cria o primeiro computador digital(ainda primitivo. baseado em válvulas) Máquinas enormes que ocupavam salas imensas; Dezenasdemilharesdeválvulas 20.000 Não existiam ainda os conceitos de sistema operacional e linguagem de programação de alto nível; 14

Histórico de Evolução Primeira Geração Mesmo grupo de pessoas projetava, construía, programava, operava e fazia a manutenção de cada máquina; O acesso às máquinas era feito por meio de reserva de tempo: cada usuário fazia sua programação diretamente nos painéis das máquinas hardwired ; Praticamente todos os problemas submetidos eram cálculos numéricos diretos (tabelas de seno, logaritmos, etc); 15

Histórico de Evolução Primeira Geração Final dos anos 40: primeiro computador eletrônico ENIAC (Electronic Numerical Integrator And Computer); 1950: surgem os cartões perfurados Os programas eram codificados nos cartões e sua leitura era feita por máquina operadores de máquina; John von Neumann propõe uma programação não hardwired nasce o Assembler/Assembly; 16

Histórico de Evolução Segunda Geração Segunda Geração (1955-1965) Transistores e Sistemas em Batch O desenvolvimento dos transistores tornou o computador mais confiável possibilitando sua comercialização- Mainframes; Separação entre projetistas, fabricante, programadores e técnicos de manutenção; No entanto, devido aos altos custos, poucos tinham acesso a essa tecnologia somente grandes empresas, órgãos governamentais ou universidades; 17

Histórico de Evolução Segunda Geração Surgeaidéiadelinguagemdeprogramaçãodealtonível Fortran(desenvolvida pela IBM 1954-1957); Cartões perfurados ainda são utilizados Operação: cada programa(job) ou conjunto de programas escrito e perfurado por um programador era entregue ao operador da máquinaparaqueomesmofosseprocessado altocusto Sistemas em Batch(lote) Consistia em coletar um conjunto de jobs e fazer a gravação desse conjunto para uma fita magnética 18

Histórico de Evolução Segunda Geração Estrutura de um job em Fortran 19

Histórico de Evolução - Segunda Geração Antigo sistema em batch (lote): traz os cartões para o 1401; lê os cartões para a fita; coloca a fita no 7094 que executa o processamento; coloca a fita no 1401 que imprime a saída. FMS (Fortran Monitor System) Processamento: IBSYS SO IBM para o 7094 20

Histórico de Evolução Terceira Geração Terceira Geração (1965-1980) Circuitos integrados e Multiprogramação Produtos Incompatíveis Máquinas imensas e poderosas orientadas a palavra (7094) Máquinas comerciais orientadas a caracter (1401) Alta carga de desenvolvimento e manutenção IBM introduz o System/360 21

Histórico de Evolução Terceira Geração System/360 Série de máquinas com software compatível; Essas máquinas diferiam apenas no preço e desempenho, variando da 1401 até a 7094; Foi a primeira a usar circuito integrado em pequena escala, ao invés de transistores; OsistemaoperacionaleraoOS/360 Sua maior vantagem era também sua maior fraqueza: SO enorme e muito complexo, pois precisava realizar as funções de todas as máquinas ineficiente, cheio de erros (milhões de linhas de código assembly escritas por milhares de programadores = milhares de erros) 22

Histórico de Evolução Terceira Geração Aplicações que eram CPU-bound não tinham problema com relação ao tempo que se precisava esperar para realizar E/S Aplicações que eram IO-bound gastavam de 80 a 90% do tempo realizando E/S Enquantoisso,aCPUficavaparada Solução: Multiprogramação 23

Histórico de Evolução Terceira Geração Multiprogramação: Dividir a memória em diversas partes e alocar a cada uma dessas partes um job. Manter na memória 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

Histórico de Evolução Terceira Geração Spooling (Simultaneous Peripheral Operation On Line): Possibilitar que a leitura de cartões de jobs fosse feita direta do disco; Assim que um job terminava, o sistema operacional já alocava o novo job à uma partição livre da memória direto do disco; Eliminação de máquinas como as 1401 e a necessidade de se ficar andando entre as máquinas 25

Histórico de Evolução Terceira Geração Mesmo com o surgimento de novas tecnologias, o tempo de processamento ainda era algo crítico. Para corrigir um erro de programação, por exemplo, o programador poderia levar horas pois cada job era tratado dentro de um lote Timesharing 26

Histórico de Evolução Terceira Geração Timesharing: cada usuário tinha um terminal on-line à disposição; Primeiro sistema Timesharing: CTSS (Compatible Time Sharing System) 7094 modificado. Ex.: se 20 usuários estão ativos e 17 estão ausentes, o processador éalocadoacadaumdos3jobsqueestão sendoexecutados; 27

Histórico de Evolução Terceira Geração Surge o MULTICS (Multiplexed Information and Computing Service), predecessor do UNIX; FrutodeumaidéiadoMIT,BellLabseGeneralElectric,dedesenvolver um computador que suportasse centenas de usuários simultâneos em timesharing Codificado em PL/I, o que atrapalhou seu desenvolvimento (compilador fraco) Apesar do fracasso comercial, teve enorme influência em SO s futuros Família de minicomputadores PDP da DEC; Diferente da família System/360, eram incompatíveis; UnixoriginalrodavanoPDP-7(KenThompson cientistadabelllabs) OPDP-1custava$120mil(5%dovalordeum7094) Tinha4Kpalavrasde18bits 28

Histórico de Evolução Quarta Geração Quarta Geração (1980-1990) Computadores Pessoais Com a tecnologia de circuitos integrados de larga escala (LSI) surgem chips com milhares de transistores encapsulados em um centímetro quadrado de silício Intel 8080(1974) IBM PC(iníciodosanos80) Apple AppleeMacintosh 29

Histórico de Evolução Quarta Geração Intel8080 CP/MdaDigitalResearchGaryKildall) CP/M (Control Program for MicroComputer) sistema operacional baseado em disco; IBMPC- DOS Inicialmente, a IBM tentou utilizar o CP/M, mas Kildall não quis nenhum acordo; IBM procurou Bill Gates pedindo um sistema operacional para rodar e servendidojuntamentecomoibmpc; Bill Gates comprou a empresa que desenvolvia o DOS (Disk Operating System): Seattle Computer Products; Desenvolvedor: Tim Paterson; 30

Histórico de Evolução Quarta Geração EvoluçãodoDOSMS-DOS(MicroSoft DOS) Tanto o CP/M quanto o MS-DOS eram baseados em comandos; Macintosh Apple - Sistemas baseados em janelas (GUI Graphical User Interface) Microsoft Plataforma Windows A história deste período da computação está muito bem retratada no filme Piratas da Informática ( Pirates of Sylicon Valley ) e no documentário em três partes O Triunfo dos Nerds 31

Histórico de Evolução Quinta Geração -(1990-hoje) Era da computação distribuída: um processo é dividido em subprocessos que executam em sistemas multiprocessados e em redes de computadores ou até mesmo em sistemas virtualmente paralelos 32

Histórico de Evolução Quinta Geração (1990-hoje) O protocolo de comunicações TCP/IP tornou-se largamente utilizado(depto. de Defesa dos EUA) e as LANs (Local Area Networks) tornaram-se mais práticas e econômicas com o surgimento do padrão Ethernet, desenvolvido pela Xerox; Desenvolvimento e popularização do modelo cliente/servidor; Difusão das redes de computadores Internet 33

Histórico de Evolução Quinta Geração -(1990-hoje) Sistemas Operacionais Distribuídos: Apresenta-se como um sistema operacional centralizado, mas que, na realidade, tem suas funções executadas por um conjunto de máquinas independentes; Sistemas Operacionais em Rede; Usuários conhecem a localização dos recursos que estão utilizando enãotêmavisãodeumsistemacentralizado Sistema Operacionais para dispositivos móveis; Execução de tarefas com economia de energia (baterias limitadas), aplicações voltadas principalmente para web Unix Minix Linux; FamíliaWindows(NT,95,98,2000,XP,Vista,7,8); AppleiOS,Android,WinCE Win7 Win8 34

História dos Sistemas Operacionais - Resumo Primeira geração anos 50 Válvulas, painéis de programação; processamento em lotes Segunda geração anos 60 Multiprogramação, multiprocessamento, timesharing, tempo real Terceira geração meados 60 a meados 70 Sistemas de propósito geral; desenvolvimento em linguagens de alto nível Quarta geração meados 70 a meados 80 Cliente/servidor, processamento distribuído, interface gráfica Quinta geração meados 80 aos dias atuais Redes, computação distribuída, software livre, multiprocessamento 35

O Zoológico 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 cartões inteligentes; Sistemas operacionais para dispositivos móveis 36

Arquiteturas de Sistemas Operacionais Arquitetura Monolítica Todos os componentes do SO estão contidos no núcleo, comunicando-se diretamente entre si Rapidez na comunicação, mas complexidade no código Arquitetura em Camadas Componentes autocontidos, em camadas de componentes que realizam tarefas similares Pior desempenho que a monolítica 37

Arquiteturas de Sistemas Operacionais Arquitetura de micronúcleo Também é uma forma de arquitetura em camadas (modular) Somente uma pequena parte dos serviços pode acessar diretamente o hardware 38

Qual S.O.devo usar? Para saber qual sistema operacional utilizar, diversos critérios devem ser considerados: Preço; Confiabilidade; Desempenho; Compatibilidade com o hardware; Facilidade de interação; Aplicativos disponíveis; Filosofia de uso. 39

Na dúvida... 40