1 / 32

Introdução aos Sistemas Operacionais

UCPEL/CPOLI/BCC Introdução à Ciência da Computação. Introdução aos Sistemas Operacionais. Luiz A M Palazzo Abril de 2010. Sistema operacional. usuários. Aplicação. Aplicação. Aplicação. Sistema Operacional. Hardware.

skule
Download Presentation

Introdução aos Sistemas Operacionais

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UCPEL/CPOLI/BCC Introdução à CiênciadaComputação Introdução aos Sistemas Operacionais Luiz A M Palazzo Abril de 2010

  2. Sistemaoperacional usuários Aplicação Aplicação Aplicação SistemaOperacional Hardware Introdução aos Sistemas Operacionais Camada de software entre o hardware e as aplicações dos usuários

  3. Funções do sistema operacional Introdução aos Sistemas Operacionais • A partirdamáquina real (hardware), criarumamáquinaestendida. • Gerenciarosrecursos de hardware disponíveispara as aplicações.

  4. O SO como máquina estendida Introdução aos Sistemas Operacionais Ocultar a complexidade do hardware. Oferecer interfaces padronizadas de acesso ao hardware. Permitir uma visão homogênea de dispositivos distintos.

  5. O SO como máquina estendida Clicar em um arquivo Assign(file, “D:\README.TXT”);open(file);read(file, ch);…close(file); aplicação Sistema operacional Move head to sector 123 in FATread 256 bytes to mem 36234Hmove head to sector 4684753read 1024 bytes to mem 578567... Introdução aos Sistemas Operacionais

  6. O SO como gerente de recursos Introdução aos Sistemas Operacionais • Recursosdamáquina • processadores • espaçoemmemória • arquivos • conexões de rede • dispositivosexternos • Controle de acesso • equilibraruso • evitarconflitos

  7. source app O SO como gerente de recursos source app source app sdgf jhgsdfj dsjhfkhj khjHKjhkjghj hgjhgj jgh jhg jhg jhg jhg kjhgjhgj hg jhgkjhkjhgjhg jhg jhg jhg jhkjhjkhgjhgjhkgjhgjhgjhgj aplicação aplicação aplicação Sistema operacional Introdução aos Sistemas Operacionais

  8. Computador como Máquina de Níveis Introdução aos Sistemas Operacionais • O Hardware: • responsável pela execução das instruções de um programa; • Primeiros computadores: • programação realizada através de fios; • Evolução: O Sistema Operacional; • A Interação se tornou mais fácil, confiável e eficiente;

  9. Computador como Máquina de Níveis Introdução aos Sistemas Operacionais • Computador como máquina de níveis: • Nível 2 – Aplicativos; • Nível 1 – Sistema operacional; • Nível 0 – Hardware. • A Linguagem utilizada em cada nível varia da mais elementar (microprogramação) à mais sofisticada(alto nível).

  10. Histórico dos Sistemas Operacionais Introdução aos Sistemas Operacionais • 1º computador: • Máquina analítica de Charles Babbage (1792-1871); • Primeira Geração (1945-1955): • Válvulas e painéis; • Segunda Geração (1956-1965): • Transistores e Sistemas Batch; • Terceira Geração(1966-1980): • Circuitos Integrados e Multiprogramação; • Quarta Geração(1981-1990): • Computadores Pessoais; • Quinta Geração (1991- 20??): • Atualidade; Sistemas Móveis

  11. Histórico dos Sistemas Operacionais Introdução aos Sistemas Operacionais • Primeira Geração (1945-1955): • Programação através de chaves; • Inexistência de linguagens ou SO.; • Toda a atividade é seqüencial;

  12. Histórico dos Sistemas Operacionais Introdução aos Sistemas Operacionais • Segunda Geração (1956-1965): • IBM 1401 e 7094; • Separação entre programação e operação; • Execução batch de programas; • Linguagens Fortran e Assembly;

  13. Histórico dos Sistemas Operacionais Introdução aos Sistemas Operacionais • Terceira Geração (1966-1980): • Família IBM/360 e sucessores; • Compatibilidade a nível de software; • Multiprogramação; • Escalonamento de CPU; • Sistemas On-line; • Base dos S.O. modernos;

  14. Histórico dos Sistemas Operacionais Introdução aos Sistemas Operacionais • Quarta Geração (1981-1990): • Multiprocessadores; • Sistemas Operacionais user-friendly; • S.O. para computadores pessoais; • S.O. para redes de computadores;

  15. Histórico dos Sistemas Operacionais Introdução aos Sistemas Operacionais • Quinta Geração (1991-20??): • Processamento Distribuído; • Interfaces Gráficas; • S.O. paradispositivosmóveis • S.O. paracloud computing

  16. S.O. como interface usuário/computador Introdução aos Sistemas Operacionais

  17. Diferentes “imagens” de um S.O. • Sistema operacional na visão do usuário • Imagem que um usuário tem do sistema • Interface oferecida ao usuário para ter acesso a recursos do sistema • Chamadas de sistema • Programas de sistema • Sistema operacional na visão do projeto • Organização interna do sistema operacional • Mecanismos empregados para gerenciar recursos do sistema Introdução aos Sistemas Operacionais

  18. Chamada de sistema • Forma que um programa solicita serviços ao sistema operacional • Análogo a sub-rotinas • É o núcleo (Kernel) do sistema operacional que implementa as chamadas de sistemas • Existem chamadas de sistemas associadas a gerência do processador, de memória, arquivos e de entrada e saída • Variação: micro-kernel • Serviços básicos são implementados pelo micro-kernel • Kernel implementa demais serviços empregando esses serviços básicos Introdução aos Sistemas Operacionais

  19. APLICAÇÃO Chamada de sistema KERNEL Serviços do microkernel MICROKERNEL HARDWARE Organização do S.O Introdução aos Sistemas Operacionais

  20. Programas de sistema • Programas executados fora do kernel (utilitários) • Implementam tarefas básicas • Muitas vezes confundidos com o próprio sistema operacional • Ex: compiladores, assemblers, ligadores, etc • Interpretadores de comandos • Ativado sempre que o sistema operacional inicia sessão de trabalho • Ex: bash, tsch, sh, etc • Interface gráfico de usário (GUI) • Ex: Família windows, MacOs, etc Introdução aos Sistemas Operacionais

  21. Sistema em lote (batch) • Introdução de operadores profissionais • Usuário era mais o operador da máquina • Job • Programa a ser compilador e executado, acompanhado dos dados de execução • Jobs são organizados em lote (batch) • Necessidades semelhantes (ex: mesmo compilador) • Passagem entre diferentes jobscontinua sendo manual Introdução aos Sistemas Operacionais

  22. Monitor residente • Evolução • Sequenciamente automático de jobs, transferindo o controle de um job a outro • Primeiro sistema operacional (rudimentar) • Monitor residente • Programa que fica permanente em memória • Execução inicial • Controle é transferido para o job • Cartões de controle • Quando o job termina, o controle retorna ao monitor • Centraliza as rotinas de acesso a periféricos disponibilizando aos programas de usuários Introdução aos Sistemas Operacionais

  23. Sistema batch multiprogramado (multitarefa) • Monitor residente permite a execução de apenas um programa a cada vez • Desperdício de tempo de CPU com operações de E/S • Evolução • Manter diversos programas na memória ao mesmo tempo • Enquanto um programa realiza E/S, outro pode ser executado Introdução aos Sistemas Operacionais

  24. Multiprogramação • Manter mais de um programa em “execução” simultaneamente • Duas inovações de hardware possibilitam o surgimento da multiprogramação • Interrupção • Sinalização de eventos • Discos magnéticos • Acesso randômico a diferentes jobsno disco. • Melhor desempenho em acessos de leitura e escrita Introdução aos Sistemas Operacionais

  25. Sistema timesharing • Tipo de multiprogramação • Usuários possuem um terminal • Interação com o programa de execução • Ilusão de possuir a máquina dedicada a execução de seu programa • Divisão do tempo de processamento entre usuários • Tempo de resposta é importante Introdução aos Sistemas Operacionais

  26. Sistema monousuário e multiusuário • Sistema monousuário • Projetados para serem usados por um único usuário • Ex: MS-DOS, Windows XP, Vista, 7, MacOS... • Sistemas multiusuário • Projetados para suportar várias sessões de usuários em um computador • Ex: Windows 2008, UNIX... Introdução aos Sistemas Operacionais

  27. Sistemas multitarefa e monotarefa • Sistemas monotarefa • Capazes de executar apenas uma tarefa de cada vez • Ex: MS-DOS • Sistema multitarefa • Capazes de executar várias tarefas simultaneamente • Existem dois tipos de sistemas multitarefa: • Não preempitivo (cooperativo) • Ex: Windows 3.x, Windows 9x (aplicativos 16 bits) • Preempitivo • Ex: Windows NT, OS/2, UNIX, Windows9x (aplicativos 32 bits) Introdução aos Sistemas Operacionais

  28. Sistemas distribuídos • Distribuir a realização de uma tarefa entre vários computadores • Sistema distribuído • Conjunto de computadores autônomos interconectados de forma a possibilitar a execução de um serviço • Existência de várias máquinas é transparente • Software fornece uma visão única do sistema • Palavra-chave: transparência Introdução aos Sistemas Operacionais

  29. Sistemas distribuídos • Sistemas fracamente acoplados • Máquinas independentes • Cada máquina possui o seu próprio sistema operacional • Comunicação é feita através de troca de mensagens entre processos • Vantagens • Compartilhamento de recursos • Balanceamento de carga • Aumento confiabilidade Introdução aos Sistemas Operacionais

  30. Sistemas paralelos • Máquinas multiprocessadoras possuem mais de um processador • Sistemas fortemente acoplados • Processadores compartilham memória e relógios comuns • Comunicação é realizada através da memória • Vantagens • Aumento de troughput (número de processos executados) • Aspectos econômicos • Aumento de confiabilidade Introdução aos Sistemas Operacionais

  31. Sistemas paralelos • Symmetricmultiprocessing (SMP) • Cada processador executa uma cópia idêntica do sistema operacional • Vários processos podem ser executados em paralelo sem perda de desempenho para o sistema • A maioria dos sistemas operacionais atuais suportam SMP através do conceito de multitreading • Asymmetricmultiprocessing • Cada processador executa uma tarefa específica • Ex: processador mestre para alocação de tarefas a escravos Introdução aos Sistemas Operacionais

  32. Sistema de tempo real • Empregado para o controle de procedimentos que devem responder dentro de um certo intervalo de tempo • Ex: experimento científicos, tratamento de imagens médicas, controle de processos, etc. • Noção de tempo real é dependente da aplicação • Milisegundos, minutos, horas, etc. • Dois tipos • Hard real time • Tarefas críticas são completadas dentro de um intervalo de tempo • Soft real time • Tarefa crítica tem maior prioridade que as demais Introdução aos Sistemas Operacionais

More Related