pearson education sistemas operacionais modernos – 2ª edição 1 introdução (módulo i)...

30
1 n Sistemas Operacionais Moder Introdução (Módulo I) Infra-Estrutura de Software http://www.cin.ufpe.br/~if677 1. O que é um sistema operacional 2. História dos sistemas operacionais 3. Os vários tipos de sistemas operacionais 4. Estrutura de sistemas operacionais Principal fonte:

Upload: camila-alva

Post on 07-Apr-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

1Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Introdução(Módulo I)

Infra-Estrutura de Softwarehttp://www.cin.ufpe.br/~if677

1. O que é um sistema operacional2. História dos sistemas operacionais3. Os vários tipos de sistemas operacionais4. Estrutura de sistemas operacionais

Principal fonte:

Page 2: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

2Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Conceitos Fundamentais:software básico e software aplicativo

• Um sistema operacional é um programa ou um conjunto de programas (software básico - kernels, bibliotecas, drivers, protocolos, compiladores, etc) cuja função é servir de interface entre um computador e o usuário

• Dois modos distintos de conceituar um sistema operacional:– pela perspectiva do usuário ou programador (visão top-down): é

uma abstração do hardware, fazendo o papel de intermediário entre o aplicativo (software aplicativo ou aplicação) e os componentes físicos do computador (hardware); ou

– numa visão bottom-up, de baixo para cima: é um gerenciador de recursos, i.e., controla

• quais aplicações (processos) podem ser executadas,• quando,• que recursos (memória, disco, periféricos) podem ser utilizados.

Page 3: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

3Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Para quê software básico?

• O que acontece quando ligamos o computador?

• E quando “clicamos” num ícone?• Como funcionam dois programas ao mesmo

tempo?• Como ocorre o mapeamento de discos?• E se dois programas quiserem usar o mesmo

recurso?• E se estiverem cooperando, mas em

máquinas diferentes interligadas em rede?

Page 4: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

4Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Sistema de Computação

• Um sistema de computação consiste em– hardware– programas do sistema– programas de aplicação

Page 5: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

5Pearson Education Sistemas Operacionais Modernos – 2ª Edição

O que é um Sistema Operacional?

• É uma máquina estendida– Oculta os detalhes complicados que têm quer ser

executados– Apresenta ao usuário uma máquina virtual, mais

fácil de usar

• É um gerenciador de recurso– Cada programa tem um tempo com o recurso– Cada programa tem um espaço no recurso

Page 6: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

6Pearson Education Sistemas Operacionais Modernos – 2ª Edição

História dos Sistemas Operacionais (1)

Antigo sistema em lote– traz os cartões para o 1401– lê os cartões para a fita– coloca a fita no 7094 que executa o processamento– coloca a fita no 1401 que imprime a saída

Page 7: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

7Pearson Education Sistemas Operacionais Modernos – 2ª Edição

História dos Sistemas Operacionais (2)

• Primeira geração 1945 - 1955– Válvulas, painéis de programação

• Segunda geração 1955 - 1965– transistores, sistemas em lote

• Terceira geração 1965 – 1980– CIs (circuitos integrados) e multiprogramação

• Quarta geração 1980 – presente– Computadores pessoais

Page 8: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

8Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Estrutura de um job típico (lote de cartões) – 2a. geração

História dos Sistemas Operacionais (3)

Page 9: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

9Pearson Education Sistemas Operacionais Modernos – 2ª Edição

• Sistema de multiprogramação – Três jobs na memória – 3a. geração

História dos Sistemas Operacionais (4)

Page 10: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

10Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Diversidade de Sistemas Operacionais

• Sistemas operacionais de computadores de grande porte

• Sistemas operacionais de servidores / redes• Sistemas operacionais de multiprocessadores• Sistemas operacionais de computadores pessoais• Sistemas operacionais de celulares• Sistemas operacionais de tempo-real• Sistemas operacionais embarcados• Sistemas operacionais de cartões inteligentes

Page 11: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

11Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Revisão sobre hardware de computadores (1)

Componentes de um computador pessoal simples

Bus

Page 12: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

12Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Software, hardware e comunicação

Bus

Rede

Ger. Disco/Sist. Arq.Ger. E/SGer.

MemóriaGer.

Processos

Sub-sist.Comunicação SOIn

fraS

WIn

fraH

WIn

fraC

om

•Como funciona um programa?•Como funcionam dois programas ao mesmo tempo?•E se estiverem cooperando, mas em máquinas diferentes interligadas em rede?

Page 13: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

13Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Revisão sobre hardware de computadores (2)

• Típica hierarquia de memória– números mostrados são apenas aproximações

Page 14: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

14Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Revisão sobre hardware de computadores (3)

(a) Passos para iniciar um dispositivo de E/S e obter uma interrupção(b) Como a CPU é interrompida

Page 15: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

15Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Estrutura de Sistemas Operacionais (1)

Modelo simples de estruturação de um sistema monolítico

SO = um processo com n procedimentos

Page 16: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

16Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Estrutura de SistemasOperacionais (2)

Estrutura em camadas

Usuário

Aplicativos

Utilitários

Sistema Operacional

Computador (Hardware)

• Modularidade• Hierarquia• Facilita evolução e

adaptação a novos ambientes

Page 17: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

17Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Estrutura de SistemasOperacionais (3)

O modelo cliente-servidor

Page 18: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

18Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Estrutura de SistemasOperacionais (4)

O modelo cliente-servidor em um sistema distribuído

Page 19: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

19Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Revisão

Page 20: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

20Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Para quê software básico?

• Como funcionam dois programas ao mesmo tempo?– Interrupção e escalonamento

• E se dois programas quiserem usar o mesmo recurso?– Controle de concorrência

• E se estiverem cooperando, mas em máquinas diferentes interligadas em rede?– Comunicação

Page 21: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

21Pearson Education Sistemas Operacionais Modernos – 2ª Edição

O que é um Sistema Operacional?

• É uma máquina estendida (uma abstração do hardware)

• É um gerenciador de recurso

Page 22: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

22Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Sistemas Operacionais

• Diversidade

• Estrutura– Monolítico– Em camadas– Cliente-servidor

Page 23: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

23Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Conceito BásicoProcesso

Contexto de processoVídeo

TecladoCPUCPU

Memória

E/S

outros dispositivos

CPU: Registradores Memória: Posições em uso E/S: Estado das requisições Estado do processo: Rodando, Bloqueado, Pronto Outras informações

Page 24: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Conceito BásicoProcesso

Estados de um processo

Pronto Rodando

Bloqueado

Criar Terminar

bloquear (I/O)desbloquear

ID do ProcessoEstado

Program CounterPonteiros da Memória

Contexto (regs.)I/O Status

Prioridade

Informações gerais• tempo de CPU• limites, usuário, etc.

Contexto

executar

suspender(tempo)

Page 25: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

25Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Criação de Processos

• Principais eventos que levam à criação de processos– Início do sistema– Execução de chamada ao sistema de

criação de processos– Solicitação do usuário para criar um novo

processo– Início de um job em lote

Page 26: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

26Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Término de Processos

• Condições que levam ao término de processos– Saída normal (voluntária)– Saída por erro (voluntária)– Erro fatal (involuntário)– Cancelamento por um outro processo

(involuntário)

Page 27: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

27Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Hierarquias de Processos

• Processo “pai” cria um processo “filho”, processo filho pode criar seu próprio processo

• Formam uma hierarquia– UNIX chama isso de “grupo de processos”

• Windows não possui o conceito de hierarquia de processos– Todos os processos são criados iguais

(sem conceito de “pai” e “filho”)

Page 28: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

28Pearson Education Sistemas Operacionais Modernos – 2ª Edição

ConceitoMultiprogramação

a) Multiprogramação de quatro programasb) Modelo conceitual de 4 processos sequenciais,

independentes, masc) Somente um programa está ativo a cada momento –

escalonamento

Page 29: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

29Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Escalonamento de processos

• Quando um ou mais processos estão prontos para serem executados, o sistema operacional deve decidir qual deles vai ser executado primeiro

• A parte do sistema operacional responsável por essa decisão é chamada escalonador, e o algoritmo usado para tal é chamado de algoritmo de escalonamento

• Para que um processo não execute tempo demais, praticamente todos os computadores possuem um mecanismo de relógio (clock) que causa uma interrupção, periodicamente

Page 30: Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Introdução (Módulo I) Infra-Estrutura de Software if677 1.O que

30Pearson Education Sistemas Operacionais Modernos – 2ª Edição

O que vamos ver neste Módulo I?Conceitos Fundamentais

• Gerenciamento de Processos / Escalonamento

• Entrada e Saída

• Gerenciamento de Memória / Memória Virtual

• Gerenciamento de Disco / Sistemas de Arquivos