Vous êtes sur la page 1sur 90

Sistemas Operacionais

Joo Batista Pinto Neto

Cuiab-MT
2014

Sistemas_operacionais.indd 1

03/03/2015 15:27:23

Presidncia da Repblica Federativa do Brasil


Ministrio da Educao
Secretaria de Educao Profissional e Tecnolgica
Diretoria de Integrao das Redes de Educao Profissional e Tecnolgica
Este caderno foi elaborado pelo Instituto Federal de Educao, Cincia e Tecnologia
de Rondnia-RO, para a Rede e-Tec Brasil, do Ministrio da Educao em parceria
com a Universidade Federal de Mato Grosso.
Equipe de Reviso

Instituto Federal de Educao, Cincia e


Tecnologia de Rondnia - IFRO

Universidade Federal de Mato Grosso


UFMT


Campus Porto Velho Zona Norte

Coordenao Institucional
Carlos Rinaldi

Direo-Geral
Miguel Fabrcio Zamberlan

Coordenao de Produo de Material


Didtico Impresso
Pedro Roberto Piloni

Direo de Administrao e Planejamento


Gilberto Laske
Departamento de Produo de EaD
Aridne Joseane Felix Quintela

Ilustrao
Tatiane Hirata
Diagramao
Tatiane Hirata

Coordenao de Design Visual e Ambientes


de Aprendizagem
Rafael Nink de Carvalho

Reviso de Lngua Portuguesa


Dinaura Batista de Pdua

Coordenao da Rede e-Tec


Ruth Aparecida Viana da Silva

Reviso Final
Claudinet Antonio Coltri Junior

Projeto Grfico
Rede e-Tec Brasil / UFMT
Sistemas Operacionais - Informtica para Internet

P6596s

Pinto Neto, Joo Batista.


Sistemas operacionais / Joo Batista Pinto Neto; org. Instituto Federal de

Educao, Cincia e Tecnologia; Universidade Federal do Mato Grosso - Cuiab : UFMT;

Porto Velho: IFRO, 2014.
90 p. ; -- cm.
Curso Informtica para internet.
ISBN 978-85-68172-17-9

1. Informtica Redes de computadores - Gerncia. 2. Sistema Operacional


Conceitos e funes . I. Instituto Federal de Educao, Cincia e Tecnologia. II.
Universidade Federal do Mato Grosso. III. Ttulo.
CDD 005.43
CDU 004.78
Ficha Catalogrfica Elaborada pela Bibliotecria Cleuza Diogo Antunes CRB 11/864

Sistemas_operacionais.indd 2

03/03/2015 15:27:23

Apresentao Rede e-Tec Brasil


Prezado(a) estudante,
Bem-vindo(a) Rede e-Tec Brasil!
Voc faz parte de uma rede nacional de ensino que, por sua vez, constitui uma das aes do
Pronatec - Programa Nacional de Acesso ao Ensino Tcnico e Emprego. O Pronatec, institudo
pela Lei n 12.513/2011, tem como objetivo principal expandir, interiorizar e democratizar
a oferta de cursos de Educao Profissional e Tecnolgica (EPT) para a populao brasileira
propiciando caminho de acesso mais rpido ao emprego.
neste mbito que as aes da Rede e-Tec Brasil promovem a parceria entre a Secretaria de
Educao Profissional e Tecnolgica (Setec) e as instncias promotoras de ensino tcnico,
como os institutos federais, as secretarias de educao dos estados, as universidades, as escolas e colgios tecnolgicos e o Sistema S.
A educao a distncia no nosso pas, de dimenses continentais e grande diversidade regional e cultural, longe de distanciar, aproxima as pessoas ao garantir acesso educao
de qualidade e ao promover o fortalecimento da formao de jovens moradores de regies
distantes, geogrfica ou economicamente, dos grandes centros.
A Rede e-Tec Brasil leva diversos cursos tcnicos a todas as regies do pas, incentivando os
estudantes a concluir o ensino mdio e a realizar uma formao e atualizao contnuas. Os
cursos so ofertados pelas instituies de educao profissional e o atendimento ao estudante realizado tanto nas sedes das instituies quanto em suas unidades remotas, os polos.
Os parceiros da Rede e-Tec Brasil acreditam em uma educao profissional qualificada integradora do ensino mdio e da educao tcnica capaz de promover o cidado com capacidades para produzir, mas tambm com autonomia diante das diferentes dimenses da
realidade: cultural, social, familiar, esportiva, poltica e tica.
Ns acreditamos em voc!
Desejamos sucesso na sua formao profissional!
Ministrio da Educao
Abril de 2014
Nosso contato
etecbrasil@mec.gov.br

Sistemas_operacionais.indd 3

Rede e-Tec Brasil

03/03/2015 15:27:23

Sistemas_operacionais.indd 4

03/03/2015 15:27:24

Indicao de cones
Os cones so elementos grficos utilizados para ampliar as formas de
linguagem e facilitar a organizao e a leitura hipertextual.
Ateno: indica pontos de maior relevncia no texto.

Saiba mais: oferece novas informaes que enriquecem o


assunto ou curiosidades e notcias recentes relacionadas ao
tema estudado.
Glossrio: indica a definio de um termo, palavra ou expresso
utilizada no texto.
Mdias integradas: remete o tema para outras fontes: livros,
filmes, msicas, sites, programas de TV.
Atividades de aprendizagem: apresenta atividades em
diferentes nveis de aprendizagem para que o estudante possa
realiz-las e conferir o seu domnio do tema estudado.
Reflita: momento de uma pausa na leitura para refletir/escrever
sobre pontos importantes e/ou questionamentos.

Sistemas_operacionais.indd 5

Rede e-Tec Brasil

03/03/2015 15:27:24

Contents

Apresentao Rede e-Tec Brasil

Indicao de cones

Apresentao da Disciplina

Sumrio

11

Aula 1. Construindo a base

13

1.1 O que sistema operacional ?

14

1.2 Software ou hardware?

15

Aula 2. Funes e tipos de sistemas



operacionais
21

Sistemas_operacionais.indd 6

2.1 Funes do sistema operacional

21

2.2 Tipos de sistemas operacionais

24

Aula 3. Processos

29

3.1 O que um processo?

30

Atividade 3.1

33

Aula 4. Multiprogramao

35

4.1 Gerenciando processos

35

4.2 Executando processos

38

Atividade 4.2

39

4.3 Tipos de processos

39

Atividade 4.3

42

Aula 5. Escalonamento da UCP

45

5.1 Modo usurio e modo ncleo

47

5.2 Introduo ao escalonamento da UCP

49

Atividade 5.2

52

03/03/2015 15:27:25

Palavra do Professor-autor
Prezado(a) estudante,
Bem-vindo(a) ao Curso Tcnico Informtica para Internet!
Estamos iniciando mais uma disciplina do nosso curso que vai enriquecer o
seu conhecimento sobre o mundo da informtica. Usei o termo estamos
porque realmente vamos caminhar juntos. Vou estar ao seu lado em cada
pgina, orientando, sugerindo, chamando sua ateno para conceitos importantes, provocando a sua curiosidade, avaliando o desenvolvimento do
seu aprendizado, enfim, realizando essas e muitas outras tarefas em parceria
com voc. Embora este caderno seja um de vrios necessrios para sua formao profissional, dedique seu valioso tempo e sua ateno para adquirir
novos conhecimentos e desenvolver competncias e habilidades a partir da
leitura do seu contedo, da realizao das atividades e da interao com o
ambiente virtual.
Bons estudos!
Professor Joo Batista Pinto Neto

Sistemas_operacionais.indd 7

Rede e-Tec Brasil

03/03/2015 15:27:25

Sistemas_operacionais.indd 8

03/03/2015 15:27:25

Apresentao da Disciplina
Prezado(a) estudante,
O cenrio atual do mercado de tecnologia da informao apresenta, segundo levantamentos recentes realizados pela equipe do Instituto Federal de
Rondnia - IFRO, uma significativa necessidade de profissionais qualificados
a pesquisar, conhecer, negociar, enfim, explorar os recursos da grande rede
chamada Internet a fim de atender a usurios domsticos e empresas. Esta
disciplina, em conjunto com as demais, fornecer ferramentas para que voc
adquira as habilidades e competncias necessrias para fazer parte desse
grupo especial de profissionais especialistas em informtica para Internet.
Nesta disciplina, vamos explorar os sistemas operacionais. Um componente
fundamental dos sistemas computacionais e que est presente em todos os
computadores atuais, sejam eles domsticos ou empresariais. Portanto, esta
disciplina est relacionada com as disciplinas de programao, redes de computadores e banco de dados, e vai exigir de voc um grande esforo que ser
recompensado pelos conhecimentos adquiridos ao final da unidade.
O seu aprendizado em sistemas operacionais est estruturado da seguinte
forma: na Aula 1, sero apresentados os fundamentos dos sistemas operacionais; na Aula 2, vamos estudar os tipos de sistemas operacionais, suas
funes e servios; o conceito de processo, a figura central de um sistema
operacional, vamos explorar na Aula 3; na Aula 4, vamos estudar a multiprogramao e as principais classes de processos; a gerncia do tempo do
processador e a gerncia da memria sero abordados nas aulas 5 e 6; o estudo da interao sistema operacional com os perifricos ser o foco da aula
7; e, finalizando, na aula 8, voc vai conhecer como o sistema operacional
implementa os sistemas de arquivos.

Sistemas_operacionais.indd 9

Rede e-Tec Brasil

03/03/2015 15:27:25

Sistemas_operacionais.indd 10

03/03/2015 15:27:25

Sumrio
Aula 1. Construindo a base

13

1.1 O que sistema operacional ?

14

1.2 Software ou hardware?

15

Aula 2. Funes e tipos de sistemas operacionais

21

2.1 Funes do sistema operacional

21

2.2 Tipos de sistemas operacionais

24

Aula 3. Processos
3.1 O que um processo?
Aula 4. Multiprogramao

29
30
35

4.1 Gerenciando processos

35

4.2 Executando processos

38

4.3 Tipos de processos

39

Aula 5. Escalonamento da UCP

45

5.1 Modo usurio e modo ncleo

47

5.2 Introduo ao escalonamento da UCP

49

Aula 6. Gerenciando a memria

55

6.1 A memria principal

55

6.2 Alocao de memria

57

6.3 Memria virtual

60

Aula 7. Gerncia de Entrada e Sada

65

7.1 Dispositivos de Entrada e Sada

65

7.2 Interrupes

68

Aula 8. Sistema de arquivos

71

8.1 O que um arquivo?

72

8.2 Sistemas de arquivos

74

8.3 Diretrios

75

11

Sistemas_operacionais.indd 11

Rede e-Tec Brasil

03/03/2015 15:27:25

Rede e-Tec Brasil

Sistemas_operacionais.indd 12

Palavras Finais

78

Guia de Solues

79

Referncias

87

Obras Consultadas

88

Bibliografia Bsica

88

Currculo do Professor-autor

89

12

03/03/2015 15:27:26

Aula 1. Construindo a base

Objetivos:
compreender o papel do sistema operacional na viso do usurio e na viso do hardware;
distinguir o que hardware e o que software; e
conceituar e identificar os principais tipos de software.

Ol! Preparado(a) para iniciar a nossa jornada? Espero que sim. Bem, nesta
aula, vamos construir a base que vai sustentar o aprendizado sobre os sistemas operacionais. Vamos em frente?
Era uma vez...
Em 1975, William abandonou o curso de direito em Harvard nos Estados
Unidos para abrir uma empresa de fundo de quintal chamada Microsoft, em
parceria com seu amigo Allen. A empresa produzia programas em linguagem BASIC para microcomputadores Apple, Commodore e Altair. Em 1980,
a poderosa IBM iniciou o projeto Chess para construir um computador pessoal e convidou a pequena Microsoft para desenhar um sistema operacional
para a nova mquina.

Fonte: sxc.hu

Fig. 1.1 Interface de comando do MS-DOS

Aula 1 - Construindo a base

Sistemas_operacionais.indd 13

13

Rede e-Tec Brasil

03/03/2015 15:27:26

William e Allen desenvolveram o Microsoft Disk Operating System, ou MS-DOS. William no s vendeu o novo sistema operacional como convenceu
a poderosa americana dos computadores (IBM) a tornar pblica a especificao dos PCs para que outras empresas pudessem produzir software para a
mquina. O resultado foi a proliferao de licenas para MS-DOS, alcanando mais de dois milhes de cpias vendidas em 1984. Adaptado de Yourdictionary, (YOURDICTIONARY, William Henry Gates III Biography, disponvel em
<http://biography.yourdictionary.com/william-henry-gates-iii>, acesso em 26
jan.2013).
.Essa a histria do MS-DOS, o vov dos sistemas operacionais modernos e
do seu criador William, que, com certeza, voc j ouviu falar. No? William
Henry Gates III nada mais nada menos que Bill Gates, uma das maiores
fortunas do planeta, fundador da Microsoft, fabricante do sistema operacional mais usado no mundo atualmente, o Windows. Agora que acabamos
com as formalidades, vamos entrar no clima da aula e conceituar sistema
operacional.

1.1 O que sistema operacional ?


Se voc j usou um computador antes, ento voc j encarou um sistema
operacional. Literalmente! Ao abrir um arquivo, ao usar um editor de texto
ou ao acessar a Internet, voc usou um sistema operacional para realizar essas tarefas. Ele responsvel por facilitar o uso do computador, mostrando
uma interface amigvel (Fig. 1.2) para que o usurio possa operar a mquina
mesmo sem nenhum conhecimento do seu funcionamento.

Fonte: http://informatica.hsw.uol.com.br/sistemas-operacionais3.htm

Fig. 1.2 Interface amigvel de um sistema operacional

Rede e-Tec Brasil

Sistemas_operacionais.indd 14

14

Sistemas Operacionais

03/03/2015 15:27:26

Quando voc clica em um cone na tela e uma janela se abre no monitor de


vdeo, mostrando o relatrio que voc est escrevendo, ou uma planilha, ou
uma imagem, foi o sistema operacional que interceptou o clique do mouse,
identificou o objeto na rea clicada, providenciou acesso ao disco e carregou
na memria o aplicativo correspondente juntamente com o contedo do
setor onde estavam armazenados os dados do objeto.
Santo clique! Pois bem. Voc no precisa saber nada disso para abrir o seu
aplicativo. Essa uma das principais funes do sistema operacional. Facilitar
a sua vida.
Um sistema operacional um programa que atua como intermedirio entre
o usurio e o hardware de um computador (Silberschatz, 2010).
Nos primeiros sistemas operacionais, os aplicativos dos usurios tinham acesso direto aos perifricos, podendo, por exemplo, imprimir diretamente em
uma impressora ou receber comandos de um controlador de jogo. Quando
havia algum problema de comunicao entre o dispositivo e o aplicativo, o
sistema travava, obrigando o usurio a reiniciar o computador manualmente.
O sistema operacional um software bsico de qualquer computador, pois
fornece ao usurio uma interface conveniente e, ao mesmo tempo, gerencia
o hardware controlando de forma ordenada e eficiente o acesso ao processador, memria e dispositivos de entrada e sada pelos aplicativos que os
disputam.

Hardware
s.m. ing. Informtica. Conjunto
dos componentes eletrnicos de um computador (p. ex.,
processador, memria, disco
rgido, monitor, equipamentos
perifricos, etc.)

Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Atividade 1.1
Foram mostradas nesta seo duas funes bsicas do sistema operacional.
Uma diz respeito ao usurio e a outra ao hardware. Quais so elas?

1.2 Software ou hardware?


Imagine o seu computador sem programas. Voc liga, espera um pouco e
o que acontece? Nada! Um computador sem programas no tem nenhuma
utilidade. O programa ou software vai tornar o computador produtivo, permitindo a voc armazenar informaes em forma de dados, receber e enviar
mensagens de correio eletrnico, ouvir msica, assistir vdeos, entre outras

Aula 1 - Construindo a base

Sistemas_operacionais.indd 15

15

Software
s.m. ing. Conjunto de instrues
armazenadas em disco(s) ou em
chips internos do computador
que determinam os programas
bsicos, utilitrios ou aplicativos
que ele tem para serem usados.

Rede e-Tec Brasil

03/03/2015 15:27:26

aplicaes.
O termo software usado para definir programas de uma maneira geral.
Podemos classificar o software em trs categorias bsicas:
Software de Sistema
Segundo o site Baixaki
Maranho (Baixaki Maranho.
Android 2.2. o Android, sistema
operacional do Google para
dispositivos mveis, hoje o
mais popular entre os usurios.
Segundo a empresa, todos os
dias so ativados mais de um
milho e 300 mil aparelhos
com este sistema. Lanada em
2010, a verso 2.2 apresentou,
poca, atualizaes que serviram
como base para as posteriores.
Disponvel em
< http://baixakimaranhao.
blogspot.com.br/2013/05/
android-22.html> Acesso em:
22 nov. de 2013.
.

So programas responsveis por controlar o hardware. Como, por exemplo,


o sistema operacional Linux ou Windows ou ainda o Android. Podemos incluir nessa categoria os controladores (drivers) de dispositivo que fazem a
interface entre os perifricos e o sistema operacional. Um teclado, por exemplo, precisa de um controlador para que o sistema operacional possa receber
os dados que voc digitar.

Fonte: http://br.freepik.com

Software de programao
So programas para criar outros programas. Os desenvolvedores de software
ou programadores, como linguagens de programao, compiladores, e outras ferramentas para produzir software. Ex. Java, C#, Python, etc.

Fonte: http://br.freepik.com

Software de Aplicao
Esses programas, tambm chamados de aplicativos, podem ser programas
de negcios, como editores de texto, apresentao, planilhas eletrnicas. Ou

Rede e-Tec Brasil

Sistemas_operacionais.indd 16

16

Sistemas Operacionais

03/03/2015 15:27:28

ainda, podem ser programas educacionais, jogos, aplicaes de multimdia e


telefonia. Ex.: Ms Office, Open Office, Skype, CounterStrike, etc.
Podemos concluir que um software de sistema controla o hardware, e o
software de sistema mais importante de um computador o sistema operacional.

Fonte: http://br.freepik.com

O sistema operacional uma camada de software colocada entre o hardware e os aplicativos, aqueles programas que fazem as tarefas dos usurios do
computador (Oliveira, 2010).
Um computador ou, de maneira geral, um Sistema Computacional pode ser
representado basicamente como um dispositivo composto de dois componentes: o hardware e o software (Fig. 1.3).

Fig. 1.3 O Computador


Fonte: sxc.hu

O hardware fornece os recursos necessrios de computao, como: processador, memria e dispositivos de entrada e sada. O software so os aplicativos e o sistema operacional que utilizam os recursos do hardware. Voc
pode imaginar o computador como competidor de frmula 1, composto por
um carro e um piloto (Fig. 1.4)

Aula 1 - Construindo a base

Sistemas_operacionais.indd 17

17

Rede e-Tec Brasil

03/03/2015 15:27:29

Fig. 1.4 Competidor de frmula 1.


Fonte:sxc.hu

Fazendo uma comparao entre o competidor de formula 1 e o computador,


o hardware corresponde ao carro que, como o computador, no pode andar
sozinho, necessitando do piloto, o software. Seu objetivo ganhar a corrida.
Quanto melhor for o desempenho do motor, da suspenso e da aerodinmica do carro (hardware), aliadas percia do piloto (software), maiores sero
as chances de o competidor alcanar o objetivo.
Tempo! Hora da reflexo. Rena os conceitos que esto na sua cuca para
relacionar sistema operacional, software e hardware.

Curta esta charge genial do


Maurcio Ricardo sobre sistemas
operacionais.
http://charges.uol.com.
br/2011/10/06/especial-stevedo-outro-lado-2

No computador, o processo ocorre de maneira similar. Quanto mais rpido


for o processador, quanto maior for a capacidade de armazenamento da
memria e quanto mais rpido forem os dispositivos de entrada e sada (carro), aliadas a eficincia do sistema operacional e aplicativos (piloto), melhor
ser o desempenho do computador, ou seja, as tarefas sero executadas
com maior eficincia e rapidez.
Portanto, um computador com processadores ultrarrpidos, com grande capacidade de armazenamento de dados e dispositivos de entrada e sada
de ltima gerao pode ter seu desempenho comprometido se o sistema
operacional e os aplicativos no controlarem os recursos de hardware adequadamente.
Ficou clara a relao entre software e hardware? No? Uma volta de carro
resolve o problema. O importante que agora voc sabe que o desempenho
do computador funo do hardware e do software. Outra situao que
fica clara com essa comparao que quando o sistema operacional trava,
todo o sistema computacional fica inoperante, ou seja, o carro no anda
porque fica sem piloto!

Rede e-Tec Brasil

Sistemas_operacionais.indd 18

18

Sistemas Operacionais

03/03/2015 15:27:30

P no freio! Uma parada no box para uma reviso geral. Faa a atividade
para fixar os conceitos.

Atividade 1.2
Descreva com as suas palavras o significado de software e de hardware e
como os dois se relacionam com o sistema operacional.

Resumo
Na primeira seo, voc estudou os fundamentos do sistema operacional e
descobriu que o conceito de sistema operacional est diretamente ligado ao
significado de software e hardware. Avaliou tambm o papel de mediador
do sistema operacional que, alm de proteger o sistema de acesso indevido
ao hardware, apresenta ao usurio uma interface amigvel sem a complexidade da mquina. Na seo 1.2, enumeramos os diversos tipos de software
e fizemos uma relao entre um competidor de frmula 1 e o computador,
o que permitiu a voc concluir que um computador sem software um carro
sem piloto, ou seja, no tem nenhuma utilidade.

Atividades de aprendizagem
1. Um sistema operacional de ltima gerao instalado em um computador com um processador lento e com uma memria reduzida. Comente
sobre o desempenho desse sistema computacional.
2. Complete o quadro informativo sobre software abaixo, descrevendo as
caractersticas de cada tipo e informando, pelo menos, trs exemplos de
cada. Use as referncias, pesquise na Internet ou consulte os seus colegas
para enriquecer as suas respostas.
Tipos de Software

Caractersticas

Exemplos

Sistema
Programao
Aplicao

Aula 1 - Construindo a base

Sistemas_operacionais.indd 19

19

Rede e-Tec Brasil

03/03/2015 15:27:30

Agora voc tem a viso geral da natureza do sistema operacional e sua funo bsica no computador. Vamos acelerar, ento, e explorar, na prxima
aula, as funes e tipos de sistemas operacionais.

Rede e-Tec Brasil

Sistemas_operacionais.indd 20

20

Sistemas Operacionais

03/03/2015 15:27:30

Aula 2. Funes e tipos de sistemas



operacionais
Objetivos:
conceituar sistema operacional atravs das tarefas;
distinguir os diversos tipos de sistema operacional; e
identificar as funes e servios que o sistema operacional desempenha nos sistemas computacionais.

Bem vindo(a) segunda aula da nossa disciplina. Comearemos tratando das


funes do Sistema Operacional. Preparado(a)?

2.1 Funes do sistema operacional


Estudamos, na seo anterior, que o sistema operacional no permite aos
aplicativos do usurio acesso direto ao hardware. Vimos que existem duas
razes para isso. A primeira esconder a complexidade da mquina para
possibilitar ao usurio oper-la sem conhecimento da sua estrutura interna.
A segunda razo evitar instabilidade do sistema devido a problemas de
comunicao entre aplicativos do usurio e dispositivos de E/S.
O sistema operacional cria, na verdade, um ambiente virtual mais seguro,
mais fcil de entender, operar e programar (Tanembaum, 2008).
A outra funo bsica do sistema operacional est relacionada com o controle do acesso aos recursos do sistema. Considere a seguinte situao: Voc
abre um programa editor de texto e um programa de planilha eletrnica e
comea a trabalhar alternando entre um programa e outro. Voc decide,
ento, imprimir os dois arquivos ao mesmo tempo na mesma impressora. O
que acontece? Os arquivos sero impressos corretamente? Ufa! Ainda bem!
Graas ao sistema operacional que organizou o acesso impressora, o seu
trabalho foi impresso perfeitamente.
Como voc deve ter percebido, o gerenciamento de recursos de forma jus-

Aula 2 - Funes e Tipos de Sistemas Operacionais

Sistemas_operacionais.indd 21

21

Rede e-Tec Brasil

03/03/2015 15:27:30

ta, organizada e protegida funo do sistema operacional. Essa funo no


se restringe somente aos recursos de hardware, mas tambm a informaes,
como arquivos e pastas.
Em resumo, controlar quem est usando qual recurso, garantir os pedidos
de recursos, medir a utilizao e resolver conflitos de diferentes programas
uma tarefa bsica do sistema operacional.
Voc agora conhece as duas funes bsicas de um sistema operacional.
Vamos usar esse conhecimento para subir mais um degrau e estudar funes
mais especficas dos sistemas operacionais.
Voc daqueles usurios que abrem vrias janelas e s trabalha com uma?
No? Ainda bem! Abrir janelas em sistemas operacionais, como o da Fig.
2.1, significa executar programas no computador.

Fig. 2.1 Abrindo janelas

Cada janela aberta um programa em execuo, que chamaremos de processo. Quanto maior o nmero de janelas abertas, maior o trabalho do
sistema operacional.
Para que um programa seja executado, ele deve ser carregado em um espao exclusivo na memria, protegido, e deve ter o direito de controle da UCP.
Cabe ao sistema operacional oferecer meios para que um programa seja
carregado, executado e finalizado.
Uma das principais funes do computador a sua utilizao como ferramenta de criao, armazenamento e gerenciamento da informao. A variedade de mdias de armazenamento - como discos rgidos, fitas magnticas, DVDs, discos de estado slido (SSDs) e memrias USB existentes nos

Rede e-Tec Brasil

Sistemas_operacionais.indd 22

22

Sistemas Operacionais

03/03/2015 15:27:31

computadores - um problema, porque cada dispositivo tem uma forma de


armazenamento diferente.

Fonte: http://br.freepik.com

O sistema operacional deve fornecer uma viso estruturada e organizada das


informaes, independente dos diferentes dispositivos de armazenamento.
Por exemplo, o sistema de arquivos para CD-ROM o ISO 9660, enquanto
que em disco rgido pode ser FAT32 ou NTFS, no caso do sistema operacional
Windows, e EXT3, no caso do Linux.

Fonte: http://www.kde.org

Fig. 2.2 Interface KDE

A Figura 2.2 mostra a interface grfica KDE, comum nas edies do sistema
operacional Linux, onde voc pode ter uma viso lgica e uniforme dos recursos de armazenamento do computador implementada por intermdio de
diretrios contendo arquivos e pastas.
Essa viso apresentada para todas as unidades de armazenamento do sistema, independente do sistema de arquivos, desde que ele seja suportado
pelo sistema operacional.
Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.

Aula 2 - Funes e Tipos de Sistemas Operacionais

Sistemas_operacionais.indd 23

23

Rede e-Tec Brasil

03/03/2015 15:27:31

Faa a atividade para fixar os conceitos.

Atividade 2.1
Faa uma lista das quatro funes do sistema operacional, explicando a finalidade de cada uma delas.

2.2 Tipos de sistemas operacionais


A maneira como os sistemas operacionais realizam tarefas pode servir para
determinar sua classificao. Um sistema operacional pode ser classificado
de acordo com o nmero de programas executados simultaneamente e pelo
nmero de processadores por ele controlado (Fig. 2.3).

Acesse o site abaixo e veja um


desenho animado sobre sistema
operacional muito didtico e ao
mesmo tempo divertido. Confira!
http://www.youtube.com/
watch?v=nt0P8ZAYuUo

Fonte: Machado (2011)

Fig. 2.3 Tipos de sistemas operacionais

Historicamente, os tipos de sistemas operacionais esto relacionados com o


hardware. Os primeiros sistemas operacionais surgiram com os mainframes,
computadores de grande porte com capacidade de processamento de um
volume grande de informaes. Com a chegada dos microprocessadores, as
opes de hardware se multiplicaram, gerando tambm uma grande variedade de sistemas operacionais.

2.2.1 Sistemas monoprogramveis/monotarefas


O vov MS-DOS foi um dos primeiros sistemas operacionais comerciais monoprogramveis. Embora com todas as limitaes inerentes ao sistema, foi
um grande sucesso da poca.
Nos sistemas monoprogramveis todos os recursos do hardware esto a servio de um nico processo.
A restrio de executar um nico programa causa uma utilizao ineficiente
dos recursos da mquina. Uma tarefa simples pode significar uma perda de
tempo considervel para o usurio. Por exemplo, a impresso de um relatrio com muitas pginas vai bloquear o sistema at que a ltima pgina seja

Rede e-Tec Brasil

Sistemas_operacionais.indd 24

24

Sistemas Operacionais

03/03/2015 15:27:32

impressa e o processo de impresso seja finalizado.

2.2.2 Sistemas multiprogramveis/multitarefas


A evoluo dos sistemas operacionais monotarefas introduziu o conceito
de multiprogramao, um ambiente onde uma nica UCP compartilhada
juntamente com uma rea de memria limitada. Nesse ambiente, o sistema
operacional alterna a execuo dos programas, dando uma falsa impresso
ao usurio de que os programas esto sendo executados simultaneamente.
Um sistema multiprogramvel tem uma taxa de utilizao dos recursos da
mquina acima de 90% em relao ao seu antecessor monotarefa.
Grande parte dessa taxa atribuda ao tratamento de eventos nos quais os
aplicativos de usurio fazem acesso a perifricos. Por exemplo, enquanto um
programa faz um acesso a um dispositivo de E/S lento, como, por exemplo,
um disco rgido, o sistema operacional transfere o controle da UCP para
outro processo que est aguardando na fila, reduzindo o tempo ocioso do
sistema e, em consequncia, aumentando a eficincia do sistema.
Tempo dinheiro! Esse velho bordo continua valendo e muito para os sistemas multitarefas. A reduo do tempo de processamento e a execuo de
vrios programas concorrentes proporcionam ao usurio ganho de produo
e aumento da eficincia do computador.
Os sistemas operacionais multitarefas so encontrados na maioria dos computadores pessoais atuais. Verses recentes do Windows, MacOs e as principais edies do Linux so baseadas nessa tecnologia.

2.2.3 Sistemas com mltiplos processadores


Os sistemas com mltiplos processadores so semelhantes aos sistemas multitarefas. O que os diferencia que os primeiros possuem mais dois processadores. Essa caracterstica permite a execuo paralela de tantos programas quantos forem o nmero de processadores do sistema computacional.
Sistema com mltiplos processadores foram desenvolvidos para atender a
aplicaes que exigem alto poder de processamento.
A maneira como feito o acesso aos dispositivos de E/S e como a memria
principal conectada ao sistema computacional determinam o tipo de sistema operacional adequado para cada configurao.

Aula 2 - Funes e Tipos de Sistemas Operacionais

Sistemas_operacionais.indd 25

25

Alm das classificaes dos


sistemas operacionais abordadas
nesta seo, o Prof. Silvestri
apresenta a classificao
segundo a arquitetura interna
do sistema operacional e a
classificao quanto a utilizao
do tempo do processador. Voc
pode ampliar seu conhecimento
em sistemas operacionais
acessando suas notas de aula.
Confira!Disponvel em < http://
gredes.ifto.edubr/wp-content/
uploads/SO-Aula004.pdf>
Acesso em 29 jan. 2013

Rede e-Tec Brasil

03/03/2015 15:27:32

Podemos enumerar tambm outras vantagens dos sistemas com mltiplos


processadores como, por exemplo, a redundncia que permite que o sistema
continue a funcionar mesmo quando um dos processadores falha e o balanceamento de carga que permite dividir as tarefas.
Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Atividade 2.2
Pesquise nas indicaes das referncias ou na Internet para encontrar uma
aplicao para um sistema operacional com mltiplos processadores.
Muito bem! Mais uma aula completada com sucesso. Vamos agora relembrar os principais tpicos.

Resumo
Nesta aula, estudamos as funes e servios do sistema operacional. Vimos
que esconder a complexidade do hardware e organizar o acesso aos perifricos so duas funes bsicas de um sistema operacional. Foi destacado
tambm o gerenciamento de processos e o gerenciamento da informao
em que voc analisou como o sistema operacional mostra diferentes sistemas de arquivos em uma mesma interface. Conhecemos os tipos de sistemas
operacionais, o que permitiu a voc distinguir sistemas monotarefas de sistemas multitarefas e diferenciar um sistema multiprogramvel de um sistema
com mltiplos processadores. Voc aprendeu tambm que a arquitetura do
sistema computacional influencia significativamente a funo dos sistemas
operacionais.

Atividades de aprendizagem
1. Faa um quadro com os tipos de sistemas operacionais classificados nesta
aula, contendo as seguintes colunas:
tipo de sistema operacional;
nmero de processadores admitidos;
nmero de programas executados;
2. No sistema operacional Windows 8, a medida que cada janela aberta o
desempenho do computador fica comprometido. Por qu?

Rede e-Tec Brasil

Sistemas_operacionais.indd 26

26

Sistemas Operacionais

03/03/2015 15:27:32

Caro(a) estudante, esta aula, juntamente com a anterior, fornecem os conceitos bsicos necessrios para o estudo mais profundo dos sistemas operacionais. Vamos comear na prxima aula um conceito fundamental dos
sistemas operacionais: o processo.

Aula 2 - Funes e Tipos de Sistemas Operacionais

Sistemas_operacionais.indd 27

27

Rede e-Tec Brasil

03/03/2015 15:27:32

Rede e-Tec Brasil

Sistemas_operacionais.indd 28

28

Sistemas Operacionais

03/03/2015 15:27:32

Aula 3. Processos

Objetivos:
distinguir a diferena entre processo e programa;
identificar o contexto de um processo;
identificar as funes do bloco de controle de processo;
conceituar multiprogramao.

Seja muito bem vindo(a) a nossa terceira aula da disciplina Sistemas Operacionais. Vamos comear esta aula fazendo um paralelo entre do nosso
assunto com a cozinha. Vamos por a mo na massa?

Colocando a mo na massa...
Uma nova receita surge como resultado de nossas experincias acumuladas
a todo instante. Nada mais legal na cozinha do que aprender a enxergar/
compreender as transformaes qumicas que ocorrem o tempo todo. Receitas so frmulas qumicas. Acho absolutamente fascinante a diferena
que a simples regulagem de intensidade da chama pode causar. Da mesma
forma, sutilezas, como cortar ingredientes em pedaos maiores ou menores,
ou procedimentos podem fazer toda diferena no resultado final.
Um bom exemplo o po. Imagine que a imensa maioria dos pes que
voc j comeu foi feita com os mesmssimos ingredientes: farinha de trigo,
fermento biolgico (em p ou tabletes), gua e sal! O que muda o procedimento, as quantidades, a temperatura e o tipo de forno (Adaptado de
Gradim, 2012).
Voc deve estar se perguntando o que a receita de po tem a ver com processo. Tem muito a ver! Um programa de computador um texto com uma
srie de instrues, ou seja, a receita do po. Assim como o padeiro faz o

Aula 3 - Processos

Sistemas_operacionais.indd 29

29

Rede e-Tec Brasil

03/03/2015 15:27:32

po segundo uma receita, o sistema operacional executa o processo segundo as instrues de um programa.
Um processo a execuo de um programa dentro de um ambiente fornecido pelo sistema operacional. Os ingredientes que o sistema operacional
usa para executar o programa so os recursos disponveis, como memria,
tempo de processador e espao em disco.
Portanto, assim como os pes no saem iguais, mesmo sendo feitos com a
mesma receita, a execuo de um mesmo programa pelo sistema operacional pode ser diferente, pois depender da oferta dos recursos existentes no
momento em que o processo for criado. Construiu uma ideia do que um
processo? Tenho certeza que sim. Voc vai se lembrar desse conceito quando
tomar o seu caf da manh. Agora que voc est conectado com o assunto,
vamos conceituar formalmente um processo.

3.1 O que um processo?


Voc j aprendeu que todo sistema operacional oferece meios para que um
programa seja carregado na memria principal e executado. Essa uma das
principais funes de um sistema operacional.
Um programa de computador pode ser escrito em uma grande variedade de
linguagens de programao. Analise o programa abaixo escrito na linguagem C++.
#include <iostream>
Voidmain()
{
Cout<< Meu primeiro Programa em C++ !!! <<endl;
}

Esse programa simples de apenas cinco linhas, quando executado, abre uma
janela e mostra o texto que est entre aspas no cdigo. Mas, para que ele
seja executado, uma srie de etapas precisa ser vencida. A Figura 3.1 mostra
um diagrama com o caminho a ser percorrido.

Rede e-Tec Brasil

Sistemas_operacionais.indd 30

30

Sistemas Operacionais

03/03/2015 15:27:33

Fig. 3.1 Compilao de um programa

O primeiro passo escolher uma linguagem de programao, escrever o programa em um editor de texto e salvar no disco rgido. A seguir ele deve ser
processado por um compilador, um programa que vai ler o arquivo original (cdigo fonte), verificar se os comandos esto corretos (pr-compilao),
gerar e salvar um texto codificado em linguagem de mquina, mostrado na
Figura 3.2, que contm as instrues que o processador vai executar.

Compilador
Que ou aquele que compila. Programa que converte as
instrues de uma linguagem
qualquer de programao (p. ex.,
Cobol, Pascal) para linguagem
de mquina, passvel de ser
entendida e processada pelo
computador (Aurlio, 2013).

Fig. 3.2 Cdigo em linguagem de mquina

Observe que o programa original foi transformado em uma srie de linhas


contendo somente zeros e uns. Cada linha uma instruo em linguagem
de mquina ou cdigo binrio que ser decodificada e executada pelo processador.
O ltimo passo feito pelo ligador que vai adicionar as funes declaradas
no cdigo fonte e as chamadas de sistema e ligar esses blocos de cdigo, gerando o programa executvel. Essas chamadas de sistema so rotinas
do sistema operacional para acesso ao hardware, como, por exemplo, abrir
uma janela no monitor ou escrever um caractere na tela, necessrias para a
execuo do nosso primeiro programa em C++ que agora est formatado
na linguagem da UCP.

Aula 3 - Processos

Sistemas_operacionais.indd 31

31

Poucas linguagens so
adequadas para implementao
de sistemas operacionais como
a linguagem C e a C++. Martins
et. al mostram nessa primeira
aula do curso de Programao
Estruturada o desenvolvimento
de programas utilizando
compiladores gratuitos. Confira!
http://www.metropoledigital.
ufrn.br/aulas/disciplinas/prog_
est/aula_01.html

Rede e-Tec Brasil

03/03/2015 15:27:33

Os programas so normalmente armazenados na memria secundria, ou


memria de massa. Para que um programa seja executado, ele deve estar na
memria principal.

Fig. 3.3 Cenrio de execuo de um processo

Ento, vamos executar o nosso programa! exatamente agora que o conceito de processo entra em cena. A Figura 3.3 mostra o cenrio onde pode
ser visto o diagrama de relacionamento dos atores. O sistema operacional
reserva uma rea na memria principal para o programa executvel e seus
dados e reserva, tambm uma rea para carregar o Bloco de Controle do
Processo (BCP), uma estrutura de onde sero armazenados todos os dados
necessrios para o controle da execuo do processo.
O programa, ento, transferido do disco para a memria principal, onde
ficar aguardando o comando do sistema operacional para ser executado.
O sistema operacional transfere, ento, o controle para a Unidade Central
de Processamento (UCP) que carrega o registrador Contador de Programas
(PC) com o endereo de memria da primeira instruo e inicia a execuo
do processo.
Se, durante a execuo, por algum motivo, tiver que ser interrompida, o
sistema operacional salva no BCP o contedo de todos os registradores da
UCP e das demais informaes do processo e suspende a sua execuo. Esta
operao permite que o processo retorne ao estado de execuo exatamente onde parou, sem perda de dados.
Um processo , portanto, uma entidade dinmica que s existe enquanto
est em execuo, algo em atividade que pode receber processar e produzir dados.

Rede e-Tec Brasil

Sistemas_operacionais.indd 32

32

Sistemas Operacionais

03/03/2015 15:27:34

Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Atividade 3.1
Enumere as etapas necessrias para criao de um programa executvel.
Chegamos ao final de mais uma aula. Voc vai agora refrescar sua memria
lendo o resumo a seguir.

Resumo
Nesta aula, voc constatou que o processo um dos mais importantes conceitos dos sistemas operacionais. Voc estudou os fundamentos dos sistemas operacionais e identificou, nesta aula, que a principal funo de um
sistema operacional o gerenciamento de processos. Construmos tambm
o conceito de que um processo uma entidade dinmica, com uma estrutura muito bem definida, que permite ao sistema operacional controlar sua
execuo mesmo em um ambiente com vrios processos disputando uma
nica UCP. Vimos tambm o conceito de comunicao entre processos.

Atividades de aprendizagem
1. Descreva os passos para que um programa se torne um processo.
2. Qual a funo do BCP na interrupo de um processo?
Caro(a) estudante, voc conferiu que processo o motivo da existncia do
sistema operacional. Vamos prxima aula explorar a multiprogramao.
Um ambiente com dois ou mais processos disputando uma nica UCP.

Aula 3 - Processos

Sistemas_operacionais.indd 33

33

Rede e-Tec Brasil

03/03/2015 15:27:34

Rede e-Tec Brasil

Sistemas_operacionais.indd 34

34

Sistemas Operacionais

03/03/2015 15:27:34

Aula 4. Multiprogramao
Objetivos:
identificar filas e descrever os estados de um processo;
descrever as mudanas de contexto de um processo;
classificar os tipos de processo.

Que bom t-lo(a) aqui novamente. Vamos para a nossa quarta aula? J estamos chegando na metade da disciplina! Bem, para iniciarmos essa nova
etapa, vamos trabalhar o gerenciamento de processos. Bons estudos!

4.1 Gerenciando processos


Considere um computador com um nico processador (UCP) executando
somente um processo. O sistema operacional prepara a rea de trabalho
do processo em um espao reservado, correspondente ao total de memria
disponvel, transfere a execuo para o processador e vai dormir! Sim, porque no h o que fazer a no ser que o processo acesse algum perifrico ou
termine.

Fig. 4.1 Multiprogramao

Aula 4 - Multiprogramao

Sistemas_operacionais.indd 35

35

Rede e-Tec Brasil

03/03/2015 15:27:34

Considere agora a execuo, no mesmo computador, de trs processos simultneos (Fig. 4.1).
O sistema operacional deve, ento, reservar um tero do espao disponvel
na memria para cada processo e alternar a execuo pela UCP de forma
justa, de modo que cada processo tenha direito a mesma fatia de tempo.
Esse procedimento deve ser feito com preciso e eficincia, protegendo as
reas de memria de cada processo e alternando sua execuo de forma
segura. O sistema operacional divide os recursos disponveis da mquina
fsica entre trs mquinas virtuais, uma para cada processo. Essa tcnica
chamada de multiprogramao.
Quando um processo termina ou um novo processo criado, preciso ajustar o uso dos recursos, que so limitados, para atender a nova configurao.
Voc concorda que o gerenciamento de processos uma das mais importantes tarefas de um sistema operacional?
Nos sistemas multiprogramveis, o sistema operacional se preocupa em
gerenciar o acesso concorrente aos seus diversos recursos, como memria,
processador e perifricos, de forma ordenada e protegida, entre os diversos
programas (Machado, 2011).
O gerenciamento de processos tambm uma pedra no sapato dos projetistas de sistema operacionais. A Figura 4.1 mostra uma situao ideal,
perfeita. No caso da memria, a rea de trabalho de cada processo cabe
exatamente no segmento alocado. Na prtica isso no acontece, porque
os processos ocupam espaos de tamanho varivel e, medida que o seu
nmero aumenta, fica impossvel acomodar todos na memria. As tcnicas
para resolver esses problemas sero estudadas mais adiante.
Da mesma forma, no caso do processador, a situao no diferente, porque os processos executam uma grande variedade de tarefas. Processos que
realizam muitos clculos e raramente acessam perifricos ocupam mais tempo da UCP.
Em contrapartida, os processos que acessam perifricos com frequncia
passam grande parte do tempo aguardando, ocupando pouco tempo do
processador. Esse um problema clssico que tira o sono dos projetistas de

Rede e-Tec Brasil

Sistemas_operacionais.indd 36

36

Sistemas Operacionais

03/03/2015 15:27:35

sistemas operacionais. Mas no vamos nos preocupar com isso agora. Por
enquanto, vamos reforar o conceito de multiprogramao.

Fig. 4.2 523 partidas simultneas de xadrez

Em 2010, o israelense Alik Gershon venceu 454, empatou 58 e perdeu 11


das 523 partidas simultneas, disputas em 19 horas na praa Yithzak Rabin,
em TelAviv (Fig. 4.2). Alik est no livro Guiness de recordes. Voc conhece o
jogo de xadrez?
Em partidas simultneas, o mestre joga com os desafiantes dispostos em um
circuito fechado. Ele dedica um tempo para cada competidor, que s pode
fazer o lance quando o mestre chega sua frente. O mestre, ento, analisa
a jogada, faz a sua, zera o relgio e vai para o prximo desafiante, repetindo
o procedimento at que todos os jogos sejam finalizados.

O xadrez um dos jogos mais


antigos e populares do mundo.
Ele jogado em um tabuleiro
com 16 peas para cada jogador
e o objetivo imobilizar o rei
adversrio (cheque mate).

Confira mais informaes sobre


o xadrez acessando a pgina da
WEB:
http://pt.wikipedia.org/wiki/
Xadrez

Bom, agora voc pergunta: Qual a relao entre multiprogramao e o desafio do mestre Alik? Tem tudo a ver. Imagine que o mestre a nossa UCP e
que cada participante, juntamente com o seu tabuleiro, um programa.
medida que os participantes so acomodados nos seus lugares, eles se tornam processos. Inicialmente, todos esto em estado de espera, aguardando
a passagem do mestre. A passagem do mestre por um tabuleiro corresponde
atribuir ao processo o estado de execuo, e o tempo que o participante faz
o lance e o mestre responde corresponde fatia de tempo em que o controle
da UCP transferido para o processo. Ficou claro agora o conceito de multiprogramao? No? Ento, jogue uma partida de xadrez e releia a seo.
Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Aula 4 - Multiprogramao

Sistemas_operacionais.indd 37

37

Rede e-Tec Brasil

03/03/2015 15:27:35

Atividade 4.1
possvel criar mltiplos processos de um mesmo programa? Justifique.

4.2 Executando processos


A limitao de uma nica UCP permite somente um processo no estado de
execuo. E os outros? Os outros aguardam na fila. Quando o processo que
est em execuo termina, esgota a sua cota de tempo ou acessa um perifrico, o sistema operacional suspende sua execuo e passa o comando do
processador para o primeiro da fila. Essa operao da alterao do estado do
processo chamada mudana de contexto. As transies de estado dependem do estado em que o processo se encontra (Fig. 4.3). Vamos conhecer os
detalhes das mudanas de contexto de um processo:
Novo Pronto O processo foi criado e enviado para a fila de execuo;

Algoritmo
s.m. Matemtica. Seqncia de
raciocnios ou operaes que
oferece a soluo de certos
problemas.

Pronto Execuo O processo sai do estado pronto e entra em


execuo segundo um algoritmo de escalonamento do sistema operacional;
Execuo Espera O processo em execuo vai para o estado de
espera quando o sistema operacional suspende sua execuo por algum
motivo ou ele executa uma operao de entrada e sada;
Espera Pronto Depois de atendida a requisio, o processo sai do
estado de espera e vai para o estado pronto. O processo em espera para
retornar a execuo vai obrigatoriamente para o estado pronto.

Fonte: Adaptado de Silberschatz(2004)

Fig. 4.3 Diagrama de estados de um processo

Rede e-Tec Brasil

Sistemas_operacionais.indd 38

38

Sistemas Operacionais

03/03/2015 15:27:35

Execuo Pronto Esta mudana ocorre normalmente quando o


processo esgotou sua cota de tempo de UCP;
Execuo Terminado O processo encerrou sua execuo normalmente ou foi encerrado por acesso indevido.
Nos sistemas operacionais modernos, o sistema operacional tem domnio
completo sobre a UCP. Ele pode a qualquer tempo suspender a execuo de
qualquer processo atravs de um mecanismo chamado interrupo.
Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Atividade 4.2
Qual o motivo da mudana de contexto dos processos em um sistema operacional multiprogramvel?

4.3 Tipos de processos


Voc sabe quantos programas esto sendo executados em seu computador?
Aposto que no. Nem eu sei. So tantos tipos de processos. Mas vamos descobrir o que eles tm em comum. Pronto para conferir como os processos
podem ser classificados? Ento, vamos l!

4.3.1 Processos classificados pelo tipo de tarefa


As tarefas realizadas pelos processos consomem recursos do sistema computacional. Podemos associar processos quanto utilizao da UCP e quanto
ao acesso a perifricos:
Processos limitados pela UCP
O algoritmo raytracing usado em computao grfica para renderizar
imagens 3D com alto grau de realismo (Fig. 4.4).

Aula 4 - Multiprogramao

Sistemas_operacionais.indd 39

39

Rede e-Tec Brasil

03/03/2015 15:27:35

Fonte: http://www.nvidia.com/object/advanced-rendering.html

Fig. 4.4 Imagem renderizada com Ray Tracing

Renderizar
processo pelo qual pode-se
obter o produto final de um
processamento digital.

A cor de cada pixel da imagem calculada levando em conta a luz refletida diretamente no ponto de vista do observador. Processos que envolvem
clculos matemticos intensivos como o do algoritmo raytracing ocupam
praticamente 100% da UCP. O tempo que ele leva para completar uma
tarefa, como, por exemplo, renderizar a imagem acima, dependente da
velocidade da UCP.
Os processos limitados pela UCP fazem poucas requisies de entrada e sada. Em consequncia disso, no so vistos na fila espera com frequncia,
mas, em contrapartida, so fregueses assduos da fila pronto.
Processos limitados por Entrada e Sada (E/S)
Se no for o mais usado, certamente est entre os 10 mais. Estou falando do
seu navegador! Voc o abre e ele j envia uma solicitao da sua pgina padro para um servidor WEB atravs de uma conexo de rede para Internet.
Alguns segundos mais tarde a carga da pgina iniciada.

Fonte:http://portal.mec.gov.br

Fig. 4.5 Navegando na WEB

Rede e-Tec Brasil

Sistemas_operacionais.indd 40

40

Sistemas Operacionais

03/03/2015 15:27:36

Processos que realizam requisies de E/S como um navegador WEB (Fig.


4.5), mesmo com uma conexo de alta velocidade, ocupam muito pouco a
UCP, pois passam a maior parte do tempo em comunicao com perifricos.
O tempo que ele leva para completar uma tarefa, como, por exemplo, receber uma pgina completa de um portal, dependente da velocidade do
dispositivo de E/S, no caso, a conexo com a Internet.
Os processos limitados por E/S fazem muitas requisies de entrada e sada.
Em consequncia disso, so vistos raramente na fila pronto, mas, em contrapartida, so fregueses assduos da fila espera.

4.3.2 Processos classificados pela forma de


comunicao
Processos recebem informaes, processam e apresentam resultados. Podemos caracterizar um processo associando-o aos canais de E/S usados para
comunicao, como, por exemplo:
Processos em primeiro plano
Tambm chamados de processos interativos, os processos em primeiro plano
exigem a comunicao direta com o usurio.

Fonte: http://www.alientrap.org/games/nexuiz

Fig. 4.6 Cena do jogo Nexuiz

Jogos, como o Nexuiz (Fig. 4.6), executam processos que recebem comandos de entrada do usurio atravs do mouse, teclado ou um joystick. Esses
processos mostram os resultados dos comandos atravs do monitor de vdeo
(sada).

Aula 4 - Multiprogramao

Sistemas_operacionais.indd 41

41

Rede e-Tec Brasil

03/03/2015 15:27:36

Processos em segundo plano


Diferentemente dos processos interativos, os processos em segundo plano
no se comunicam diretamente com o usurio. Normalmente, a comunicao de um processo em segundo plano feita atravs de arquivos. Os
servios do um sistema operacional Ubuntu (Fig.4.7), tambm chamados de
daemons (pronuncia-se dimons), so exemplos de processos executados em
segundo plano.

Fig. 4.7 Processos em segundo plano no Ubuntu.

Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Atividade 4.3
Como voc classifica o processo de um editor de texto responsvel por capturar a digitao.
Hora da retrospectiva. Vamos relembrar os tpicos estudados nesta aula.

Resumo
Estudamos, nesta aula, o conceito de multiprogramao, em que voc constatou que o processo a figura central dessa tcnica que torna possvel
a execuo de mltiplos processos em sequncia, aparentando execues
simultneas. Vimos que o sistema operacional trabalha muito para compartilhar os recursos, como o tempo da UCP e o espao de memria, de modo
a atender com eficincia a execuo de todos os processos. Vimos tambm
como o sistema operacional organiza as filas de processos baseadas em seus
estados e como ele gerencia a mudana de contexto.

Rede e-Tec Brasil

Sistemas_operacionais.indd 42

42

Sistemas Operacionais

03/03/2015 15:27:36

Atividades de aprendizagem
1. Compare o trabalho do processador com um sistema monoprogramvel e
com um sistema multiprogramvel.
2. Um processo A limitado por UCP, enquanto um processo B limitado
por E/S. Sabendo que os dois processos tem o mesmo nmero de instrues,
qual deles ser executado primeiro? Justifique.
Parabns! Mais uma aula concluda. Prepare-se agora para conhecer como o
sistema operacional controla a execuo de processos.

Aula 4 - Multiprogramao

Sistemas_operacionais.indd 43

43

Rede e-Tec Brasil

03/03/2015 15:27:36

Sistemas_operacionais.indd 44

03/03/2015 15:27:37

Aula 5. Escalonamento da UCP

Objetivos:
conceituar escalonamento;
distinguir modo usurio de modo ncleo na execuo de processos;
reconhecer as aes dos mdulos escalonador e despachante; e
identificar as formas bsicas de escalonamento.

Seja bemvindo(a) nossa stima aula da disciplina Sistemas Operacionais.


Estamos entrando na segunda metade da nossa disciplina. A metade do
caminho j foi percorrida! Vamos comear a nossa aula revendo conceitos
sobre filas e aplicando-os aos sistemas operacionais.

Fonte: sxc.hu

Furando a fila...
Ns aprendemos desde pequenos no jardim de infncia: no devemos furar
a fila! Existem consequncias para quem desobedece a uma das regras
mais bsicas da sociedade: que voc aguarde pacientemente na fila atrs da
pessoa que chegou antes de voc, no importa quanto tempo demore. Mas,
ser que esse sempre o caso? Com certeza, voc consegue identificar uma

Aula 5 - Escalonamento da UCP

Sistemas_operacionais.indd 45

45

Rede e-Tec Brasil

03/03/2015 15:27:37

situao em que as pessoas normalmente furam a fila DEPOIS de pedir para


fazer isso, por exemplo, quando o ato de furar a fila feito com o consentimento da outra pessoa, ainda que ofeream uma desculpa para furar a fila.
Essa uma prtica comum em filas de segurana nos aeroportos, quando as
pessoas pedem para furar a fila para evitar perder o voo...
... At mesmo na Inglaterra, onde impera a regra primeiro que entra, primeiro que sai, comportamento semelhante observado na fila para compra de passagens de trens: algum que est quase perdendo seu trem consegue passar na frente dos outros, se pedir e informar esse fato (Adaptado
de Coelho, 2012).
Uma das razes para a formao das filas quando o tempo de atendimento dedicado a uma pessoa maior que o tempo de chegada da outra.
exatamente o que acontece no ambiente de multiprogramao! Enquanto a
UCP atende um processo, uma fila se forma devido a grande quantidade de
processos de um computador.

Fonte: sxc.hu

Pessoas tm necessidades diferentes, que resultam em diferentes tempos de


atendimento, assim como os processos que tm tamanhos variveis, resultando em tempos de execuo variveis. Pessoas tambm no so iguais
e devem receber tratamento diferenciado na hora do atendimento, como
um idoso ou um portador de necessidades especiais, ou ainda uma mulher
grvida. Assim como as pessoas, os processos tm caractersticas diferentes
e, se forem tratados da mesma maneira, alguns tero timo desempenho
enquanto outros sero prejudicados.

Rede e-Tec Brasil

Sistemas_operacionais.indd 46

46

Sistemas Operacionais

03/03/2015 15:27:37

O responsvel pela organizao, controle e atribuio de prioridades o


sistema operacional. ele que controla o tempo que a UCP dedica a cada
processo, que depende do seu tipo, da sua funo e do seu tamanho. E com
ele no tem conversa, ningum fura a fila!
Agora que voc j est por dentro do assunto que vamos explorar nesta
aula, vamos conceituar formalmente o gerenciamento da UCP.

5.1 Modo usurio e modo ncleo


Voc estudou, na aula 4, que no ambiente da multiprogramao com uma
nica UCP, necessrio fazer uma escala de execuo para poder atender
um a um os processos prontos para a execuo. Esse procedimento chamado de Escalonamento da UCP.
O escalonamento da UCP a base dos sistemas operacionais multiprogramados. A partir da redistribuio da UCP entre os processos, o sistema operacional pode tornar o computador mais produtivo (Silberschatz, 2004).
Para realizar o escalonamento, o sistema operacional usa processos prprios,
que so carregados em uma rea de memria protegida chamada de ncleo
do sistema operacional, mostrado na Figura 5.1.

Fig. 5.1 Ncleo do sistema operacional

O ncleo do sistema operacional tem quatro mdulos bsicos:


Gerncia da UCP responsvel pelo escalonamento da UCP e pela mudana de contexto dos processos;
Gerncia de Memria responsvel pela alocao de memria para os
processos;

Aula 5 - Escalonamento da UCP

Sistemas_operacionais.indd 47

47

Rede e-Tec Brasil

03/03/2015 15:27:38

Gerncia de E/S responsvel pelo controle de acesso aos perifricos,


atendendo requisies de processos e controlando interrupes da UCP;
Gerncia do Sistema de Arquivos responsvel pela organizao dos
dados em arquivos e pastas, controle de acesso e segurana.

Kernel
(ing.) o ncleo de qualquer
software, o cdigo, programa
ou conjunto de programas
principais.

Os processos do ncleo ou kernel so processos de sistema que tem acesso


completo ao hardware e memria principal. So executados em modo
protegido em espaos exclusivos na memria. J os processos de usurio
no tm acesso ao hardware e s podem enderear memria dentro da sua
rea de trabalho.
Voc pode deduzir, ento, que a gerncia da UCP feita alternando a execuo de processos em modo ncleo com processos em modo usurio
(Fig. 5.1). Para clarear o seu juzo, analise o grfico a seguir, que mostra a
execuo de dois processos de usurio.

Fonte: Adaptado de Machado (2011)

Fig. 5.2 Escalonamento de UCP

Suponha que o seu computador est iniciando a execuo de dois processos


A e B (Fig. 5.2). No instante de tempo zero, o sistema operacional inicia um
processo de sistema que vamos chamar de escalonador. Esse processo carrega na memria os dois processos e atualiza a fila pronto, com o processo A
em primeiro e B em segundo.

Hachura
s.f. Traos paralelos ou cruzados
que se empregam nos desenhos,
pinturas ou gravuras para marcar
as sombras e meias-tintas.

Rede e-Tec Brasil

Sistemas_operacionais.indd 48

As duas faixas horizontais contnuas do grfico representam os processos A


e B, e os blocos inferiores, os processos de sistema. As reas amarelas mostram o tempo de permanncia dos processos na fila pronto. As reas verdes
mostram o tempo de execuo em que os processos detm o controle da
UCP. As reas hachuradas mostram o tempo de transio de um estado
para outro (Ex. pronto executando). Entre o instante de tempo zero e o
instante de tempo 10, os dois processos esto na fila pronto (rea amarela)
aguardando a execuo.

48

Sistemas Operacionais

03/03/2015 15:27:38

No instante 10, o escalonador entra em ao chamando um processo de


sistema denominado despachante para iniciar a execuo do processo A.
O despachante um mdulo do ncleo do sistema operacional responsvel
por passar o controle da UCP para um processo. Ele muda o contexto do
processo e alterna para o modo usurio.
Essa operao executada em modo ncleo no menor espao de tempo
possvel. Entre os instantes de tempo 10 e 20, o controle da UCP do processo A (rea verde), executado em modo usurio.
No instante 20, o despachante interrompe o processo A, o coloca na fila
pronto e inicia a execuo do processo B. A partir desse instante, quem tem
o controle da UCP o processo B, tambm executado em modo usurio.
O procedimento se repete e o despachante vai alternar o controle da UCP
entre os dois processos at que eles encerrem.
Ficou claro agora o conceito de modo ncleo e modo usurio? Tenho certeza
que sim! Na prtica, o sistema operacional distribui entre os processos o tempo da UCP e usa o menor tempo possvel com os processos em modo ncleo.
Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Atividade 5.1
Analise a Figura 5.2 e faa um grfico incluindo mais um processo (C, por
exemplo) na fila pronto no instante de tempo zero. Observe que nesse cenrio os processos tm fatias de tempo de UCP iguais.

5.2 Introduo ao escalonamento da UCP


Voc, como usurio de computador, j deve ter experimentado abrir aplicativos e amargar longos tempos de espera at que eles estejam disponveis
para uso. Vrios fatores contribuem para que isso ocorra, e um deles a
ineficincia do sistema operacional.
Todos os sistemas operacionais tm polticas e critrios que orientam as
aes de seus escalonadores para que distribuam o tempo da UCP da melhor
maneira possvel. Essas aes so procedimentos denominados algoritmos
de escalonamento.

Aula 5 - Escalonamento da UCP

Sistemas_operacionais.indd 49

49

Rede e-Tec Brasil

03/03/2015 15:27:38

Para que voc entenda a funo dos algoritmos de escalonamento, vamos


estudar dois algoritmos bastante simples usados nos primeiros sistemas operacionais. Para ajudar nessa tarefa, vamos estabelecer as seguintes medidas
ou mtricas para os critrios de escalonamento:
Produtividade (Pd) o nmero de processos por unidade de tempo,
medida em processos/segundo;
Tempo de espera (Te) tempo total que o processo fica na fila pronto
durante a sua execuo, medido em milsimos de segundo (ms);
Tempo de Execuo (Tx) tempo total compreendido do instante em
que o processo criado at o instante do trmino da sua execuo, medido em milsimos de segundo (ms);
Utilizao da UCP taxa de ocupao da UCP, mede a carga da CPU,
medida em porcentagem (%).
Agora voc est apto a conhecer e avaliar os algoritmos de escalonamento.
Vamos comear com o algoritmo PEPS.

5.2.1 Algoritmo primeiro a entrar primeiro a sair

Fonte: sxc.hu

O algoritmo primeiro a entrar primeiro a sair (PEPS) bastante simples. Exige


somente uma fila em que o primeiro processo a entrar o primeiro a sair. Se
o processo que est sendo executado sofre bloqueio por uma requisio de
E/S e vai para o estado de espera, o primeiro processo da fila pronto executado. Quando o processo bloqueado liberado, ele retorna para o final
da fila. Este algoritmo foi muito usado nos primeiros sistemas operacionais

Rede e-Tec Brasil

Sistemas_operacionais.indd 50

50

Sistemas Operacionais

03/03/2015 15:27:39

monoprogramveis, com escalonamento sem preempo. Vamos avaliar o


seu desempenho para o tempo de espera (Te) e o tempo de execuo (Tx).
Suponha que entrem trs processos na fila pronto com os seguintes tempos
de processamento:
Processo A = 20ms, Processo B = 2ms e Processo C = 5ms.
Para essa ordem, os tempos de espera e execuo total esto mostrados na
Tabela 5.1.
Tabela 5.1 Algoritmo PEPS ordem original
Ordem

Tempo de processamento

Te

Tx

20

20

20

22

22

27

14

23

Mdia

Veja que, embora o processo B necessite de somente 2ms para ser executado, seu tempo de execuo de 22ms porque ele amarga 20ms na fila
esperando o processo A (espaoso!) ser executado. Isso no justo, certo?
Ento, vamos mudar a ordem de entrada dos processos e refazer os clculos
(Tabela 5.2)
Tabela 5.2 Algoritmo PEPS ordem alterada
Ordem

Tempo de processamento

Te

Tx

20

27

2,3

12

Mdia

Que diferena! Voc viu? Bastou trocar a ordem de execuo e os tempos


ficaram excelentes. exatamente o que faz o algoritmo a seguir.

5.2.2 Algoritmo menor primeiro


Este algoritmo seleciona para execuo o processo que tiver menor tempo
de processamento. No caso do exemplo anterior, o escalonador faria a escolha idntica a da Tabela 5.2. O problema deste algoritmo estimar o tempo
de processamento de cada processo que entra na fila. Uma maneira de resolver o problema calcular o tempo de processamento baseado nas execues
anteriores do processo.

Aula 5 - Escalonamento da UCP

Sistemas_operacionais.indd 51

51

Rede e-Tec Brasil

03/03/2015 15:27:39

5.2.3 Algoritmo por alternncia circular

Voc pode ter informaes


adicionais sobre algoritmos
de escalonamento acessando
as notas de aula do Professor
Marcelo Johann no site abaixo.
Confira!
http://www.inf.ufrgs.
br/~johann/sisop1/aula10.
scheduling.pdf

Neste algoritmo, tambm chamado de Round Robin,o escalonador dedica


um tempo fixo denominado quantum para cada processo da fila pronto sequencialmente at o final, retornando ao primeiro e reiniciando o processo
continuamente.

Fonte: Adaptado de Machado (2011)

Fig. 5.3 Escalonamento por alternncia circular

O problema deste algoritmo o tamanho do quantum. Se for muito pequeno fica ineficiente, causa muitas mudanas de contexto. Se for muito grande
torna o tempo de resposta inaceitvel, principalmente para processos interativos.
Voc conferiu que os algoritmos de escalonamento so fundamentais para o
desempenho do sistema operacional. Tcnicas como critrios de prioridade
dos processos, usadas em conjunto com os algoritmos mostrados anteriormente, aumentam mais ainda a eficincia do sistema. Consulte a bibliografia
bsica e a dica a seguir para mais detalhes sobre os algoritmos de escalonamento da UCP.
Algoritmos de escalonamento so ainda objeto de pesquisa e a cada dia
uma nova maneira de escalonar proposta.
Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Atividade 5.2
Dentre os trs algoritmos de escalonamentos estudados, qual o mais justo?
Justifique.
Vamos relembrar os tpicos estudados nesta aula. Refresque a memria lendo o resumo da aula.

Rede e-Tec Brasil

Sistemas_operacionais.indd 52

52

Sistemas Operacionais

03/03/2015 15:27:39

Resumo
Nesta aula, voc teve uma viso geral da gerncia da UCP. Conheceu o ncleo do sistema operacional, tambm chamado de kernel, que auxiliou a
voc distinguir a execuo de processos em modo usurio da execuo de
processos em modo ncleo. Estudou tambm o papel do escalonador e do
despachante no processo de escalonamento. Abordamos os principais critrios para um escalonamento justo e eficiente, e voc experimentou a dificuldade de determinar uma poltica de escalonamento ideal, que atenda
a todos os tipos de processo. Apresentamos, em seguida, as mtricas para
avaliar o desempenho dos algoritmos com relao a produtividade, tempo
de execuo, tempo total de espera entre outros. E, finalmente, estudamos
dois algoritmos de escalonamento, destacando suas caractersticas e suas
deficincias.

Atividades de aprendizagem
1. Complete o quadro abaixo com as informaes sobre os eventos que o
escalonador precisa para tomar decises.
Evento

Descrio

1
2

Incio da execuo do processo


O processo sai do estado de execuo e vai para o estado pronto

3
4

Motivo

Retorno de uma requisio de E/S


O processo sai do estado de execuo e vai para o estado espera

2. Qual a influncia dos algoritmos de escalonamento nos sistemas operacionais?


3. Suponha que quatro processos A, B, C e D devam ser executados. Sabendo que seus tempos de processamento so 4, 32, 7 e 25ms, respectivamente, faa uma comparao de desempenho entre o algoritmo PEPS e o
algoritmo MP.
Parabns, mais uma aula concluda. Os conhecimentos adquiridos nesta aula
sero a base para o entendimento da gerncia da memria, que abordaremos na prxima aula.

Aula 5 - Escalonamento da UCP

Sistemas_operacionais.indd 53

53

Rede e-Tec Brasil

03/03/2015 15:27:39

Sistemas_operacionais.indd 54

03/03/2015 15:27:39

Aula 6. Gerenciando a memria

Objetivos:
reconhecer o conceito de endereo lgico e fsico;
avaliar a gerncia de memria usando parties;
descrever paginao de memria;
conceituar a memria virtual; e
identificar as polticas de substituio de pginas.

Seja bem-vindo(a) a mais uma aula da nossa disciplina. Para dar incio essa
nossa sexta aula, vamos comear tratando do assunto Memria Principal.
Pronto(a)?

6.1 A memria principal


A memria principal ou memria fsica um mdulo do hardware composto
de circuitos eletrnicos que armazenam dados na forma binria. Os dados
na memria so organizados em bytes (8 bits), que podem ser acessados
atravs de um endereo fsico.
Cada posio de memria tem um endereo nico correspondente a uma
combinao de bits das linhas de endereos do circuito eletrnico. O nmero de linhas de endereo determina a capacidade mxima de memria do
sistema computacional, assim, o computador, quando sai da fbrica, tem j
estabelecida a quantidade mxima de dados que podem ser armazenados
na memria principal.
A Figura 6.1 mostra uma memria com capacidade para 4 bytes. Para ter
acesso a cada posio da memria, temos que ter 2 linhas de endereamento.

Aula 6 - Gerenciando a Memria

Sistemas_operacionais.indd 55

55

Rede e-Tec Brasil

03/03/2015 15:27:39

Fig. 6.1 Endereamento fsico de memria

Para acessar a primeira posio de memria, o endereo deve ser 00, para a
segunda, 01, e assim por diante. Assim, generalizando, para n linhas de endereo, a nossa memria ter capacidade para armazenar 2n bytes.
Hora da reflexo. Analise a Figura 6.1 e calcule quantas linhas de endereo
seriam necessrias para enderear uma memria de 4GB
Conseguiu? Se voc calculou 32 linhas, parabns! Vamos usar esse conceito
de endereamento fsico para entender como os processos endeream dados
na memria.
Quando um programa criado, o compilador referencia os endereos de
memria a partir do endereo onde o processo ser carregado. Mas como saber? Impossvel. Assim o endereo de referncia para o processo o endereo
zero, a base da memria. O problema que outros processos usam tambm
o mesmo endereo de referncia. Para resolver esse problema foi proposto o
conceito de endereo lgico.
Os endereos gerados pelos processos quando esto no comando da UCP
so endereos lgicos. Esses endereos so traduzidos para os endereos fsicos pela Unidade de Gerenciamento de Memria (UGM).
Unidade de Gerenciamento
de Memria (UGM)
Do ingls Memory
management Unit (MMU),
responsvel por gerenciar a
memria fsica, a memria do
sistema operacional e a memria
dos aplicativos. Normalmente
est integrada UCP, embora em
alguns sistemas seja um mdulo
independente.

Rede e-Tec Brasil

Sistemas_operacionais.indd 56

No carregamento do processo na memria, um dispositivo de hardware,


a Unidade de Gerenciamento de Memria, atualiza um registrador com o
endereo fsico correspondente posio de memria da primeira instruo
do processo. Esse valor, somado ao endereo lgico, gera o endereo fsico
correspondente (Fig. 6.2).

56

Sistemas Operacionais

03/03/2015 15:27:40

Fonte: Sibesrchatz (2004)

Fig. 6.2 Traduo de endereos lgicos para fsicos

Suponha que o processo foi carregado a partir do endereo fsico 6200. Esse
valor ser somado a todos os endereos gerados pela UCP. Por exemplo, se
o processo buscar uma instruo no endereo lgico 300, a UGM vai gerar
o endereo real, fsico, 6500 = 6200 + 300.
Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Atividade 6.1
Explique a funo da Unidade de Gerenciamento da Memria (UGM).

6.2 Alocao de memria


O espao da memria principal dividido em duas partes. Uma para o sistema operacional e outra para os processos.

Fonte: Tanembaum (2008)

Fig. 6.3 Alocao de memria Sistemas monoprogramveis

Nos sistemas monoprogramveis, a alocao de memria bastante simples, porque temos somente um processo em execuo (Fig. 6.3). O sistema

Aula 6 - Gerenciando a Memria

Sistemas_operacionais.indd 57

57

Rede e-Tec Brasil

03/03/2015 15:27:40

operacional normalmente carregado na parte baixa da memria e o restante do espao ocupado pelo processo. Caso o tamanho do processo seja
maior do que o espao disponvel, ele no ser carregado.
Nos sistemas multiprogramveis, a necessidade de alocar memria para vrios processos obrigou os projetistas de sistemas operacionais a dividir a memria. Vamos conferir como eles resolveram o problema.

6.2.1 Particionando a memria

Fragmentao
S.f. Ao de se partir em
fragmentos. Quebrar em
pequenos pedaos

Os primeiros sistemas usavam parties fixas. Essas parties eram configuradas na inicializao do sistema. Os processos eram distribudos de acordo
com o tamanho na partio imediatamente maior, ou seja, processos pequenos em parties pequenas (Fig. 6.4). Como os processos tm tamanhos
variveis, esta soluo gera fragmentao. As reas livres dentro das parties no eram usadas, tornando o uso da memria ineficiente.

Fig. 6.4 Alocao de memria Parties fixas

Quando os processos eram retirados da memria, os espaos deixados no


eram contguos, formando buracos, obrigando a fazer manuteno no
sistema periodicamente para restaurar o espao original de memria. Para
resolver este problema, uma soluo foi proposta: a paginao de memria
que estudaremos a seguir.

6.2.2 Paginao de memria

Contguo
Adj.Imediato, prximo, junto.
Que toca em uma coisa: quarto
contguo a outro.

A paginao uma tcnica de gerenciamento de memria que no necessita


de espaos contguos de memria para carregar os processos. Na prtica,
um processo pode estar espalhado na memria, dividido em vrios pedaos
que no esto necessariamente juntos.
Para entender como funciona a paginao, vamos conceituar dois tipos de
memria:

Rede e-Tec Brasil

Sistemas_operacionais.indd 58

58

Sistemas Operacionais

03/03/2015 15:27:40

Memria Lgica espao de endereamento lgico composto pelos endereos gerados pela UCP;
Memria fsica espao de endereamento fsico composto pelas posies reais de memria.
Na pgina, a memria fsica dividida em blocos de tamanho fixo, denominados quadros, e a memria lgica dividida em blocos de tamanho idntico aos quadros, denominados pginas. Temos, ento, uma correspondncia
direta entre pginas e quadros (Fig. 6.5).

Fonte: Tanenbaum (2010)

Fig. 6.5 Correspondncia entre pgina e quadro

Quando um programa carregado na memria, ele distribudo entre os


quadros disponveis, e a Unidade de Gerenciamento da Memria (UGM)
responsvel por fazer a correspondncia dos quadros da memria fsica com
as pginas da memria lgica (Silberschatz, 2004).
Observe que, para o processo, ele est fazendo um endereamento em um
espao contguo, linear. Na realidade, ele est endereando em um espao
totalmente disjunto, espalhado. A vantagem que o processo carregado
nos blocos disponveis, no importando se eles esto juntos ou separados, evitando a fragmentao, comum no sistema de gerenciamento com parties.
Analise a Figura 6.5 e considere a seguinte situao: se um processo tem dez
pginas, quantos quadros devem ter disponveis na memria para que ele
seja carregado?

Aula 6 - Gerenciando a Memria

Sistemas_operacionais.indd 59

59

Rede e-Tec Brasil

03/03/2015 15:27:41

Se voc chegou concluso que, se o processo tem dez pginas, ele s


poder ser carregado na memria se existirem no mnimo dez quadros disponveis, voc est absolutamente certo!
Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Atividade 6.2
Qual o benefcio da paginao de memria?

6.3 Memria virtual


Manter a maior quantidade de processos em execuo o objetivo principal da multiprogramao. Porm, medida que o nmero de processos
aumenta, o espao de memria fsica diminui e, eventualmente, se esgota.
A tcnica de paginao cria uma imagem de uma memria contgua, que
facilita o endereamento feito pelo processo, mas exige que o processo inteiro esteja carregado na memria para que ele seja executado. Resumindo,
no resolvem o problema de falta de espao da memria fsica. A soluo
a memria virtual que vamos explorar nesta aula.

6.3.1 Conceituando a memria virtual


Voc j sabe que um programa precisa estar carregado na memria para poder ser executado, mas ser que preciso que o programa inteiro, incluindo
o cdigo principal, as sub-rotinas, as estruturas de dados e demais mdulos
estejam carregados? No! Na realidade, somente a parte que est sendo
executada precisa estar na memria. Assim, possvel manter as partes do
processo que no esto sendo executadas na memria secundria (memria
de massa) e carregar somente as partes necessrias para a execuo.
Memria virtual uma tcnica sofisticada e poderosa de gerncia de memria, em que as memrias principal e secundria so combinadas dando ao
usurio uma iluso de existir uma memria muito maior do que a capacidade real da memria principal (Machado, 2011).
Com essa tcnica, possvel aumentar o nmero de processos concorrentes
e ao mesmo tempo oferecer ao processo uma memria lgica teoricamente
sem limitao de tamanho. A limitao seria o espao disponvel na memria
fsica combinado com o espao da memria secundria, que pode ser aumentado indefinidamente.

Rede e-Tec Brasil

Sistemas_operacionais.indd 60

60

Sistemas Operacionais

03/03/2015 15:27:41

Esse o conceito de memria virtual. Ficou claro para voc? Muito bem!
Ento vamos em frente para voc entender como possvel executar uma
quantidade de processos que normalmente no caberiam na memria
principal.

6.3.2 Memria virtual com paginao por


demanda
Na paginao por demanda, somente algumas pginas da memria lgica
so carregadas na memria fsica, embora para o processo toda a memria
lgica esteja disponvel a qualquer tempo. Para controlar quais as pginas
que esto efetivamente carregadas, a UGM inclui mais uma coluna na tabela de pginas (Fig. 6.6) para informar se a pgina vlida (v) ou invlida
(i). Caso seja vlida, a pgina tem um quadro correspondente na memria
fsica, caso contrrio, a pgina est na memria secundria.
Quando o processo enderea uma instruo, a UGM verifica se a pgina
contendo o endereo da instruo vlida. Se for vlida, o endereo da
pgina traduzido apontando para o quadro vinculado a ele. Por exemplo,
na Fig. 6.6, o mdulo D ocupa a pgina 3. Se uma instruo for endereada
dentro deste mdulo, a UGM vai fazer o endereamento dentro do quadro
399 da memria fsica.

Fonte: Silberschatz (2004)

Fig. 6.6 Memria Virtual Paginao por demanda

Aula 6 - Gerenciando a Memria

Sistemas_operacionais.indd 61

61

Rede e-Tec Brasil

03/03/2015 15:27:41

Falta de pgina
ou falha de pgina (pagefault
em ingls), no contexto
da tecnologia da memria
dos computadores, uma
interrupo (ou exceo)
disparada pelo hardware quando
um programa acessa uma
pgina mapeada no espao de
memria virtual, mas que no foi
carregada na memria fsica do
computador.

At aqui tudo bem, certo? Ok. Vamos agora analisar o caso em que a instruo endereada est na pgina A. Neste caso a UGM no vai encontrar o
quadro correspondente porque a pgina invlida. Imediatamente, a UCP
inicia uma exceo de falta de pgina. Essa exceo tratada pelo sistema
operacional como uma operao de E/S e o processo entra em estado de
espera. Nesse intervalo, a pgina A, que se encontra na memria secundria,
transferida para um quadro disponvel na memria fsica. Aps a transferncia, o escalonador posiciona o processo na fila pronto onde ele aguardar
a oportunidade de obter o controle da UCP.
Uma variao dessa tcnica a memria virtual usando paginao antecipada. O sistema operacional, em vez de carregar somente a pgina invlida,
carrega tambm pginas subsequentes. Como os programas so executados
sequencialmente, as pginas na sequncia da pgina invlida tm grande
possibilidade de serem solicitadas.
Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Atividade 6.3
Qual o benefcio da memria virtual com paginao por demanda para o
sistema operacional?
Chegamos ao final de mais uma aula. Voc vai agora refrescar sua memria
lendo o resumo a seguir.

Resumo
Nesta aula, vimos como feito o endereamento dos dados da memria
principal. Voc aprendeu tambm a distinguir endereo lgico de endereo
fsico. Conhecemos a Unidade de Gerncia da Memria (UGM), que fornece
o suporte de hardware para a traduo de endereos entre a memria lgica e a memria fsica. Vimos as primeiras formas de alocao de memria
usando parties e estudamos com detalhes a paginao que usa o espao
de memria com maior eficincia. Em seguida, voc aprendeu o conceito
central de memria virtual e as vantagens do uso dessa tcnica. Verificamos
como realizado o endereamento dos quadros a partir da requisio de pginas feita pelos processos. Estudamos tambm como feita a substituio
de pginas na memria virtual com paginao, destacando as politicas de
substituio.

Rede e-Tec Brasil

Sistemas_operacionais.indd 62

62

Sistemas Operacionais

03/03/2015 15:27:41

Atividades de aprendizagem
1. Quantas linhas de endereo so necessrias para enderear uma memria
fsica de 1GB?
2. Explique como a UGM realiza a traduo de pginas para quadros na
memria virtual com paginao.
3. Analise a Figura 6.6 e determine qual seria a ao da UGM se o processo
requisitasse as pginas D, E, F, G, e H?
Muito bem! Voc concluiu mais uma etapa. Na prxima aula voc ter oportunidade de conhecer como os perifricos se comunicam com o sistema
operacional.No deixe de realizar as atividades de aprendizagem.

Aula 6 - Gerenciando a Memria

Sistemas_operacionais.indd 63

63

Rede e-Tec Brasil

03/03/2015 15:27:41

Sistemas_operacionais.indd 64

03/03/2015 15:27:42

Aula 7. Gerncia de Entrada e Sada

Objetivos:
reconhecer os dispositivos de entrada e sada;
identificar os mecanismos de interrupes; e
conceituar os subsistemas de E/S.
Estamos nos aproximando da ltima aula da disciplina de Sistemas Operacionais. Que pena que j est acabando, mas, por outro lado, vai ficando o
sabor do dever cumprido e de mais um ciclo que se completa. Aproveite os
ltimos encontros para avanar em seu processo de aprendizagem.
Voc, no dia-a-dia, interage com o computador fornecendo informaes
por meio dos dispositivos de entrada e sada. A maioria dos benefcios que o
computador lhe oferece disponibilizada atravs de dispositivos como monitores, impressoras, scanners, teclado, mouse, entre outros. Portanto, voc
deve ter percebido que o gerenciamento dos sistemas de entrada e sada
uma das funes mais importantes do sistema operacional.

7.1 Dispositivos de Entrada e Sada


A base da estrutura de gerncia de E/S o hardware, a comunicao com o
mundo real. Uma grande quantidade de dispositivos pode ser conectada a
um computador, e o sistema operacional deve ter suporte para permitir os
processos de usurio e de sistema para cada um deles. Em um sistema computacional, temos basicamente dois tipos de dispositivos de E/S:
Dispositivos de bloco armazenam informaes em blocos de tamanho
fixo, cada um com seu prprio endereo. O sistema operacional faz operaes de busca e gravao atravs dos endereos. Os discos rgidos esto nessa classe de dispositivo.
Dispositivos de caractere operam com fluxos de caracteres. No so

Aula 7 - Gerncia de entrada e sada

Sistemas_operacionais.indd 65

65

Rede e-Tec Brasil

03/03/2015 15:27:42

endereveis e no tm operaes de busca. O teclado, o mouse e as


interfaces de rede esto nessa classe.
Nem todos os dispositivos de E/S se encaixam nessas duas classes. Cada
dispositivo se comunica com o sistema operacional de uma forma diferente.
Alguns atravs de portas seriais, outros usando barramentos USB, outros
usando conectores internos, como adaptadores de vdeo, dispositivos de
captura de udio e vdeo, entre outros.

7.1.1 Controladores de dispositivo


Todos os dispositivos de E/S tm um controlador, um conjunto de componentes eletrnicos que fazem a comunicao do dispositivo com o sistema
computacional (Fig. 7.1).

Fig. 7.1 Controladores de dispositivo

Os controladores tm registradores prprios e alguns deles possuem memria, que so usadas para transferncia de dados.
A responsabilidade por essa comunicao do sistema operacional, atravs
de um componente chamado driver de dispositivo, que vai traduzir os comandos do sistema operacional para o dispositivo e receber os dados enviados por eles.
Buffer
uma regio da memria fsica
utilizada para armazenar dados
temporariamente enquanto eles
esto sendo movidos de um local
para outro.

Rede e-Tec Brasil

Sistemas_operacionais.indd 66

A transferncia de dados pode ser feita em bloco ou em caractere, dependendo do tipo de dispositivo. O sistema operacional reserva para cada dispositivo uma rea de memria denominada buffer para armazenar os dados
de leitura e escrita. Quando o controlador recebe um bloco ou uma sequ-

66

Sistemas Operacionais

03/03/2015 15:27:42

ncia de caracteres do dispositivo, iniciada a transferncia para o buffer


interno pela UCP ou diretamente do dispositivo para a memria.

7.1.2 Drivers de dispositivo


Segundo Priscila Facciolli:
os drivers tm como funo receber comandos gerais sobre acessos aos
dispositivos e traduzi-los para comandos especficos, que podero ser
executados pelos controladores. Disponvel em: < http://pt.scribd.com/
doc/68893986/SIS013-Aula1-Subsist-Em-A-E-S-Kernel> Acesso em: 22
nov.2013.

Cada driver manipula somente um tipo de dispositivo ou grupo de dispositivos semelhantes (Fig. 7.2).

Fig. 7.2 Drivers de dispositivo

A principal funo do driver proporcionar uma interface entre o controlador e o gerenciador de E/S independente do dispositivo conectado.
Um driver um programa escrito em linguagem de mquina para um dispositivo especfico.

Aula 7 - Gerncia de entrada e sada

Sistemas_operacionais.indd 67

67

Rede e-Tec Brasil

03/03/2015 15:27:42

Confira este vdeo montado por


KolKsiano, que apresenta de uma
forma bem radical os principais
perifricos de um computador
moderno.
http://www.youtube.com/
watch?v=8lyKAKz8CIA

Quando o dispositivo substitudo ou o dispositivo conectado em outro


computador com sistema operacional diferente, o driver precisa ser atualizado para funcionar corretamente.
Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Atividade 7.1
Faa uma pesquisa para encontrar dois dispositivos que se comunicam com
o sistema operacional por blocos e dois por caracteres.

7.2 Interrupes
O mecanismo de interrupes um conjunto formado por rotinas e componentes do hardware usado pelo sistema operacional para controlar as
requisies de E/S.
Todo processador tem uma linha fsica usada pelo dispositivo de E/S ou pelo
processo para solicitar acesso a um perifrico. Quando essa linha acionada,
o processador interrompe a tarefa em curso, salva os dados referentes a ela e
entrega o controle ao sistema operacional que executa uma rotina chamada
manipulador de interrupo.
Essa rotina que manipula a interrupo responsvel por identificar o requisitante, o atendente, e realizar a tarefa requisitada, que pode ser a leitura
de um caractere do teclado, um bloco de dados da memria secundria ou
ainda enviar uma sequncia de caracteres para a interface de rede.
Quando voc est digitando um texto em um editor, cada tecla acionada
corresponde uma interrupo da UCP. Da mesma forma, quando voc est
navegando na Internet, cada sequncia de caracteres recebida do servidor
WEB provoca uma interrupo.
Imagine o professor em uma sala de aula explicando um determinado assunto e, de repente, um aluno levanta a mo.

Rede e-Tec Brasil

Sistemas_operacionais.indd 68

68

Sistemas Operacionais

03/03/2015 15:27:43

Fonte: sxc.hu

Fig. 7.3 Interrompendo o professor

Imediatamente, o professor interrompe a explicao, atende ao aluno, respondendo ao seu questionamento e retorna ao ponto onde parou, dando
prosseguimento aula (Fig. 7.3).
O mecanismo de interrupo em um computador funciona da mesma forma. O processador o professor e os alunos so os perifricos (mouse, teclado, disco rgido, cmera, etc). Quando um perifrico levanta uma linha de
interrupo, o processador para sua atividade, salva os registros em uso e
atende ao perifrico. Aps o processamento da interrupo, ele recupera os
registros salvos e retoma a atividade do ponto onde parou.
Ficou claro agora a funo das interrupes em um sistema operacional?
No? Ento, levante a mo e interrompa seu tutor para que ele tire suas
dvidas!

As notas de aula do Prof. Luis,


do grupo GTA da Universidade
Federal do Rio de Janeiro,
so uma excelente referncia
para o estudo dos sistemas
operacionais. Selecionei a
parte 5 Entrada e Sada, que
compreende o assunto abordado
na nossa aula. Confira!
http://www.gta.ufrj.br/ensino/
EEL580/apresentacoes/Parte5.
pdf

Hora da reflexo. Quando voc movimenta o mouse do seu computador,


quais os eventos que acontecem at que o ponteiro se mova na tela? Tente
fazer uma sequncia de passos.
Sua sequncia pode ser diferente. Quando voc movimenta o mouse, ele
envia uma sequncia de dados indicando movimento em uma determinada
direo. O controlador do mouse detecta o movimento e envia os dados
para o driver do mouse. O driver aciona a linha de interrupo e assume o
controle da UCP para tratar a interrupo. O mouse comea a se movimentar na tela.

Aula 7 - Gerncia de entrada e sada

Sistemas_operacionais.indd 69

69

Rede e-Tec Brasil

03/03/2015 15:27:43

Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Atividade 7.2
Voc substituiu uma impressora por outra de modelo diferente. Qual componente deve ser atualizado no sistema operacional?
Chegamos ao final de mais uma aula. Voc vai agora refrescar sua memria
lendo o resumo a seguir.

Resumo
Exploramos, nesta aula, a gerncia de Entrada e Sada. Comeamos estudando os dispositivos de E/S, base da estrutura de gerncia de E/S. Em seguida,
estudamos os controladores de dispositivos que esto acoplados aos perifricos. Mostramos como feita comunicao entre o sistema operacional e
os dispositivos atravs dos drivers. Estudamos as interrupes responsveis
por iniciar e terminar as requisies de entrada e sada dos processos, assim
como as requisies dos dispositivos.

Atividades de aprendizagem
1. Explique a funo dos controladores de dispositivos.
2. Voc est trabalhando com um aplicativo de edio de texto. Descreva,
passo a passo, identificando os componentes envolvidos, os eventos que
acontecem quando voc digita uma letra no teclado.
Caro(a) estudante,
Parabns, voc concluiu mais uma aula. Na prxima aula, vamos abordar um
tema muito interessante para a sua formao: o sistema de arquivos, item
fundamental do estudo dos sistemas operacionais.

Rede e-Tec Brasil

Sistemas_operacionais.indd 70

70

Sistemas Operacionais

03/03/2015 15:27:43

Aula 8. Sistema de arquivos


Objetivos:
reconhecer o conceito de biblioteca;
identificar o que so arquivos;
distinguir o que so diretrios; e
diferenciar um arquivo de um diretrio.

Estamos no nosso ltimo encontro. Nesta aula, vamos trabalhar os sistemas


de arquivos, assunto to importante quanto os que j foram estudados at
aqui. Para iniciarmos, imagine que voc est em uma biblioteca...
Visitando a biblioteca...
Biblioteca uma palavra de origem grega. Trata-se de um espao fsico em
que se guardam livro. Em geral, biblioteca todo espao, seja ele concreto
ou virtual que rene uma coleo de informaes de qualquer tipo, sejam
elas escritas em folhas de papel, como enciclopdias, dicionrio, monografias, etc, ou digitalizadas e armazenadas em produtos como CD, DVD e banco de dados.
O bibliotecrio organiza os itens do acervo conforme um padro, cuja busca,
convenientemente, procura deixar mais fcil, sem ocupar muitas prateleiras
e assegurando a integridade deste. Ainda, certamente, os organiza segundo
suas caractersticas (assunto, tipo de documento, data, etc.). Depois de organizados, ou durante a organizao, o bibliotecrio cria uma lista com todos
os livros da biblioteca, com seus assuntos, localizaes e cdigos respectivos
(Adaptado de http://pt.wikipedia.org).
Mas qual a relao entre uma biblioteca e um sistema de arquivos? Voc
deve estar se perguntando! Eu vou dizer. A biblioteca o dispositivo de

Aula 8 - Sistema de arquivos

Sistemas_operacionais.indd 71

71

Rede e-Tec Brasil

03/03/2015 15:27:43

armazenamento para o computador e o bibliotecrio o sistema de arquivos. Da mesma forma que o bibliotecrio organiza o acervo da biblioteca, o
sistema de arquivos guarda os dados atravs de arquivos, identificados com
um nome, com a posio onde ele foi gravado, com o tamanho e outras
informaes necessrias para o gerenciamento pelo sistema operacional.
Ficou clara a funo do sistema de arquivos? Muito bem! Vamos, ento,
conceituar formalmente o sistema de arquivos, os arquivos e diretrios.

8.1 O que um arquivo?


Para o usurio, no h possibilidade de armazenar dados a no ser atravs
de arquivos, ou seja, os arquivos so as unidades de armazenamento de informao fechadas como uma caixa com fichas (Fig. 8.1). A caixa representa
o arquivo e as fichas os blocos de dados.

Fonte: sxc.hu

Fig. 8.1 Viso de um arquivo

Os arquivos podem representar dados numricos, alfanumricos ou binrios.


Podem ser arquivos de texto, de msica, de vdeo, programas contendo instrues em linguagem de mquina, enfim, um arquivo uma sequncia de
bits, bytes, linhas ou registros, cujo significado definido por quem o criou.
Um arquivo um conjunto identificado de informaes relacionadas com
dados armazenados em memria secundria (disco rgido, SSD, DVD, pen-drive, etc.)
Os arquivos so identificados por nomes formados por um conjunto de caracteres alfanumricos. A atribuio de nomes depende do sistema operacional, porm, normalmente um nome de arquivo tem duas partes separa-

Rede e-Tec Brasil

Sistemas_operacionais.indd 72

72

Sistemas Operacionais

03/03/2015 15:27:44

das por um ponto. A primeira parte a identificao definida pelo criador do


arquivo e a segunda, denominada extenso, mostra o tipo de arquivo. Por
exemplo, agenda.txt um arquivo com os endereos e telefones dos seus
amigos e um arquivo de texto identificado pela extenso txt. As extenses
mais comuns so:
.avi - arquivo de vdeo ( o formato dos arquivos DivX);
.bmp - arquivo de imagem;
.bin - arquivo binrio executvel;
.dll biblioteca de sistema;
.exe - arquivo executvel;
.html - linguagem de programao para Web;
.jpg - arquivo de imagem comprimido;
.mp3 arquivo de udio;
.pdf - documento do Adobe Acrobat Reader;
.png - arquivo de imagem;
.txt - arquivo de texto;
.wav - arquivo de udio sem compresso;
.zip Arquivo comprimido.
Hora da reflexo. Os dados em um disco rgido so armazenados em setores
na forma binria (zeros e uns). Como salvar e como recuperar os dados nesse
dispositivo?
Vamos conferir o seu raciocnio. Se voc respondeu que para salvar e recuperar dados em um disco rgido basta usar a estrutura de um arquivo, parabns! Voc est absolutamente certo!

Aula 8 - Sistema de arquivos

Sistemas_operacionais.indd 73

73

Rede e-Tec Brasil

03/03/2015 15:27:44

Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Atividade 8.1
Defina arquivo, o que ele pode representar e onde ele armazenado no
computador.

8.2 Sistemas de arquivos


A sala de visitas do sistema operacional, a interface de maior visibilidade e
onde existe mais interao com o usurio o sistema de arquivos. Os processos armazenam e recuperam dados a partir de dispositivos de hardware
diferentes e devem mostrar ao usurio uma interface amigvel e de fcil
manipulao.

Dispositivos de
armazenamento em massa.
So memrias secundrias que
armazenam grande volume de
dados. Discos rgidos, disco de
estado slido e fitas magnticas
so alguns exemplos desses
dispositivos.

Um sistema de arquivos um conjunto de estruturas lgicas e de rotinas,


que permitem ao sistema operacional controlar o acesso aos dispositivos
de armazenamento em massa. Os sistemas podem suportar mais de um
sistema de arquivo, desde que no estejam nas mesmas parties. Por exemplo, algumas verses do Windows suportam o sistema de arquivos FAT32 e
o NTFS.
O sistema de arquivos estabelece, para cada dispositivo, uma organizao
para leitura e gravao. Por exemplo: um dispositivo de armazenamento
em fita organizado como uma sequncia de blocos. A leitura feita sequencialmente e a gravao, sempre aps o ltimo registro. Dependendo de
como est organizado o sistema de arquivos, podemos recuperar registros
ou blocos de arquivos de vrias maneiras. Essas formas de leitura e gravao
dos arquivos na memria secundria so chamadas de mtodos de acesso e
os principais voc pode conferir no box abaixo:
Acesso sequencial - o acesso restrito ordem em que os registros foram gravados, sendo que a gravao de novos registros s
possvel no final do arquivo;
Acesso indexado ou por chave - o arquivo deve possuir uma
rea de ndice onde existam ponteiros para os diversos registros e,
a partir desta informao, realiza-se um acesso direto;
Acesso direto - permite a leitura/gravao de um registro direta-

Rede e-Tec Brasil

Sistemas_operacionais.indd 74

74

Sistemas Operacionais

03/03/2015 15:27:44

mente na sua posio. A forma mais simples de acesso.


Disponvel em: <http://www2.icmc.usp.br/~luisc/download/fundamentos/sistemas_de_arquivos.ppt> Acesso em: 8 out. 2013

Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Atividade 8.2
Cite uma funo do sistema de arquivos em um sistema operacional?

8.3 Diretrios
Sistemas operacionais podem trabalhar com vrios sistemas de arquivos, que
podem ser bastante extensos. Alguns sistemas armazenam milhes de arquivos ocupando dezenas e at centenas de terabytes em disco. Para gerenciar
todos esses dados, precisamos organiz-las. Essa organizao envolve o uso
de diretrios.
Os diretrios so a forma como um sistema de arquivos organiza os arquivos
em diferentes dispositivos de armazenamento. a estrutura de dados que
contm entradas associadas aos arquivos onde esto informaes como localizao fsica, nome, organizao, etc.
O sistema de arquivos organiza logicamente os arquivos em uma estrutura
de diretrios. So elas:
Estrutura de diretrio em nvel nico - todos os arquivos fazem parte do
mesmo diretrio, sendo necessrio nome nico para cada arquivo;
Estrutura de diretrios em dois nveis - diretrios separados para cada
usurio e no diretrio principal mantem-se apenas os endereos dos diretrios dos usurios (Fig. 8.2).

Aula 8 - Sistema de arquivos

Sistemas_operacionais.indd 75

75

Rede e-Tec Brasil

03/03/2015 15:27:44

Fonte: Machado (2011)

Fig. 8.2 Estrutura de diretrios em dois nveis

Estrutura de diretrios em rvore segundo Toscani os usurios podem criar seus prprios sub-diretrios para organizar seus arquivos (Fig.
8.3). A rvore possui um diretrio raiz. Cada arquivo possui um caminho
(nome do arquivo composto pelos nomes de diretrios que formam o
caminho da raiz at ele) Disponvel em <http://www.inf.pucrs.br/~ramos/
sop_sistarquivos.ppt> Acesso em 22 nov.2013.

Fonte: Machado (2011)

Fig. 8.3 Estrutura de diretrios em rvore

Rede e-Tec Brasil

Sistemas_operacionais.indd 76

76

Sistemas Operacionais

03/03/2015 15:27:44

Um problema que o sistema operacional precisa resolver quando h excluso de arquivos ou diretrios que provocam a criao de buracos na
memria secundria. preciso reutilizar, sempre que possvel, o espao de
arquivos excludos para novos arquivos. Esse processo chamado alocao
de arquivos. Uma tcnica usada para eliminar os buracos no disco rgido
a desfragmentao, um utilitrio de sistema presente em todos os sistemas
operacionais, que reagrupa os arquivos e diretrios de forma contgua.

Acesse o site abaixo para


conhecer mais detalhes sobre as
principais tcnicas de alocao
de arquivos.
http://www.dcc.ufrj.
br/~valeriab/SO-unid04_
arquivos_2012.pdf

Tempo! Vamos fazer uma pausa para voc refletir e reorganizar as ideias.
Faa a atividade para fixar os conceitos.

Atividade 8.3
Qual a vantagem de usar uma estrutura de diretrios em rvore?
Chegamos ao final de mais uma aula. Voc vai agora refrescar sua memria
lendo o resumo a seguir.

Resumo
Nesta aula, voc conheceu o sistema de arquivos de um sistema operacional.
Aprendeu o conceito de arquivo e como ele armazenado em uma memria
de massa. Estudou os mtodos de acesso aos blocos dos arquivos e sabe que
eles dependem do tipo de dispositivo de armazenamento. Pde conhecer
tambm os diretrios e suas estruturas bsicas e como distinguir os diversos
mtodos de alocao de arquivos de um sistema operacional.

Atividades de aprendizagem
1. Qual o tipo de acesso em um dispositivo de armazenamento com fita
magntica?
2. Apresente uma soluo para o problema da criao de buracos na memria secundria, resultado da excluso e gravao de arquivos.
Prezado(a) estudante,
Chegamos ao fim da nossa disciplina. Espero que tenha aproveitado ao mximo o contedo apresentado. Tenho, ainda, algumas palavras para voc...

Aula 8 - Sistema de arquivos

Sistemas_operacionais.indd 77

77

Rede e-Tec Brasil

03/03/2015 15:27:45

Palavras Finais
Prezado(a) estudante,
Parabns pela sua dedicao e esforo para chegar com sucesso ao final desta disciplina. Na realidade, este final significa um incio de uma nova fase na
sua vida, pois com os conhecimentos adquiridos aqui, complementados pelas atividades da tutoria, voc vai olhar para um computador com uma nova
viso. Uma viso profissional, crtica e, sobretudo, investigativa, pois voc
estar sempre pronto a assimilar novos conhecimentos e vivenciar novas experincias. A partir desse ponto voc deve se perguntar: Que caminhos devo
seguir? Vou trabalhar com os sistemas operacionais tradicionais? Qual classe
de clientes vou atender? Usurios domsticos? Autnomos? Ou empresas?
Comece esses questionamentos agora, que ao longo da sua trajetria no
curso as respostas viro naturalmente.
Desejo a voc sucesso!

Rede e-Tec Brasil

Sistemas_operacionais.indd 78

78

Sistemas Operacionais

03/03/2015 15:27:45

Guia de Solues
Aula 1
Atividade 1.1
O sistema operacional proporciona uma interface conveniente para o usurio e, ao mesmo tempo, gerencia os dispositivos de hardware evitando falhas
e controlando o uso dos recursos da mquina.
Atividade 1.2
O hardware fornece os recursos necessrios de computao, como: processador, memria, e dispositivos de entrada e sada. O software so os
aplicativos que utilizam os recursos do hardware e o sistema operacional os
gerenciam.
Atividades de Aprendizagem
1. Seu comentrio pode ser diferente. O sistema computacional ter baixo
desempenho porque o hardware ultrapassado no consegue atender aos
recursos exigidos pelo sistema operacional de ltima gerao.
2. Sua tabela pode ser diferente.
Tipos de Software

Caractersticas

Exemplos

Sistema

So programas responsveis por


controlar o hardware

Windows 8, Ubuntu 10.4 e Android

Programao

So programas para criar outros


programas

Java, Pearl e C#

Aplicao

So programas do usurio

Office, Skype e Counter Strike

Aula 2
Atividade 2.1
As quatro funes do sistema operacional so:
1. fornecer ao usurio um ambiente virtual mais seguro, mais fcil de entender, operar e programar;

79

Sistemas_operacionais.indd 79

Rede e-Tec Brasil

03/03/2015 15:27:45

2. controlar e gerenciar o acesso aos recursos de hardware;


3. oferecer meios para que um programa seja carregado, executado e finalizado;
4. fornecer uma viso estruturada e organizada das informaes, independente dos diferentes dispositivos de armazenamento.
Atividade 2.2
Sua resposta pode ser diferente. As simulaes numricas com informaes tridimensionais para mapeamento das correntes marinhas nas reas
de explorao de petrleo uma aplicao da Petrobrs que roda no
supercomputador Netuno. Ele reduz de algumas semanas para poucos
dias o tempo de realizao das simulaes.
Atividades de Aprendizagem
1. Sua tabela pode ser diferente.
Tipo de SO

Numero de processadores
admitidos

Nmero de programas executados

Monotarefa

Multitarefa

Vrios

Multiprocessadores

Dois ou mais

Vrios

2. Cada janela aberta no sistema operacional Windows 8 corresponde a um


programa em execuo. Portanto, quanto maior o nmero de programas
em execuo maior o trabalho do processador, acarretando queda de desempenho.

Aula 3
Atividade 3.1
As etapas so:
1. edio do texto do programa;
2. pr-compilao;

Rede e-Tec Brasil

Sistemas_operacionais.indd 80

80

Sistemas Operacionais

03/03/2015 15:27:45

3. compilao;
4. ligao.
Atividades de Aprendizagem
1. Os passos para execuo de um programa so:
o cdigo do programa em linguagem de mquina transferido do disco
para a memria principal;
o Bloco de Controle do processo com os dados do programa carregado
na memria.
o sistema operacional transfere o controle para a Unidade Central de
Processamento (UCP) que carrega o registrador Contador de Programas
(PC) com o endereo de memria da primeira instruo e inicia a execuo do processo.
2. A funo do BCP na interrupo do processo armazenar todas as variveis do processo para que a prxima execuo inicie exatamente onde
parou.

Aula 4
Atividade 4.1
Sim, possvel. Cada processo tem um identificador nico, portanto o sistema operacional pode usar o mesmo cdigo para executar processos diferentes. Por exemplo: possvel abrir dois ou mais documentos de texto ao
mesmo tempo.
Atividade 4.2
A mudana de contexto a base da multiprogramao. Ela acontece para
que haja rodzio na execuo dos processos que esto na fila pronto.
Atividade 4.3
O processo que captura os dados digitados pelo usurio um processo exe-

81

Sistemas_operacionais.indd 81

Rede e-Tec Brasil

03/03/2015 15:27:45

cutado em primeiro plano.


Atividades de Aprendizagem
1. Em um sistema monoprogramvel, o processador passa a maior parte do
tempo ocioso, principalmente quando executa o processo em primeiro plano. Ao passo que em um sistema multiprogramvel, o processador tem uma
carga de trabalho intensa devido aos vrios processos em execuo.
2. O processo a ser executado primeiro ser o limitado por UCP, que no
depende da velocidade dos perifricos.

Aula 5
Atividade 5.1
Seu grfico pode ser diferente.

Atividade 5.2
O mais justo o Algoritmo por Alternncia circular por dedicar o mesmo
tempo de UCP para todos os processos, independentemente de tamanho
ou tipo.

Rede e-Tec Brasil

Sistemas_operacionais.indd 82

82

Sistemas Operacionais

03/03/2015 15:27:45

Atividades de Aprendizagem
1. O seu quadro pode ser diferente.
Evento

Descrio

Motivo

O processo sai do estado pronto e vai para o


estado de execuo

Incio da execuo

O processo sai do estado de execuo e vai


para o estado pronto

Execuo interrompida

O processo sai do estado de espera e vai para


o estado pronto

Retorno de uma requisio de E/S

O processo sai do estado de execuo e vai


para o estado espera

Inicia de uma requisio de E/S

2. Os algoritmos de escalonamento determinam a maneira como a UCP trabalha. Portanto, influenciam diretamente no desempenho do sistema operacional.
3. Comparando PEPS com MP
PEPS

MP

Ordem

Tempo de processamento

Te

Tx

Ordem

Tempo de processamento

Te

Tx

32

36

11

36

43

25

11

36

43

68

20,7

37,5

25
Mdia

32
Mdia

36

68

12,7

29,7

Aula 6
Atividade 6.1
Sua resposta pode ser diferente.
Cabe UGM gerar a faixa de endereos fsicos usados pelos processos. Essa
funo permite o carregamento de vrios processos simultaneamente na
memria sem que haja interferncia entre eles.

83

Sistemas_operacionais.indd 83

Rede e-Tec Brasil

03/03/2015 15:27:45

Atividade 6.2
O benefcio da paginao de memria que ela evita a fragmentao quando carrega um processo nos blocos disponveis, no importando se eles esto juntos ou separados.
Atividade 6.3
O benefcio da memria virtual com paginao por demanda permitir ao
sistema operacional aumentar o nmero de processos, em execuo independente da limitao da memria fsica.
Atividades de Aprendizagem
1. So necessrias 30 linhas de endereo. Pois 230 = 1,073,741,824 posies de memria.
2. Sua resposta pode ser diferente.
A UGM mantm uma tabela com todas as pginas do processo. Quando o
processo enderea uma determinada pgina, a UGM verifica na tabela se a
pgina vlida, ou seja, se ela est associada a um quadro na memria fsica. Se no estiver, a UGM transfere a pgina do disco rgido para o primeiro
quadro livre na memria fsica.
3. Para as pginas D, E e H, a UGM no executaria nenhuma no, porque as
pginas j esto carregadas na memria fsica. Porm, para as pginas F e G
a UGM, vai transferir as pginas da memria secundria para quadros livres
na memria fsica.

Aula 7
Atividade 7.1
Sua resposta pode ser diferente.
Dispositivos que se comunicam por blocos: Disco Rgido, Memria USB.
Dispositivos que se comunicam por caracteres: Impressora, mouse.

Rede e-Tec Brasil

Sistemas_operacionais.indd 84

84

Sistemas Operacionais

03/03/2015 15:27:45

Atividade 7.2
Voc deve atualizar somente o driver.
Atividades de Aprendizagem
1. A funo dos controladores de dispositivos estabelecer a comunicao
do perifrico com o sistema operacional.
2. Sua resposta pode ser diferente.
Quando voc pressiona uma tecla, o sistema operacional inicia uma interrupo e transfere o controle da UCP para o drive do teclado para atender
a solicitao. Nesse instante, o controlador do teclado envia para o driver o
cdigo correspondente tecla acionada. O driver copia para um espao de
memria e devolve o comando do processador para o sistema operacional
que direciona o cdigo para a aplicao.

Aula 8
Atividade 8.1
Um arquivo uma sequncia de bits, bytes, linhas ou registros, cujo significado definido por quem o criou. Um arquivo pode representar dados
numricos, alfanumricos ou binrios armazenados em memria secundria
(disco rgido, SSD, DVD, pen-drive, etc.)
Atividade 8.2
Sua resposta pode ser diferente.
Uma das funes do sistema de arquivos estabelecer para cada dispositivo
de armazenamento em massa (Disco rgido, CD, DVD ou SSD) uma organizao para leitura e gravao.
Atividade 8.3
Os usurios podem criar seus prprios subdiretrios para organizar seus arquivos.

85

Sistemas_operacionais.indd 85

Rede e-Tec Brasil

03/03/2015 15:27:45

Atividades de Aprendizagem
1. Acesso sequencial.
2. Usar o utilitrio desfragmentador regularmente.

Rede e-Tec Brasil

Sistemas_operacionais.indd 86

86

Sistemas Operacionais

03/03/2015 15:27:45

Referncias
BAIXAKI MARANHO. Android 2.2. Disponvel em: <http://baixakimaranhao.blogspot.
com.br/> Acesso em: 22 nov. 2013.
FRACCIOLLI, P.. SIS013 - Aula1 Subsist Em A E S Kernel. Disponvel em: < http://
pt.scribd.com/doc/68893986/SIS013-Aula1-Subsist-Em-A-E-S-Kernel> Acesso em: 22
nov.2013.
MACHADO, Francis B. Arquitetura de Sistemas Operacionais. Rio de Janeiro, 4
Ed.,LTC, 2011.
OLIVEIRA, Romulo S.; Carissimi, A.; Toscani,S. Sistemas Operacionais. Porto Alegre, 4
Ed., Bookman, 2010.
SILBERSCHATZ, Abraham; Galvin, Peter B.; Gagne, G. Fundamentos de Sistemas
Operacionais. Rio de Janeiro, 6 Ed., LTC, 2004.
________; Galvin, Peter B.; Gagne, G. Fundamentos de Sistemas Operacionais. Rio
de Janeiro, 8 Ed., LTC, 2010.
SILVESTRI, Eduardo. Sistemas Operacionais, Aula 04. Notas de aula. Disponvel
em :<http://gredes.ifto.edu.br/wp-content/uploads/SO-Aula004.pdf> Acesso em:
29 jan.2013.
TANENBAUM, Andrew S. Sistemas operacionais, projeto e implementao. Porto
Alegre, 3 Ed., Bookman, 2008.
Toscani, S. S.. Sistema de arquivos ambientes operacionais. Disponvel em: <http://
www.inf.pucrs.br/~ramos/sop_sistarquivos.ppt> Acesso em: 22 nov.2013.
UNIVERSIDADE DE SO PAULO.ICMC So Carlos. Sistema de informao. Disponvel
em: < http://www2.icmc.usp.br/~luisc/download/fundamentos/sistemas_de_arquivos.
ppt> Acesso em: 8 out.2013.
YOURDICTIONARY, William Henry Gates III Biography, Disponvel em: <http://biography.
yourdictionary.com/william-henry-gates-iii> Acesso em: 26 jan.2013.

87

Sistemas_operacionais.indd 87

Rede e-Tec Brasil

03/03/2015 15:27:45

Obras Consultadas
BASTOS, Valria M. Sistemas Operacionais. Unidade. IV. Sistema de Arquivos. Notas
de aula, 2012, Disponvel em: < http://www.dcc.ufrj.br/~valeriab/SO-unid04_
arquivos_2012.pdf> Acesso em: 15 mar.2013.
Flynn, Ida M. Introduo aos Sistemas Operacionais. So Paulo,Editora Thomson,
2002.
GUGIK, Gabriel. A histria dos sistemas operacionais, artigo publicado na
Internet, 2009. Disponvel em: <http://www.tecmundo.com.br/linux/2031-a-historiados-sistemas-operacionais.htm> Acesso em: 05 jan.2013.
TECHTUDO, Sistemas Operacionais. Android 2.2, Disponvel em: < http://www.
techtudo.com.br/tudo-sobre/s/android.html> Acesso em: 01 mar.2013.

Bibliografia Bsica
MACHADO, Francis B. Arquitetura de Sistemas Operacionais. Rio de Janeiro, 4
Ed.,LTC, 2011.
TANENBAUM, Andrew S. Sistemas operacionais, projeto e implementao. Porto
Alegre, 3 Ed., Bookman, 2008.

Rede e-Tec Brasil

Sistemas_operacionais.indd 88

88

Sistemas Operacionais

03/03/2015 15:27:46

Currculo do Professor-autor
Joo Batista Pinto Neto
Graduado em Engenharia Eletrnica pela Universidade Federal do Rio de Janeiro (1979), com
especializao Lato Sensu em Docncia Superior
tambm pela UFRJ (2004). Mestre em Redes de
Computadores pela Universidade Federal do
Amazonas (2011), onde atua como pesquisador
no Instituto de Computao na rea de Redes
Tolerantes a Atrasos e Desconexes (DTN). Atualmente, trabalha como Analista de Redes de Computadores no Ministrio
Pblico do Estado de Rondnia e leciona no curso de Redes de Computadores da Faculdade Interamericana de Porto Velho UNIRON e nos cursos de
Sistemas para Internet e Sistemas de Informao da Faculdade de Cincias
Administrativas e de Tecnologia FATEC, tambm em Porto Velho-RO.

89

Sistemas_operacionais.indd 89

Rede e-Tec Brasil

03/03/2015 15:27:46

Sistemas_operacionais.indd 90

03/03/2015 15:27:46

Vous aimerez peut-être aussi