Você está na página 1de 23

COMPONENTES CENTRAIS DO SISTEMA

OPERACIONAL
Prof. Eduardo H. S. Oliveira
Um usurio interage com o sistema operacional via uma ou
mais aplicaes de usurio e, muitas vezes, por meio de uma
aplicao especial denominada shell (interpretador de
comandos).
A maioria dos interpretadores de comando atuais
implementada como interfaces de texto que habilitam o usurio
a emitir comandos por meio de um teclado, ou como GUIs que
permitem que o usurio 'aponte-e-clique' e 'arraste-e-solte'
cones para requisitar servios do sistema operacional.
O software que contm os componentes centrais do
sistema operacional chama-se ncleo (kernel). Entre os
componentes centrais do sistema operacional esto:
Prof. Eduardo H. S. Oliveira
escalonador de processo, que determina quando e por
quanto tempo um processo executado em um processador.
gerenciador de memria, que determina quando e como a
memria alocada aos processos e o que fazer quando a
memria principal estiver cheia.
gerenciador de E/S, que atende s solicitaes de
entrada/sada para dispositivos de hardware respectivamente.
gerenciador de comunicao interprocessos (IPC), que
permite que os processos se comuniquem uns com os outros.
gerenciador de sistema de arquivos, que organiza colees
nomeadas de dados em dispositivos de armazenamento e
fornece uma interface para acessar os dados nesses
dispositivos.
Prof. Eduardo H. S. Oliveira
Quase todos os sistemas operacionais suportam um
ambiente de multiprogramao no qual vrias aplicaes podem
ser executadas concorrentemente. Uma das responsabilidades
mais fundamentais de um sistema operacional determinar qual
processador executa um processo e durante quanto tempo esse
processo executado.
Um programa pode conter diversos elementos que
compartilhem dados e que possam ser executados
concorrentemente. Por exemplo, um navegador Web pode
conter componentes isolados para ler a HTML de uma pgina
Web, recuperar a mdia da pgina (ou seja, imagens, texto e
vdeo) e exibir a pgina apresentando seu contedo na janela do
navegador. Esses componentes de programa, executados
independentemente, mas que realizam seu trabalho em um
espao de memria comum so chamados threads (fluxos de
execuo).
Prof. Eduardo H. S. Oliveira
Normalmente muitos processos competem para usar o
processador. O escalonador de processos pode basear suas
decises em diversos critrios, como a importncia de um
processo, o tempo estimado de execuo ou h quanto tempo
est esperando para obter acesso ao processador.
O gerenciador de memria aloca memria para o sistema
operacional e para os processos. Com o intuito de garantir que
os processos no interfiram no sistema operacional ou uns nos
outros, o gerenciador de memria impede que cada processador
acesse memria que no lhe tenha sido alocada.
Prof. Eduardo H. S. Oliveira
Uma outra funo central do sistema operacional
gerenciar os dispositivos de entrada/sada (E/S) do computador.
Dispositivos de entrada abrangem teclados, mouses, microfones
e scanners; entre os dispositivos de sada esto monitores,
impressoras e alto-falantes. Dispositivos de armazenamento (por
exemplo, discos rgidos, discos ticos regravveis e fitas) e
placas de rede funcionam como dispositivos de entrada e sada.
Quando um processo quer acessar um dispositivo de E/S,
deve emitir uma chamada ao sistema operacional. Aquela
chamada subsequentemente manuseada por um driver de
dispositivo, que um componente de software que interage
diretamente com o hardware e em geral contm comandos e
outras instrues especficas do dispositivo para realizar as
operaes de entrada/sada requisitadas.
Prof. Eduardo H. S. Oliveira
A maioria dos sistemas de computador pode armazenar
dados persistentemente (isto , aps o computador ter sido
desligado). Como a memria principal geralmente
relativamente pequena e perde seus dados quando a fonte de
energia desligada, so usados dispositivos secundrios de
armazenamento persistente, mais comumente discos rgidos.
Entretanto, o armazenamento secundrio muito mais
lento do que processadores e memria principal. O componente
escalonador de disco de um sistema operacional responsvel
pela reordenao das requisies de E/S por disco para
maximizar o desempenho e minimizar a quantidade de tempo
que um processo espera pelas E/S por disco.
Prof. Eduardo H. S. Oliveira
Exerccios:
1. Quais componentes de sistema operacional realizam cada
uma das seguintes operaes?
a) Escrever no disco.
b) Determinar qual processo ser executado em seguida.
c) Determinar em que lugar da memria um novo processo
deve ser colocado.
d) Organizar arquivos em um disco.
e) Habilitar um processo a enviar dados para outro.
2. Por que arriscado permitir que usurios executem
livremente operaes de leitura e escrita para qualquer regio
do disco?
Prof. Eduardo H. S. Oliveira
Respostas:
1. a) gerenciador de E/S; b) escalonador de processador; c)
gerenciador de memria; d) gerenciador de sistema de
arquivo; e) gerenciador de comunicao entre processos
(IPC).
2. arriscado porque os usurios poderiam, acidentalmente ou
com m inteno, sobrescrever dados crticos (por exemplo,
arquivos do sistema operacional) ou ler informaes
vulnerveis (como documentos confidenciais) sem
autorizao.
Prof. Eduardo H. S. Oliveira
METAS DO SISTEMA OPERACIONAL
Prof. Eduardo H. S. Oliveira
Usurios passaram a esperar certas caractersticas dos
sistemas operacionais como:
Eficincia;
Robustez;
Escalabilidade;
Extensibilidade;
Portabilidade;
Segurana;
Interatividade;
Usabilidade;
Prof. Eduardo H. S. Oliveira
Um sistema operacional eficiente alcana alto rendimento e
baixo tempo de retorno. O rendimento mede a quantidade de
trabalho que um processador pode concluir em um certo perodo
de tempo.
Um sistema operacional robusto tolerante a falhas e
confivel - o sistema no falhar devido a erros isolados de
aplicaes ou de hardware e, se falhar, deve minimizar a perda
de trabalho e evitar danos ao hardware do sistema.
Um sistema operacional escalvel capaz de usar
recursos medida que so acrescentados. Se um sistema
operacional no for escalvel, rapidamente chegar a um ponto
em que recursos adicionais no sero utilizados totalmente.
Prof. Eduardo H. S. Oliveira
Um sistema operacional extensvel adapta-se bem a novas
tecnologias e fornece capacidades de estender o sistema
operacional para executar tarefas que vo alm de seu projeto
original.
Um sistema operacional portvel projetado de modo tal
que possa operar em muitas configuraes de hardware.
Portabilidade de aplicaes tambm importante porque
desenvolver aplicaes custa caro; a mesma aplicao deve
rodar em uma variedade de configuraes de hardware para
reduzir custos de desenvolvimento.
Um sistema operacional seguro impede que usurios e
software acessem servios e recursos sem autorizao.
Um sistema operacional interativo permite que aplicaes
respondam rapidamente s aes do usurio ou a eventos.
Prof. Eduardo H. S. Oliveira
Um sistema operacional utilizvel aquele que tem o
potencial de atender a uma base significativa de usurios. Esses
sistemas operacionais geralmente fornecem uma interface com
o usurio fcil de usar. Sistemas operacionais como Linux,
Windows e MacOS so caracterizados como utilizveis porque
cada um suporta um grande conjunto de aplicaes e fornece as
interfaces-padro com o usurio.
Prof. Eduardo H. S. Oliveira
Exerccios:
1. Quais metas dos sistemas operacionais correspondem a cada
uma das seguintes caractersticas?
a) Usurios no podem acessar servios nem informaes
sem autorizao adequada.
b) O sistema operacional executado sobre uma variedade
de configuraes de hardware.
c) O desempenho do sistema aumenta continuamente quando
acrescentados memria e processadores adicionais.
d) O sistema operacional suporta dispositivos que no
estavam disponveis na poca em que foi projetado.
e) Falhas de hardware no causam necessariamente falha de
sistema.
2. Como o suporte do driver de dispositivo contribui para a
extensibilidade de um sistema operacional?
Prof. Eduardo H. S. Oliveira
Respostas:
1. a) segurana; b) portabilidade; c) escalabilidade; d)
extensibilidade; e) robustez.
2. Drivers de dispositivo habilitam desenvolvedores a adicionar
suporte para hardware que no existia na poca em que o
sistema foi projetado. A cada novo tipo de dispositivo
adicionado a um sistema, deve ser instalado um driver de
dispositivo correspondente.
Prof. Eduardo H. S. Oliveira
ARQUITETURAS SISTEMAS OPERACIONAIS
Prof. Eduardo H. S. Oliveira
Os sistemas operacionais de hoje tendem a ser complexos,
porque prestam muitos servios e suportam uma variedade de
recursos de hardware e software. Arquiteturas de sistemas
operacionais podem ajudar projetistas a gerenciar essa
complexidade organizando componentes de sistema e
especificando o privilgio com que cada componente
executado.
Prof. Eduardo H. S. Oliveira
Arquitetura monoltica
O sistema operacional monoltico a arquitetura de sistema
operacional mais antiga e mais comum. Cada componente do
sistema operacional contido no ncleo e pode comunicar-se
diretamente com qualquer outro (simplesmente usando
chamadas funo). O ncleo normalmente executado com
acesso irrestrito ao sistema de computador.
Prof. Eduardo H. S. Oliveira
Arquitetura monoltica
Prof. Eduardo H. S. Oliveira
Arquitetura monoltica
OS/360, VMS e Linux so caracterizados, em sentido
amplo, como sistemas operacionais monolticos. A
intercomunicao direta entre componentes que torna os
sistemas operacionais monolticos altamente eficientes.
Entretanto, porque os ncleos monolticos agrupam
componentes todos juntos, difcil isolar a fonte de problemas e
de outros erros. Alm disso, como todo o cdigo executado
com acesso irrestrito ao sistema, sistemas de ncleo monoltico
so particularmente suscetveis a danos provocados por cdigos
sujeitos a erros ou mal-intencionados.
Prof. Eduardo H. S. Oliveira
Exerccios:
1. Qual a caracterstica que define um sistema operacional
monoltico?
2. Por que sistemas operacionais monolticos tendem a ser
eficientes? Qual a principal fragilidade dos ncleos
monolticos?
Prof. Eduardo H. S. Oliveira
Respostas:
1. Em um sistema operacional monoltico todos os componentes
do sistema operacional so contidos no ncleo.
2. Ncleos monolticos tendem a ser eficientes porque poucas
chamadas atravessam do espao do usurio para o espao
do ncleo. Como todos os cdigos de sistemas operacionais
em ncleos monolticos operam com acesso irrestrito ao
software e hardware do computador, esses sistemas so
particularmente suscetveis a danos provocados por cdigos
sujeitos a erros ou mal-intencionados.
Prof. Eduardo H. S. Oliveira