Escolar Documentos
Profissional Documentos
Cultura Documentos
Rafael Lucchesi
Diretor do Departamento Nacional do SENAI
Alcantaro Corrêa
Presidente da Federação da Indústria do Estado de Santa Catarina
Florianópolis/SC
2011
É proibida a reprodução total ou parcial deste material por qualquer meio ou sistema sem o prévio consentimento
do editor.
Autor Fotografias
Marlow Rodrigo Becker Dickel Banco de Imagens SENAI/SC
Vicente D’Onofrio http://www.sxc.hu/
http://office.microsoft.com/en-us/ images/
http://www.morguefile.com/
http://www.bancodemidia.cni.org.br/
Ficha catalográfica elaborada por Luciana Effting CRB14/937 - Biblioteca do SENAI/SC Florianópolis
D548f
Dickel, Marlow Rodrigo Becker
Fundamentos de sistemas operacionais / Marlow Rodrigo Becker Dickel,
Vicente D’Onofrio. – Florianópolis : SENAI/SC/DR, 2011.
45 p. : il. color ; 30 cm.
Inclui bibliografias.
CDU 004.451
Com acesso livre a uma eficiente estrutura laboratorial, com o que existe
de mais moderno no mundo da tecnologia, você está construindo o seu
futuro profissional em uma instituição que, desde 1954, se preocupa em
oferecer um modelo de educação atual e de qualidade.
É nesse contexto que este livro foi produzido e chega às suas mãos.
Todos os materiais didáticos do SENAI Santa Catarina são produções
colaborativas dos professores mais qualificados e experientes, e contam
com ambiente virtual, mini-aulas e apresentações, muitas com anima-
ções, tornando a aula mais interativa e atraente.
Apresentação 11 Referências 43
12 Unidade de estudo 1
Introdução
13 Seção 1 - O que é um
sistema operacional?
14 Seção 2 - Um pouco da
história
18 Unidade de estudo 2
O Funcionamento
19 Seção 1 - Como o SO
funciona
19 Seção 2 - Shell e kernel
22 Seção 3 - Classificações:
usuários, projeto e processos
26 Seção 4 - Gerenciamento de
processos
28 Seção 5 - Gerenciamento de
recursos
30 Seção 6 - Gerenciamento de
entradas e saídas
31 Seção 7 - Sistema de arqui-
vos
34 Unidade de estudo 3
Os Sistemas
Operacionais
Competências
Conhecimentos
Habilidades
Atitudes
Vicente D’Onofrio
Seção 1
O que é um sistema
operacional?
Você com certeza já utilizou um possível um melhor aproveitamento dos recursos na hora da instalação
sistema operacional (SO), não é do programa, já que são funcionalidades que não precisam ser instaladas,
mesmo? Mas será que você sabe além da economia de memória.
o que é um sistema operacional?
Para iniciar, imagine um mundo
sem nenhum SO. É difícil, não?
Quando você pensou nisso, qual
foi o seu conceito de sistema ope-
racional? A partir de agora, vere-
mos que sistema operacional na
verdade é muito mais do que um
simples programa de computador.
Todo equipamento que interage com o ser humano para facilitar sua
utilização do hardware é um sistema operacional. Um celular, uma câmera
fotográfica digital, um videogame, são exemplos de equipamentos que
com certeza contêm um SO. Com o avanço da tecnologia, eletrônicos
que não precisavam de um SO agora o têm, para maior interação do usu-
ário e para maior possibilidade de aproveitamento do mesmo. Por exem-
plo, televisões agora têm sistemas para acesso à internet, onde é possível
fazer desde downloads de vídeos, até acessar seu e-mail ou outras páginas.
Puxa! Quantas possibilidades trouxeram os sistemas operacionais, não
é mesmo? Na seção seguinte você conhecerá um pouco da história do
sistema operacional. Vamos lá!
Seção 2
Um pouco da história
Inicialmente, na década de 1940, os computadores não passavam de
grandes calculadoras. Nessa época, as tarefas eram passadas ao com-
putador por meio de cartões perfurados, que eram folhas de papel com
furos em valores específicos, para que os computadores conseguissem
entender a tarefa a ser realizada.
Depois dele, surgiram os sistemas de tempo real, que dava para cada
processo um tempo limite para sua execução e, caso ele não conseguisse
ser processado a tempo, haveria falhas. Um exemplo desse sistema é a
injeção de combustível nos carros: caso ela não ocorra a tempo, o motor
vai falhar. Os sistemas de tempo real também têm duas modalidades:
crítico (são sistemas especiais, como o citado acima, onde, se aquele
processo não for realizado em tempo, algo anormal acontecerá) e não
crítico (apenas dá prioridade a processos mais importantes, até que eles
sejam completados.)
E, finalmente, uma concepção que apareceu juntamente com as redes
de computadores, é a dos sistemas distribuídos. Saiba que essa ideia
se aproxima do multiprocessamento, mas com máquinas em rede, cada
qual com seu hardware, dividindo as tarefas entre si. Ela aproveita-se jus-
tamente da maior falha do multiprocessamento como seu maior desta-
que. Mas, claro, para esses sistemas, há uma necessidade de mais de uma
máquina funcionando ao mesmo tempo.
Seção 1
Como o SO funciona
Segundo Oliveira (2004 p. 1), “o dispositivo de armazenamento
sistema operacional é uma cama- em massa em que ele esteja insta- A shell de linha de comando
da de software colocada entre o lado. Então, ao término dos testes é também conhecida como
hardware e os programas que exe- da BIOS, o Bootstrap é iniciado, prompt de comando e con-
siste em uma tela em que o
cutam tarefas para os usuários”. copia para a memória RAM o ker-
usuário insere seus comandos
Por isso, ele é essencial ao funcio- nel do sistema operacional, para
por meio de frases, palavras
namento da máquina. No caso do que, a partir disso, o controle do e combinações de caracteres
computador, ele é iniciado após computador seja dele. (os tais comandos) para que
os testes de hardware executados E o shell e kernel, você sabe para as ações desejadas sejam exe-
pela BIOS (Basic Input/Output que são utilizados? Siga em frente cutadas.
System – sistema básico de entra- para descobrir!
da e saída), um sistema que testa
a conexão com os equipamentos Ela é um pouco mais complexa de
de necessidade essencial para o se utilizar, já que o usuário deve
funcionamento do computador. Seção 2 saber por inteiro o comando, ou
Quando a BIOS detecta que o Shell e Kernel pelo menos como começá-lo
funcionamento desses equipa- para então pedir “ajuda” do siste-
mentos está correto, ela inicia o Agora você já sabe que o sistema ma operacional. E sabe por quê?
sistema operacional. Como você operacional serve para que o usu- Como os comandos são predefi-
estudou anteriormente, todos os ário não interaja diretamente com nidos pelo próprio sistema opera-
programas de computador a se- o hardware, certo? Isso tornaria a cional, qualquer erro que o usuá-
rem executados criam processos, utilização do computador mais rio cometer fará com que aquele
reservando espaços na memória difícil. Mas para que isso seja feito comando não seja executado.
RAM para seu funcionamento, e corretamente, o SO deve ter uma Hoje em dia, ele é um tipo de in-
o sistema operacional é que inter- interface em que o usuário consi- terface não comumente utilizado,
medeia os programas e o hardware. ga inserir os comandos para a exe- mesmo estando presente, ao me-
cução dos programas e tarefas ne- nos parcialmente, em praticamen-
Mas se ele é um programa e não
cessários. O nome dessa interface te todos os sistemas operacionais
está ainda ligado ao hardware,
é shell (também conhecido por Praticamente tudo o que se fazia
quem vai criar o seu processo?
sistema interpretador de coman- nele está presente nos SO por
Na verdade, isso acontece por um dos). A shell é uma ligação entre meio da shell gráfica. Mas, mesmo
procedimento chamado booting. o usuário e o kernel do sistema assim, alguns equipamentos ainda
A placa-mãe contém em uma me- operacional, para que ele compre- se utilizam dela para, dependen-
mória ROM (Read-Only Memory enda o que o usuário pretende e do da ocasião, facilitar a compre-
– memória apenas de leitura) um execute a tarefa apropriada, inte- ensão do comando pelo hardware
programa chamado Bootstrap, ragindo com o hardware. Há dois ou simplesmente por não haver
que contém a localização do ker- tipos de shell: linha de comando necessidade de “auxiliar” o usuá-
nel (veja a seção 2 para melhor e gráfica. Vamos conhecer cada rio a não cometer erros, caso de
compreensão) do sistema opera- um deles? Acompanhe! programas voltados para usuários
cional no disco rígido ou outro mais avançados. Um exemplo que
E você sabia que os primeiros SOs não tinham os dois tipos de interfa-
ce? Isso mesmo. Era apenas a shell de linha de comando.
O monoprocessamento acon-
tece nos casos em que o
computador tem apenas um
processador, pois cada pro-
Figura 12: Máquinas virtuais cessador consegue trabalhar
com apenas um processo por
vez. Já o multiprocessamen-
E agora chegou a hora de conhecer o terceiro tipo de classificação: por
to trabalha com mais de um
processos. Há duas diferenciações que podemos fazer aqui: quantidade processador trabalhando em
de processos a serem executados e quantidade de processadores a serem conjunto, realizando as tarefas
utilizados. Mas antes de explicá-las, já que vamos falar de processos, é daquela máquina.
importante dizer que processo não é igual a programa.
O programa é algo que você instala na máquina, que tem uma sequência
limitada de instruções que não mudam, conforme sua intenção no mo- Quanto ao processador, para ser
mento em que foi desenvolvido por seus programadores. Já o processo mais específico, ele pode até tra-
é criado quando você precisa executar o programa e não tem todas as in- balhar com mais processos ao
formações sobre ele, apenas as necessárias conforme o momento de sua mesmo tempo. Mas, para isso, ele
execução. Por exemplo, nós podemos ter em diferentes computadores deve ter mais de um núcleo, uma
os mesmos programas, mas, como somos usuários diferentes, também o vez que cada núcleo do processa-
utilizamos para fins variados, gerando então processos diferentes com o dor suporta apenas um processo
mesmo programa. Ficou clara essa diferença? Então vamos seguir! por vez, como os processadores
Dentro da quantia de processos, temos o monotarefa e o multitarefa. Dual Core (dois núcleos) ou Quad
O monotarefa (também chamado de monoprogramação) executa uma Core (quatro núcleos). Nesses ca-
tarefa por vez no computador, como as máquinas antigas faziam (estu- sos, cada núcleo recebe uma tare-
dadas na Seção 2 da Unidade de estudo 1, com jobs e batches), e fazem fa de um processo a se executar.
praticamente todas as shell linha de comando monousuários. Mas, nesse Dentro do multiprocessamento,
caso, os recursos da máquina não são aproveitados por completo, já que há ainda duas divisões: os SO for-
quando o processo permanece aguardando uma informação, o sistema temente acoplados e os SO fraca-
fica parado até a resposta do usuário, mesmo tendo outra tarefa na fila. mente acoplados. Nos fortemente
acoplados (ou multiprocessado-
Já no caso do multitarefa (ou multiprogramação) há suporte para mais
res), dois ou mais processadores
de um processo ser executado por vez E, então, caso um processo esteja
se utilizam da mesma memória
em espera, o próximo é processado, e quando a resposta do processo
RAM e dos mesmos dispositivos
anterior for recebida, ele volta a ser processado. Esse método dá mais
Dentro das características que você pôde verificar nas figuras anteriores,
podemos citar três tipos de sistemas operacionais: os monotarefa/mo-
noprogramação (SOs mais antigos, em que a máquina suportava ape-
nas um programa por vez); os multitarefa/multiprogramação (SOs
um pouco mais recentes, que conseguiam trabalhar com mais de um
processo em memória, mas que, devido às restrições de processamento,
realizavam uma tarefa por vez); e os multiprocessamento (SOs de hoje
em dia, que, com o avanço da tecnologia, conseguem realizar duas ou
mais tarefas ao mesmo tempo).
Em sua maioria, os programas não nos dão uma sequência fixa de coi-
sas a fazer e sim a possibilidade de escolher o que queremos fazer.
Seção 5
Gerenciamento de
Mas imagine se cada uma dessas tarefas precisasse criar um processo memória
para si. Isso ocuparia muitos recursos de uma maneira inútil. Por isso,
cada processo iniciado pode ser formado por várias threads, sendo que
Você deve lembrar do estudo
cada uma delas contém alguma das tarefas que podem ser executadas
anterior em que um sistema ope-
por aquele processo. E você sabe como se chama essa utilização de vá-
racional suporta a utilização de
rias threads pelo mesmo processo? Ela se chama multithreading, trazen-
diversos processos ao mesmo
do um conceito estudado anteriormente: o multiprocessamento. Nesse
tempo, todos tendo seu espaço na
caso, mais de um processador pode trabalhar no mesmo processo, cada
memória RAM e sua chance de
um em uma thread diferente.
utilizar o processador.
Há vários algoritmos de escalonamento que auxiliam na escolha do pró-
ximo processo a entrar em execução. Todos se baseiam, de formas dife- Mas como esses processos não se
rentes, em cinco critérios. Conheça cada um deles. confundem, por exemplo, utilizan-
do as informações uns dos outros?
Seção 6
Gerenciamento de
Figura 21: Funcionamento das partições variáveis entradas e saídas
Observe a figura anterior. Existe o sistema operacional ocupando 30 De acordo com Marçula (2008,
espaços e três processos abertos ocupando, respectivamente, 21, 30 e 7 p. 165), “o sistema operacional
espaços cada. Ainda temos 12 espaços livres em uma lacuna. Se o pro- gerencia o funcionamento do sis-
cesso 2 for fechado, teremos mais 30 espaços livres, mas esses espaços tema de entrada e saída de da-
não se unem aos 12 anteriores pois, para isso, o processo 3 teria de ser dos (I/O), para isso atua como
realocado. Isso não acontece porque, se o processo realocado estiver um intermediário entre o software,
sendo processado neste momento, o processador vai devolver a respos- o hardware e os usuários”. Nesse
ta ao local errado, causando erros. Se um programa criar um processo papel, ele se utiliza dos drivers.
novo, de 19 lacunas, ele pode ocupar essa lacuna criada pelo fechamento
do processo 2, criando uma nova lacuna de 11 espaços.
Driver é um pequeno progra-
Mas e se o novo processo precisasse de 10 espaços ao invés de 19? Qual ma, localizado no kernel do
lacuna ele ocuparia? sistema operacional, que faz
com que cada informação a ser
Ele caberia nas duas lacunas. Portanto, a escolha seria do sistema ope- recebida por um dispositivo de
racional. Essa busca pode ser feita de quatro maneiras diferentes: first-fit entrada ou a ser mostrada em
(utiliza a primeira lacuna que tenha espaço suficiente para o processo um dispositivo de saída seja
novo), Circular-fit (idem ao anterior, mas não verifica a primeira lacuna reconhecida e executada pelo
computador.
após a ocupação do processo anterior), best-fit (utiliza a lacuna que dei-
xará menos sobra) e worst-fit (inverso do anterior). A first-fit ocuparia a
primeira lacuna, por ser a primeira em que cabe o novo processo; na
circular-fit também, mas porque o último processo criado foi o 3, então Ah, agora ficou mais claro! Saiba
ele “pulará” essa lacuna na busca; o best-fit utilizaria a segunda lacuna e o que os SOs já vêm com alguns
worst-fit utilizaria a primeira. drivers em sua instalação padrão,
que são genéricos para o reconhe-
Quanto à troca de informações entre as memórias primária e secun-
cimento de alguns dispositivos,
dária, saiba que existem duas possibilidades principais disso acontecer.
principalmente os mais básicos,
Uma delas é quando o processo for aberto (afinal de contas o programa,
como teclado, mouse, placas de
instalado na memória secundária, cria um processo que deverá alocar
vídeo e som, entre outros. Mas
um espaço na memória primária) e quando as informações processa-
lembre-se de que para alguns
das devem ser salvas na memória secundária (ao salvar um arquivo, por
dispositivos é necessário fazer a
exemplo). Ainda há uma terceira opção, mas não são todos os sistemas
instalação do seu driver específico,
operacionais que a têm: caso a memória primária esteja cheia, o siste-
que geralmente vem com ele ou
ma operacional reserva um espaço da memória secundária para os no-
pode ser baixado do site da fabri-
Aqui você encerra mais uma unidade de estudos onde aprendeu sobre o
funcionamento do sistema operacional. Viu o que é a shell e o kernel, a
classificação de usuários, projeto e processos, o gerenciamento de pro-
cessos, de recursos, de entradas e saídas e o sistema de arquivos. Mas não
para por aqui. Ainda tem muita coisa interessante aguardando por você.
Faça do seu estudo um momento enriquecedor em que teoria e prática
sejam complementares. Siga com determinação!
Seção 1
Primeiros SOs
Nesta seção não se falará dos sis-
temas para máquinas de grande Sua característica principal é uma tela apenas de texto, não havendo
porte. O foco do estudo será ape- as intefaces gráficas tão comuns atualmente.
nas no âmbito dos sistemas cria-
dos para atender os microcompu-
tadores. Pronto para iniciar? A tela de comandos dos sistemas atuais da Microsoft nada mais é do
Para iniciar um histórico dos sis- que o que se fazia com o MS-DOS, como você verá na figura que segue.
temas operacionais, falaremos Acompanhe com atenção!
no MS-DOS, da Microsoft. Para
Capron (2004, p. 66), “embora os
sistemas difiram entre si, muitas
de suas funções básicas são simi-
lares”, e o estudo desse pioneiro
pode demonstrar isso.
Na verdade, esse sistema tinha o
nome de QDOS, Quick and Dirty
Operating System, desenvolvido por
Tim Paterson no início da década
de 1980. O sistema foi adquirido
pela Microsoft por um valor de
U$ 50.000,00, que o denominou
de MS-DOS, MicroSoft Disk Ope-
rating System, e fez a venda deste Figura 22: Prompt de comando Windows
para acompanhar os equipamen-
tos da IBM. Boa parte dos comandos atuais segue os mesmos do pioneiro DOS,
Ele foi um sistema monoproces- como o DIR A que mostra o diretório na unidade A, ou Format A, que
sado e monotarefa, isto é, o har- faz a formatação da unidade A.
dware permitia o uso de processa- O processo era simples, mas demandava os conhecimentos de cada
mento unitário e só permitia uma comando e sua sintaxe, que quer dizer a forma correta ortográfica do
tarefa por vez. Ou, exemplifican- comando, na ordem correta, seguido de comando para executar, o EN-
do, permitia que se escrevesse um TER do teclado.
texto ou se editasse uma planilha. Nesse período ainda não existia o mouse e, por ser apenas texto, os usuá-
É também preciso entender que rios apenas tinham como interface o teclado.
nesse período estamos em plena
Apesar de hoje ser impensável um sistema tão primário, ele teve uma
época de processadores de arqui-
vida útil de aproximadamente 10 anos e fez com que fosse a maior em-
tetura X86 de 8,16 e 32 bits.
presa de software do planeta e hoje ainda uma gigante que detém mais de
90% do mercado mundial de sistemas operacionais.
Saiba que, com a interface gráfica, a interação com o usuário passa a ser Cada versão pode ser um capítulo
possível, além de ser possível também a utilização de dispositivos como a parte dado o grande número de
o mouse, a própria tela do monitor, tablets para desenho etc. implementações que foram acres-
Também passou a ser multitarefa e, recentemente, multiprocessado. cidas ao seu desenvolvimento. As
Podemos dividir os sistemas operacionais Windows em famílias para diferenças maiores estão nos sis-
acompanhar seu histórico ao longo do tempo. Vamos lá! temas de arquivos, na organização
Família DOS: teve como precursores o MS-DOS e o OS/2, sistema de diretórios, na forma em que o
desenvolvido em conjunto com a IBM. Mas a versão Windows 1.0 era a sistema faz sua atualização e no
interface gráfica para o DOS e, na sequência, com acréscimo de funcio- suporte às novas tecnologias.
nalidades, saíram as versões 2.0, 2.1, 3.0 e a versão 3.1, já com o uso de
editores de texto e planilhas eletrônicas (Word e Excel).
Figura 27: Tela do Windows Seven Professional com o recurso Aero visualização de
múltiplas janelas
Seção 3
Linux
Em relação aos sistemas Micro-
soft, o Linux tem a fama de ter
alta estabilidade. Uma comunida-
de de usuários que troca informa-
ções com maior fluidez e custo
quase zero.
Você deve lembrar do estudo
iniciado sobre o Linux na seção
1 desta unidade, certo? No lugar
das versões das famílias Windows,
temos as chamadas distribuições.
▪▪ CORDEIRO, Amanda. Tecnologia e mídias digitais: interface gráfica e sua origem. Dis-
ponível em: <http://tecmid.blogspot.com/2010/03/history-of-gui-graphical-user-inter-
face.html>. Acesso em: 06 mar. 2011.
▪▪ FERRARI, Fabrício Augusto. Crie banco de dados em Mysql. São Paulo, SP: Digerati
Books, 2007.
▪▪ OLIVEIRA, Rômulo Silva de; CARISSIMI, Alexandre da Silva.; TOSCANI, Simão Siri-
neo,. Sistemas operacionais. 3. ed. Porto Alegre: Instituto de Informática da UFRGS:
Sagra Luzzatto, 2004. (Livros didáticos).
Projeto Educacional
Angela Maria Mendes
Israel Braglia
Projeto Gráfico
Daniela de Oliveira Costa
Jordana Paula Schulka
Juliana Vieira de Lima
Design Educacional
Daiana Silva
Diagramação
Carlos Filip Lehmkuhl Loccioni