Sistemas Operacionais - IME-USP

Propaganda
Gerência do Sistema de Arquivos
Adão de Melo Neto
1
Gerência do Sistema de Arquivos
Q
Q
Q
Q
Q
Q
Q
Organização de arquivos
Operações de E/S
Estrutura de diretórios
Gerência de espaço livre
Gerência de alocação de espaços em disco
Proteção de acesso
Sistema de Alocação de Arquivos
2
Organização de Arquivos
Q
Q
Consiste em como seus dados estão internamente
organizados
Tipos
– Organização não estruturada
– Organização indexada
3
Organização de Arquivos
Não estruturada
Q
Q
Q
Seqüência não- estruturada de bytes
O sistema de alocação não impõe nenhuma estrutura lógica
para os dados
A aplicação deve definir toda organização, estando livre
para estabelecer seus critérios
4
Organização de Arquivos
Indexada
Q
Podemos visualizar o arquivo como um conjunto de
registros, que podem ser de tamanho fixo ou variável
registro
5
Operações de E/S
Q
O sistema de arquivos do Sistema Operacional disponibiliza
um conjunto de rotinas que permite às aplicações
realizarem operações de E/S
6
Estrutura de diretórios
Q
Q
Q
É como o sistema organiza logicamente os arquivos
contidos em um disco.
É uma estrutura de dados que contém entradas associadas
aos arquivos que mantém informações como localização
física, nome, organização e demais atributos
Tipos
– Nível único
– Diretório pessoal
– Múltiplos níveis (árvore)
7
Estrutura de diretórios NÍVEL ÚNICO
Q
Q
Q
Implementação mais simples da estrutura de diretórios
Um único diretório contém todos os arquivos do disco
É limitado não permitindo a criação de arquivos com o mesmo
nome que ocasionaria um conflito no acesso aos arquivos
Estrutura de
Informações
8
Estrutura de diretórios DIRETÓRIO PESSOAL
Q
Q
Q
Evolução do modelo anterior
Permite cada usuário ter seu “diretório particular”, sem a
preocupação de conhecer os outros arquivos do disco
Há um diretório “master” que indexa todos os diretórios
particulares dos usuário, provendo o acesso a cada um.
9
Estrutura de diretórios DIRETÓRIO PESSOAL
DIRETÓRIO MASTER
10
Estrutura de diretórios DIRETÓRIO PESSOAL
Q
Q
O MDF (diretório de arquivo mestre) é a raiz, os galhos são os
UFD (diretório de arquivos do usuário) e os arquivos são
filhas.
Quando se referencia um arquivo, é necessário especificar,
além do nome, o diretório onde se localiza .
11
Estrutura de diretórios DIRETÓRIO PESSOAL
DIRETÓRIO DE ARQUIVO
DO USUÁRIO
DIRETÓRIO MASTER
Estrutura
de
Informações
12
Estrutura de diretórios DIRETÓRIO PESSOAL
Q
Q
A referência é conhecida como path (caminho)
Carlos deseja acessar um arquivo chamado DOCUMENTO.txt
– referenciação ==> /CARLOS/DOCUMENTO.TXT
Q
Cada sistema de arquivos possui sua própria sintaxe para
especificação de arquivos e diretórios
13
Estrutura de diretórios MÚLTIPLOS NÍVEIS
(ÁRVORE)
Q
Modelo utilizado hoje em dia em quase todos os sistemas
operacionais
14
Estrutura de diretórios MÚLTIPLOS NÍVEIS
(ÁRVORE)
Q
Q
Cada usuário pode criar vários níveis de diretórios (ou subdiretórios) sendo que cada um pode conter arquivos e subdiretórios
O número de níveis possíveis depende do sistema operacional
15
Estrutura de diretórios MÚLTIPLOS NÍVEIS
(ÁRVORE)
Q
Q
Um arquivo pode ser especificado unicamente através de um
“path” absoluto, descrevendo todos os diretórios percorridos a
partir da raiz (MFD) até o diretório no qual o arquivo está ligado.
“Path” do arquivo SOMA.exe é /PAULO/PROGRAMAS.
16
Gerência do Espaço Livre
Q
Q
A criação de arquivos em disco exige que o sistema
operacional tenha controle de quais áreas ou blocos no
disco estão livre
Controle realizado utilizando alguma estrutura de dados
que armazena informações que possibilitam ao sistema
gerenciar o espaço livre do disco.
– Mapa de bits
– Lista encadeada de blocos livres no disco
– Tabela de blocos livres
17
Gerência do Espaço Livre
Q
Tabela denominada Mapa de bits
– Cada entrada da tabela é associada a um bloco do disco
representado por um bit, que estando com o valor 0 indica
que o espaço está livre, e com valor 1 representa o espaço
ocupado
– Gasta muita memória, pois para cada bloco no disco há uma
entrada na tabela
18
Gerência do Espaço Livre
Q
Lista encadeada de blocos livres no disco
– Cada bloco possui uma área reservada para armazenar o
endereço do próximo bloco livre.
– Apresenta problemas de lentidão de acesso, devido a
constantes buscas seqüenciais na lista.
19
Gerência do Espaço Livre
Q
Tabela de blocos livres
– Leva em consideração que blocos contíguos de dados
geralmente são alocados/liberados simultaneamente
– Enxerga o disco como um conjunto de blocos livres
– Mantém uma tabela com o endereço do primeiro bloco de
cada segmento e o número de blocos contíguos (livres) que
se seguem
1 => 0
5 => 2
12 => 0
15 => 0
20
Gerência de Alocação de espaço em disco
Q
A gerência de espaços alocados aos arquivos é de
fundamental importância em um sistema de arquivos
– Alocação contígua
– Alocação encadeada
– Alocação indexada
21
Gerência de Alocação de espaço em disco
(Alocação Contígua)
Q
Q
Q
Armazena o arquivo em blocos seqüencialmente dispostos no
disco
O arquivo é localizado através do endereço do primeiro bloco
de sua extensão em blocos
Principal problema:
problema falta de espaço livre para novos arquivos
que deve ser contínua
22
Gerência de Alocação de espaço em disco
(Alocação Contígua)
Q
Q
Q
Alto índice de fragmentação no disco
Best-fit; worst-fit e first-fit para definir onde o arquivo será
alocado
O problema da fragmentação pode ser contornado através de
rotinas que reorganizem todos os arquivos no disco de maneira
que só exista um único elemento de blocos livres
23
Gerência de Alocação de espaço em disco
(Alocação Encadeada)
Q
Q
O arquivo é organizado como um conjunto de blocos ligados
logicamente no disco, independentemente da localização física,
onde cada bloco possui um ponteiro para o bloco seguinte.
A fragmentação não representa um problema na alocação
encadeada, pois os blocos livres para alocação não necessitam
estar necessariamente contíguos.
Início do
arquivo A . TXT
24
Gerência de Alocação de espaço em disco
(Alocação Encadeada)
Q
Q
Q
Quebra do arquivo em vários pedaços o que aumenta o tempo
de acesso
Desvantagem: só permite o acesso seqüencial ao bloco de
arquivos, sendo esta uma das principais desvantagens da
técnica
Desvantagem:
– perda de espaço nos blocos com o armazenamento dos ponteiros
25
Gerência de Alocação de espaço em disco
(Alocação Indexada)
Q
Q
Q
Soluciona a limitação da alocação encadeada no que diz
respeito ao acesso, pois permite o acesso direto aos blocos do
arquivo.
Conseguido mantendo ponteiros de todos os blocos do arquivo
em uma única estrutura chamada bloco de índice.
Além de permitir o acesso direto aos blocos, não utiliza
informações de controle nos blocos de dados.
26
Proteção de Acesso
Q
Considerando que os meios de armazenamento são
compartilhados por vários usuários, é fundamental que
mecanismos de proteção sejam implementados para
garantir a integridade e a proteção individual dos
arquivos e diretórios.
– Senha de acesso
– Grupo de usuários
– Lista de controle de acesso
27
Proteção de Acesso
(Senha de Acesso)
Q
Q
Mecanismo simples de implementação
Duas desvantagens:
– Não é possível determinar quais as operações podem ser
executadas nos arquivos
– Se for compartilhado, todos os usuários que o utilizam devem
conhecer a senha de acesso.
28
Proteção de Acesso
(Grupo de Usuários)
Q
Q
Q
Utilizada em muitos sistemas operacionais
Consiste em associar a cada usuário a um grupo
Os grupos são organizados logicamente com o objetivo de
compartilhar arquivos e diretórios no disco.
29
Proteção de Acesso
(Grupo de Usuários)
Q
Q
Implementa três níveis de proteção : OWNER (dono), GROUP
(grupo) e ALL (todos)
Na criação do arquivo o usuário especifica se o arquivo pode
ser acessado somente pelo criador, pelo grupo ou por todos os
usuários, além de definir que tipos de acesso podem ser
realizados (leitura, escrita, execução e eliminação)
30
Proteção de Acesso
(Grupo de Usuários)
31
Proteção de Acesso
(Lista de controle de acesso)
Q
Q
Q
Lista associada ao arquivo onde são especificados quais os
usuários e os tipos de acesso permitidos
O tamanho desta estrutura pode ser bastante extenso se
considerarmos que um arquivo pode ser compartilhado por
vários usuários.
Além disso há o inconveniente de se fazer o acesso seqüencial
a lista toda vez que o acesso é solicitado
32
Download