Você está na página 1de 30

Sistemas operacionais I

Sistemas operacionais
l

Definio: Conjunto de rotinas que oferecem servios aos usurios e s suas aplicaes, bem como s rotinas do prprio sistema. Funes do ncleo:
Tratamento de interrupes. Criao e eliminao de processos. Sincronizao e comunicao entre processos. Escalonamento e controle dos processos. Gerncia de memria. Gerncia do sistema de arquivos.

Sistemas operacionais
l

Funes do ncleo:
Operaes de entrada/sada. Contabilizao e segurana do sistema.

Sistemas operacionais
Kernel o corao do sistema operacional

Sistemas operacionais
l

Modos de acesso
Nem todas as instrues podem ficar disposio dos usurios. H instrues que somente podem ser executadas pelo SO. (segurana e violao do sistema). Instrues privilegiadas: Tem o poder de comprometer o sistema. Instrues no privilegiadas: No oferecem perigo ao sistema.

Sistemas operacionais
l

Modos de acesso
Existem dois modos de acesso:
Modo usurio: uma aplicao s pode executar instrues no privilegiadas Modo Kernel: A aplicao tem acesso ao conjunto total de instrues do processador. O modo de acesso um conjunto de bits em um registrador especial da UCP. Atravs deste registrador o hardware verifica se a instruo pode ou no ser executada. Apenas o SO acessa as instrues privilegiadas. Uma aplicao sempre recorre ao system call para executar uma instruo privilegiada

Sistemas operacionais
l

System calls: Utilizada para proteo ao ncleo do sistema operacional. Quando o usurio deseja um servio, ele o faz atravs de uma das rotinas fazendo uma chamada ao sistema. Para cada servio existe uma system call associada.

Sistemas operacionais

Aplicao

System call

Ncleo

H A R D W A R E

Sistemas operacionais
l

Grupos de funo da system calls:


Gerncia de processos
Criao e eliminao de processos e threads. Alterao das caractersticas do processo e threads. Sincronizao e comunicao entre processos e threads. Obteno sobre informaes sobre processos e threads

Gerncia de memria
Alocao e desalocao de memria

Sistemas operacionais
l

Grupos de funo da system calls:


Gerncia do sistema de arquivos
Criao e eliminao de arquivos e diretrios. Alterao das suas caractersticas Abrir e fechar arquivos Leitura e gravao em arquivos Obteno de informaes sobre arquivos e diretrios

Sistemas operacionais
l

Grupos de funo da system calls:


Gerncia de entrada/sada
Alocao e desalocao de dispositivos Operaes de entrada/sada em dispositivos Obteno de informaes sobre dispositivos

Sistemas operacionais
l

Linguagem de comandos
Permite a interface do usurio com o sistema operacional. O comando interpretado pelo interpretador de comandos que verifica sua sintaxe e faz chamadas a rotinas do sistema e apresenta um resultado. Executa tarefas como criar, ler ou eliminar arquivos. Cada SO possui sua linguagem de comandos.

Sistemas operacionais
l

Linguagem de comandos
O MS Windows utiliza a interface grfica que um nvel de abstrao entre o usurio e os servios do SO.

Sistemas operacionais
l

Ativao/desativao de sistema
No existe SO carregado na MP Est armazenado em uma memria secundria O procedimento denominado ativao do sistema ou boot quem faz o carregamento.

Sistemas operacionais
l

Ativao/desativao de sistema
O programa boot loader (fica na ROM) executado. Ele chama o programa POST (Power-On-Self-Test)
Identifica problemas de hardware

O procedimento verifica onde est o SO e um conjunto de instrues carregado na memria em um bloco denominado boot sector. A execuo deste cdigo culmina com o carregamento do SO na MP.

Sistemas operacionais
l

Arquiteturas do ncleo
Depende
Dos diversos requisitos (confiabilidade, manuteno fcil, flexibilidade, desempenho) Tipo de sistema (compartilhado, monousurio, multiusurio, tempo real, )

Sistemas operacionais
l

Arquiteturas do ncleo
Sistemas iniciais: Escrito em assembly com um milho de instrues. (OS/360) Sistemas atuais programao modular em linguagem de alto nvel. (maior portabilidade) e o nmero de linhas de cdigo chega a 40 milhes 9Windows 2000) Grande parte do cdigo utiliza linguagem C/C++. Os escalonadores e as rotinas de tratamento de interrupo so em assembly (melhor desempenho).

Sistemas operacionais
l

l
l

Sistemas monolticos Sistemas em camadas Sistemas micro-ncleo

Sistema Monoltico
l

A organizao mais comum aquela que estrutura o sistema como um conjunto de rotinas que podem interagir livremente umas com as outras.

Sistema Monoltico
l

Pode ser comparada com uma aplicao formada por vrios procedimentos que so compilados separadamente e depois linkados, formando um grande e nico programa executvel.
Grande desempenho Uma falha pode paralisar o todo o ncleo

Sistema Monoltico
Aplicao Aplicao
Modo Usurio
Modo Kernel

System Calls

ncleo

Hardware

Sistema Monoltico
l

Modelo utilizado pelo primeiros SOs

Sistema em Camadas
l

Divide o sistema operacional em nveis sobrepostos. Cada mdulo oferece um conjunto de funes que pode ser usado por outros mdulos.
A vantagem da estruturao em camadas isolar as funes do sistema operacional. Facilita sua alterao e depurao, alm de criar uma hierarquia de nveis de modos, protegendo as camadas mais internas.

Sistema em Camadas
l

O empilhamento de vrias camadas de software faz com que cada pedido de uma aplicao demore mais tempo para chegar at o dispositivo perifrico ou recurso a ser acessado, prejudicando o desempenho do sistema.

Sistema em Camadas
Sistema Multics

5 4 3 2 1 0

Operador Programas de Usurio Entrada/Sada

Usurio
Supervisor Executivo Kernel

Comunicao Gerncia de Memria


Multiprogramao

Sistema VMS

Sistema em Camadas
l

A maioria dos sistemas comerciais utiliza o modelo de duas camadas onde existem os modos de acesso usurio (no-privilegiado) e Kernel (privilegiado). Verses Unix e Windows.

Sistemas micro-ncleo (microkernel)


l

Uma tendncia dos sistemas operacionais tornar o ncleo menor e mais simples possvel e para implementar esta idia o sistema dividido em processos. Desta forma, sempre que uma aplicao deseja algum servio ela solicita ao processo responsvel, assim, a aplicao que solicita um servio chamada de cliente e o processo que responde a solicitao chamado de servidor.

Sistema micro-ncleo
l l

l l

A utilizao deste modelo permite que os servidores executem em modo usurio. Apenas o ncleo do sistema, responsvel pela comunicao entre clientes e servidores, executa no modo kernel. O sistema operacional passa a ser de mais fcil manuteno. No importa se o servio esta sendo processado em um nico processador, com mltiplos processadores (fortemente acoplado) ou em sistema distribudo (fracamente acoplado). Maior escalabilidade.

Sistema micro-ncleo
l

Sua desvantagem refere-se ao desempenho (mudana de modo de acesso a cada comunicao entre clientes e servidores). A implementao usual uma combinao de camadas com o microKernel.O ncleo tambm responsvel por escalonamento tratamento de interrupes e gerncia de dispositivos.

Micro-ncleo Viso Geral

aplicao

aplicao

aplicao

Nvel usurio

Gerente de memria

Gerente de proteo

Gerente de discos

Gerente de arquivos

Nvel ncleo

Micro-ncleo

Você também pode gostar