2010 02 26 Sistemas Operacionais Aula1

2.754 visualizações

Publicada em

Publicada em: Tecnologia
  • Seja o primeiro a comentar

2010 02 26 Sistemas Operacionais Aula1

  1. 1. Sistemas Operacionais Marcelo Sabaris Carballo Pinto
  2. 2. 1º- Aula
  3. 3. Introdução <ul><li>Hardware </li></ul><ul><li> – Prove recursos para execução de instruções, </li></ul><ul><li>manipulação de dados </li></ul><ul><li>Programa de Aplicação </li></ul><ul><li>– Solução computacional de um problema </li></ul><ul><li>– Define a utilização dos recursos do sistema </li></ul><ul><li>• PROBLEMA </li></ul><ul><li>– O hardware sozinho não oferece um ambiente de </li></ul><ul><li>utilização simples para resolução computacional de </li></ul><ul><li>problemas </li></ul>
  4. 4. Introdução <ul><li>Problema Exemplo </li></ul><ul><li>– Considere a implementação de um sistema computacional onde duas entidades (software) produz e consome dados da memória, respectivamente </li></ul><ul><li>– Como sincronizar a produção e o consumo </li></ul><ul><li>de dados? </li></ul>
  5. 5. Conceito de Sistema Operacional <ul><li>DEFINIÇÕES </li></ul><ul><li>1. Conjunto de programas que trabalham de modo </li></ul><ul><li>cooperativo com o objetivo de prover uma máquina mais flexível e adequada ao programador do que aquela apresentada pelo hardware </li></ul><ul><li>2. A program that controls the execution of application programs </li></ul><ul><li>3. An interface between applications and hardware </li></ul>
  6. 6. Conceito de Sistema Operacional <ul><li>4. Programa que age como um intermediário entre o </li></ul><ul><li>usuário de um computador e o hardware deste </li></ul><ul><li>computador”. </li></ul>
  7. 7. Definições <ul><li>– Alocador de Recursos </li></ul><ul><li>• Gerencia e aloca recursos aos “usuários” </li></ul><ul><li>– Programa de controle </li></ul><ul><li>• Controla a execução de programas do usuário e operações de dispositivos de E/S </li></ul>
  8. 8. <ul><li>- Kernel </li></ul><ul><li>• O núcleo do sistema operacional. O kernel administra os recursos do computador dividindo-os entre os vários processos que o requisitam. Gerencia e controla o acesso ao sistema de arquivos, a memória, a tabela de processos e o acesso aos dispositivos e periféricos, entre outras atribuições. É a cabeça do sistema operacional. O kernel do Linux é aberto para que todos os usuários possam alterá-lo e melhorá-lo, ao contrário do Windows onde o kernel não está aberto. </li></ul>
  9. 9. Função do Sistema Operacional <ul><li>– Oferecer uma interface simplificada do </li></ul><ul><li>sistema computacional para o usuário </li></ul><ul><ul><ul><li>Fornece abstrações simplificadas </li></ul></ul></ul><ul><ul><ul><li>Exemplo: Arquivos no Windows </li></ul></ul></ul><ul><li>– Gerenciar os recursos do hardware </li></ul><ul><ul><ul><li>Define, aplica e supervisiona políticas de acesso e utilização dos recursos </li></ul></ul></ul><ul><ul><ul><li>Exemplo: Gerência do espaço de endereçamento </li></ul></ul></ul>
  10. 10. Conceito de Sistemas Operacionais
  11. 11. Características desejáveis <ul><li>• Eficiência </li></ul><ul><li>– Baixo tempo de resposta, pouca ociosidade da UCP e alta taxa de processamento. </li></ul><ul><li>• Confiabilidade </li></ul><ul><li>– Pouca incidência de falhas e exatidão dos dados computados. </li></ul><ul><li>• Mantenabilidade </li></ul><ul><li>– Facilidade de correção ou incorporação de novas características. </li></ul>
  12. 12. Características desejáveis <ul><li>• Pequena dimensão </li></ul><ul><li>– Simplicidade e baixa ocupação da memória </li></ul><ul><li>• Concorrência </li></ul><ul><li>– Capacidade de manutenção de tarefas concorrentes </li></ul><ul><li>• Compartilhamento de recursos </li></ul><ul><li>– Gerencia de recursos de hardware e software compartilhados </li></ul>
  13. 13. Conceito de Sistemas Operacionais <ul><li>• Núcleo </li></ul><ul><li>– Responsável pela gerência do processador, tratamento de interrupções, comunicação e sincronização de processos. </li></ul><ul><li>• Gerente de Memória </li></ul><ul><li>– Responsável pelo controle e alocação de memória aos processos ativos. </li></ul>
  14. 14. Conceito de Sistemas Operacionais <ul><li>• Sistema de E/S </li></ul><ul><li>– Responsável pelo controle e execução de operações de E/S e otimização do uso dos periféricos. </li></ul><ul><li>Sistema de Arquivos </li></ul><ul><li>– Responsável pelo acesso e integridade dos dados residentes na memória secundária. </li></ul><ul><li>Processador de Comandos / Interface com o Usuário </li></ul><ul><li>– Responsável pela interface conversacional com o usuário. </li></ul>
  15. 15. Tipos de Sistemas Operacionais <ul><li>• Os vários tipos surgiram da evolução histórica dos sistemas operacionais </li></ul><ul><li>– Gerações de Sistemas operacionais </li></ul><ul><li>• Tipos mais comuns </li></ul><ul><li>– SO de Computadores de Grande Porte </li></ul><ul><li>– SO de Servidores </li></ul><ul><li>– SO de multiprocessadores </li></ul><ul><li>– SO de Computadores Pessoais </li></ul><ul><li>– SO de Tempo Real </li></ul><ul><li>– SO de Embarcados </li></ul><ul><li>– SO de Cartões Inteligentes </li></ul>
  16. 16. Tipos de Sistemas Operacionais <ul><li>SO de Computadores de Grande Porte </li></ul><ul><li>– O hardware caracteriza-se por grande capacidade de </li></ul><ul><li>E/S </li></ul><ul><li>• Servidores WEB </li></ul><ul><li>– As operações caracterizam-se por execução </li></ul><ul><li>simultânea de muitas tarefas requerendo muita E/S </li></ul><ul><li>– Tarefas </li></ul><ul><li>• Lote </li></ul><ul><li>• Transações </li></ul><ul><li>• Tempo Compartilhado </li></ul>
  17. 17. Tipos de Sistemas Operacionais <ul><li>SO de Servidores </li></ul><ul><li>– São “computadores pessoais de grande </li></ul><ul><li>porte” </li></ul><ul><li>• Permitem o compartilhamento de hardware e </li></ul><ul><li>software </li></ul><ul><li>• Prestam serviço a muitos usuários </li></ul><ul><li>– Impressão </li></ul><ul><li>– Arquivo </li></ul><ul><li>– Mensagens </li></ul><ul><li>– Web </li></ul>
  18. 18. Tipos de Sistemas Operacionais <ul><li>SO de multiprocessadores </li></ul><ul><li>– Gerenciam múltiplas CPUs </li></ul><ul><li>• Podem ser multiprocessadores ou </li></ul><ul><li>multicomputadores </li></ul><ul><li>• A preocupação principal está em: </li></ul><ul><li>– Sincronização e comunicação de processos </li></ul>
  19. 19. Tipos de Sistemas Operacionais <ul><li>SO de Tempo Real </li></ul><ul><li>– O atendimento ao tempo de resposta é a </li></ul><ul><li>principal preocupação </li></ul><ul><li>• O tempo de resposta pode ser crítico ou não </li></ul><ul><li>crítico </li></ul><ul><li>SO de Embarcados </li></ul><ul><li>– Apresentam restrições quanto ao espaço de </li></ul><ul><li>memória ocupado e consumo de potencia </li></ul><ul><li>– Geralmente também possuem restrição de </li></ul><ul><li>tempo </li></ul>
  20. 20. Conceitos de Sistema Operacional <ul><li>PROCESSOS </li></ul><ul><ul><li>Processo é uma abstração para um programa em </li></ul></ul><ul><li>execução </li></ul><ul><ul><li>Processos possuem espaço de endereçamento </li></ul></ul><ul><li>próprio contendo (instruções dados e pilha) </li></ul><ul><ul><li>Tabela de processos é uma estrutura do SO que </li></ul></ul><ul><li>armazena informações sobre o processo </li></ul><ul><ul><li>Processos podem estar </li></ul></ul><ul><ul><li>• Ativos (em Execução) </li></ul></ul><ul><ul><li>• Suspensos (Bloqueados) </li></ul></ul><ul><ul><li>• Prontos </li></ul></ul>
  21. 21. Conceitos de Sistema Operacional <ul><li>Para a solução de uma tarefa processos podem </li></ul><ul><li>– Criar processos filhos </li></ul><ul><li>– Comunicar (comunicação interprocessos) </li></ul><ul><li>Interpretador de Comandos (shell) é o processo que recebe e trata comandos do usuário </li></ul><ul><li>Processos são identificados por um PID e geralmente associados a um UID </li></ul>
  22. 22. Conceitos de Sistema Operacional <ul><li>DEADLOCK </li></ul><ul><li>– É uma situação onde dois processos </li></ul><ul><li>competem por recursos do sistema e </li></ul><ul><li>ficam indefinidamente bloqueados. </li></ul>
  23. 23. <ul><li>Boa Noite </li></ul>

×