sistema de arquivos ambientes operacionais prof. simão sirineo toscani [email protected]...
TRANSCRIPT
![Page 2: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/2.jpg)
Gerência de Arquivos
É um dos serviços mais visíveis do SO. Arquivos são normalmente implementados a
partir de discos magnéticos. Como um acesso a disco demora cerca de
10000 vezes mais que um acesso à memória, são necessárias estruturas de dados e algoritmos que otimizem os acessos ao disco.
![Page 3: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/3.jpg)
Arquivo
Coleção de dados relacionados entre si Referenciados através de nomes Possuem atributos como:
• tipo
• momento da criação
• tamanho
• nome do criador
![Page 4: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/4.jpg)
Tipos de Arquivos
Cada arquivo possui uma estrutura interna, conforme sua aplicação:• Um arquivo texto (.doc) é composto por uma
sequência de caracteres organizados em linhas e parágrafos
• um programa executável é uma seqüência de bytes representando instruções em código de máquina
• um programa fonte é uma seqüência de caracteres que representam comandos de uma linguagem de programação (arquivos tipo “somente texto”, que não admitem qualquer tipo de formatação especial)
![Page 5: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/5.jpg)
Sistemas Baseados em Fita
Inicialmente, cada arquivo era gravado em uma única fita. Haviam dois problemas:• Arquivos muito grandes não cabiam em uma fita
• Arquivos pequenos geravam desperdício de espaço
Criação de sistemas multi-volume, para suprir necessidades de arquivos grandes
Utilização de diretórios permitiram armazenar diversos arquivos em uma única fita
![Page 6: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/6.jpg)
Sistemas Baseados em Fitas
Diretório: criado para localizar a partição em que se encontra cada arquivo na fita.
Cada entrada do diretório contém um nome de arquivo e sua posição na fita.
![Page 7: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/7.jpg)
Sistemas Baseados em Fita Leitura de arquivo:
• localizar e carregar a fita indicada pelo usuário
• localizar no diretório a entrada correspondente ao arquivo
• posicionar a fita no ponto correspondente ao início do arquivo
• iniciar a leitura
• terminar a leitura quando encontrar a marca de fim de arquivo
![Page 8: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/8.jpg)
Sistemas Baseados em Disco
Um disco é dividido em trilhas O número de trilhas é particular de cada
dispositivo Cada trilha dividida em setores Setor a menor unidade de informação
que pode ser lida ou escrita em um disco
![Page 9: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/9.jpg)
Sistemas Baseados em Disco
Acesso a um setor:• informar face, trilha e setor desejado
• as cabeças de leitura e gravação são deslocadas até a trilha correta (tempo de seek),
• o cabeçote da face correta é selecionado eletronicamente
• esperar até o setor desejado passar por baixo do cabeçote (tempo de latência)
![Page 10: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/10.jpg)
Sistemas Baseados em Disco
Normalmente, uma unidade de disco rígido é formada por vários discos superpostos (no máximo 8 discos, com a tecnologia atual)
Cilindro: é formado pelas trilhas que estão na mesma posição, porém em diferentes faces (no caso de 8 discos superpostos cada cilindro é formado por 16 trilhas).
Não é necessário deslocar as cabeças para acessar trilhas de um mesmo cilindro
![Page 11: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/11.jpg)
Sistemas Baseados em Disco
Hoje em dia, o SO trata o disco como um vetor de blocos, cada bloco corresponde a um setor.
Vantagem do disco sobre a fita:• possibilidade de acessar facilmente qualquer
setor a qualquer momento (a fita permite apenas o acesso seqüencial)
![Page 12: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/12.jpg)
Sistemas Baseados em Discos
Os discos possuem diretórios Os diretórios são armazenados no
próprio disco, normalmente em um endereço fixo
Isto possibilita a remoção do disco sem perda das informações correspondentes aos arquivos
![Page 13: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/13.jpg)
Suporte a Arquivos
Chamadas de sistema permitem as seguintes operações sobre arquivos:• criar um arquivo
• escrever no arquivo
• ler o arquivo
• remover o arquivo
• reposicionar o ponto de acesso ao arquivo
![Page 14: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/14.jpg)
Operações em Arquivos
Criar um arquivo:• necessita de dois passos:
• encontrar e alocar espaço suficiente no disco,
• adicionar uma entrada no diretório para conter as informações referentes ao arquivo (nome, localização, ...)
![Page 15: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/15.jpg)
Operações em Arquivos
Escrever no Arquivo:• para escrever em uma arquivo o usuário deve
fornecer o nome do arquivo e o bloco com a informação a ser escrita
• O SO procura a localização do final do arquivo no disco, escreve o bloco e atualiza o ponteiro de final de arquivo
![Page 16: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/16.jpg)
Operações em Arquivos
Ler o Arquivo:• o usuário executa uma chamada de sistema
fornecendo o nome do arquivo e a posição da memória principal para onde as informações do bloco serão copiadas
![Page 17: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/17.jpg)
Operações em Arquivos
Remover o Arquivo:• pesquisa o diretório e remove a entrada
correspondente ao arquivo. Libera o espaço em disco ocupado pelo arquivo
![Page 18: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/18.jpg)
Operações em Arquivos
Reposicionar o arquivo:• consiste em localizar a entrada no diretório
correspondente ao arquivo e modificar o valor do ponteiro que indica a posição corrente do arquivo
![Page 19: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/19.jpg)
Operações em Arquivos
Todas as operações sobre um arquivo envolvem uma pesquisa no diretório em busca da entrada correspondente ao arquivo desejado.
Cada entrada do diretório corresponde a um descritor de arquivo
O descritor contém todas as informações necessárias para a manipulação do arquivo
![Page 20: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/20.jpg)
Tabela de Descritores de Arquivos Abertos (TDAA)
O acesso a um arquivo é feito através do seu descritor
Para evitar a pesquisa freqüente ao disco, o SO mantém na memória uma Tabela de Descritores de Arquivos Abertos
O arquivo é aberto quando ele começa a ser utilizado (desse modo, todas as informações sobre os arquivos em uso são mantidas na memória principal)
![Page 21: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/21.jpg)
TDAA e TAAP
Um mesmo arquivo pode ser utilizado simultaneamente por vários processos (i.é, uma mesma entrada da TDAA pode ser utilizada por vários processos)
Por isso, cada entrada da TDAA contém uma indicação de quantos processos estão utilizando o arquivo correntemente
O mesmo arquivo pode estar sendo acessado por diferentes processos em pontos diferentes e com direitos de acesso diferentes
Por isso, cada processo contém uma tabela extra com informações apenas sobre os arquivos abertos por esse processo. Essa tabela é denominada Tabela de Arquivos Abertos por Processo (TAAP)
![Page 22: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/22.jpg)
Tabela de Arquivos Abertos por Processo (TAAP)
No mínimo, a TAAP contém em cada entrada as seguintes informações:• Posição corrente no arquivo;
• Tipo de acesso (apenas leitura ou leitura e escrita);
• Apontador para a entrada correspondente na TDAA.
![Page 23: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/23.jpg)
TDAA e TAAP
TDAAPos. Cor. 12Leitura
TAAP do processo 0
Pos. Cor. 10Leitura
TAAP do processo 1
Pos. Cor. 55Leit. & Escr.
Arquivo A
Arquivo B
0
1
2
3
0
2
2 4
0
1
0
Tanto a TDAA como as TAAP devem ficar na memória do sistema operacional, fora do acesso dos processos de usuário.
![Page 24: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/24.jpg)
Métodos de Acesso
Acesso seqüencial Acesso direto Acesso indexado
![Page 25: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/25.jpg)
Acesso Seqüencial
Uma leitura sempre acessa o próximo registro e avança um ponteiro sobre o arquivo
O ponteiro indica qual a próxima posição a ser lida ou escrita
![Page 26: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/26.jpg)
Acesso Seqüencial
Arquivo
A
B
C
D
E
F
Ler Arquivo
...
A
Ler Arquivo
B
Ler Arquivo
C
![Page 27: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/27.jpg)
Acesso Direto
O arquivo é uma seqüência numerada de registros (blocos)
Qualquer registro pode ser diretamente lido ou escrito
![Page 28: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/28.jpg)
Acesso Direto
Arquivo
A
B
C
D
E
F
Ler Arquivo, posição 2
...
C
Ler Arquivo, posição 4
E
Ler Arquivo, posição 0
A
![Page 29: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/29.jpg)
Acesso indexado
Envolve a construção de índices nos descritores de arquivos
Usa como base o serviço de acesso direto
![Page 30: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/30.jpg)
Gerência do Espaço Livre
Espaço em disco é limitado, por isto é necessário reaproveitar todo o espaço disponível
Lista de setores livres: mantida pelo SO para controlar os espaços livres no disco
![Page 31: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/31.jpg)
Métodos de Alocação
Contígua Encadeada Indexada
![Page 32: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/32.jpg)
Alocação Contígua
Cada arquivo ocupa um conjunto de blocos (setores) contíguos no disco
Para localizar um arquivo basta saber o número do primeiro setor e o tamanho do arquivo em blocos
Para acessar o arquivo de forma seqüencial, o SO mantém o número do último bloco acessado
![Page 33: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/33.jpg)
Alocação Contígua
Dificulta o processo de localizar espaço livre para novos arquivos
Usa os algoritmos:• first-fit: utiliza o primeiro espaço grande o
suficiente que for encontrado
• best-fit: utiliza espaço livre que deixa a menor sobra
• worst-fit: maior sobra
![Page 34: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/34.jpg)
Alocação Contígua
No momento da criação, é difícil determinar o número de blocos a serem alocados para o arquivo
É difícil aumentar o tamanho do arquivo
![Page 35: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/35.jpg)
Alocação Encadeada
Cada arquivo corresponde a uma lista encadeada de blocos, estando os mesmos em qualquer local do disco
Diretório possui apenas o endereço do bloco inicial e o número de blocos (ou endereço do último bloco)
Cada bloco possui o endereço do bloco seguinte (ponteiros associados a cada bloco)
![Page 36: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/36.jpg)
Alocação Encadeada
Os arquivos podem ser criados com tamanho zero
Inserções em arquivos resultam na retirada de blocos da lista de livres e inserção dos mesmos na lista que forma o arquivo
![Page 37: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/37.jpg)
Alocação Encadeada
Não permite acesso direto a um bloco Eficiente na implementação de acesso
seqüencial Não confiável: caso ocorra algum
problema com um bloco, boa parte do arquivo é perdida, pois cada bloco possui um link para o setor seguinte
![Page 38: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/38.jpg)
Alocação Indexada
Cada arquivo possui um bloco de índices O diretório possui o endereço do bloco de
índices de cada arquivo Para acessar um bloco específico do arquivo
é necessário acessar o bloco de índices para determinar o seu endereço físico no disco
Os arquivos podem ser criados com tamanho zero
![Page 39: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/39.jpg)
Alocação IndexadaDisco
BlocoFísico
0
1
2
3
4
5
6
7
8
9
10
12
11
13
BL 0
BL 1
BL 2
BL 3
BL 4
BL 5
Descritor
Indices:
Tamanho: 6
8
5
1
7
11
30
1
2
3
4
5
6
7
8
9
![Page 40: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/40.jpg)
Alocação Indexada
Permite acesso direto Ocupa-se um setor inteiro para índices Para arquivos grandes são necessários
vários setores de índices
![Page 41: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/41.jpg)
Tamanho da tabela de índices Uma questão importante é o tamanho da tabela de
índices. O número de entradas na tabela define o tamanho máximo de um arquivo no sistema.
Se cada bloco físico tem 4 Kbytes, para que o tamanho máximo de um arquivo seja 4 Gbytes, é necessário uma tabela de índices com “4 Gbytes ÷ 4 Kbytes” entradas, ou seja, 1.048.576 entradas (o que é um exagero)
Por outro lado, uma tabela de índices com apenas 5 entradas seria suficiente para um arquivo de 20 Kbytes (este é o tamanho médio dos arquivos em sistemas de propósito geral)
![Page 42: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/42.jpg)
Tamanho da tabela de índices
A solução típica que compatibiliza eficiência na representação de arquivos pequenos e tamanho máximo satisfatório para arquivos grandes é empregar níveis de indireção na indexação.
O slide a seguir mostra o uso de índices (apontadores diretos e indiretos) no sistema Unix
![Page 43: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/43.jpg)
0
1
2
3
4
5
6
7
8
9
10
11
12
... ...
Bloco de dados (4 Kbytes)
... Bloco de apontadores
( 1024 apontadores de 4 bytes)
...
...
...
...
...
...
...
...
...
...
...
...
1024 * 4K
1024 * 1024 * 4K
...
...
1024 * 1024 * 1024 * 4K
...
10 * 4K
... ...
![Page 44: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/44.jpg)
Sistema de Diretórios
Diretório de nível único Diretório de dois níveis Diretórios em forma de árvore
![Page 45: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/45.jpg)
Diretório de Nível Único
Todos os arquivos fazem parte do mesmo diretório
Problemas de organizaçãono caso de muitos arquivos. É necessário nome único para cada arquivo
![Page 46: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/46.jpg)
Diretório de Dois Níveis
Criam-se diretórios separados para cada usuário
No diretório principal mantem-se apenas os endereços dos diretórios dos usuários
Proteção contra acessos indevidos
![Page 47: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/47.jpg)
Diretórios Estruturados em Árvore
Os usuários podem criar seus próprios sub-diretórios para organizar seus arquivos
A árvore possui um diretório raiz Cada arquivo possui um pathname
(nome do arquivo composto pelos nomes de diretórios que formam o caminho da raiz até ele)
![Page 48: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/48.jpg)
Formas de Implementar Diretórios
Basicamente, um diretório contém um conjunto de descritores (que apontam para outros diretórios ou para arquivos de dados)
A forma mais simples de implementar diretórios é considerá-los como arquivos especiais, cujo conteúdo é manipulado pelo próprio SO
Diretórios passam a ser arquivos cujo conteúdo é definido pelo SO e cujo acesso, por parte de usuários, é controlado
![Page 49: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/49.jpg)
Formas de Implementar Diretórios
Um diretório pode ser organizado na forma de:• um conjunto de descritores de arquivos
• um conjunto de endereços de descritores de arquivos
![Page 50: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/50.jpg)
Diretório organizado como um conjunto de descritores de arquivos
O diretório contém diretamente os registros descritores (de arquivos ou diretórios)
Desvantagens:• (1) os nomes ficam fortemente vinculados aos
descritores de arquivos (impede, p.ex., que se use mais de um nome para um mesmo arquivo);
• (2) os diretórios tendem a ser maiores e estão mais sujeitos a inconsistências, pois estão espalhadas por todo o disco.
![Page 51: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/51.jpg)
Diretório organizado como um conjunto de descritores de arquivos
"etc"
"usr"
"bin"
atributoslocalização
atributoslocalização
atributoslocalização
conteúdo doarquivo "/usr"
conteúdo doarquivo "/bin"
"passwd"
"hosts"
atributoslocalização
atributoslocalização
conteúdo doarquivo "/etc/passwd"
conteúdo doarquivo "/etc/hosts"
(retângulos de cantos agudos representam diretórios e retângulos de cantos arrendodados representam arquivos de dados)
![Page 52: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/52.jpg)
Diretório organizado como um conjunto de endereços de descritores
Cada entrada do diretório contém um par: um nome de arquivo (ou de diretório) e um ponteiro para o descritor correspondente
Neste esquema, é comum reservar uma parte do disco para armazenar exclusivamente os descritores de arquivos
Esses blocos reservados constituem um vetor de descritores, no qual cada descritor pode ser perfeitamente identificado pela posição nesse vetor.
![Page 53: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/53.jpg)
Diretório organizado como um conjunto de endereços de descritores
"etc"
"usr"
"bin"
2
3
conteúdo doarquivo "/usr"
conteúdo doarquivo "/bin"
"passwd"
"hosts"
4
5
conteúdo do "/"
conteúdo do "/etc"
atributoslocalização
atributoslocalização
atributoslocalização
atributoslocalização
atributoslocalização
atributoslocalização
0
1
2
3
4
5
conteúdo doarquivo "/etc/passwd"
conteúdo doarquivo "/etc/hosts"
1
sistema de arquivos flat
Supõe-se que o primeiro descritor do vetor de descritores (índice 0) descreve o diretório raiz da árvore
![Page 54: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/54.jpg)
Proteção dos Arquivos
Confiabilidade: é proteção física• obtêm-se criando cópias dos arquivos
Proteção: é precaução contra acessos indevidos• obtêm-se impossibilitando o acesso por
outros usuários
• tipos de acesso: leitura, gravação e execução (envolvem acesso a arquivo); criação e remoção (envolvem acesso a diretório)
![Page 55: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/55.jpg)
Questões de Implementação Definição de como o sistema de arquivos vai
ser visto pelo usuário (conjunto de arquivos lógicos): • definição de arquivos e seus atributos• operações permitidas• estrutura de diretórios
Definição dos algoritmos e estruturas de dados a serem usados para mapear o sistema de arquivos lógicos nos dispositivos físicos utilizados pelo sistema de arquivos
![Page 56: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/56.jpg)
Questões de Implementação
Conceitualmente, um sistema de arquivos é dividido em três níveis de serviço:• serviço de disco
• serviço de arquivo básico
• serviço de de diretório
![Page 57: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/57.jpg)
Níveis de Serviço
Serviço de disco: responsável pela leitura e escrita de setores diretamente no disco, sem se preocupar com a organização dos arquivos
Serviço de arquivo básico: lida com a abstração de arquivos, compostos por um conjunto de registros (blocos). Operações básicas do tipo leitura e escrita a partir de uma determinada posição do arquivo
![Page 58: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/58.jpg)
Níveis de Serviço
Serviço de diretório: preocupa-se com a identificação e proteção de arquivos descritos a partir de diretórios, de forma que eles sejam acessados de forma segura e conveniente.
Os diretórios mapeiam nomes simbólicos em identificadores numéricos utilizados pelo serviço de arquivos (camada de baixo)
![Page 59: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/59.jpg)
Níveis de Serviço
Serviço de Disco
Serviço de Arquivo Básico
Serviço de Diretório
Usuários
![Page 60: Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br stoscani](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc102497959413d8be6d9/html5/thumbnails/60.jpg)
FIM