Vous êtes sur la page 1sur 13

1)Os sistemas operacionais nasceram em qual gerao de computadores?

Na segunda gerao de computadores com o advento do transistor.


Por volta de 1953 foi introduzido o primeiro sistema operacional, um programa de controle
que permitia uma interao, mesmo que limitada, entre o operador e a mquina, otimizando a
execuo das tarefas. O primeiro sistema operacional, chamado monitor por sua simplicidade,
foi desenvolvido pelos usurios do computador IBM 701 do Centro de Pesquisas da Gereral
Motors, justamente para tentar automatizar as tarefas manuais at ento utilizadas.
Posteriormente, este sistema seria reescrito para um computador IBM 704 pelo grupo de
usurios da IBM (Weizer, 1981).
Em 1959 foi criada uma verso de sistema operacional que j implementava conceitos de
memria virtual, conceito este largamente utilizado nos sistemas atuais.
2)Quais os tipos de Sistemas Operacionais estudados?
Podemos classificar os tipos de Sistemas Operacionais em:
Monoprogramveis/Monotarefa;
Multiprogramveis/Multitarefa;
Sistemas com Mltiplos Processadores
Os sistemas multiprogramveis/multitarefa podem ser classificados de acordo com a forma
com que suas aplicaes so gerenciadas, podendo ser divididos em sistemas batch, sistemas
de tempo compartilhado (time-sharing) e de tempo real (real time).
J os sistemas com mltiplos processadores podem ser subdivididos em Sistemas Fortemente
Acoplados e Sistemas Fracamente Acoplados.
Os sistemas Fortemente Acoplados so divididos em Simtricos e Assimtricose os Sistemas
Fracamente Acoplados por sua vez so subdivididos em Rede e Distribudos.
3)D as caractersticas de cada um.
Monoprogramveis/Monotarefa: Neste tipo de sistema, o processador, a memria e os
perifricos permanecem exclusivamente dedicados execuo de um nico programa.
Os sistemas monoprogramveis esto diretamente ligados ao surgimento, na dcada de
50/60, dos primeiros computadores. Embora os sistemas operacionais j tivessem evoludo
com as tecnologias de multitarefa e multiprogramveis, os sistemas monoprogramveis
voltaram a ser utilizados na plataforma de microcomputadores pessoais e estaes de trabalho
devido baixa capacidade de armazenamento destas mquinas, na poca.
Era muito clara a desvantagem deste tipo de sistema, no que diz respeito limitao de
tarefas (uma de cada vez), o que provocava um grande desperdcio de recursos de hardware.

Comparados a outros sistemas, os monoprogramveis so de simples implementao, no


existindo muita preocupao com problemas decorrentes do compartilhamento de recursos
como memria, processador e dispositivos de E/S.
Multiprogramveis/Multitarefa: Constituindo-se uma evoluo dos sistemas
monoprogramveis, neste tipo de sistema os recursos computacionais so compartilhados
entre os diversos usurios e aplicaes: enquanto um programa espera por um evento, outros
programas podem estar processando neste mesmo intervalo de tempo. Neste caso, pod emos
observar o compartilhamento da memria e do processador. O sistema operacional se
incumbe de gerenciar o acesso concorrente aos seus diversos recursos, como processador,
memria e perifricos, de forma ordenada e protegida, entre os diversos programas .
As vantagens do uso deste tipo de sistema so a reduo do tempo de resposta das aplicaes,
alm dos custos reduzidos devido ao compartilhamento dos recursos do sistema entre as
diferentes aplicaes. Apesar de mais eficientes que os monoprogramveis, os sistemas
multiprogramveis so de implementao muito mais complexa.
Sistemas Batch: Os sistemas batch (lote) foram os primeiros sistemas multiprogramveis a
serem implementados e caracterizam-se por terem seus programas, quando submetidos,
armazenados em disco ou fita, onde esperam para ser executados sequencialmente.
Normalmente, os programas, tambm chamados de jobs, no exigem interao com os
usurios, lendo e gravando dados em discos e fitas. Alguns exemplos de aplicaes
originalmente processadas em batch so compilaes, linkedies, sorts, backups e todas
aquelas onde no necessria a interao com o usurio.
Sistemas de Tempo Compartilhado: Os sistemas de tempo compartilhado (time-sharing)
permitem a interao dos usurios com o sistema, basicamente atravs de terminais que
incluem vdeo, teclado e mouse. Dessa forma, o usurio pode interagir diretamente com o
sistema em cada fase do desenvolvimento de suas aplicaes e, se preciso modific-las
imediatamente. Devido a esse tipo de interao, os sistemas de tempo compartilhado tambm
ficaram conhecidos como sistemas on-line.
Para cada usurio, o sistema operacional aloca uma fatia de tempo (time-slice) do processador.
Caso o programa do usurio no esteja concludo nesse intervalo de tempo, ele substitudo
por um de outro usurio, e fica esperando por uma nova fatia de tempo. No s o processador
compartilhado nesse sistema, mas tambm a memria e os perifricos, como discos e
impressoras. O sistema cria para o usurio um ambiente de trabalho prprio, dando a
impresso de que todo o sistema est dedicado, exclusivamente, a ele.
Sistemas de tempo compartilhado so de implementao complexa, porm, se levado em
considerao o tempo de desenvolvimento e depurao de uma aplicao, aumentam
consideravelmente a produtividade dos seus usurios, reduzindo os custos de utilizao do
sistema.

Sistemas de Tempo Real: Os sistemas de tempo real (real time) so bem semelhantes em
implementao aos sistemas de tempo compartilhado. A maior diferena o tempo de
resposta exigido no processamento das aplicaes.
Enquanto em sistemas de tempo compartilhado o tempo de resposta pode variar sem
comprometer as aplicaes em execuo, nos sistemas de tempo real os tempos de resposta
devem estar dentro de limites rgidos, que devem ser obedecidos, caso contrrio podero
ocorrer problemas irreparveis.
No existe ideia de fatia de tempo, um programa detm o processador o tempo que for
necessrio, ou at que aparea outro prioritrio em funo de sua importncia no s istema.
Esta importncia ou prioridade de execuo controlada pela prpria aplicao e no pelo
sistema operacional, como nos sistemas de tempo compartilhado.
Esses sistemas, normalmente, esto presentes em controle de processos, como no
monitoramento de refinarias de petrleo, controle de trfego areo, de usinas termeltricas e
nucleares, ou em qualquer aplicao onde o tempo de resposta fator fundamental.

Sistemas com Mltiplos Processadores: Os sistemas com mltiplos processadores


caracterizam-se por possuir duas ou mais CPUs interligadas, trabalhando em conjunto. Um
fator-chave no desenvolvimento de sistemas operacionais com mltiplos processadores a
forma de comunicao entre as CPUs e o grau de compartilhamento da memria e dos
dispositivos de entrada e sada. Em funo desses fatores, podemos classificar os sistemas em
fortemente acoplados ou fracamente acoplados:
Sistemas Fortemente Acoplados: Nos sistemas fortemente acoplados (tightly coupled)
existem vrios processadores compartilhando uma nica memria e gerenciados por apenas
um sistema operacional. Mltiplos processadores permitem que vrios programas sejam
executados ao mesmo tempo, ou que um programa seja dividido em subprogramas, para
execuo simultnea em mais de um processador. Dessa forma, possvel ampliar a
capacidade de computao de um sistema, adicionando-se apenas novos processadores, com
um custo muito inferior aquisio de outros computadores.
Com o multiprocessamento, novos problemas de concorrncia foram introduzidos, pois vrios
processadores podem estar acessando as mesmas reas de memria. Alm disso, existe o
problema de organizar de forma eficiente os processadores, a memria e os perifricos.
Uma consequncia do multiprocessamento foi o surgimento dos computadores voltados,
principalmente, para processamento cientfico, aplicado, por exemplo, ao desenvolvimento
aeroespacial, prospeco de petrleo, simulaes, processamento de imagens e CAD. A
princpio qualquer aplicao que faa uso intensivo da CPU ser beneficiada pelo acrscimo de
processadores ao sistema.
Sistemas Fortemente Acoplados/ Assimtricos: Na organizao assimtrica ou
mestre/escravo (master/slave), somente um processador (mestre) pode executar servios do
sistema operacional, como, por exemplo, realizar operaes de entrada/sada. Sempre que um
processador do tipo escravo precisar realizar uma operao de entrada/sada ter de requisitar

o servio ao processador mestre. Dependendo do volume de operaes de entrada/sada


destinadas aos processadores escravos, o sistema pode se tornar ineficiente, devido ao
elevado nmero de interrupes que devero ser tratadas pelo mestre.
Se o processador falhar, todo o sistema ficar incapaz de continuar o processamento. Neste
caso, o sistema deve ser reconfigurado, fazendo um dos processadores escravos assumir o
papel do mestre. Mesmo sendo uma organizao simples de implementar e quase uma
extenso dos sistemas multiprogramveis, esse tipo de sistema no utiliza eficientemente o
hardware, devido assimetria dos processadores, que no realizam as mesmas funes.
Sistemas Fortemente Acoplados/ Simtricos: O multiprocessamento simtrico (Simmetric
Multiprocessing- SMP), ao contrrio da organizao mestre/escravo, implementa a simetria
dos processadores, ou seja, todos os processadores realizam as mesmas funes. Apenas
algumas poucas funes ficam a cargo de um nico processador, como, por exemplo, a
inicializao (boot) do sistema.
Como vrios processadores esto utilizando, independentemente, a mesma memria e o
mesmo sistema operacional, natural a ocorrncia de acessos simultneos s mesmas reas
de memria. A soluo desses conflitos fica a cargo do hardware e do sistema operacional.
No processamento simtrico, um programa pode ser executado por qualquer processador,
inclusive por vrios processadores ao mesmo tempo (paralelismo). Alm disso, quando um
processador falha, o sistema continua em funcionamento sem nenhuma interferncia manual,
porm com menor capacidade de computao.
Os sistemas simtricos so mais poderosos que os assimtricos, permitindo um melhor
balanceamento do processamento e das operaes de entrada/sada, apesar de sua
implementao ser bastante complexa.
Sistemas Fracamente Acoplados: Os sistemas fracamente acoplados caracterizam-se por
possuir dois ou mais sistemas de computao interligados, sendo que cada sistema possui o
seu prprio sistema operacional, gerenciando os seus recursos, como processador, memria e
dispositivos de entrada/sada.
Sistemas Operacionais de Rede: Em sistemas operacionais de rede (SOR), cada n possui seu
prprio sistema operacional, alm de um hardware e software que possibilitam ao sistema ter
acesso a outros componentes da rede, compartilhando seus recursos. O SOR permite entre
outras funes:

Cpia remota de arquivos

Emulao de terminal

Impresso remota

Gerncia remota

Correio eletrnico.

Cada n totalmente independente do outro, podendo inclusive possuir sistemas


operacionais diferentes. Caso a conexo entre os ns sofra qualquer problema, os sistemas
podem continuar operando normalmente, apesar de alguns recursos se tornarem
indisponveis.
O melhor exemplo da utilizao dos sistemas operacionais de rede so as redes locais. Nesse
ambiente, cada estao pode compartilhar seus recursos com o restante da rede. Caso uma
estao sofra qualquer dano, os demais componentes da rede podem continuar o
processamento, apenas no dispondo dos recursos oferecidos por ela.
Sistemas Operacionais distribudos: Em sistemas distribudos, cada componente da rede
tambm possui seu prprio sistema operacional, memria, processador e dispositivos. O que
define um sistema distribudo a existncia de um relacionamento mais forte entre os seus
componentes, onde geralmente os sistemas operacionais so os mesmos. Para o usurio e
suas aplicaes, como se no existisse uma rede de computadores, mas sim um nico
sistema centralizado.
A grande vantagem desses sistemas a possibilidade do balanceamento de carga, ou seja,
quando um programa admitido para execuo, a carga de processamento de cada sistema
avaliada e o processador mais livre escolhido. Depois de aceito para processamento, o
programa executado no mesmo processador at o seu trmino. Tambm possvel o
compartilhamento de impressoras, discos e fitas, independentemente do sistema em que a
aplicao esteja sendo processada. Este tipo de sistema distribudo muitas vezes chamado de
cluster.
4)Pesquise sobre exemplos de aplicao em sistemas Real Time.
Alguns exemplos de aplicao para os sistemas em tempo real normalmente esto presentes
em controle de processos, como no monitoramento de refinarias de petrleo, controle de
trfego areo, de usinas termeltricas e nucleares, satlites ou em qualquer outra aplicao
onde o tempo de resposta um fator critico e fundamental.
5) Faa o mesmo para Sistemas Distribudos.
Exemplos de Sistemas Distribudos
- Internet:
Atravs de um protocolo de comunicao relativamente simples, possvel realizar trocas de
arquivos com msica, vdeo e demais tipos de dados com computadores localizados em vrias
partes do planeta. Considerando que os sistemas distribudos so compostos por vrias fontes
de processamento, armazenamento e transmisso de dados; os recursos re ferentes ao
hardware necessrio para possibilitar tal capacidade de processamento e propagao dos
dados pelos sistemas distribudos podem ser organizados de formas totalmente diferentes
entre si.

- Processadores Multincleo:
Basicamente os processadores multincleos distribuem as tarefas entre os vrios ncleos, o
que dinamiza o processamento, esse conceito passou a ser utilizado aps as empresas
fabricantes de chips atingirem o clock mximo dos processadores, o que no possibilitava um
aumento de produtividade dos chips nesse aspecto, dessa maneira a soluo encontrada foi
implementao de mais ncleos em um mesmo processador, trabalham em conjunto eles
elevaram de forma estrondosa o poder de processamento das mquinas atuais.
- Clusters:
Talvez o exemplo que mais facilite o entendimento do conceito de sistemas distribudos, por
definio um sistema onde dois ou mais computadores trabalham de maneira conjunta para
realizar processamento pesado. Em outras palavras, os computadores dividem as tarefas de
processamento e trabalham como se fossem um nico computador, assim como ocorre nos
processadores multincleos.
6) Pesquise sobre servios disponibilizados em sistemas client/server (Rede).
Dentre os principais servios disponveis em uma rede client/server podemos citar:
Servios de Fax: Utiliza um servidor para transmisso e recepo automatizada de fax pela
Internet, disponibilizando tambm a capacidade de enviar, receber e distribuir fax em todas as
estaes da internet.
Servidor de arquivos: Servidor que armazena arquivos de diversos usurios.
Servidor web: Servidor responsvel pelo armazenamento de pginas de um determinado site,
requisitados pelos clientes atravs de browsers.
E-mail: Servidor publicitrio responsvel pelo armazenamento envio e recebimento de
mensagens de correio eletrnico.
Impresso: Servidor responsvel por controlar pedidos de impresso de arquivos dos diversos
clientes.
Banco de dados: Servidor que possui e manipula informaes contidas em um banco de dados
Servio de DNS: Faz uso de servidores responsveis pela converso de endereos de sites em
endereos IP e vice-versa.
Servidor Proxy: Servidor que atua como um cache, armazenando pginas da internet recmvisitadas, aumentando a velocidade de carregamento destas pginas ao cham-las novamente.
Servidor de imagens: Tipo especial de servidor de banco de dados, especializado em
armazenar imagens digitais.
Servidor FTP: Permite acesso de outros usurios a um disco rgido ou servidor. Esse tipo de
servidor armazena arquivos para dar acesso a eles pela internet.
Servidor Webmail: Servidor para criar e-mails na web.

Servidor de Virtualizao: Permite a criao de mquinas virtuais (servidores isolados no


mesmo equipamento) mediante compartilhamento de hardware, significa que, aumentar a
eficincia energtica, sem prejudicar as aplicaes e sem risco de conflitos de uma
consolidao real.
Servidor de S.O: Permite compartilhar o sistema operacional de uma mquina com outras,
interligadas na mesma rede, sem que essas precisem ter um siste ma operacional instalado,
nem mesmo um HD prprio.
7) Defina o que Kernel.
o componente central do sistema operativo da maioria dos computadores; ele serve de
ponte entre aplicativos e o processamento real de dados feito a nvel de hardware. Logo o
Kernel pode ser definido como o conjunto de rotinas que oferecem servios aos usurios a
suas aplicaes e tambm ao prprio sistema, por isso muito das vezes tambm referido
como ncleo, cerne ou espinha dorsal do S.O.
8) Cite algumas das principais funes do Kernel
Algumas de suas funes so:
- Tratamento de interrupes e excees;
- Criao e eliminao de processos;
- Escalonamento e controle de processos;
- Gerncia de memria;
- Gerncia de sistemas de arquivos;
- Gerncia de dispositivos de E/S;
- Suporte a redes e teleprocessamento;
- Contabilizao de uso do sistema;
- Auditoria e segurana do sistema;
9) Pesquise sobre os vrios Sistemas de Arquivos existentes.
Os tipos de sistemas de arquivos existentes, normalmente esto associados ao tipo e tambm
verso do Sistema Operacional utilizado, por exemplo, nas verses atuais do Windows o
sistema de ficheiros predominante o NTFS, contudo nas primeiras verses do Windows 95 o
FAT 16 era um imperativo. Naturalmente tambm pode ocorrer de um mesmo sistema de
arquivos ser suportado por mais de um sistema operacional como o caso do j citado NTFS e
tambm das verses do FAT que tambm so suportadas por algumas distribuies Linux.
Nesse sentido quanto maior o tempo de mercado de um S.O, e quanto mais recente for o
mesmo, maior a possibilidade deste ter uma gama de vrios sistemas de ficheiros suportados
em seu leque de opes, cada qual com as suas particularidades.

Abaixo alguns dos principais sistemas de arquivos existentes:

Sistema operacional Tipos de sistema de arquivos suportados


Dos

FAT16

Windows 95

FAT16

Windows 95 OSR2

FAT16, FAT32

Windows 98

FAT16, FAT32

Windows NT4

FAT, NTFS (version 4)

Windows 2000/XP

FAT, FAT16, FAT32, NTFS (versions 4 et 5)

Linux

Ext2, Ext3, ReiserFS, Linux Swap(, FAT16, FAT32, NTFS)

MacOS

HFS (Hierarchical File System), MFS (Macintosh File System)

OS/2

HPFS (High Performance File System)

SGI IRIX

XFS

FreeBSD, OpenBSD UFS (Unix File System)


Sun Solaris

UFS (Unix File System)

IBM AIX

JFS (Journaled File System)

10) O que biblioteca de System Calls ?


As bibliotecas de system calls podem ser entendidas como uma porta de entrada para acesso
ao ncleo do sistema e aos seus servios. Sempre que um usurio ou uma aplicao necessita
de algum servio do sistema, realizada uma chamada a uma de suas rotinas atravs de uma
system call.
11) O que e quais so os Modos de Acesso.
Modo de acesso um mecanismo de proteo existente no processador, em geral os
processadores possuem dois modos de acesso, modo usurio e modo Kernel. Quando o
processador trabalha no modo usurio, somente instrues no privilegiadas podem ser
executadas, tendo assim acesso a um nmero limitado de instrues do processador. J no
modo Kernel (ou supervisor), a aplicao pode ter acesso ao conjunto total de instrues do
processador.
12) Quais os tipos de instrues e em quais modos de acesso so executadas?
Basicamente h dois tipos de instrues, as instrues que tm o poder de comprometer o
sistema so chamadas de instrues privilegiadas, enquanto as instrues que no
comprometem o funcionamento do sistema chamam-se instrues no-privilegiadas.
Para que uma aplicao possa executar uma instruo privilegiada, preciso que haja um
mecanismo de proteo no processador, chamado modos de acesso. Existem basicamente
dois modos de acesso ao processador: modo usurio e modo kernel. Quando o processador
trabalha no modo usurio, somente instrues no-privilegiadas podem ser executadas, tendo
assim acesso a um nmero limitado de instrues do processador. J no modo kernel (ou
supervisor), a aplicao pode ter acesso ao conjunto total de instrues do processador.
13) Explique o que Interrupo.
A interrupo o mecanismo que permitiu a implementao da concorr ncia nos
computadores, sendo o fundamento bsico dos sistemas multiprogramveis/multitarefa.
em funo desse mecanismo que o sistema operacional sincroniza a execuo de todas as
suas rotinas e dos programas dos usurios, alm de controlar dispositivos.
Uma interrupo sempre gerada por um evento externo ao programa e, sendo assim,
independe da instruo que est sendo executada. Um exemplo de interrupo quando um
dispositivo avisa ao processador que alguma operao de E/S est completa. Neste caso , o
processador deve interromper o programa para tratar o trmino da operao.
14) Quais os tipos de Interrupo.
- Interrupo pelo programa do usurio (entrada de dados pela console ou teclado)
- Interrupo por hardware (operaes de E/S)
- Interrupo pelo sistema operacional (ao trmino da fatia de tempo do processador
destinada ao programa)

15) Explique cada tipo.


A Interrupo por Programa de usurio ocorre quando o programa solicita a utilizao de
algum perifrico do computador como sada de dados no monitor ou a entrada de dados por
meio do teclado. Um exemplo direto uma instruo printf na linguagem C que solicita a
exibio de uma string no monitor.
A Interrupo por Hardware ocorre quando um perifrico troca o seu estado de
funcionamento isto quando estava ocioso e passa a funcionar, um exemplo quando o
usurio insere um disco na leitora de CD-ROM, que antes estava ociosa, mais que
posteriormente procede a leitura do disco mudando o seu estado e consequentemente
gerando uma interrupo por Hardware.
A Interrupo por Sistema Operacional ocorre quando termina a fatia de tempo que o
processador reservou para o processamento do programa.
16) Explique o que a tcnica de Buffer.
A tcnica de buffering consiste numa utilizao de uma rea em memria principal,
denominada buffer, criada e mantida pelo Sistema Operacional, com a finalidade de auxiliar a
transferncia de dados entre dispositivos de E/S e a memria. O buffer permite minimizar a
disparidade de velocidade entre o processador e os dispositivos de E/S, e tem como objetivo
principal manter tanto os dispositivos de E/S como o processador ocupado a maior parte do
tempo.
17) Explique o que o Spool.
A tcnica de spooling foi criada inicialmente para auxiliar a submisso de processos ao sistema,
sendo os processos gravados em fita para posterior leitura e execuo. Com o aparecimento
dos terminais para acesso ao sistema, esta tcnica teve sua funo adaptada para armazenar o
resultado da impresso dos programas em execuo.
Isto conseguido atravs da criao e manuteno, pelo Sistema Operacional de uma grande
rea em disco, com a finalidade de simular uma impressora. Desta forma, todos os usurios e
seus programas imprimem, na verdade, para este arquivo em disco, liberando a associao dos
dispositivos de impresso diretamente aos programas que esto executando.
O usurio consegue visualizar o resultado de seus programas na tela dos terminais, gerando
assim mais eficincia e economia de papel e fita de impresso. proporo que vo sendo
gerados no SPOOL, os relatrios vo sendo liberados para impresso pelo operador do
sistema, de forma ordenada e sequencial. Para cada usurio, como se ele tivesse uma
impressora associada para si.
Nesse sentido Spool uma tcnica que consiste em alocar em uma rea de espao em disco
(geralmente denominada arquivo de spool) liberando imediatamente o programa para outras
atividades.

Posteriormente o sistema operacional encarrega-se de direcionar o contedo do arquivo de


Spool para a impressora. As vantagens da tcnica de Spool que ela impede que um programa
apenas reserve a impressora para uso exclusivo, permitindo que vrios usurios faam
solicitaes simultneas para a mesma impressora, e que a mesma faa o processamento das
solicitaes alternadamente, isto faa a impresso de cada arquivo aos poucos hora
imprimindo uma pagina do arquivo X, hora imprimindo uma pagina do arquivo Y alternando
entre cada uma das impresses.
18) O que Reentrncia.
Reentrncia a capacidade de um cdigo executvel (cdigo reentrante) ser compartilhado
por vrios usurios, exigindo apenas uma cpia do programa em memria. A reentrncia
permite que cada usurio esteja executando um trecho diferente do cdigo reentrante,
manipulando dados prprios, exclusivos de cada usurio.
19) Quais as tcnicas de controle de operaes de E/S ?
O controle de Operaes de Entrada e Sada pode ser feito por meio das seguintes tcnicas:
-Controle de operaes E/S por programa: o processador sincronizava-se com o perifrico e
iniciava a transferncia de dados, ficando permanentemente testando o estado do perifrico
para saber quando a operao chegaria ao seu final. O processador ficava ocupado at o
trmino da operao de E/S.
-Controle de operaes E/S por interrupo: evoluindo o processo anterior, aps o incio da
transferncia de dados o processador passou a ficar livre para realizar outras tarefas. Assim,
em determinados intervalos de tempo o sistema operacional deveria testar o estado dos
perifricos para saber se a operao de E/S tinha terminado. Este tipo de operao permitiu
um certo grau de paralelismo, j que um programa poderia ser processado enquanto uma
operao de leitura/gravao em perifrico estava sendo efetuada. Isto permitiu a
implementao dos primeiros sistemas multiprogramveis.
- Controle de operaes E/S por DMA (Direct Memory Access): Esta tcnica permite que um
bloco de dados seja transferido entre a memria e os dispositivos de E/S sem a interveno do
processador, a no ser no incio (quando a operao solicitada) e no final da transferncia
(quando o processador notificado sobre o trmino da operao).
20) O que DMA ?
Acesso direto a Memoria RAM pelos perifricos sem o auxilio do processador
21) Quais os tipos de Arquiteturas de S.O ?
Monoltico, em camadas e Microkernel (cliente/servidor)

Arquitetura Monoltica: caracterizada por possuir seus mdulos compilados separadamente


mas linkados formando um nico e enorme programa executvel. Onde os mdulos podem
interagir livremente.
Os primeiros sistemas operacionais foram desenvolvidos com base nesta arquitetura, o que
tornava seu desenvolvimento e, principalmente, sua manuteno muito difceis. Como
vantagens desta arquitetura podemos citar a rapidez de execuo e simplicidade de
implementao. Como desvantagens, a limitao quanto a inovaes futuras e a dificuldade de
manuteno.
Arquitetura em Camadas: Com o aumento do tamanho do cdigo dos sistemas operacionais,
tcnicas de programao estruturada e modular foram incorporadas em seu projeto.
Na arquitetura em camadas, o sistema dividido em nveis sobrepostos. Cada camada oferece
um conjunto de funes que podem ser utilizadas somente pelas camadas superiores. Neste
tipo de implementao as camadas mais internas so mais privilegiadas que as camadas mais
externas. A vantagem da estruturao em camadas o isolamento das funes do sistema,
facilitando sua manuteno. Uma desvantagem o desempenho, comprometido devido s
vrias mudanas de estado do processador provocado pela mudana de camadas.
Arquitetura Microkernel (cliente x servidor): Uma tendncia nos sistemas operacionais
modernos tornar o ncleo do sistema o menor e o mais simples possvel. Para implementar
esta ideia, os servios do sistema so disponibilizados atravs de processos, onde cada um
responsvel por oferecer um conjunto especfico de funes, como gerncia de arquivos,
gerncia de processos, gerncia de memria e escalonamento.
Sempre que uma aplicao deseja algum servio, realizada uma solicitao ao processo
responsvel. Neste caso, a aplicao que est solicitando o servio chamada de cliente,
enquanto o processo que responde solicitao chamado de servidor. Um cliente, que pode
ser uma aplicao do usurio ou um outro componente do sistema operacional, solicita um
servio enviando uma mensagem para o servidor. O servidor responde ao cliente atravs de
uma outra mensagem. A principal funo do ncleo realizar a comunicao, ou seja, a troca
de mensagens entre o cliente e o servidor. A utilizao deste modelo permite que os
servidores operem em modo usurio, no tendo acesso direto a certos componentes do
sistema. Apenas o ncleo do sistema, responsvel pela comunicao entre clientes e
servidores, executa em modo kernel.
Como consequncia, se ocorrer um erro em algum servidor, este poder parar, mas o sistema
no ficar inteiramente comprometido, aumentando assim a sua disponibilidade. Como os
servidores se comunicam atravs de trocas de mensagens, no importa se os clientes e
servidores processam em um sistema com um nico processador, com vrios processadores
ou ainda em um ambiente de sistema distribudo. A arquitetura Microkernel permite isolar as
funes do sistema operacional por diversos servidores pequenos e dedicados a servios
especficos, tornando o ncleo menor, mais fcil de depurar (procurar e solucionar erros) e,
com isso, aumentando a sua confiabilidade.

Apesar de todas as vantagens deste modelo, sua implementao muito difcil. A comear
pelo desempenho, comprometido devido s vrias trocas de modo de acesso a cada troca de
mensagens entre cliente e servidor. Outro problema que certas funes do sistema
operacional, como operaes de E/S, exigem acesso direto ao hardware.
Assim, o ncleo do sistema, alm de promover a comunicao entre clientes e servidores,
passa a incorpora funes crticas do sistema, como escalonamento, tratamento de
interrupes e gerncia de dispositivos.