A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Sistemas Operacionais

Apresentações semelhantes


Apresentação em tema: "Sistemas Operacionais"— Transcrição da apresentação:

1 Sistemas Operacionais

2 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

3 Introdução Sistema computacional

4 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

5 System Calls (2) System calls

6 System Calls (3) Chamada a uma rotina do sistema

7 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

8 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.

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

10 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

11 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

12 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 - +

13 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

14 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

15 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

16 Arquitetura monolítica (1)
Dominou até os primeiros grandes sistemas para Mainframes. CTSS (MIT, 1963) – 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.

17 Arquitetura Monolítica (2)

18 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.

19 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

20 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

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

22 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

23 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

24 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.

25 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

26 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

27 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)

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

29 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

30 FIM Sistemas Operacionais – Jorge Luiz de Castro e Silva


Carregar ppt "Sistemas Operacionais"

Apresentações semelhantes


Anúncios Google