53
Adaptado de Silberschatz, Galvin and Gagne ©2009 perating System Concepts – 8 th Edition Capítulo 1: Introdução

Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

Embed Size (px)

Citation preview

Page 1: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

Adaptado de Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Capítulo 1: Introdução

Page 2: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.2 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Capítulo 1: Introdução

Funcionalidades de sistemas operacionais

Organização de sistemas computacionais

Arquitetura de sistemas computacionais

Estrutura de sistemas operacionais

Operações de sistemas operacionais

Gerenciamento de processos

Gerenciamento de memória

Sistemas de armazenamento

Proteção e segurança

Sistemas distribuídos

Sistemas de propósito especial

Ambientes computacionais

Sistemas operacionais de código aberto

Page 3: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.3 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

O que é um sistema operacional?

Programa que age como intermediário entre o usuário do computador e o hardware do computador

Interface entre o usuário e o hardware

Objetivos do sistema operacional:

Executar programas do usuário e tornar a solução de problemas do usuário mais simples

Tornar o sistema de computação conveniente para uso

Usar o hardware do computador de forma eficiente

Page 4: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.4 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Estrutura dos sistemas computacionais

Sistemas computacionais são compostos por quatro componentes:

Hardware – provê recursos computacionais básicos

CPU, memória, dispositivos de E/S

Sistema operacional

Controla e coordena o uso do hardware entre várias aplicações e usuários

Programas aplicativos – definem a forma como os recursos do sistema são utilizados para solucionar problemas computacionais dos usuários

Processadores de texto, compiladores, navegadores web, sistemas de banco de dados, jogos, etc.

Usuários

Pessoas, máquinas, outros computadores

Page 5: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.5 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Componentes do Sistema de Computação

Usuário Usuário 11

Usuário Usuário 22

Usuário Usuário 33

Usuário Usuário nn

Compilador Editor Navegador Banco de texto de dados

Aplicações e programas do sistemaAplicações e programas do sistema

Sistema OperacionalSistema Operacional

Dispositivo Dispositivo físicofísico

Page 6: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.6 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Funções dos sistemas operacionais

Depende do ponto de vista

Usuário

Conveniência

Simplicidade de uso

Sistema

Alocação de recursos

– Múltiplos usuários, múltiplas aplicações

Dispositivos embarcados

Otimização do uso e da bateria

Às vezes, sem interface com usuário

Execução de poucas funções

Etc.;

Page 7: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.7 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Definição de sistema operacional

Alocador de recursos

Gerencia de todos os recursos

Dispositivos de entrada e saída (E/S), arquivos, CPU, memória, etc.;

Resolução de conflitos de alocação

Quem usa primeiro, quanto tempo cada um usa, como é feito o uso, quem pode acessar, etc.

Programa de controle

Controle da execução de programas

Prevenção de erros

– Uso impróprio dos recursos

– Operações não permitidas

Page 8: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.8 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Definição de sistema operacional

Não existe definição universalmente aceita

Definições genéricas

Conjunto de programas que gerenciam os recursos de hardware do computador e provêem uma interface de serviços para as aplicações

Programa em execução a todo o momento no computador (kernel)

– Os demais programas são aplicações do usuário ou do sistema

» Ex: Interface gráfica não é parte do sistema operacional

Page 9: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.9 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Definições de sistema operacional

Multiusuários x monousuário

Multiusuários

Acesso simultâneo de diversos usuários

Monousuário

Acesso de único usuário por vez

– Diferente de existirem diversas contas de usuários

Page 10: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.10 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Definições de sistema operacional

Multitarefa x monotarefa

Multitarefa

Vários programas em execução simultaneamente

– Compartilhamento de tempo

Tipos

– Preemptivo – tempo dividido em fatias e uma fatia é dedicada a cada processo

– Cooperativo – Cada processo deve ceder tempo para outros processos

Monotarefa

Apenas uma tarefa é permitida por vez

Page 11: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.11 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Definições de sistema operacional

Sistemas operacionais em tempo real

Sistema operacional multitarefa

Execução de aplicações em tempo real

Resposta rápida e previsível de eventos

– Tempo máximo de execução de um processo

Sistemas operacionais distribuídos

Sistema operacional que gerencia diversas máquinas e faz com que pareçam apenas uma única máquina

Sistemas operacionais embarcados

Projetados para sistemas embarcados

Máquinas pequenas com baixa autonomia e poucos recursos

Page 12: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.12 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Inicialização do sistema

Programa de inicialização (bootstrap program)

Carregado ao ligar ou reiniciar o computador

Armazenado em  Read Only Memory (ROM) ou Erasable Programmable Read-Only Memory (EPROM)

Principais funções:

Verificar o hardware

Carregar o sistema operacional

Iniciar a execução do sistema operacional

Page 13: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.13 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Organização dos sistemas de computação

Operação do sistema de computação

CPUs e controladores conectados a um barramento comum

Acesso à memória compartilhada

– Execução concorrente

Page 14: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.14 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Operação de sistemas de computação

Execução concorrente de dispositivos de E/S e de CPU

Cada controlador é responsável por um tipo de dispositivo particular

Cada controlador de dispositivo tem um buffer local

CPU move dados de/para uma memória principal para/de um buffer local

A entrada/saída ocorre do dispositivo para o buffer local

Controlador informa a CPU sobre o fim da operação de E/S através de interrupções

Page 15: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.15 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Interrupções

Na recepção de uma interrupção na CPU

Execução da tarefa atual é pausada

Transferência do controle para a rotina de interrupção

Recepção parâmetros para saber qual rotina de interrupção chamar

Armazenamento do endereço de execução atual

– Retorno após o processamento do evento que gerou uma interrupção

Chegada de interrupções é desabilitada durante a execução de uma interrupção

Prevenção de perda de interrupções

Tipos de interrupção

Geradas por hardware

Trap

Interrupção causada por software devido a um erro

Page 16: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.16 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Funcionamento das interrupções

Interrupções de E/S

Fonte: http://marcelmesmo.blogspot.com/2011/11/multiprogramacao.html#.T0uoe_EgfkU

Page 17: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.17 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Funcionamento das interrupções

Page 18: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.18 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Funcionamento das interrupçõesProcesso do

usuário requisita E/S

(troca de processos)

Pedido de E/S chega à controladora do dispositivo Processamento

de E/S

Finalização de E/Se envio de interrupção

Processamento da interrupção

(rotina de interrupção)

Page 19: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.19 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Estruturas de Armazenamento

Organização hierárquica regida por:

Velocidade

Custo

Volatilidade

Tipos principais

Memória principal

Único recursos de amplo armazenamento que pode ser acessado pela CPU

Acesso aleatório

Tipicamente volátil

Armazenamento secundário

Extensão da memória principal para prover ampla capacidade de armazenamento não volátil

Page 20: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.20 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Caching

Processo para armazenar as informações em uso em um sistema de armazenamento mais rápido

Ex: Memória principal funciona como cache para memória secundária

Idéia que norteia a hierarquia de memórias

Informação copiada de memórias mais lentas para memórias mais rápidas temporariamente

Uso

Se dado requisitado está no cache, use-o.

Senão, ir para o próximo nível na hierarquia de memória

Page 21: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.21 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Hierarquia de memórias

Maior custo e maior

velocidade

Page 22: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.22 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Desafios do uso de caching

Gerenciamento do cache

Modificação de dados

Propagação para outros níveis da hierarquia de memória

Uso de múltiplos caches em um mesmo nível

Seleção de dados no cache

Qual dado apagar ao se inserir um dado novo?

Projeto de tamanhos de caches

Page 23: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.23 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Arquitetura de sistemas computacionais

Sistemas com multiprocessadores

Crescente importância

Vantagens

Aumento da vazão

Aumento da confiabilidade

– Degradação suave

– Tolerância a falhas

Tipos:

1. Multiprocessamento assimétrico

– Processador mestre

2. Multiprocessamento simétrico

Page 24: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.24 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Multiprocessamento simétrico

Page 25: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.25 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Projeto de dual core

Page 26: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.26 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Sistemas em cluster

Múltiplos sistemas trabalhando em conjunto

Diferente de multiprocessamento

Usualmente usa uma storage-area network (SAN) para compartilhamento de memória

Provê alta disponibilidade

Tolerância a falhas

Page 27: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.27 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Sistemas em cluster

Page 28: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.28 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Sistemas em cluster

Tipos

Clustering assimétrico

Uma máquina monitorando

– Detecção de falha faz uma máquina monitoradora se tornar executora

Clustering simétrico

Todos os nós executam aplicações e se monitoram

High-performance computing (HPC)

Aplicações escritas com suporte a paralelização

Page 29: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.29 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Estrutura do sistema operacional

Multiprogramação Garante eficiência

Uso de CPU interrompido por um processo durante tempo de espera por E/S

– Troca de processos Organiza os jobs de forma que a CPU não fique ociosa

Manutenção de um subconjunto de jobs na memória Seleção de qual job executar através de escalonamento

Page 30: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.30 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Estrutura do sistema operacional

Estrutura da memória em sistemas multiprogramados

Page 31: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.31 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Estrutura do sistema operacional

Compartilhamento de tempo ou multitarefa Troca de jobs na CPU frequente

Simula um computador interativo– Parece que existem vários jobs sendo executados

simultaneamente» Percepção humana: tempo de resposta inferior a 1

segundo

Page 32: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.32 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Operações do Sistema Operacional Sistemas operacionais são dirigidos por interrupções

Interrupções por hardware Interrupções por erro ou pedido de software (exceções ou traps)

Divisão por zero Loop infinito Tentativas de modificação de outros processos ou do sistema

operacional Proteção do sistema operacional

Modo dual Modo usuário

– Baixo privilégio Modo kernel

– Alto privilégio Modo bit provido por hardware

Detecta durante a execução do sistema se é código de usuário ou de kernel

Instruções privilegiadas só são executadas em modo kernel

Page 33: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.33 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Operações do Sistema Operacional

Page 34: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.34 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Page 35: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.35 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Revisão

Funções do sistema operacional

Interface entre o hardware e o usuário

Alocação de recursos

Quem usa o que e em que momento

Controle de execução

Proteção e segurança

Page 36: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.36 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Revisão

Conceito do multiprogramação ou multitarefa

Problema

Evitar ociosidadeFonte: http://marcelmesmo.blogspot.com/2011/11/multiprogramacao.html#.T0uoe_EgfkU

Page 37: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.37 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Revisão

Conceito do multiprogramação ou multitarefa

Preemptivo x cooperativo

PreemptivoMemória

Processo 1Processo 2Processo 3...Processo n

TempoSlot de tempo

Pro

cess

o

1 Pro

cess

o

2 Pro

cess

o

1 Pro

cess

o

n Pro

cess

o

3 Pro

cess

o

2...

Escalonador da CPU – Seleção de processos

Page 38: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.38 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Revisão

Conceito do multiprogramação ou multitarefa

Preemptivo x cooperativo

Cooperativo

– Processos cedem o acesso a CPU

– Usado em sistemas de tempo real

» Tempo máximo de execução

Troca de contexto

Armazenamento do estado do processo

Recuperação posterior da execução

– Registradores

– Registrador de instruções

– Outros

Intervalo entre troca de processos

Page 39: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.39 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Revisão

Interrupções

Recepção da interrupção

Pausa da CPU

Rotina de interrupção

Tipos

Hardware e trap

Chamadas de sistema

Funções executadas pelo sistema operacional

Uso

Modo usuário x modo kernel

Modo bit

Page 40: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.40 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Revisão

Hierarquia de memória

Velocidade x custo x volatilidade

Caching

Gerenciamento de cache

Page 41: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.41 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Gerenciamento de processos

Processo é um programa em execução Programa

Entidade passiva Conjunto de regras de execução

Processo Entidade ativa Composta por programa e recursos alocados

Processos de thread único e de múltiplos threads Recursos compartilhados Um contador de programa por thread

Page 42: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.42 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Gerenciamento de processos

Responsabilidades do sistema operacional:

Criar e deletar processos do usuário e do sistema

Suspender e resumir processos

Prover mecanismos para sincronizar processos

Prover mecanismos para fazer comunicação entre processos

Prover mecanismos para tratar deadlocks

Deadlock

– Suspensão por tempo infinito de processos devido à problemas na alocação de recursos

Page 43: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.43 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Gerenciamento de memória

Memória armazena:

Dados antes e após o processamento

Todas as instruções em ordem de execução

Gerenciamento de memória

Determinação do conteúdo da memória

Otimização da utilização da CPU e da resposta do computador aos usuários

Atividades de gerenciamento de memória

Gerenciar quais processos tem acesso a cada parte da memória

Decidir quais processos e dados devem ser mantidos na memória

Alocar e desalocar memória de acordo com as necessidades

Page 44: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.44 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Gerenciamento de armazenamento

Provimento de uma visão lógica e uniforme do armazenamento da informação Abstração das propriedades físicas para uma unidade lógica de

armazenamento (arquivo)

Gerenciamento do sistema de arquivos Arquivos organizados em diretórios Controle de acesso à arquivos e diretórios Atividades

Criação e deleção de arquivos e diretórios Primitivas de manipulação de arquivos e diretórios Mapeamento de arquivos no armazenamento secundário

Page 45: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.45 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Gerenciamento de armazenamento em massa

Discos são usados para armazenar dados que não cabem na memória ou que precisam ser armazenados por um longo tempo

Interfere no desempenho de todo o sistema

Atividades do sistema operacional

Gerenciamento de espaço livre

Alocação de recursos para armazenamento

Escalonamento de disco

Page 46: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.46 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Desempenho de diferentes níveis de armazenamento

Movimentos entre diferentes níveis de memória podem ser explícitos ou implícitos

Page 47: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.47 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Migração de dados do disco para o registrador

Ambientes multitarefas precisam gerenciar o uso do valor mais recente

Em qualquer nível da hierarquia

Ex: Transferência do inteiro A do disco ao registrador

Ambientes multiprocessados precisam prover coerência de cache

Todas as CPUs precisam ter o valor mais recente em seus caches

Situação mais complexa em sistemas distribuídos

Podem existir várias cópias dos dados

Page 48: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.48 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Subsistema de E/S

Responsabilidades do sistema de entrada e saída:

Gerenciamento de memória para E/S incluindo

Buffering – armazenamento temporário durante transferência

Caching – armazenamento de partes dos dados para dar desempenho em armazenamento rápido

Spooling – sobreposição de saída de um job que serve como entrada para outro job

Interface de driver de dispositivo

Drivers para dispositivos de hardware específico

Page 49: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.49 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Proteção e segurança

Proteção – qualquer mecanismo para controlar o acesso de processos ou usuários a recursos definidos pelo sistema operacional

Segurança – defesa do sistema contra ataques internos e externos

Identificação como base para segurança e proteção Identificação de usuários (user IDs, security IDs) incluindo nome e

número, um por usuário Identificação de usuário com todos os arquivos e processos para

determinar controle de acesso Identificador de grupo (group ID) para identificar um grupo de

usuários

Page 50: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.50 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Computação distribuída

Coleção de sistemas separados, possivelmente heterogêneos e interligados por rede

Sistemas operacionais de rede provêem uma interface entre sistemas através da rede

Esquemas de comunicação permitem a troca de mensagens entre sistemas

Ilusão de um sistema único

Page 51: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.51 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Sistemas de propósito especial

Sistemas embarcados de tempo real

Grande variabilidade, propósito específico, sistema operacional limitado e de tempo real

Sistemas multimídia

Entrega de fluxos de dados de acordo com as restrições de tempo

Sistemas handheld

PDAs, smart phones

CPU, memória e bateria limitados

Sistema operacional limitado, com E/S limitado

Page 52: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

1.52 Adaptado de Silberschatz, Galvin and Gagne ©2009Sistemas Operacionais - Prof. Natalia C. Fernandes

Sistemas operacionais de código aberto

Sistemas operacionais disponíveis em formato de código fonte ao invés de binário com fonte fechada

Iniciado pelo Free Software Foundation (FSF), o qual deu início a GNU Public License (GPL)

Exemplos incluem o GNU/Linux e o BSD UNIX (incluindo o núcleo do Mac OS X), e muitos outros

Page 53: Adaptado de Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 1: Introdução

Adaptado de Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

End of Chapter 1