21
INTRODUÇÃO AOS SISTEMAS OPERATIVOS EMANUEL TEIXEIRA 2012/2013

Introdução aos Sistemas Operativos

Embed Size (px)

DESCRIPTION

Manual de Introdução aos Sistemas Operativos.

Citation preview

Page 1: Introdução aos Sistemas Operativos

INTRODUÇÃO AOS SISTEMAS OPERATIVOS

EMANUEL TEIXEIRA

201

2/2

01

3

Page 2: Introdução aos Sistemas Operativos

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

Page 3: Introdução aos Sistemas Operativos

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

Page 4: Introdução aos Sistemas Operativos

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

Page 5: Introdução aos Sistemas Operativos

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

Page 6: Introdução aos Sistemas Operativos

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

Page 7: Introdução aos Sistemas Operativos

CONCEITOS

Hierarquia da memória

7

Registos

Cache

Memória principal

Discos

Tapes

Maior

rapidez

Maior

capacidade

Page 8: Introdução aos Sistemas Operativos

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

Page 9: Introdução aos Sistemas Operativos

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

Page 10: Introdução aos Sistemas Operativos

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

Page 11: Introdução aos Sistemas Operativos

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

Page 12: Introdução aos Sistemas Operativos

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

Page 13: Introdução aos Sistemas Operativos

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

Page 14: Introdução aos Sistemas Operativos

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

Page 15: Introdução aos Sistemas Operativos

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

Page 16: Introdução aos Sistemas Operativos

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

Page 17: Introdução aos Sistemas Operativos

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

Page 18: Introdução aos Sistemas Operativos

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

Page 19: Introdução aos Sistemas Operativos

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

Page 20: Introdução aos Sistemas Operativos

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

Page 21: Introdução aos Sistemas Operativos

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