1Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Sistemas Operacionais-Conceitos Básicos
Ernesto Massa
(slides fornecidos pela Prentice Hall e adaptados para esta disciplina)
2Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Introdução
Capítulo 1 O que é um sistema operacional História dos sistemas operacionais Conceitos sobre sistemas operacionais Chamadas ao sistema Estrutura de sistemas operacionais
3Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Relembrando...
Componentes de um Sistema Computacional:
4Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Relembrando...
Multiprogramação:Memória
CPU
tarefa 3 tarefa 4 tarefa 5
tarefa 6 tarefa 7 tarefa 8
SPOOLde JOB’s
SPOOL deImpressão
tarefa 9tarefa 10tarefa 11 tarefa 2
tarefa 1
Escalonamentode tarefas Escalonamento
de CPU
5Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Conceitos sobre Sistemas Operacionais
Programa: Componentes:
Código executável;
Entidade Passiva.
Processo: Componentes:
Código executável; Valor das variáveis do
programa (dados); Dispositivos alocados; Pilhas; Registradores, etc.
Entidade Ativa.
6Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Conceitos sobre Sistemas Operacionais
Rotinasdo S.O.
Modo Usuário Modo Monitor
Vetor deInterrupções
Serviço 1
Serviço 2
Serviço 3
SystemCall
Retorno docontrole paraa aplicação
Apenas instruções não privilegiadas
Todas as instruções disponíveis
Processo
7Pearson Education Sistemas Operacionais Modernos – 2ª Edição
System Call’s
Interface entre os processos e o S.O.; Disponíveis diretamente em linguagem de
montagem; Incorporadas ao compilador nas
linguagens de alto nível; Chamadas feitas diretamente: C, C++; Passagem de parâmetros:
Registradores; Memória; Pilhas do Sistema;
8Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Sistemas OperacionaisMonolíticos
Os procedimentos do S.O. não estão estruturados de uma forma específica.
O Sistema Operacional é formado por uma coleção de procedimentos com interface e funcionalidades bem definidas;
Qualquer procedimento pode fazer chamadas a qualquer procedimento;
Aplicação
Aplicação
Rotinasdo S.O.
ModoUsuário
ModoMonitor (kernel)
Vetor deInterrupções
SystemCall
hardware
9Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Estrutura de Sistemas Operacionais
Modelo simples de estruturação de um sistema monolítico
10Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Sistemas Operacionaisem Camadas
Camadas com funções específicas;
Cada camada utiliza os serviços da camada inferior e fornece serviços à camada superior;
Camadas inferiores são máquinas estendidas;
A hierarquia de níveis protege as camadas mais internas;
Prejudica a performance do sistema;
Aplicação
Aplicação
Rotinasdo S.O.
ModoUsuário
ModoMonitor
Vetor deInterrupções
SystemCall
hardware
11Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Estrutura de Sistemas Operacionais
Estrutura do sistema operacional THE
12Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Máquinas Virtuais
Permitem o compartilhamento do mesmo hardware por diversos S.O.
Implementa apenas a função de multiprogramação;
É uma imagem perfeitado hardware real;
Complexidade: Modos Monitor e Usuário
virtuais; Benefícios:
VM totalmente isoladas; Redes virtuais; Compartilhamento de
dispositivos; Ambiente de testes;
hardware
kernel
sistema 1 sistema 2 sistema 3
Usuários /Aplicações
Usuários /Aplicações
Usuários /Aplicações
13Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Máquinas Virtuais
Exemplo da utilização desta arquitetura pela linguagem Java:
Independênciado Hardware
Portabilidade;
hardware
Sistema Operacional
Máquina Virtual Java
AplicaçãoJava
14Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Estrutura de Sistemas Operacionais
Estrutura do VM/370 com o CMS
15Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Sistemas OperacionaisCliente / Servidor (Microkernel)
Kernel menor possível; Serviços disponibilizados
como Servidores no modo usuário;
Solicitação de serviços através de mensagens;
A principal tarefa do Microkernel é prover a troca de mensagens entre processos;
S.O. de maior portabilidade e mais confiável;
Filosofia ideal para sistemas distribuídos;
hardware
Microkernel
AplicaçõesCliente
Servidores
ModoUsuário
ModoMonitor
16Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Estrutura de Sistemas Operacionais
O modelo cliente-servidor