Post on 13-Mar-2016
description
INTRODUÇÃO AOS SISTEMAS OPERATIVOS
EMANUEL TEIXEIRA
201
2/2
01
3
CONCEITO DE SISTEMA OPERATIVO
Sistema Operativo
Pode ser definido como um conjunto de programas que
permitem uma interacção simplificada entre o utilizador
e a máquina
2
Dispositivos físicos
Sistema Operativo
Aplicações Utilizador
Hardware
CONCEITO DE SISTEMA OPERATIVO
O Sistema Operativo pode ser visto como
Máquina virtual
Dar ao utilizador a ilusão de dispor de uma máquina
muito mais fácil de utilizar e programar do que o
hardware.
Gestor de recursos
Efectuar a gestão dos diversos componentes da
arquitectura de um computador, impondo ordem na
atribuição de recursos aos programas.
Tirar máximo partido dos recursos disponíveis
Tempo de CPU, memória, etc
3
CONCEITOS
Processador e Processos
Um processo é basicamente um programa em execução
Num sistema multi-programado, vários processos
podem estar a correr simultaneamente
Contudo, quando existe um só processador, apenas um
processo pode utilizá-lo em cada instante temporal
Os processos concorrem pelo processador e cooperam
entre si para realizar tarefas mais complexas
4
CONCEITOS E REVISÕES
Processador e Processos
Processador (CPU)
Elemento activo do sistema que executa processos
Modo utilizador (User Mode)
Disponível um subconjunto das instruções do CPU. É neste
modo que correm as aplicações
Modo núcleo (Kernel Mode)
Modo privilegiado do processador, para o qual todas as
instruções estão disponíveis.
Só o Sistema Operativo é que tem acesso a este modo
5
CONCEITOS
Memória e Gestão de memória Divisão estruturada da memória de modo a ser possível o
carregamento de diversos programas na memória principal
Colocação e Protecção
Existência de mecanismos que permitam o crescimento da memória de dados de um programa
Reserva de memória
Gestão do espaço de endereçamento de modo a que se possa ter uma capacidade de memória superior à da memória principal (a RAM) – Memória Virtual
6
CONCEITOS
Hierarquia da memória
7
Registos
Cache
Memória principal
Discos
Tapes
Maior
rapidez
Maior
capacidade
Sistemas mono-programados e multi-programados
8
Sistema
Operativo
Programa Programa 1
Dados
Programa 2
Sistema
Operativo
Dados 1
Dados 2
Sistema
Mono-programado
Sistema
Multi-programado
Memória principal Memória principal
CONCEITOS
Sistemas de ficheiros (FAT 32, NTFS, EXT3, etc.)
Gestão da informação não-volátil armazenada em
memória secundária (discos, tapes)
Providenciar um nível de abstracção para que o
utilizador não se preocupe com os detalhes da
utilização de discos, disquetes, etc.
Chamadas ao sistema:
Criação, remoção, cópia, escrita e leitura de ficheiros
9
CONCEITOS
CONCEITOS
Estrutura hierárquica (em árvore) - directórios
10
directório raíz
(root)
Trabalhos Jogos
AC SO Quake Half-Life
trab1.txt prog.cpp trabf.doc
Nomeficheiro.extensão
Extensão indica o tipo do ficheiro
Periféricos e I/O
Gestão das operações de escrita e leitura nos diversos
periféricos
Teclado, impressora, terminais de texto e gráficos,
discos, etc.
Tratamento de interrupções e de erros
Device drivers
Programas para gestão de periféricos específicos
11
CONCEITOS
CLASSIFICAÇÃO DE SOS
Multi-utilizador
O tempo de processamento do CPU de um
computador pode ser partilhado por mais do que um
utilizador de forma interactiva.
Unix, Linux
Mono-utilizador
O CPU só pode estar dedicado de forma interactiva a
um conjunto de processos do mesmo utilizador
MS-DOS, todos os Windows
12
CLASSIFICAÇÃO DE SOS
Multi-programação
Capacidade de correr vários programas simultaneamente (em
concorrência)
Unix, Linux, todos os Windows
Mono-programação / Processamento por lotes
Cada programa monopoliza o processador até terminar
Spectrum
DOS (à parte dos programas residentes)
13
CLASSIFICAÇÃO DE SOS
Dedicado Sistema Operativo projectado para aplicações
específicas
Exemplos:
Controlo de uma linha de montagem - SOs em tempo real
Gestão de transacções numa companhia aérea - SOs para Mainframes
Interface para um telemóvel – SO embedded
Uso geral Projectados para uma fácil utilização
Permitem a execução de uma grande variedade de programas
Reconhecem uma grande diversidade de periféricos 14
CLASSIFICAÇÃO DE SOS
Centralizado
O Sistema Operativo cria uma máquina virtual sobre
um único computador
Distribuído
O Sistema Operativo que corre sobre um conjunto de
computadores, dando a ilusão de que este conjunto é
uma entidade única
Sistemas distribuídos puros
Sistemas em rede
Sistemas multi-processador
15
MODELO DE UM SO
Camadas (Layers)
O SO encontra-se estruturado segundo um conjunto
de camadas funcionais
Cada camada utiliza serviços de camadas que lhe são
interiores
Em suma, cada camada é uma máquina virtual com
uma interface bem definida
À camada mais baixa (gestão de processos)
corresponde o núcleo do sistema operativo
16
MODELO DE UM SO
Camadas (Layers)
17
Gestão de processos
Gestão de memória
Comunicação e I/O
Sistema de ficheiros
Chamadas ao sistema
Hardware
Aplicações e utilizadores
MODELO DE UM SO
Modular
O SO encontra-se organizado segundo módulos à volta
de um núcleo (kernel)
O núcleo é geralmente pequeno (Micro-kernel),
comunicando com o hardware e estabelecendo a
comunicação entre os diversos módulos
Pode introduzir-se o conceito de processo cliente e de
processo servidor que correm em modo utilizador
Facilmente adaptável a sistemas distribuídos
Estrutura mais estável (teoricamente...)
18
MODELO DE UM SO
Modular
19
Micro-Kernel
Chamadas ao sistema
Hardware
Gestão
de
Processos
Gestão
de
Memória
I/O
Sistema
de
Ficheiros
Aplicações e utilizadores
MODELO DE UM SO
Modular (Cliente-Servidor)
20
Servidor
de
Processos
Servidor
de
Memória
Servidor
de I/O
Servidor
de
Ficheiros
Processo
Cliente
Processo
Cliente
Micro-Kernel
Modo Utilizador
Modo Núcleo
Mensagens
BIBLIOGRAFIA
Silberschatz A., Galvin P. B. & Gagne G. (2002).
Operating System Concepts. Addison-Wesley.
Stallings W. (2006). Operating Systems–Internals
and Design Principles. Prentice Hall
Consulta do site so.dcti.iscte.pt/SO-2008-09-
2/Material/1-Introducao.ppt
21