Sistemas operacionais
This presentation is the property of its rightful owner.
Sponsored Links
1 / 30

Sistemas Operacionais PowerPoint PPT Presentation


  • 95 Views
  • Uploaded on
  • Presentation posted in: General

Sistemas Operacionais. Sumário. System Calls Interrupções e exceções 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.

Download Presentation

Sistemas Operacionais

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Sistemas operacionais

Sistemas Operacionais


Sum rio

Sumário

  • System Calls

  • Interrupções e exceções

    • Tratamento de interrupções

    • Múltiplasinterrupções

    • Estruturas de controle

  • Arquitetura de um SO

    • Arquiteturamonolítica

    • Arquiteturaemcamadas

    • Máquina virtual

    • Arquitetura microkernel

  • Tendências


Introdu o

Introdução

  • Sistema computacional


System calls 1

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 (2)

  • System calls


System calls 3

System Calls (3)

  • Chamada a uma rotina do sistema


System calls 4

System Calls (4)

  • Funções

    • 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


Sistemas operacionais

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

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

  • Mecanismo de Interrupção e Exceção


Sistemas operacionais

Hardware

Software

(Rotina de serviço)

Dispositivo de controle ou

outro sistema de hardware

que permita ativar uma interrupção

Salva informações remanescentes sobre o estado do processo

Processador termina a execução da instrução corrente

Processa a interrupção

Processador reconhece sinal de interrupção

Restaura a informação do estado do processo

Processador coloca PSW e PC na pilha de controle

Restaura o velho PSW e PC

Processador carrega novo valor do PC, baseado na interrupção

Interrupção e Exceção (3)

Fluxo de Proces-

samento de uma

Interrupção


Sistemas operacionais

Programa

do usuário

Interrupção

Rotina X

Interrupção

Rotina Y

Múltiplas interrupções(1)

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


Sistemas operacionais

Programa

do usuário

Interrupção

Rotina X

Interrupção

Rotina Y

-

+

Múltiplas interrupções(2)

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


Sistemas operacionais

imagem do processo

Tabelas de Memória

Processo 1

Memória

Processo 1

Tabelas de E / S

Processo 2

Dispositivos

Arquivos

Processo 3

Tabelas de Arquivos

Processo n

Processos

Tabela de Processos

imagem do processo

Processo n

Estruturas de controle


Sistemas operacionais

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


Sistemas operacionais

Arquitetura de um SO

Usuário (*)

Residente

Residente

kernel

Sistema

Monolítico

Sistema

Modular

(camadas)

Cliente / Servidor

(*) “Só por prazer” – Linus Torvalds x Tanenbaum


Sistemas operacionais

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

Arquitetura Monolítica (2)

  • Arquitetura monolítica


Sistemas operacionais

Programa aplicativo

Programa SO residente

Drivers de Dispositivo

do MS-DOS

Drivers de Dispositivo da BIOS

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.

(*) O excesso de

liberdade torna o SO

vulnerável.


Sistemas operacionais

kernel

Executivo

Supervisor

Usuário

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.

  • 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


Sistemas operacionais

Programas Usuário

Trap

Bibliotecas

Nível Usuário

Nível Kernel

Interface Chamada Sistema

Subsistema

Arquivo

Comunicação

entre processos

Subsistema

Controle

Processo

Escalonamento

Buffer Cache

Gerenciamento

Memória

Dispositivos Drivers

Bloco

Caractere

Controle de Hardware

Nível Kernel

Nível Hardware

Hardware

Arquitetura de um UNIX tradicional


Sistemas operacionais

Servidor

Memória

Servidor

Processos

Servidor

Arquivos

Servidor

Rede

Servidor

Impressão

mensagens

Modo Usuário

Modo Kernel

mKernel

Hardware

Arquitetura kernel (cliente servidor)


Sistemas operacionais

Coff

A.out

Elf

NFS

Exec

Switch

FFS

File Mappings

S5FS

Device Mappings

RFS

Vnode/vfs

Interface

Virtual

Memory

Framework

Common

Facilities

Scheduler

Framework

Block

Device

Switch

Disk Driver

Time-Sharing

Processes

STREAMS

Tape Driver

System

Processes

Network Driver

Tty Driver

Arquitetura kernel do UNIX

Anonymous Mappings


Sistemas operacionais

NTVDM

Aplicação

Posix

Aplicação

Win32

Aplicação

OS/2

Winlogon

DOS

Win 16

Subsistema

Posix

Subsistema

CRS

Subsistema

OS/2

Subsistema

Segurança

Modo Usuário

Modo Kernel

Serviços Executivos

Gerenciamento

E/S

Gerenciamento

Objeto

Proteção

Referente

Monitor

Gerenciamento

Processo

Chamada

Procedimento

Local

Gerenciamento

Memória

Virtual

Gerenciamento

Windows

& GDI

Dispositivo

Drivers

Dispositivo

Drivers

Microkernel

Hardware Abstraction Layer (HAL)

Hardware

Arquitetura Windows NT


Sistemas operacionais

Aplicativo

Win32

Aplicativo

OS/2

Aplicativo

POSIX

Servidor

Win32

Servidor

OS/2

Servidor

POSIX

Kernel WIN NT

Arquitetura cliente servidor do Windows NT

O Kernel controla toda a troca de mensagens entre a aplicação e o respectivo servidor.


Sistemas operacionais

MV2

MV3

MV1

Processos

Processos

Processos

Processos

Kernel1

Kernel2

Kernel3

Kernel

Máquina Virtual

Hardware

Hardware

Máquina Não-Virtual

Máquina Virtual

Máquina virtual

Uma máquina real pode abrigar internamente diferentesambientes 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


Sistemas operacionais

arquivos .class

da API Java

Aplicação JAVA

arquivos .class

Programa Java

Máquina Virtual JAVA

Carregador de Classes

Sistema Operacional

bytecodes

Interpretador Java

Hardware

(*)

Sistema Host

Máquina virtual Java

(*) Dependente do Hardware


Sistemas operacionais

Prog1.java

Prog2.java

Compilador

Java

Ambiente de Compilação

Prog1.class

Prog2.class

arquivos .class

da API Java

bytecodes

Carregador de Classes

Ambiente de Execução

(plataforma Java)

bytecodes

Interpretador Java

Sistema Host

Ambiente de desenvolvimento JAVA


Sistemas operacionais

Tendências nos sistemas atuais

  • Arquitetura MicroKernel

  • Sistema MultiThread

  • Múltiplos Processadores Simétricos

  • Distribuído

  • Projeto Orientado a Objetos


Sistemas operacionais

Descrição de

Processo e

Controle

Escalonamento

Concorrência

Gerenciamento

de Memória

Gerenciamento

de E/S

Gerenciamento

de Arquivo

Rede

Segurança

Tópicos a serem abordados


Sistemas operacionais

FIM

Sistemas Operacionais – Jorge Luiz de Castro e Silva


  • Login