You are on page 1of 33

PROF.

DANIEL GONDIM ERNESTO DE MLO


UNIVERSIDADE ESTADUAL DA PARABA

Prof. Daniel Gondim - Universidade Estadual da Paraba

Sistemas Operacionais
- Introduo -

Agenda

Objetivos

Sistemas Operacionais

Conceitos de Organizao de Computadores

Dvidas

Prof. Daniel Gondim - Universidade Estadual da Paraba

Objetivos da Aula

Fazer um tour pelos principais conceitos relacionados aos


Sistemas Operacionais

Fazer uma reviso rpida sobre conceitos de Organizao


de Computadores

Prof. Daniel Gondim - Universidade Estadual da Paraba

O que um Sistema
Operacional?

Um programa que atua como intermedirio entre o


usurio de um computador e o hardware

Objetivos de um sistema operacional:

Executar programas do usurio de forma a ajud-lo a resolver


seus problemas de forma mais simples

Facilitar o uso de um sistema computacional

Utilizar o hardware disponvel de forma eficiente

Prof. Daniel Gondim - Universidade Estadual da Paraba

Estrutura de Um Sistema
Computacional

Os sistemas computacionais podem ser divididos em


quatro componentes

Usurios

Aplicativos

Sistema Operacional

Hardware

Prof. Daniel Gondim - Universidade Estadual da Paraba

Definio de Sistema
Operacional

No h uma definio universalmente aceita

Tudo que o vendedor entrega quando voc compra um


sistema operacional uma boa aproximao

Varia amplamente

O programa que est em execuo o tempo todo no


computador o ncleo

Todo o resto so programas de sistema (vm junto com o SO) ou


aplicativos.

Prof. Daniel Gondim - Universidade Estadual da Paraba

Definio de Sistema
Operacional

SO um a alocador de recursos

Gerencia todos os recursos da mquina

Decide entre requisies conflitantes de forma a fazer uso


eficiente e justo dos recursos

SO um programa de controle

Controla a execuo dos programas para prevenir erros e uso


indevido do computador

Prof. Daniel Gondim - Universidade Estadual da Paraba

Organizao de um Sistema
Computacional

Um ou mais CPUs e controladores de dispositivos conectados


atravs de um barramento nico que prov acesso a uma
memria compartilhada

Execuo concorrente das CPUs e dispositivos competindo por ciclos de acesso


memria

Prof. Daniel Gondim - Universidade Estadual da Paraba

Operao de Um Sistema
Computacional

Dispositivos de E/S e CPU podem executar


concorrentemente
Cada

controlador de dispositivo possui um buffer local


Operaes de E/S so realizadas do dispositivo para o
buffer local do seu controlador
O controlador de dispositivo informa CPU quando
termina de realizar uma operao de E/S atravs de uma
interrupo
A CPU move dados entre a memria principal e os buffers
locais dos controladores (nem sempre!)

Prof. Daniel Gondim - Universidade Estadual da Paraba

Funcionamento das
Interrupes

A ocorrncia de uma interrupo transfere o controle para


uma rotina de tratamento de interrupo

preciso salvar o endereo da instruo interrompida

A ocorrncia de novas interrupes fica desabilitada enquanto uma


interrupo est sendo processada

Um trap uma interrupo gerada por software

Um sistema operacional baseado em interrupes!

Prof. Daniel Gondim - Universidade Estadual da Paraba

10

Tratamento de Interrupes

O sistema operacional preserva o estado da CPU


armazenando seus registradores e o contador de programa

Determina que tipo de interrupo ocorreu:

Polling

Sistema vetorial

Segmentos separados de cdigo determinam que aes


devem ser tomadas para cada tipo de interrupo

Prof. Daniel Gondim - Universidade Estadual da Paraba

11

Timeline de uma Interrupo

Prof. Daniel Gondim - Universidade Estadual da Paraba

12

Estrutura de E/S

E/S sncrona: o controle retorna para o programa do usurio


somente aps a concluso da operao
No mximo uma operao de E/S em execuo por vez
No h paralelismo de E/S
E/S assncrona: o controle retorna para o programa do usurio
antes da concluso da operao
Interrupes so utilizadas para informar o programa do
usurio sobre concluso das operaes de E/S
O programa do usurio pode utilizar uma chamada de sistema
para esperar explicitamente pela concluso de uma operao
de E/S
Prof. Daniel Gondim - Universidade Estadual da Paraba

13

Estrutura para acesso direto


memria

Utilizado por dispositivos de E/S rpidos, capazes de


transmitir dados a velocidades prximas a da memria
principal

O controlador de dispositivo transfere blocos de dados


diretamente do buffer local para a memria principal sem
interveno da CPU

Prof. Daniel Gondim - Universidade Estadual da Paraba

14

Estrutura de
Armazenamento

Memria principal: nica unidade de memria de alta capacidade


acessada diretamente pela CPU

Armazenamento secundrio: extenso no voltil e de alta


capacidade de armazenamento da memria principal

Discos magnticos: pratos rgidos de metal ou vidro cobertos por


um material magntico gravvel

A superfcie do disco dividida logicamente em trilhas, que so


subdivididas em setores

O controlador de disco determina a interao lgica entre o


dispositivo e o computador

Prof. Daniel Gondim - Universidade Estadual da Paraba

15

Hierarquia de
Armazenamento

Sistemas de armazenamento so organizados de forma


hierrquica
Velocidade
Custo
Volatilidade

Cache: cpia armazenada em uma memria mais rpida; a


memria principal pode ser vista com um cache para
dispositivos de armazenamento secundrio

Prof. Daniel Gondim - Universidade Estadual da Paraba

16

Hierarquia de Dispositivos de
Armazenamento

Prof. Daniel Gondim - Universidade Estadual da Paraba

17

Cache

Princpio muito importante, realizado em vrios nveis diferentes em um


computador (hardware, sistemas operacional, software)
Os dados em uso so copiados de um armazenamento mais lento para
um mais rpido
O dispositivo mais rpido (cache) consultado primeiro para determinar
se os dados esto disponveis

Se esto, os dados so utilizados diretamente do cache (rpido)

Se no, os dados so copiados para o cache e utilizados a partir dele

O cache tem menor capacidade do que o dispositivo mais lento


associado

Gerenciamento de cache um importante problema de projeto

Polticas para tamanho do cache e substituio de dados

Prof. Daniel Gondim - Universidade Estadual da Paraba

18

Arquitetura de um Sistema
Computacional

A maioria dos sistemas utiliza um nico processador de propsito geral


(de PDAs a mainframes)

A maioria dos sistemas possuem tambm processadores de propsito


especfico

Multiprocessadores tm aumentando em uso e em importncia

Tambm conhecidos como sistemas paralelos, sistemas de alto acoplamento

Vantagens incluem:

Maior vazo (throughput)

Maior confiabilidade

Dois tipos

Multi-processamento Assimtrico

Multi-processamento Simtrico

Prof. Daniel Gondim - Universidade Estadual da Paraba

19

Arquitetura de Multiprocessamento Simtrico

Prof. Daniel Gondim - Universidade Estadual da Paraba

20

Dual-Core

Prof. Daniel Gondim - Universidade Estadual da Paraba

21

Clusters

Como multiprocessadores, porm formado por mltiplos


sistemas trabalhando juntos
Geralmente compartilham armazenamento atravs de uma
rede
Fornece um servio com alta disponibilidade, que sobrevive
a falhas
Clusters so comumente utilizados para computao de
alto desempenho (HPC)

As aplicaes precisam ser projetadas para explorar o


paralelismo!

Prof. Daniel Gondim - Universidade Estadual da Paraba

22

Operao do Sistema
Operacional

Comunicao baseada em eventos

Interrupes geradas pelo hardware

23

Traps gerados por software

Requisio de um servio do sistema operacional

Diviso por zero, loops infinitos, processos modificando/acessando memria de outros processos ou
do sistema operacional, etc

Operao em dual-mode permite que o SO se proteja e proteja outros


componentes do sistema

Modo usurio e modo kernel

Bit de modo fornecido pelo hardware

Permite distinguir quando o sistema est executando cdigo do usurio ou cdigo do ncleo

Algumas instrues so designadas como privilegiadas, executadas apenas em modo kernel

Uma chamada de sistema altera para modo kernel, retorno da chamada altera de volta para
modo usurio

Prof. Daniel Gondim - Universidade Estadual da Paraba

Transio do modo usurio


para o modo kernel

Prof. Daniel Gondim - Universidade Estadual da Paraba

24

Gerenciamento de
Processos

Um processo um programa em execuo

uma unidade de trabalho no sistema

Um programa uma entidade passiva e um processo uma entidade ativa

Precisam de recursos para desempenhar sua tarefa

CPU, memria, E/S, arquivos, dados de inicializao

Finalizao de um processo requer liberao de recursos reutilizveis

Mono-threaded versus multi-threaded

Mono-thread = um nico contador de programa

Multi-thread = um contador de programa por thread

Tipicamente um sistema possue vrios processos, algum usurio e


algum sistema operacional executando concorrentemente em uma ou
mais CPUs

Prof. Daniel Gondim - Universidade Estadual da Paraba

25

Funes do Gerenciamento
de Processos

Criao e remoo de processos do usurio e do sistema

Suspender e reiniciar a execuo de processos

Prover mecanismos para permitir a sincronizao entre processos

Prover mecanismos para permitir a comunicao entre processos

Prover mecanismos para lidar com deadlocks

Prof. Daniel Gondim - Universidade Estadual da Paraba

26

Gerenciamento de Memria

Todos os dados na memria antes e depois de sua utilizao

Todas as instrues na memria para serem executadas

O gerenciamento de memria determina o que est na memria

Tarefas

Manter um registro sobre que partes da memria esto sendo


atualmente utilizados e por quem esto sendo utilizadas

Decidir que processo (ou partes de processos) e dados mover para


dentro e para fora da memria
Alocar e liberar espao de memria de acordo com a necessidade
Prof. Daniel Gondim - Universidade Estadual da Paraba

27

Gerenciamento de
Armazenamento

Gerenciamento do sistema de arquivos


Arquivos

geralmente organizados em diretrios


Controle de acesso na maioria dos sistemas determina
quem pode acessar o que
Atividades do SO incluem
Criar

e remover arquivos e diretrios


Primitivas para manipular arquivos e diretrios
Mapear arquivos no armazenamento secundrio
Fazer backup de arquivos em mdias de armazenamento no
voltil
Prof. Daniel Gondim - Universidade Estadual da Paraba

28

Gerenciamento do
Armazenamento de Massa

Prof. Daniel Gondim - Universidade Estadual da Paraba

29

Subsistema de E/S

Uma das funes do SO esconder peculiaridades do


hardware de seus usurios

O subsistema de E/S responsvel por


Gerenciamento
Interface

da memria de E/S, incluindo buffers e cache

comum para drivers de dispositivo

Prof. Daniel Gondim - Universidade Estadual da Paraba

30

Proteo e Segurana

31

Proteo: qualquer mecanismo para controlar o acesso de processos ou


usurios aos recursos definidos pelo SO
Segurana: defesa do sistema contra ataques internos ou externos

Incluindo negao de servio, vermes, vrus, roubo de identidade

Os sistemas geralmente distinguem os usurios para determinar quem


pode fazer o que

A identificao dos usurios inclui nome e um nmero associado


Essa identificao ento associada com todos os arquivos e processos desse
usurio para determinar o controle de acesso
Identificao de grupos permite a definio de conjuntos de usurios e sua
associao com processos e arquivos
Mecanismos para mudana de privilgio permitem que usurios possam ganhar
mais privilgios de acesso
Prof. Daniel Gondim - Universidade Estadual da Paraba

Dvidas

Prof. Daniel Gondim - Universidade Estadual da Paraba

32

PROF. DANIEL GONDIM ERNESTO DE MLO


UNIVERSIDADE ESTADUAL DA PARABA

Prof. Daniel Gondim - Universidade Estadual da Paraba

Sistemas Operacionais
- Introduo -

You might also like