Académique Documents
Professionnel Documents
Culture Documents
Colatina - ES
2014
Presidncia da Repblica Federativa do Brasil
Ministrio da Educao
Prezado estudante,
Voc faz parte de uma rede nacional pblica de ensino, a Escola Tcnica
Aberta do Brasil, instituda pelo Decreto n 6.301, de 12 de dezembro 2007,
com o objetivo de democratizar o acesso ao ensino tcnico pblico, na mo-
dalidade a distncia. O programa resultado de uma parceria entre o Minis-
trio da Educao, por meio das Secretarias de Educao a Distancia (SEED)
e de Educao Profissional e Tecnolgica (SETEC), as universidades e escolas
tcnicas estaduais e federais.
O e-Tec Brasil leva os cursos tcnicos a locais distantes das instituies de en-
sino e para a periferia das grandes cidades, incentivando os jovens a concluir
o ensino mdio. Os cursos so ofertados pelas instituies pblicas de ensino
e o atendimento ao estudante realizado em escolas-polo integrantes das
redes pblicas municipais e estaduais.
Ns acreditamos em voc!
Desejamos sucesso na sua formao profissional!
Ministrio da Educao
Janeiro de 2010
Nosso contato
etecbrasil@mec.gov.br
3 e-Tec Brasil
Indicao de cones
5 e-Tec Brasil
Sumrio
7 e-Tec Brasil
Referncias 77
Currculo do professor-autor 78
Ol,
Por ser uma matria essencial para seu curso, empenhe-se nos estudos, leia
o material com calma e releia se for o caso. Tire as suas dvidas com seus
tutores e utilize os materiais indicados como apoio a seus estudos. No se
prenda apenas apostila do curso.
Um grande abrao!
Prof. Bruno.
9 e-Tec Brasil
Apresentao da disciplina
Nesta disciplina voc ter uma viso geral dos sistemas operacionais, bem como
aprender conceitos fundamentais e como feito o gerenciamento de recursos de
hardware e software do computador.
Voc algumas vezes deve ter passado por esta situao: estar navegando na inter-
net, conversando no MSN e editando um trabalho de escola no Word. Parece es-
tar tudo executando ao mesmo tempo correto? Mas provavelmente no. Apesar
de as mquinas mais novas conseguirem processar algumas instrues realmente
em paralelo, ainda sim, esses aplicativos disputam recursos sob a gerncia do Sis-
tema Operacional.
Nas primeiras aulas do curso, faremos uma caracterizao dos sistemas opera-
cionais levando em considerao a evoluo do hardware ao longo dos anos.
Conhecer o histrico do desenvolvimento destes sistemas tambm importante
para analisar a motivao de cada nova tecnologia e sua relao com o software
gerenciador. Depois, precisaremos rever alguns conceitos de hardware e software,
caracterizar alguns componentes bsicos e sua importncia em um sistema com-
putacional. Por fim, analisaremos as principais funes de gerncia de um sistema
computacional, abordando seus tpicos principais.
11 e-Tec Brasil
Projeto instrucional
CARGA
OBJETIVOS DE
AULA MATERIAIS HORRIA
APRENDIZAGEM
(horas)
Compreender os conceitos bsicos de
sistemas operacionais. Caderno e Ambiente Virtual de
1. Viso geral de
Conhecer suas funes principais. Ensino-Aprendizagem.
Sistemas Opera- 10
Analisar o Sistema Operacional como www.cead.ifes.edu.br
cionais
uma mquina de nveis.
13 e-Tec Brasil
CARGA
OBJETIVOS DE
AULA MATERIAIS HORRIA
APRENDIZAGEM
(horas)
Conhecer os modos de acesso ao
processador como forma de proteo do
sistema.
Compreender a estrutura das chamadas
Caderno e Ambiente Virtual de
5. Arquitetura do de sistema utilizadas para a comunica-
Ensino- Aprendizagem.
Sistema Opera- o com o kernel do sistema. 10
www.cead.ifes.edu.br
cional Analisar as caractersticas de uma arqui-
tetura de sistema operacional dividido
em camadas ou no.
Verificar o funcionamento e importncia
de um interpretador de comandos.
Conhecer as funes de gerncia princi-
6. Introduo pais de um sistema operacional. Caderno e Ambiente Virtual de
gerncia de Analisar as funes do elemento proces- Ensino-Aprendizagem.
10
processos, memria so dentro de um sistema operacional. www.cead.ifes.edu.br
e arquivos Verificar a administrao da utilizao de
recursos pelo sistema operacional.
concluso
Objetivos
Usurios
Sistemas
Operacionais
Hardware
Se imaginarmos, por exemplo, que uma impressora pode ser utilizada por
vrios usurios do sistema, ento dever existir algum controle para impedir
que a impresso de um usurio interrompa a impresso de outro. O sistema
operacional o responsvel por permitir o acesso organizado a esse e a ou-
tros recursos disponveis no computador.
PROGRAMAS
Sistema Operacional
Hardware
PROGRAMAS
DOS
HARDWARE
Figura 1.3: O Sistema DOS permitia acesso direto ao hardware pelos programas de usurio
Fonte: Adaptado de Machado, 2004
Aplicativos
Utilitrios
Sistema Operacional
Linguagem
de Mquina
Microprogramao Hardware
Dispositivos Fsicos
Um sistema operacional pode ento ser definido sob dois aspectos: como uma
mquina estendida ou mquina virtual e como um gerenciador de recursos.
Resumo
Nesta aula voc aprendeu alguns conceitos bsicos sobre sistemas operacio-
nais, algumas questes importantes sobre seu funcionamento e funes prin-
cipais. Viu tambm como a estruturao de um sistema em camadas pode ser
vantajosa em termos de eficincia de todo o ambiente computacional.
Atividades de aprendizagem
1. Quais seriam as principais dificuldades que um programador te-
ria no desenvolvimento de uma aplicao em um ambiente sem um
sistema operacional?
Objetivos
2.1 Histrico
Vimos que o sistema operacional interage diretamente com o hardware e,
com isso, influenciado diretamente pela evoluo do mesmo. Portanto, a
evoluo dos sistemas operacionais est, em grande parte, relacionada ao
desenvolvimento de equipamentos cada vez mais velozes, compactos e de
custos baixos e necessidade de aproveitamento e controle destes recursos.
Assim, ao falar sobre o histrico dos sistemas operacionais, estaremos recor-
dando um pouco a evoluo do hardware. Devemos lembrar que as datas
das fases da evoluo so aproximadas.
Processamento
Fita de Entrada Fita de Sada
Processamento
Fita de Sada Relatrios
Memria UCP
Dispositivos de E/S
Programa/Tarefa
A vantagem desse tipo de sistema uma melhor utilizao dos recursos dis-
ponveis, o que resulta em menor tempo de resposta das aplicaes. Alm de
um custo reduzido, uma vez que haver o compartilhamento dos recursos
entre as diferentes aplicaes e aumento da produo do usurio.
Esse tipo de sistema surgiu da necessidade de aplicaes que requeriam um Os sistemas com mltiplos
grande poder computacional, como sistemas de previso do tempo, modela- processadores podem ser
classificados em fortemente
gens, simulaes, desenvolvimento aeroespacial, entre outros. Com mltiplos acoplados e fracamente
processadores, possvel reduzir drasticamente o tempo de processamento acoplados, em funo da
comunicao entre CPUs e o
destas aplicaes. Inicialmente, as configuraes limitavam-se a poucos pro- grau de compartilhamento da
memria. Em sistemas fortemente
cessadores, mas, atualmente existem sistemas com milhares de processadores. acoplados, h uma nica memria
principal compartilhada por todos
os processadores, enquanto em
sistemas fracamente acoplados
cada sistema tem sua prpria
memria. Com isso, a taxa de
transferncia entre processadores
em sistemas fortemente
acoplados bem maior que em
sistemas fracamente acoplados.
Atividades de aprendizagem
1. Por que dizemos que existe uma subutilizao de recursos em sistemas
monoprogramveis?
Objetivos
3.1 Hardware
O hardware do computador constitudo por um conjunto de componentes
interligados: processadores, memria principal, registradores, terminais, im-
pressoras e discos magnticos, alm de outros dispositivos fsicos.
Memria;
3.1.2 Memrias
A memria tem por funo armazenar internamente toda informao que
manipulada pelo computador: os programas e os dados. A memria pode ser
classificada quanto sua velocidade (ou tempo) de acesso, capacidade de ar-
mazenamento, custo e volatilidade. Em funo dessas caractersticas, pode-se
estabelecer uma hierarquia de tipos de memrias, conforme Figura 3.1.
Registradores
Memria Cache
Maior Menor custo
capacidade de e velocidade
armazenamento Memria Principal de acesso
Memria Secundria
b) Memria cache
uma memria voltil de alta velocidade. Quando o processador faz
Para aumentar o desempenho
referncia a um dado armazenado na memria principal, verifica antes se no funcionamento das memrias
caches feita a hierarquizao
este dado no est armazenado na memria cache. Ao encontrar o dado da cache em mltiplos nveis.
armazenado na memria cache, o processador no acessa a memria princi- O nvel da cache mais alto
chamado de L1 (Level 1),
pal, diminuindo o tempo de processamento. com baixa capacidade de
armazenamento e com altssima
velocidade de acesso. O segundo
c) Memria principal nvel, L2 (Level 2), possui maior
capacidade de armazenamento,
porm com velocidade de
a memria responsvel pelo armazenamento dos programas que esto acesso inferior a L1, e assim
sucessivamente. Quando a CPU
sendo executados pela CPU em um certo instante, bem como dos dados necessita de uma informao da
utilizados pelos programas em execuo. Para que um programa possa ser memria principal, primeiramente
verifica a cache L1, caso no ache,
executado pela CPU necessrio que ele seja previamente armazenado na segue para a cache L2, assim
memria principal. Existem ainda dois tipos de memria: ROM (read only por diante. Se no encontrar em
nenhum dos nveis, busca o dado
memory memria somente leitura) e RAM (random access memory me- na memria principal.
mria de acesso randmico).
Endereos
3.1.4 Barramento
A CPU, a memria principal e os dispositivos de E/S so interligados atravs
de linhas de comunicao denominadas barramentos, barras ou vias. Um
CPU
Memria Unidade
Unidade de
Lgica e
Controle
Aritmtica
Registradores
Dispositivo E/S
Fluxo de Dados
Fluxo de Controle
Figura 3.3: Esquema grfico dos barramentos
Fonte: Adaptado de Machado, 2004
3.1.5 Pipelining
O conceito de processamento pipeline a diviso de uma tarefa em uma se-
quncia de subtarefas. O processador, por meio de suas vrias unidades funcio-
nais pipeline, funciona de forma a permitir que, enquanto uma instruo se en-
contra na fase de execuo, uma outra instruo possa estar na fase de busca.
3.2 Software
Na Figura 1.4 vimos trs camadas/nveis de software: aplicativos, utilitrios e
sistema operacional. Os software ou programas executados pelos usurios
so atualmente chamados, atualmente, de aplicativos. Antigamente se cha-
mavam simplesmente programas. Quase tudo que o usurio consegue fazer
utilizando o computador necessita de um aplicativo. Esses programas podem
ser, por exemplo, um editor de textos, uma planilha ou um programa de im-
posto de renda, de controle de estoques ou de contas a receber.
3.2.2. Interpretador
Assim chamado um tradutor que no gera o mdulo objeto. A partir de um
programa fonte, escrito em linguagem de alto nvel, o interpretador, no momen-
to da execuo do programa, traduz cada instruo e a executa em seguida.
3.2.3. Linker
O linker (ligador) o utilitrio responsvel por gerar, a partir de um ou mais
mdulos objeto, um nico programa executvel, conforme Figura 3.5. Sua
funo resolver todas as referncias simblicas existentes entre os mdulos
- objeto, reservar memria para a execuo do programa e determinar uma
regio da memria onde o programa ser carregado para sua execuo.
Mdulo objeto
Mdulo objeto
Programa
. Linker
Executvel
.
.
Mdulo objeto
3.2.4. Loader
O loader (carregador) o utilitrio responsvel por colocar fisicamente na mem-
ria principal um programa para sua execuo. Pode permitir que um programa
seja carregado em regies diferentes toda vez que for trazido para a memria.
Programa-fonte
Compilador
ou Montador
Programa-fonte
Outros
Mdulos Link edio
Objeto
Mdulo de Tempo
Carga de Carga
Biblioteca
Carregador
do Sistema
Biblioteca do Imagem
Sistema Carregada Binria na Tempo de
Dinamicamente Memria Execuo
Ligao
Dinmica
Figura 3.6: As vrias etapas do desenvolvimento e processamento de um programa
Fonte: Adaptado de Silberschatz, Galvin e Gagne, 2000
Resumo
Nesta aula voc pde estudar e identificar os elementos bsicos de uma ar-
quitetura clssica de computadores. Pode compreender as funes e carac-
tersticas de cada elemento de hardware. Nesta aula, fizemos tambm um
apanhado inicial sobre softwares utilitrios que, mesmo sem percebermos
muitas vezes, nos ajudam e muito em tarefas do dia a dia.
Atividades de aprendizagem
Objetivos
Salva contedo
Programa dos registradores na
pilha de controle
Identifica a
origem do evento
Interrupo
ou exceo
Obtm o endereo Rotina de
da rotina de tratamento
tratamento
Restaura o contedo
dos registradores
Memria
UCP Principal
Controlador
Dispositivos de E/S
Figura 4.2: Controlador dos dispositivos de E/S
Fonte: Adaptado de Machado, 2004
Aplicativos
Utilitrios
Ncleo do
Sistema Operacional
Hardware
Gerncia de memria;
Procure enumerar as atividades que voc realiza e recursos que voc costu-
ma utilizar em computadores no seu dia a dia, para depois comparar com os
servios prestados por um sistema operacional, listados ao final desta aula.
No muito comum vermos Neste ambiente de execuo, a CPU ficava muitas vezes ociosa porque
tarefas sendo executadas em
batch. Entretanto, existem as velocidades dos dispositivos mecnicos de E/S (leitores de carto)
alguns procedimentos que eram intrinsecamente menores do que as dos dispositivos eletrnicos
guardam bastante semelhana:
os processos de backup e (CPU). Com o tempo, claro, melhorias na tecnologia e a introduo
recuperao de bancos de de discos resultaram em dispositivos de E/S mais rpidos (Silberschatz,
dados, bem como o processo
de inicializao do Windows. Galvin e Gagne, 2000. p. 5).
Em ambos os casos uma srie
de tarefas so executadas de
forma automtica, em sequncia
e de forma mais ou menos
independente da vontade do 4.7. Escalonamento de tarefas e multipro-
usurio. gramao
A introduo da tecnologia de disco permitiu que o sistema operacional
mantivesse todas as tarefas em um disco, em vez de em uma leitora de car-
tes serial. Surge ento o conceito de escalonamento de tarefas e posterior-
mente de multiprogramao.
Programa/Tarefa Programa/Tarefa
Memria UCP
Dispositivos de E/S
Programa/Tarefa Programa/Tarefa
Resumo
Nesta aula vimos o conceito de interpretador de comandos (shell), qual a sua
funcionalidade em um sistema operacional. Aprendemos tambm algumas
questes sobre a linguagem de mquina que utilizada pela CPU para exe-
cutar os programas. Por fim analisamos alguns conceitos importantes sobre
interrupes de software e hardware e o funcionamento das operaes de
entrada e sada que envolvem tanto a mquina em si quanto o sistema ope-
racional propriamente dito. Aprendemos sobre a figura do kernel em um
sistema operacional bem como suas principais funes. Vimos alguns tipos
de sistemas operacionais que comearam o histrico de sistemas multipro-
gramados, a conceituao de jobs e tarefas e a importncia dos discos mag-
nticos para a evoluo de nossos sistemas atuais. Analisamos a estrutura do
sistema como um prestador de servios.
Atividades de aprendizagem
1. O kernel possui 4 funes de gerncia que so essenciais para um siste-
ma operacional. Quais so?
6. No exerccio passado no incio desta aula foi pedido para voc enumerar
as atividades e recursos que voc costuma utilizar em computadores.
Relacione com os servios e funes dos sistemas operacionais descritos
nesta aula.
Objetivos
Para que uma aplicao possa executar uma instruo privilegiada, o proces-
sador implementa o mecanismo de modos de acesso. Existem basicamente
dois modos de acesso: modo usurio e modo kernel. Quando o processa-
dor trabalha no modo usurio, uma aplicao s pode executar instrues
no-privilegiadas (instrues que no oferecem riscos), tendo acesso a um
nmero reduzido de instrues; no modo kernel a aplicao pode ter acesso
ao conjunto total de instrues do processador.
Programa
do Usurio Salva contexto
dos registradores
ll
Ca
m
Syste
Altera modo
do processador
para kernel
Altera modo do
processador
para usurio
Restrutura o contexto
dos registradores
Figura 5.1: Mudana dos modos de acesso durante uma interrupo
Fonte: Adaptado de Machado, 2004
Caso uma aplicao tenha acesso a reas de memria onde est carregado
o sistema operacional, um programador mal-intencionado ou um erro de
programao poderia gravar nesta rea, violando o sistema. Com o meca-
nismo de modo de acesso, para uma aplicao escrever numa rea onde
resida o sistema operacional o programa deve estar sendo executado no
modo kernel.
Ncleo do
Sistema
System Call Operacional
Aplicao
Hardware
Biblioteca
Figura 5.2: Chamada de sistema (system call)
Fonte: Adaptado de Machado, 2004
Controle de processo;
Manipulao de dispositivos;
Manuteno de informaes;
Comunicaes.
Aplicao
Comandos Comandos
de E/S de E/S
Rotinas de E/S
Device drivers
Dispositivo de E/S
Modo Usurio
Modo Kernel
System call
Hardware
Figura 5.4: Arquitetura monoltica
Fonte: Adaptado de Machado, 2004
Programa
Dispositivo
do MS-DOS
Sempre que uma aplicao deseja algum servio, ela solicita ao processo
responsvel. Neste caso, a aplicao que solicita um servio chamada de
cliente, enquanto o processo que responde solicitao chamado de ser-
vidor. Um cliente, que pode ser uma aplicao de um usurio ou um outro
componente do sistema operacional, solicita um servio enviando uma men-
sagem. funo do ncleo do sistema realizar a comunicao, ou seja, a
troca de mensagens entre o cliente e o servidor.
Kernel
Um sistema computacional
formado por nveis, onde a
camada de nvel mais baixo 5.4. Interpretador de comandos
o hardware. Acima desta Um dos utilitrios mais importantes para um sistema operacional o inter-
camada encontramos o sistema
operacional que oferece suporte pretador de comandos (ou shell), que a interface entre o usurio e o sis-
para as aplicaes. O modelo tema operacional. Alguns sistemas operacionais incluem o interpretador de
de mquina virtual, ou virtual
machine (VM), cria um nvel comandos no kernel (ncleo do sistema operacional). Outros podem tratar o
intermedirio entre o hardware
e o sistema operacional, interpretador de comandos como um programa especial que fica executan-
denominado gerncia de do quando um job iniciado ou quando um usurio entra no sistema (em
mquinas virtuais. Este nvel
cria diversas mquinas virtuais sistemas de tempo compartilhado).
independentes, onde cada uma
oferece uma cpia virtual do
hardware, incluindo os modos de Muitos comandos do usurio so passados ao sistema operacional por ins-
acesso, interrupes, dispositivos
de E/S, etc. trues de controle digitadas em uma linha da tela. Esse programa cha-
mado de interpretador da linha de comandos. Sua funo simples: obter
o comando seguinte e execut-lo. Antes das interfaces grficas esta era a
nica forma de comunicao entre a pessoa do usurio e o SO.
Resumo
Nesta aula aprendemos sobre funcionamento da comunicao entre os progra-
mas de usurios e o ncleo do sistema, pelas chamadas de sistema. Tambm
vimos a forma como o hardware participa da proteo dos diversos tipos de
processos e, consequentemente, dos diversos tipos de instrues que iro exe-
cutar na CPU. Por fim, analisamos algumas formas de se projetar o kernel de um
sistema operacional e suas implicaes no desempenho final do sistema.
Atividades de aprendizagem
1. O que so instrues privilegiadas e no-privilegiadas? Qual a relao
dessas instrues com os modos de acesso?
Objetivos
a) Manter registro das partes da memria que esto sendo usadas no mo-
mento e por qual processo;
1_Swap out
Processo
P1
Espao do 2_Swap in
Usurio Processo
P2
Armazenamento
Auxiliar
Memria
Prpria
Figura 6.1: Troca de dois processos usando um disco como armazenamento auxiliar
(secundrio )
Fonte: Adaptado de Silberschatz, Galvin e Gagne, 2000
Processador de textos wpd, tex, doc, etc Vrios formatos de processador de textos
Processo
{ {
Operaes de E/S
Modo Usurio
Sistemas de Independente
Arquivos
SOFTWARE
do dispositivos
(a)
{ Subsistema de E/S
Modo Kernel
Dispositivos de E/S
Figura 6.2: Gerncia de dispositivos
Fonte: Adaptado de Machado, 2000
Atividades de aprendizagem
1. Quais recursos so necessrios para a criao de um processo?
ISBN: