410 likes | 514 Views
Sistemas Operacionais. Vilmar Santos Nepomuceno. Roteiro. Introdução Histórico dos Sistemas Operacionais Kernel Processos e Seu Ciclo de Vida Entrada e Saída Gerência de Memória. Introdução. O que se espera de um sistema computacional? Execução de programas de usuário
E N D
SistemasOperacionais Vilmar Santos Nepomuceno
Roteiro Introdução Histórico dos Sistemas Operacionais Kernel Processos e Seu Ciclo de Vida Entrada e Saída Gerência de Memória Orientação a Objetos – Vilmar Santos
Introdução • O que se espera de um sistema computacional? • Execução de programas de usuário • Permitir a solução de problemas • O sistema operacional é um programa colocado entre os programas de usuário e o hardware do computador de forma a atingir esses objetivos Orientação a Objetos – Vilmar Santos
Componentes de um sistema computacional • Hardware • CPU, Memória, Recursos de entrada e saída. • Sistema Operacional – Controla o uso do hardware • Programas aplicativos e de sistema • Definem como os recursos de hardware são empregados na solução de um problema • Usuários Orientação a Objetos – Vilmar Santos
Componentes de um sistema computacional Orientação a Objetos – Vilmar Santos
Sistema Operacional • Conceitos: • programa que controla a execução de programas aplicativos • Interface entre aplicativos e hardware Orientação a Objetos – Vilmar Santos
Sistemas Operacionais • Objetivos: • Tornar mais CONVENIENTE o uso de um computador • Tornar mais EFICIENTE a utilização de um computador • Criar novos aplicativos com independência do hardware Orientação a Objetos – Vilmar Santos
Sistemas Operacionais Intefarces entre usuários e computador Orientação a Objetos – Vilmar Santos
Histórico • Primórdios • Sistema Operacional Inexistente • Usuário é o programador e operador da máquina • Evolução foi motivada por: • Melhor utilização de recursos • Avanços Tecnológicos Orientação a Objetos – Vilmar Santos
Histórico • Sistemas em lote – Batch • Introdução de operadores profissionais • Job • Programa a ser compilado e executado • Jobs são realizados em lote • Passagem entre Jobs continua sendo manual Orientação a Objetos – Vilmar Santos
Histórico • Monitor residente • Evolução • Sequenciamento automático de Jobs • Sistema operacional rudimentar • Execução de um programa por vez – Perda de tempo de E/S Orientação a Objetos – Vilmar Santos
Histórico • Multiprogramação • Manter mais de um programa em execução simultaneamente. • Inovações de hardware: • Interrupções • Sinalização de eventos • Discos magnéticos • Acesso aleatório a diferentes Jobs no disco • Melhor desempenho em acessos de leitura e escrita Orientação a Objetos – Vilmar Santos
Histórico • Sistemas Monousuário • Projetados para suportar um usuário • Ex.: MS-DOS, Windows 3.x, ... • Sistemas Multiusuário • Projetados para suportar vários usuários • Ex.: Unix, Windows NT (2000), ... Orientação a Objetos – Vilmar Santos
Histórico • Sistema Monotarefa • Capazes de executar apenas uma tarefa por vez • Ex.: MS-DOS • Sistema Multitarefa • Capazes de executar várias tarefas simultaneamente • Windows, Linux, ... Orientação a Objetos – Vilmar Santos
Histórico • Sistemas Distribuídos • Distribuir a execução das tarefas por vários computadores • Deve ser feito e forma transparente para o usuário do sistema • Sistemas Paralelos • Distribuir as tarefas por vários processadores • Compartilham recursos de um mesmo computador - Memória Orientação a Objetos – Vilmar Santos
Histórico • Sistemas de Tempo Real • Empregado para sistemas que devem responder dentro de um determinado intervalo de tempo • Dois tipos: • Hard real time • Tarefas críticas são completadas dentro de um intervalo de tempo. • Soft real time • Tarefas críticas possuem mais prioridades que outras. Orientação a Objetos – Vilmar Santos
Kernel • Núcleo do Sistema operacional • Responsável por realizar as chamadas de sistema • O Kernel é composto por módulos, que são carregados a medida que os programas utilitários precisam. • Ex.: Módulo gráfico, Rede, Teclado,... Orientação a Objetos – Vilmar Santos
Processos O que é um programa? O que é um processo? Orientação a Objetos – Vilmar Santos
Processos Um programa pode ter várias instâncias em execução Mesmo código, porém dados e momentos de execução diferentes. Orientação a Objetos – Vilmar Santos
Ciclo de vida de um processo Executando Apto Bloqueado Criação Destruição Orientação a Objetos – Vilmar Santos
Ciclo de vida • Criação • Momento inicial – pré-execução • Programa é carregado na memória • Apto • Após a criação do processo ele se torna apto a entrar em execução • Execução • Programa entra em execução, ocupando o processador Orientação a Objetos – Vilmar Santos
Ciclo de vida • Bloqueado • Processo a espera de uma chamada de entrada/saída • CPU mais rápido que chamadas de entrada/saída • Destruição • O processo términa sua execução • Saída por Erro Orientação a Objetos – Vilmar Santos
Entrada e Saída • O que é um periférico? • Dispositivo conectado ao computador possibilitando sua comunicação com o mundo externo. • Conectados através de uma INTERFACE de hardware • Interfaces se conectam com o computador através do Barramento • Processador dedicado – controladores (Device Drivers) Orientação a Objetos – Vilmar Santos
Entrada e Saída Orientação a Objetos – Vilmar Santos
Entrada e Saída • Tipos de interface de comunicação • Interface Serial • Apenas uma linha de transferência de dados – bit a bit • Interface Paralela • Mais de uma linha para transferência de dados • Ex.: n*8bits Orientação a Objetos – Vilmar Santos
Entrada e Saída • O que são controladores (Device Drivers)? • Conjunto de estruturas de dados que controlam um ou mais dispositivos interagindo com o Kernel via uma interface bem definida. • Como controladores e sistema operacional conversam? • Recebem ordens do processador • Fornecem os estados das operações de entrada e saída • Leitura e Escrita dos dados para o periférico Orientação a Objetos – Vilmar Santos
Entrada e Saída • Programada • Toda iteração entre processador e controlador é responsabilidade do programador • Desvantagem • Desperdício de tempo do processador para verificar continuamente o estado de uma operação de entrada e saída • Orientada a Interrupção • Quando a operação de entrada e saída términa o processador é avisado – Não há desperdício de processamento Orientação a Objetos – Vilmar Santos
Entrada e Saída • Gerenciamento de entrada e saída: • Problema: Entrada e saída é extremamente lenta se comparada com a velocidade de processamento • Objetivo: Tornar o processo mais eficiente Orientação a Objetos – Vilmar Santos
Memória • Qualquer SO possui gerência de memória • Monotarefa – Gerência Simples • Multitarefa – Complexa • Sistemas de memória • Memória Principal – Acessada pela CPU • Memória Secundária – Discos • Programas armazenados em discos • Executar é trazer da memória secundária para principal Orientação a Objetos – Vilmar Santos
Memória • Memória Lógica • Acessada pelo processo • Endereços lógicos • Memória Física • Circuitos integrados • Posição real na memória Orientação a Objetos – Vilmar Santos
Memória • Endereço Lógico X Endereço Físico • Lógico: Gerados pela CPU • Físico: Endereços na memória RAM • Programas “enxergam” apenas endereços lógicos • Endereços lógicos são transformados para endereço físico durante a execução do processo Orientação a Objetos – Vilmar Santos
Memória • MMU – Memory Management Unit • Hardware que faz o mapeamento entre endereço lógico e endereço físico. Orientação a Objetos – Vilmar Santos
Memória MMU Exemplos: Orientação a Objetos – Vilmar Santos
Memória Um programa deve ser transformado em processo para ser executado Orientação a Objetos – Vilmar Santos
Memória Mecanismos para alocação de memória Orientação a Objetos – Vilmar Santos
Memória • Alocação Contígua Simples • Sistemas mais simples • Memória Pricipal dividida • Sistema Operacional • Processo do usuário • Usuário tem controle total da memória • Problema de violação de acesso • Ex.: DOS Orientação a Objetos – Vilmar Santos
Memória • Alocação Contígua Particionada • Existência de multiplas partições • Divisão da memória em blocos • Cada Partição => Um processo • Partições • Fixas • Variáveis Orientação a Objetos – Vilmar Santos
Memória • Alocação Contígua Particionada • O SO é responsável pelo controle das partições • Partições alocadas • Partições Livres • Tamanho das Partições Orientação a Objetos – Vilmar Santos
Perguntas Orientação a Objetos – Vilmar Santos
SistemasOperacionais Vilmar Santos Nepomuceno