1 - Estes sistemas carregado o programa diretamente na memória e começou a executar a

palavra 0, que era o número mágico. Para evitar a tentar executar o cabeçalho como código, o
número mágico é uma instrução de desvio com um endereço de destino um pouco acima do
cabeçalho. Desta forma, foi possível ler o arquivo binário diretamente para o novo espaço de
endereço do processo e executá-lo em 0, mesmo sem saber o tamanho do cabeçalho era.

2 - O sistema operacional se preocupa com o tamanho de registro quando os arquivos podem
ser estruturados como registros com chaves em uma posição específica dentro de cada
registro e é possível pedir um registro com uma determinada chave.
Nesse caso, o sistema tem de saber quão grande os registos são por isso pode pesquisar cada
um para a chave.

3 - Para começar, se não houvesse aberto, em cada leitura, seria necessário especificar o nome
do arquivo a ser aberto. O sistema, então, tem que buscar o i-node para ele, apesar de que
poderia ser armazenada em cache. Uma questão que se coloca é quando rapidamente para
liberar o i-node de volta para o disco.
Poderia o tempo limite, no entanto. Seria um pouco desajeitado, mas ele poderia funcionar.

4 - Não. Se você quiser ler o arquivo novamente, basta acessar aleatoriamente byte 0.

5 - Sim. Há chamada nome não altera o tempo de criação ou o tempo da última modificação,
mas a criação de um novo arquivo faz com que ele para obter o tempo atual como tanto o
tempo de criação e a hora da última modificação. Além disso, se o disco está cheio, a cópia
pode falhar.

(*)6 - A porção mapeada do arquivo deve começar em um limite de página e ser um integrante
do número de páginas. Cada página mapeada usa o próprio arquivo como armazenamento de

backup. Un mapeado memória usa como arquivo cratch ou partição como armazenamento de
backup.

7 - Use nomes de arquivos, como / usr / ast / arquivo. Enquanto ele se parece com um nome
de caminho hierárquico, é realmente apenas um único nome que contém barras embarcados.

8 - É uma maneira de adicionar um parâmetro extra para a chamada de sistema de leitura que
informa qual o endereço para ler. Com efeito, a cada leitura, então, tem um potencial para
fazer uma busca dentro do arquivo. As desvantagens deste sistema são: (1) um parâmetro
extra em cada chamada de leitura, e (2) que o usuário para manter o controle de onde o
ponteiro do arquivo é.

9 - O componente dotdot move a busca para /usr, então ../ast coloca-lo in/usr/ast. Assim
../ast/x é o mesmo que as/usr/ast/x..

10 - Desde o armazenamento desperdiçado é entre as unidades de alocação (arquivos), e não
dentro deles, esta é a fragmentação externa. É precisamente análoga à fragmentação externa
da memória principal que ocorre com um sistema de troca ou de um sistema usando a
segmentação puro.

11 - Leva 9 ms para iniciar a transferência. Para ler 2 ^ 13 bytes em uma taxa de transferência
de 2 ^ 23 bytes / sec requer 2 ^ -10 segundos (977 ms), para um total de 9,977 ms. Escrevê-lo

de volta leva mais 9,977 ms. Assim, a cópia de um arquivo ocupa 19,954 ms. Para metade de
um disco compacto de 16 GB envolveria a cópia 8 GB de armazenamento, que é de 2 ^ 20
arquivos. No 19,954 ms por arquivo, isso leva 20.923 seg, que é de 5,8 horas. Claramente, a
compactação do disco após cada remoção de arquivos não é uma ótima idéia.

12 - Se bem feito, sim. Enquanto compactação, cada arquivo deve ser organizado de modo que
todos os seus blocos são consecutivos, para acesso rápido. O Windows tem um programa que
desfragmenta e reorganiza o disco. Usuários são encorajados a executá-lo periodicamente
para melhorar o desempenho do sistema. Mas, dado o tempo que leva, correr uma vez por
mês pode ser uma boa freqüência.

13 – Uma câmera fotográfica digital registra um número de fotografias em sequência, em um
meio de armazenamento não volátil (por exemplo, memória flash). Quando a câmera é
reposto, o meio é esvaziado. Depois disso, as imagens são gravadas uma a uma em seqüência
até que o meio está cheio, momento em que eles são enviados para um disco rígido. Para esta
aplicação, um sistema de arquivos contíguo dentro da câmera (eg, no meio de armazenamento
de imagem) é o ideal.

14 – Ele encontra o endereço do primeiro bloco na entrada de diretório. Segue-se então a
cadeia de ponteiros de blocos no FAT até que tenha localizado o bloco de que necessita. Em
seguida, ele se lembra este número do bloco para a próxima chamada de sistema de leitura.

15 – O bloco indireto pode conter 256 endereços de disco. Juntamente com os 10 endereços
de disco diretos, o máximo de arquivo tem 266blocks. Uma vez que cada bloco é 1 KB, o maior
arquivo é 266 KB.

16 – Deve haver uma maneira de sinalizar que os ponteiros de blocos de endereços armazenar
dados, em vez de ponteiros. Se houver um pouco mais à esquerda em algum lugar entre os
atributos, que podem ser utilizados. Isso deixa todos os nove ponteiros para dados. Se os
ponteiros forem kbytes cada um, o arquivo armazenado poderia ser até 9kbytes longos. Se
nenhum pouco que sobra entre os atributos, o primeiro endereço de disco pode conter um
endereço inválido para marcar os seguintes bytes como dados em vez de ponteiros. Nesse
caso, o arquivo máximo é 8Kbytes.

17 – Elinor é certo. Ter duas cópias do i-node na tabela ao mesmo tempo é um desastre, a
menos que ambos são somente leitura. O pior caso é quando ambos estão sendo atualizadas
simultaneamente. Quando os i-nodes são gravados de volta no disco, qualquer um fica escrito
por último vai apagar as alterações feitas pelo outro, e blocos de disco serão perdidos.

18 - Hard links não exigem qualquer espaço em disco extra, apenas um contador no i-node
para manter o controle de quantas existem ligações are.Symbolic precisa de espaço para
armazenar o nome do arquivo apontado. Os links simbólicos podem apontar para arquivos em
outras máquinas, mesmo através da Internet. Hard links são restritos a apontando para
arquivos dentro de sua própria partição.

19 – O bitmap requer B bits. A lista livre requer pedaços DF. A lista livre requer menos bits se
DF < B. Alternativamente, a lista livre é mais curto se F/B < 1/D, onde F/B é a fração de blocos
livres. Para endereços de disco de 16 bits, a lista livre é mais curto se 6% ou menos do disco é
livre.

20 – O início do bitmap se parece com:
(a) Depois de escrever arquivo B: 1111 1111 1111 0000
(b) Depois de excluir o arquivo A: 1000 0001 1111 0000
(c) Depois de escrever arquivo C: 1111 1111 1111 1100
(d) Após a exclusão de arquivo B: 1111 1110 0000 1100

21 – Ele não é um problema grave em todos. Reparar é simples; ele só tem tempo. O algoritmo
de recuperação é fazer uma lista de todos os blocos em todos os arquivos e tirar o
complemento como a nova lista livre. Em UNIX isso pode ser feito a varredura de todos os inodes. No sistema de arquivos FAT, o problema não pode ocorrer porque não existe uma lista
livre. Mas, mesmo se houvesse, tudo o que teria que ser feito para recuperá-lo é fazer a
varredura do FAT procurando entradas livres.

22 – A tese de Ollie não pode ser apoiado de forma tão confiante como ele poderia desejar.
Um programa de backup pode passar mais de um arquivo que está aberto para a escrita, como
o estado dos dados no tal arquivo pode ser indeterminado.

23 – Eles devem manter o controle do tempo da última despejo em um arquivo no disco. Em
cada despejo, uma entrada é anexado a este arquivo. Na hora do despejo, o arquivo é lido e o
tempo da última entrada observou. Qualquer arquivo mudou desde aquela época é despejado.

24 - Em (a) e (b), 21 não seria marcada. Em (c), não haveria qualquer alteração. Em (d), 21 não
seria marcada.

25 – Muitos arquivos UNIX são curtas. Se o arquivo inteiro se encaixa no mesmo bloco do
inode, apenas um acesso ao disco seria necessário para ler o arquivo, em vez de dois, como é
atualmente o caso. Mesmo para arquivos maiores, haveria um ganho, uma vez que seriam
necessários menos uma acessos a disco.

26 – Não deveria acontecer, mas devido a um erro em algum lugar que poderia acontecer. Isso
significa que alguns blocos ocorre em dois arquivos e também duas vezes na lista livre. O
primeiro passo para a reparação do erro é remover ambas as cópias a partir da lista livre. Em
seguida um bloco livre tem de ser adquirido e os conteúdos do bloco doente copiado lá.
Finalmente, a ocorrência do bloqueio de um dos ficheiros deverão ser alteradas para se referir
à cópia recém-adquirida do bloco. Neste ponto, o sistema é mais uma vez consistente.

27 – O tempo necessário é h + 40 x (1-h). O enredo é apenas uma linha reta.

28 – A 15.000 rpm, o disco leva 4 ms para se vive uma vez. O tempo de acesso médio (em
milissegundos) para ler kbytes é, então, 8 +2 + (k/262144) × 4. Para blocos de 1 KB, 2 KB e 4 KB,
os tempos de acesso são 10,015625 ms, 10,03125 ms e ms 10,0625, respectivamente (quase
nenhum diferente). Estes dão taxas de cerca de 102.240 KB / sec, 204.162 KB / seg, e 407.056
KB / s, respectivamente

29 – Se todos os arquivos foram de 1 KB, então cada bloco de 2 KB conteria um arquivo e 1 KB
de espaço desperdiçado. Tentando colocar dois arquivos em um bloco não é permitido porque
a unidade usada para manter o controle de dados é o bloco, não o semiblock. Isto leva a 50%
de espaço desperdiçado. Na prática, cada sistema de arquivos tem arquivos grandes, assim
como muitos pequenos, e esses arquivos usar o disco de forma muito mais eficiente. Por
exemplo, um arquivo de 32.769 bytes usaria 17 blocos de disco para armazenamento, dada
uma eficiência de espaço de 32768/34816, que é cerca de 94%.

30 - O maior bloco é 32.768. Com 32.768 desses blocos, o maior arquivo seria de 1 GB.

31 – Ele limita a soma de todos os comprimentos de arquivo para ser não maior do que o
disco. Esta não é uma restrição muito grave. Se os arquivos foram coletivamente maior do que
o disco, não haveria lugar Beno tostore todos eles no disco.

32 – O i-node detém 10 ponteiros. O único bloco indireto detém 256 apontadores. O bloco
indireto duplo é bom para 256 ^ 2 ponteiros. O bloco indireto triplo é bom para 256 ^ 3
ponteiros. Adicionando estes acima, temos um tamanho máximo de 16,843,018 blocos, que é
de cerca de 16,06 GB.

33 – O disco seguinte lê são necessários:
diretório para /
i-node para / usr
diretório para / usr
i-node para / usr / ast
diretório para / usr / ast
i-node para / usr / ast / cursos
diretório para / usr / ast / cursos
i-node para / usr / ast / cursos / os
diretório para / usr / ast / cursos / os
i-node para / usr / ast / cursos / os / handout.t
No total, 10 leituras são obrigatórios.

34 – Alguns profissionais são os seguintes. Em primeiro lugar, nenhum espaço em disco é
desperdiçado em não utilizados i-nodes. Em segundo lugar, não é possível ficar sem i-nodes.
Em terceiro lugar, menos movimento disco é necessário uma vez que o i-node e os dados
iniciais podem ser lidos em uma operação. Alguns contras são os seguintes. Em primeiro lugar,
as entradas de diretório será agora precisa de um endereço de disco de 32 bits em vez de um
16-bit número i-node. Em segundo lugar, um disco inteiro será utilizado até mesmo para
arquivos que não contêm dados (arquivos vazios, arquivos de dispositivos). Em terceiro lugar,
verifica a integridade do sistema de arquivos será mais lenta devido à necessidade de ler um
bloco inteiro para cada i-node e porque i-nodes serão espalhados por todo o disco. Em quarto

lugar, os arquivos cujo tamanho foi cuidadosamente concebido para se ajustar ao tamanho do
bloco não vai mais caber o tamanho do bloco, devido à i-node, atrapalhando o desempenho.

Sign up to vote on this title
UsefulNot useful