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:
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.
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?
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
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
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
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
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)
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)
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
11Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Revisão sobre hardware de computadores (1)
Componentes de um computador pessoal simples
Bus
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?
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
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
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
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
17Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Estrutura de SistemasOperacionais (3)
O modelo cliente-servidor
18Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Estrutura de SistemasOperacionais (4)
O modelo cliente-servidor em um sistema distribuído
19Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Revisão
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
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
22Pearson Education Sistemas Operacionais Modernos – 2ª Edição
Sistemas Operacionais
• Diversidade
• Estrutura– Monolítico– Em camadas– Cliente-servidor
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
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)
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
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)
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”)
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
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
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