Sistemas Operacionais

Slides:



Advertisements
Apresentações semelhantes
Sistemas Operacionais - Aula 6
Advertisements

Sistemas Operacionais
SISTEMAS OPERACIONAIS
Sistemas Operacionais
Sistemas Operacionais Aula II
Sistemas Operacionais
INTRODUÇÃO À COMPUTAÇÃO Sistemas Operacionais
Sistemas Operacionais
Sistemas Operacionais
Sistema Operacional Introdução
DESENVOLVIMENTO DE SISTEMAS PARA INTERNET
Noções de Sistemas Operacionais
Sistemas Operacionais
Profa. Priscila Facciolli
Sistemas Operacionais
Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 4 – Estrutura do Sistema1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo.
Arquitetura de Sistemas Operacionais
Arquitetura de Sistemas Operacionais
Arquitetura de Sistemas Operacionais
Arquitetura de Sistemas Operacionais
Sistemas Operacionais
Problemas com Entrada e Saída
Sistemas Operacionais
SSC SISTEMAS OPERACIONAIS I
SSC SISTEMAS OPERACIONAIS I
SSC SISTEMAS OPERACIONAIS I Aula 4 – Conceitos Básicos
Sistemas Operacionais
Sistemas Operacionais
Objetivos dos SOs: Prover interface entre os usuários e os recursos do sistema.
Sistemas Operacionais
Arquitetura de Sistemas Operacionais
09/03/10 20:13 Claudio de Oliveira – 1/21.
Threads.
Sistemas Operacionais
Conteúdo Estrutura do sistema operacional Funções do Kernel
Sistemas Operacionais I
Sistemas Operacionais
Unidade 1-1 Processos e Threads
O que é Sistema Operacional?
Arquitetura de Sistemas Operacionais
Sistemas Operacionais
Concorrência entre Threads Java
Sistemas Operacionais
Processo Entidade dinâmica e efêmera
Sistemas Operacionais
Suporte de hardware à multiprogramação
Sistemas Operacionais
Sistemas Operacionais
SISTEMAS OPERACIONAIS I
Computação L1: Infra-Estrutura Básica
Sistemas Operacionais
SISTEMAS OPERACIONAIS I
Sistemas Operacionais
2.5 Processos no Minix 1. gerenciamento de processos:
Arquitetura de Sistemas Operacionais
Zeque - Grad. CC1 Sistemas Operacionais Curso de Ciência da Computação da UFPE Prof. José Queiroz - ZEQUE.
Sistemas Operacionais Prof. Fabiano Sabha
Subsistema de Entrada e Saída do Kernel
ESTRUTURA DO SISTEMA OPERACIONAL
Sistemas Operacionais
SISTEMAS OPERACIONAIS
Sistemas Operacionais III – Estrutura do Sistema Operacional
Disciplina: Sistema Operacional Professor: Luciano Ricardi Scorsin.
Sistemas Operacionais IV – Gerenciamento de E/S
ARQUITETURA DE COMPUTADORES Nível do Conjunto de Instruções
Capítulo 5 Entrada/Saída 5.1 Princípios do hardware de E/S
Estruturas de Sistemas Operacionais. Componentes Comuns do Sistema Administração de Processos Administração da Memória Principal Administração do Armazenamento.
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais Prof.: Gustavo Wagner
Capítulo 4 Estrutura do Sistema Operacional
Sistemas de Informações Fundamentos da Computação 9. Sistemas Operacionais Márcio Aurélio Ribeiro Moreira
Transcrição da apresentação:

Sistemas Operacionais

Sumário System Calls Interrupções e exceções Arquitetura de um SO Tratamento de interrupções Múltiplas interrupções Estruturas de controle Arquitetura de um SO Arquitetura monolítica Arquitetura em camadas Máquina virtual Arquitetura microkernel Tendências

Introdução Sistema computacional

System Calls (1) Método empregado para um processo usuário solicitar serviços ao sistema operacional Normalmente baseada em interrupções de software (traps) Aciona a rotina de tratamento de interrupção Identifica serviço requisitado Verifica validade dos parâmetros Executa o serviço Retorna ao processo do usuário

System Calls (2) System calls

System Calls (3) Chamada a uma rotina do sistema

System Calls (4) Funções Tipos de instruções Modos de acesso Gerência de processos e threads Gerência de memória Gerência do sistema de arquivos Gerência de dispositivos Tipos de instruções Privilegiadas Não-privilegiadas Modos de acesso Usuário Kernel ou supervisor

Interrupção e Exceção (1) Tratamento de interrupções - É feito pelo SO, que determina a natureza da interrupção e dispara a Rotina de Serviço adequada para executar as ações que forem necessárias. Detalhes: A execução do programa corrente é suspensa O endereço da Rotina de Serviço é localizado na tabela de interrupções O status do programa corrente é salvo (conteúdo do PC, PSW) O controle do processador é transferido para a rotina de serviço A rotina de SV pode salvar outros dados da tarefa em execução (registradores, ...) O ponto de interrupção pode ocorrer em qualquer parte do programa As rotinas de serviço normalmente fazem parte do Sistema Operacional Existe um “Overhead” adicional para ativar e executar a rotina de serviço.

Interrupção e Exceção (2) Mecanismo de Interrupção e Exceção

Interrupção e Exceção (3) Dispositivo de controle ou outro sistema de hardware que permita ativar uma interrupção Hardware Software Processador termina a execução da instrução corrente Processador reconhece sinal de interrupção Processador coloca PSW e PC na pilha de controle Processador carrega novo valor do PC, baseado na interrupção Salva informações remanescentes sobre o estado do processo Processa a interrupção Restaura a informação do estado do processo Restaura o velho PSW e PC (Rotina de serviço) Fluxo de Proces- samento de uma Interrupção

Múltiplas interrupções (1) Programa do usuário Interrupção Rotina X Rotina Y Modelo seqüencial A Rotina de Serviço desabilita as interrupções Uma nova interrupção só é tratada após o retorno A interrupção pode demorar a ser tratada, o que pode eventualmente ocasionar uma perda de dados Finalizada a Rotina de Serviço de interrupção, o processador checa por interrupções adicionais

Múltiplas interrupções (2) Programa do usuário Interrupção Rotina X Rotina Y Modelo cascata Interrupções têm prioridade Interrupções com alta prioridade interrompem rotinas de serviço de interrupções de menor prioridade Exemplos de prioridade: impressora disco comunicação - +

Estruturas de controle Memória Dispositivos Arquivos Processos Tabelas de Memória Tabelas de E / S Tabelas de Arquivos Tabela de Processos Processo 1 Processo 2 Processo 3 Processo n imagem do processo

Modo de execução do SO Modo usuário  instruções associadas ao uso não privilegiado Modo kernel  instruções associadas ao uso privilegiado Configuração: Onde ?? Um bit do PSW Quando ??? em resposta a determinados eventos

Arquitetura de um SO (*) “Só por prazer” – Linus Torvalds x Tanenbaum Usuário (*) Residente Residente kernel Sistema Monolítico Sistema Modular (camadas) Cliente / Servidor (*) “Só por prazer” – Linus Torvalds x Tanenbaum

Arquitetura monolítica (1) Dominou até os primeiros grandes sistemas para Mainframes. CTSS (MIT, 1963) – 32.000 instruções de 36 bits cada OS/360 (IBM, 1964) – mais de 1 milhão de instruções MULTICS (MIT e Bell Labs) – mais de 20 milhões de instruções Problemas: Bugs Memória Complexidade Arquitetura Modular e, posteriormente, em Camadas.

Arquitetura Monolítica (2)

Drivers de Dispositivo Arquitetura do MS-DOS Vários sistemas comerciais não têm uma estrutura definida, e o MS-DOS é um deles. No MS-DOS as interfaces e níveis de funcionalidade não são bem separados nem estão unificados de forma monolítica. Drivers de Dispositivo do MS-DOS Programa aplicativo Programa SO residente Drivers de Dispositivo da BIOS (*) O excesso de liberdade torna o SO vulnerável.

Arquitetura em camadas O sistema é dividido em níveis sobrepostos. Cada nível oferece funções que só podem ser utilizadas pelas camadas mais externas. kernel Usuário Executivo Supervisor THE (Technische Hogeschool Eindhoven – 1968) – primeiro em camadas (6) MULTICS e OpenVMS foram os seguintes, projetando-as concêntricas Atualmente a maioria adota 2 camadas (kernel – privilegiado e usuário – não privilegiado) – UNIX e Win2000 Arquitetura do OpenVMS

Interface Chamada Sistema Arquitetura de um UNIX tradicional Subsistema Arquivo Programas Usuário Dispositivos Drivers Caractere Bloco Controle de Hardware Hardware Buffer Cache Controle Processo Comunicação entre processos Escalonamento Gerenciamento Memória Interface Chamada Sistema Bibliotecas Trap Nível Usuário Nível Kernel Nível Hardware

Arquitetura kernel (cliente servidor) Modo Kernel Modo Usuário Servidor Arquivos Processos Memória Rede Impressão mKernel Hardware mensagens

Arquitetura kernel do UNIX Common Facilities STREAMS Virtual Memory Framework Block Device Switch Exec Vnode/vfs Interface Scheduler Time-Sharing Processes System S5FS RFS FFS NFS Elf Coff A.out File Mappings Device Mappings Disk Driver Tape Driver Network Driver Tty Driver Anonymous Mappings

Hardware Abstraction Layer (HAL) Arquitetura Windows NT Modo Kernel Hardware Subsistema Posix Microkernel Hardware Abstraction Layer (HAL) Dispositivo Drivers Gerenciamento E/S Objeto Proteção Referente Monitor Processo Chamada Procedimento Local Memória Virtual Windows & GDI Serviços Executivos Segurança OS/2 CRS Aplicação Winlogon Win32 DOS Win 16 NTVDM Modo Usuário

Arquitetura cliente servidor do Windows NT Aplicativo Win32 Servidor OS/2 POSIX Kernel WIN NT O Kernel controla toda a troca de mensagens entre a aplicação e o respectivo servidor.

Máquina virtual Uma máquina real pode abrigar internamente diferentes ambientes virtuais, cada um simulando uma máquina distinta, com memória, SO, recursos e processos próprios. Desta forma, cada usuário (ou aplicativo) parece possuir sua própria máquina Hardware Kernel  Processos Máquina Não-Virtual Hardware Máquina Virtual MV1 MV2 MV3 Processos  Kernel1 Kernel2 Kernel3

Máquina virtual Java Sistema Host Aplicação JAVA Carregador de Classes Interpretador Java arquivos .class Programa Java da API Java bytecodes Sistema Host (*) Máquina Virtual JAVA Hardware Sistema Operacional Aplicação JAVA (*) Dependente do Hardware

Ambiente de desenvolvimento JAVA Prog1.java Prog2.java Compilador Java Prog1.class Prog2.class Carregador de Classes Interpretador Java arquivos .class da API Java bytecodes Sistema Host Ambiente de Compilação Ambiente de Execução (plataforma Java)

Tendências nos sistemas atuais Arquitetura MicroKernel Sistema MultiThread Múltiplos Processadores Simétricos Distribuído Projeto Orientado a Objetos

Tópicos a serem abordados Gerenciamento de Memória Descrição de Processo e Controle Concorrência de Arquivo Rede Segurança de E/S Escalonamento

FIM Sistemas Operacionais – Jorge Luiz de Castro e Silva