Next: Gerência de Entrada &
Up: Sistemas Operacionais
Previous: Gerência de Memória
- 1.
- Como você simularia um sistema de arquivos hierárquico em
um sistema operacional que só possuísse um diretório, mas que pudesse
ter um número arbitrário de arquivos com nomes tão longos quanto
necessário?
- 2.
- Assuma que para endereçar um bloco em um disco sejam necessários
D bits e que haja B blocos no total, dos quais F blocos estão livres.
Qual é a condição necessária para que uma lista de blocos livres gaste
menos espaço que um mapa de bits? Se D for igual a 16 bits, qual
é a porcentagem do disco que deve estar livre para que a lista seja
menor que o mapa de bits?
- 3.
- Um programa verificador do sistema de arquivos encontrou o
seguinte mapa de bits (1=sim; 0=não).
Blocos usados: |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
Blocos livres: |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
Descreva todos os problemas existentes neste sistema de arquivos
e as maneiras de resolvê-los. Quais destes problemas
podem causar danos ao sistema de arquivos se não forem
corrigidos? Justifique.
- 4.
- Discuta a idéia de armazenar o início do conteúdo de um
arquivo no bloco que guarda o i-node do mesmo?
- 5.
- A performance de um sistema de arquivos depende bastante da razão
de acerto em cache, isto é, da fração de requisições de blocos que são
satisfeitas com aqueles presentes no cache. Supondo que para
ler um bloco do cache seja necessário 1 ms e que para ler um bloco do
disco sejam necessários 40 ms, crie uma fórmula que forneça o tempo médio
para satisfazer requisições quando a razão de acerto é h. Faça um gráfico
deste tempo médio em função de h, quando este último varia de 0 a 1 em
intervalos de 0,2. Discuta o gráfico obtido.
- 6.
- Quais são os tempos envolvidos em uma leitura de dados de um
disco? Qual deles é o mais significativo?
- 7.
- Como fica a distribuição dos blocos de um arquivo pela
superfície de um disco que já está sendo usado há muito tempo? Quais
as implicações desta distribuição no desempenho do sistema de
arquivos? Como o desempenho pode ser melhorado neste caso?
- 8.
- Existe alguma vantagem em se agrupar periodicamente os espaços
livres que possam estar espalhados pelo disco? Qual (quais)?
- 9.
- Em um certo sistema operacional, o sistema de arquivos mantém
informações sobre os blocos do disco na forma de listas ligadas com
índice (similar a uma FAT do MS-DOS). O sistema encontra-se
atualmente em um estado inconsistente e é descrito pelas tabelas
abaixo. Indique quais são as inconsistências existentes e como elas
devem ser eliminadas, justificando suas respostas. O símbolo X
indica que não há próximo bloco.
Arquivo |
teste.c |
carta.txt |
a.out |
Bloco inicial |
1 |
12 |
2 |
Tabela Índice |
Bloco |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
Próximo bloco |
6 |
X |
5 |
9 |
2 |
11 |
4 |
3 |
X |
X |
9 |
7 |
Lista de blocos livres |
Bloco inicial: 8 |
- 10.
- Explique por que é necessário intercalar 1 ou mais setores
físicos entre 2 setores lógicos em um disco. Em que situações é
possível termos discos sem este intercalamento?
- 11.
- Existem pelo menos 4 questões que precisam ser bem cuidadas na realização de backups lógicos em Unix. Discuta pelo menos 3 deles.
- 12.
- Explique de que maneira devem ser reparados os sistemas de arquivos para cada uma das inconsistências mostradas na Fig. 6-26.
- 13.
- Alguns sistemas operacionais possuem uma chamada de
sistema para trocar nomes de arquivos (rename). Apresente e
discuta as vantagens e desvantagens de se mudar o nome do arquivo
original em relação a simplesmente copiar o arquivo com um novo
nome, apagando em seguida o arquivo original.
- 14.
- Considerando que um sistema linux usa os i-nodes
mostrados na Fig. 6.38 do livro-texto, que os blocos são localizados por
endereços de 4 bytes e que cada bloco comporta 1024 Kbytes, determine o
tamanho máximo que um arquivo pode ter em bytes.
- 15.
- Compare links simbólicos (soft) com links
puros (hard) e apresente as vantagens que um tem sobre o outro.
- 16.
- Suponha que a lista de blocos livres (ou o mapa de bits de
blocos livres) tenha sido totalmente perdida em uma pane de um disco
rígido. Há alguma maneira de se recuperar deste evento? Como? Dê suas
respostas para duas situações distintas: Unix e MS-DOS (FAT-16).
- 17.
- Em Windows (MS-DOS), todo arquivo tem entre seus atributos
um bit especial chamado archive. que indica se o arquivo deve ser
ou não incluído em um backup incremental. Como o unix determina se
um arquivo deve ou não ser incluído no backup se ele não possui este bit
especial?
- 18.
- Um disquete tem 40 cilindros (40 trilhas de cada
lado). A cabeça de leitura-gravação se move a cerca de 6ms por
cilindro. Se não for adotada nenhuma otimização, blocos logicamente
consecutivos em um arquivo estarão separados por 13 cilindros em
média. Entretanto, se o sistema operacional adotou alguma estratégia de
otimizaçção é possível que a distância média entre dois blocos
logicamente consecutivos seja de apenas 2 cilindros em média. Determine,
para cada um destes dois casos,
quanto tempo levaria a leitura de um arquivo de 100 blocos, supondo que
o atraso rotacional (tempo até um bloco ficar situado abaixo da cabeça
de leitura-gravação) é de 100 ms em média e que a velocidade de transferência
de dados é de 25 ms por bloco.
- 19.
- A tabela FAT-16 do MS-DOS possui 64K entradas. Suponha que um dos
16 bits precisou ser usado para outra finalidade e que a tabela passou a
conter exatos 32768 entradas. Supondo que não há outras alteraçõs,
determine qual seria o tamanho do maior arquivo MS-DOS que poderia ser
armazenado com uso desta tabela.
- 20.
- Para se obter no Unix os primeiros dados do arquivo
/home/estudantes/EE00/ra123456/teste.txt, quantas operações no disco seriam
necessárias? Suponha que já esteja em memória apenas o i-node do
diretório raiz e que cada diretório caiba em um único bloco do disco.
Next: Gerência de Entrada &
Up: Sistemas Operacionais
Previous: Gerência de Memória
Marco A. Amaral Henriques
2007-02-14