Sistemas Operacionais 1 Viso geral e evoluo dos

  • Slides: 36
Download presentation
Sistemas Operacionais 1. Visão geral e evolução dos SOs Texto base: capítulo 2 Operating

Sistemas Operacionais 1. Visão geral e evolução dos SOs Texto base: capítulo 2 Operating Systems: Internals and Design Principles W. Stallings

Sistema Operacional? Um programa que controla a execução dos programas de aplicação l Uma

Sistema Operacional? Um programa que controla a execução dos programas de aplicação l Uma interface entre o usuário e o h/w l Um programa que mascara os detalhes do h/w Duas visões: gerenciador de recursos e máquina virtual l IC - UFF

SO como máquina virtual usuário projetista do SO programador Aplicativos Utilitários Sistema Operacional Máquina

SO como máquina virtual usuário projetista do SO programador Aplicativos Utilitários Sistema Operacional Máquina física IC - UFF

Máquina virtual: serviços Criação de programas l Execução de programas l Acesso a dispositivos

Máquina virtual: serviços Criação de programas l Execução de programas l Acesso a dispositivos de E/S l Acesso controlado a arquivos l Acesso ao sistema l Detecção e correção de erros l Contabilidade l IC - UFF

Máquina virtual: serviços l Criação de programas n n n IC - UFF SO

Máquina virtual: serviços l Criação de programas n n n IC - UFF SO oferece facilidades: editores e depuradores tipicamente estes serviços não são parte do SO e sim dos utilitários contudo, são acessíveis através do SO

Máquina virtual: serviços l Execução de programas n n IC - UFF carregamento do

Máquina virtual: serviços l Execução de programas n n IC - UFF carregamento do programa em memória arquivos e dispositivos de E/S devem ser iniciados outros recursos devem ser preparados SO gerencia estas ações para o usuário

Máquina virtual: serviços l Acesso a dispositivos de E/S n n IC - UFF

Máquina virtual: serviços l Acesso a dispositivos de E/S n n IC - UFF cada dispositivo tem seu próprio conjunto de instruções ou sinais de controle SO esconde estas ações e usuário só executa leituras e escritas

Máquina virtual: serviços l Acesso controlado a arquivos n n n IC - UFF

Máquina virtual: serviços l Acesso controlado a arquivos n n n IC - UFF usuário não se preocupa coma natureza do dispositivo de E/S (disco, fita, . . . ) usuário não se preocupa com formato do arquivo no dispositivo mecanismos de proteção em caso de múltiplos usuários

Máquina virtual: serviços l Acesso ao sistema n n n IC - UFF SO

Máquina virtual: serviços l Acesso ao sistema n n n IC - UFF SO controla acesso ao sistema como um todo e a recursos específicos em particular i. e. , proteção contra acesso não autorizado i. e. , resolução de conflitos em caso de disputa

Máquina virtual: serviços l Detecção e correção de erros n n n IC -

Máquina virtual: serviços l Detecção e correção de erros n n n IC - UFF erros de h/w: memória, dispositivos, . . . erros de s/w: estouro aritmético, acesso proibido a certas posições de memória correção da situação com mínimo de impacto no sistema

Máquina virtual: serviços l Contabilidade n n IC - UFF coleta de estatísticas monitoramento

Máquina virtual: serviços l Contabilidade n n IC - UFF coleta de estatísticas monitoramento de desempenho uso: melhoria de desempenho, melhorias futuras tarifação em um sistema multiusuário

SO: gerenciador de recursos Sistema computacional Dispositivos de E/S controlador de E/S (núcleo do)

SO: gerenciador de recursos Sistema computacional Dispositivos de E/S controlador de E/S (núcleo do) SO controlador de E/S • • • controlador de E/S programas e dados memória processador IC - UFF • • • processador • • •

Sistema operacional É um programa! l Direciona o processador no uso dos recursos do

Sistema operacional É um programa! l Direciona o processador no uso dos recursos do sistema e sobre o momento de executar outros programas l SO libera o processador para que outros programas possam executar l IC - UFF

Evolução de um SO l Um SO deve evoluir ao longo do tempo para:

Evolução de um SO l Um SO deve evoluir ao longo do tempo para: n n n IC - UFF receber novos tipos de hardware (e. g. , novo terminal gráfico) atender novos serviços (e. g. , sistema de janelas) reparar defeitos

Monitores Software que controla a execução de outros programas l SO de lote (batch):

Monitores Software que controla a execução de outros programas l SO de lote (batch): jobs (tarefas) são carregados juntos l Monitor é residente em memória principal l Utilitários são carregados à medida da necessidade l IC - UFF

Monitor: mapa de memória processamento de interrupção controladores de dispositivos Monitor (residente) seqüenciamento de

Monitor: mapa de memória processamento de interrupção controladores de dispositivos Monitor (residente) seqüenciamento de tarefas interpretador de linguagem de controle programas do usuário IC - UFF

JCL: job control language Tipo especial de linguagem de programação l Direciona o monitor:

JCL: job control language Tipo especial de linguagem de programação l Direciona o monitor: l n n IC - UFF que compilador usar que dados usar que dispositivos montar. . .

JCL: exemplo $JOB $FTN. . . $LOAD $RUN. . . $END IC - UFF

JCL: exemplo $JOB $FTN. . . $LOAD $RUN. . . $END IC - UFF instruções Fortran dados

Características de h/w desejáveis l Proteção de memória n l não permitir que a

Características de h/w desejáveis l Proteção de memória n l não permitir que a área ocupada pelo monitor seja alterada Temporização n n IC - UFF prevenir um job de monopolizar o sistema ocorrência de interrupção quando o tempo termina

Características de h/w desejáveis l Instruções privilegiadas n n l executadas somente pelo monitor,

Características de h/w desejáveis l Instruções privilegiadas n n l executadas somente pelo monitor, e. g. , instruções de E/S ocorrência de interrupção caso o programa do usuário tente uma dessas instruções Interrupções n IC - UFF flexibilidade para controlar programas do usuário

Multiprogramação l Permite que o processador execute outro programa enquanto um espera por E/S

Multiprogramação l Permite que o processador execute outro programa enquanto um espera por E/S espera exec tempo exec A exec B espera exec A exec B tempo IC - UFF

Vale a pena? l Exemplo: computador com 256 K de memória (só para usuário)

Vale a pena? l Exemplo: computador com 256 K de memória (só para usuário) IC - UFF

Vejamos. . . utilização da UCP: monoprogramação multiprogramação IC - UFF

Vejamos. . . utilização da UCP: monoprogramação multiprogramação IC - UFF

Contudo. . . l Necessidade de hardware extra, como: n n l E/S por

Contudo. . . l Necessidade de hardware extra, como: n n l E/S por interrupção ou DMA gerenciamento de memória Necessidade de software extra, como: n n n IC - UFF escalonamento de processos proteção de arquivos sincronização entre processos

Time-sharing Uso de multiprogramação para atendimento de tarefas interativas l UCP é compartilhada l

Time-sharing Uso de multiprogramação para atendimento de tarefas interativas l UCP é compartilhada l Acesso via terminais l IC - UFF

Principais tópicos Processos l Concorrência l Escalonamento de processos l Gerenciamento de memória l

Principais tópicos Processos l Concorrência l Escalonamento de processos l Gerenciamento de memória l Segurança e proteção l Formas de estruturação l IC - UFF

Processos Mais geral que programa l Consiste em um código executável e seus dados

Processos Mais geral que programa l Consiste em um código executável e seus dados associados, além de um contexto de execução l IC - UFF

Concorrência l Principais problemas: n n n IC - UFF sincronização (e. g. ,

Concorrência l Principais problemas: n n n IC - UFF sincronização (e. g. , perda de sinais) exclusão mútua (e. g. , bases de dados) bloqueios (espera infinita)

Escalonamento de processos Como escolher qual processo ocupará o processador? l Alguns critérios: l

Escalonamento de processos Como escolher qual processo ocupará o processador? l Alguns critérios: l n n l justeza diferenciação entre classes vazão máxima minimizar tempo de resposta Níveis de escalonamento IC - UFF

Gerenciamento de memória l Requisitos: n n n l Hierarquia de memória Isolação entre

Gerenciamento de memória l Requisitos: n n n l Hierarquia de memória Isolação entre processos Demandas dinâmicas Proteção e controle de acesso Armazenamento permanente Solução: memória virtual + sistema de arquivos IC - UFF

Memória virtual? i) visão do usuário processador virtual copy read, write ii) visão do

Memória virtual? i) visão do usuário processador virtual copy read, write ii) visão do projetista do SO processador mapeamento real de endereços IC - UFF endereço virtual arquivos memória virtual memória perene memória principal endereço de memória física memória auxiliar swapping

Segurança e proteção l Uma grande preocupação hoje em dia. O que está envolvido?

Segurança e proteção l Uma grande preocupação hoje em dia. O que está envolvido? n n n IC - UFF controle de acesso: quem pode acessar sistema e dados? controle de fluxo de informação: quem pode receber o que certificação: como saber quem é quem?

Formas de estruturação l SOs cada vez mais complexos. Para estruturar, só a programação

Formas de estruturação l SOs cada vez mais complexos. Para estruturar, só a programação modular não é suficiente n n n IC - UFF estruturação em níveis arquitetura em micro-núcleo threads e multithreads

Outras formas l Multiprocessamento simétrico n l SOs distribuídos n l cada processador executa

Outras formas l Multiprocessamento simétrico n l SOs distribuídos n l cada processador executa cópia do SO fornece a ilusão de uma única memória principal Sistemas móveis IC - UFF

Outros requisitos l Sistemas de tempo real (TR) n normalmente usados em aplicações dedicadas

Outros requisitos l Sistemas de tempo real (TR) n normalmente usados em aplicações dedicadas requisitos temporais bem definidos sistemas TR críticos l n l vale a pena usar memória virtual? sistemas TR não-críticos Consumo de energia IC - UFF

Leitura suplementar Operating Systems Concepts, A. Silberschatz e P. B. Galvin, Addison. Wesley l

Leitura suplementar Operating Systems Concepts, A. Silberschatz e P. B. Galvin, Addison. Wesley l Modern Operating Systems, A. S. Tanenbaum, Prentice Hall l IC - UFF