Sei sulla pagina 1di 9

SISTEMAS DE INFORMAO

ALEXANDRE SANTOS

SISTEMAS OPERACIONAIS

SUMRIO
O Conceito de Arquivo

Um arquivo pode ser genericamente definido como uma coleo de dados


relacionados entre si. Normalmente, arquivos contm programas (tanto fonte
como objeto) ou dados.

Arquivos so referenciados atravs de nomes. Alm de um nome, cada


arquivo possui tambm outros atributos, tais como: tipo, momento da criao,
identificao do criador, tamanho, etc.
Tipos de arquivos

Diferentes tipos de informao podem ser armazenados em um arquivo:


programas fonte, programas objeto, texto, dados numricos, registros de
funcionrios, som, imagem, etc. Cada arquivo possui uma estrutura interna,
conforme sua aplicao. Por exemplo, um arquivo texto uma seqncia de
caracteres organizados em linhas e pargrafos; um programa executvel
uma seqncia de bytes representando instrues em cdigo de mquina; um
programa fonte uma seqncia de caracteres que representam comandos de
uma linguagem de programao (normalmente estes arquivos so do tipo
somente texto, no admitindo qualquer tipo de formatao especial).
Uma questo importante at que ponto o SO deve conhecer a
estrutura interna dos arquivos. Para ter esse conhecimento, o SO vai ser maior
e mais complexo. Alm disso, para evoluir, dever permitir a definio de novos
tipos de arquivos, uma vez que novas aplicaes podem expor novas
demandas, e com elas, tipo de arquivos diferentes. Isto inviabiliza a preteno
de conhecer a estrutura interna dos arquivos, na prtica. Em geral, o
conhecimento do SO se limita s informaes contidas no registro descritor do
arquivo. Isto j lhe permite bloquear algumas operaes invlidas. Por
exemplo, pode recusar-se a imprimir um arquivo que contenha um programa
executvel.

Sistemas baseados em fita

Os primeiros sistemas eram baseados em fita magntica. No incio, cada


arquivo era mapeado para uma nica fita. Isso ocasionava um enorme
desperdcio de espao, porque cada fita (de 2400 ps, cerca de 750 m) era
capaz de armazenar 5 gigabytes, mas a maioria dos arquivos era pequena

(alguns Kb). Por outro lado, havia o problema dos arquivos muito grandes, que
poderiam superar a capacidade de uma nica fita.
O problema dos arquivos grandes foi resolvido com o sistema de
armazenamento multi-volume. O desperdcio de espao foi resolvido permitindo
a gravao de diversos arquivos em uma nica fita. Como resultado, passou a
ser necessrio saber em que posio da fita cada arquivo estava armazenado.
A soluo foi adicionar fita um diretrio, onde cada entrada continha um
nome de arquivo e sua posio na fita. Tais diretrios tambm armazenavam
informaes adicionais sobre os arquivos.
Sistemas baseados em disco

Muitos dos problemas dos sistemas de fita foram resolvidos com os sistemas
baseados em discos. Um disco dividido em trilhas, sendo o nmero de trilhas
uma caracterstica particular de cada dispositivo. Cada trilha dividida em
setores, sendo o setor a menor unidade de informao que pode ser lida ou
escrita no disco. Unidades de disco fixo usualmente possuem diversos discos
superpostos, cada um com duas faces magnetizadas, o que corresponde a
diversas superfcies de gravao (a tecnologia atual permite sobrepor at 8
discos). Para acessar um determinado setor do disco necessrio informar:
face, trilha e setor. As cabeas de leitura e gravao so deslocadas at a
trilha correta (tempo de seek), chaveadas eletronicamente para a face correta e
ento esperam at que o setor solicitado passe por baixo (tempo de latncia).
Um cilindro o conjunto de trilhas que esto na mesma posio, porm em
diferentes faces. No necessrio deslocar as cabeas para acessar trilhas de
um mesmo cilindro.
Usualmente, o SO trata o disco como um grande vetor unidimensional
de blocos, cada bloco correspondendo a um setor. Esses blocos so
numerados desde 0 at N-1, onde N o nmero de setores do disco.
Mtodos de Acesso

Existem diversas maneiras de acessar as informaes contidas em um arquivo.


Enquanto alguns sistemas oferecem um nico mtodo de acesso, outros
sistemas implementam diversos mtodos.

Acesso seqencial

Neste mtodo, uma leitura sempre acessa o prximo registro e avana um


ponteiro sobre o arquivo. Este ponteiro indica qual a prxima posio a ser lida.
O mesmo acontece com a escrita.

Acesso direto

O arquivo consiste em uma seqncia numerada de registros. Qualquer


registro pode ser diretamente lido ou escrito. As operaes indicam o nmero
do bloco a ser acessado. Este nmero geralmente um nmero de bloco
relativo, ou seja, um ndice em relao ao incio do arquivo (usurios no lidam
com nmeros de blocos absolutos).

Outros mtodos de acesso

Outros mtodos de acesso podem ser construdos utilizando como base o


servio de acesso direto. Estes mtodos normalmente envolvem a construo
de ndices nos descritores de arquivos. Os ndices so utilizados para localizar
a informao desejada dentro do arquivo, objetivando sempre minimizar o
acesso ao disco (maximizar o desempenho). Exemplo: o ISAM (Indexed
Sequential Acess Method) da IBM usa um pequeno ndice mestre que aponta
para blocos de disco secundrios com ndices secundrios, que por sua vez
apontam para os blocos de disco contendo os dados.

Mtodos de Alocao

Na maioria das vezes muitos arquivos estaro armazenados no mesmo disco.


necessrio alocar espao para estes arquivos de forma que o disco seja
utilizado

Sistemas de Diretrios

Um diretrio na forma de lista de arquivos pode ser suficiente para um sistema


monousurio, com pouco espao em disco. Na medida em que o espao em
disco aumenta ou aumenta o nmero de usurios, necessrio criar um
diretrio cuja estrutura permita que os usurios organizem os seus arquivos. A
seguir so discutidas as possveis formas de organizar os diretrios.

Diretrio de nvel nico

Nesta estrutura todos os arquivos fazem parte do mesmo diretrio. Na medida


em que o nmero de arquivos aumenta, aparecem problemas de organizao.
Por exemplo, necessrio que cada arquivo tenha um nome nico.

Diretrio de dois nveis

A maior desvantagem do diretrio de nvel nico a confuso de nomes de


arquivos entre diferentes usurios. A soluo mais comum criar um diretrio
separado para cada usurio. Um diretrio principal mantm os endereos dos
diretrios dos usurios, enquanto os diretrios de usurios contm informaes
sobre os respectivos arquivos.
Quando um usurio faz referncia a um arquivo, apenas o seu prprio
diretrio pesquisado. Logo, diferentes usurios podem ter arquivos com o
mesmo nome. Os usurios esto naturalmente protegidos de acessos

indevidos. necessrio de alguma forma criar diretrios para novos usurios e


destruir diretrios no mais usados.
Para economizar espao em disco, todos os utilitrios do sistema
(compiladores, editores, etc.) podem ser colocados em um nico diretrio e no
duplicados em todos os diretrios dos usurios. Este um diretrio especial.
Sempre que o usurio tenta executar um programa, primeiramente o diretrio
especial pesquisado. Se o arquivo do programa no encontrado, ento o
diretrio do usurio pesquisado. Pode-se tambm inverter o caminho de
pesquisa.

Diretrios estruturados em rvore

Neste esquema, usurios podem criar seus prprios sub-diretrios para


organizar os seus arquivos. A rvore possui um diretrio raiz. Cada arquivo no
sistema tem um nico pathname. O pathname o nome do arquivo composto
pelos nomes de diretrios que formam o caminho da raiz at ele.
Um diretrio ou sub-diretrio contm um conjunto de arquivos e/ou subdiretrios. Em cada entrada de diretrio existe um campo indicando se a
entrada um arquivo ou um sub-diretrio.
Os pathnames podem ser completos ou relativos. Um pathname
completo inicia na raiz e vai at o arquivo a ser identificado. Se o pathname
comea no diretrio corrente, ento ele relativo.

Desempenho do sistema de arquivos


Acessar o disco muito mais lento que acessar a memria. Como resultado,
muitos sistemas de arquivos tm sido projetados para reduzir o nmero
necessrio de acessos a disco. A tcnica mais comum para reduzir o acesso a
disco a block cache ou buffer cache. Vrios algoritmos podem ser usados
para gerenciar o cache, mas o mais comum o que verifica todas as
requisies de leitura para ver se o bloco referido est na cache. Se estiver, a

requisio de leitura pode ser satisfeita sem acesso a disco. Se o bloco no


estiver na cache, ele inicialmente lido para a cache, e ento copiado para a
rea do processo que requisitou o acesso. Requisies subsequentes do
mesmo bloco podem ser satisfeitas atravs da cache.

REFERNCIAS

TANENBAUM, Andrew S. Sistemas Operacionais Modernos. 3 ed. PEARSON


EDUCATION - BR, 2010. 638p.

Potrebbero piacerti anche