Os Sistemas Operacionais
Por: lbiasi • 14/8/2016 • Trabalho acadêmico • 429 Palavras (2 Páginas) • 322 Visualizações
Exercício 2, Sistemas Operacionais.
Questões:
1 - Das instruções a seguir, quais devem ser executadas em modo núcleo?
a) Desabilite todas as interrupções.
b) Leia o horário do relógio.
c) Altere o horário do relógio.
d) Altere o mapa da memória.
2 - Escolha duas chamadas ao sistema do Linux e explique o funcionamento de cada uma.
Respostas:
1)
- a- Desabilitar todas as interrupções
- c- Alterar o horário (e também a data) do relógio
- d- Alterar o mapa da memória
2) 1º: chamada Iseek
A chamada lseek, assim como a chamada read, possui 3 parâmetros:
- o primeiro é o descritor de arquivo;
- o segundo é uma posição no arquivo e
- o terceiro informa se a posição indicada refere-se ao início, à posição atual ou ao final do arquivo.
O valor retornado pela chamada lseek é a posição absoluta no arquivo (em bytes) depois de alterar o ponteiro.
Esta chamada de sistema permite que programas aplicativos tenham disponibilidade de acesso aleatório a qualquer parte de um arquivo. Para isso, ela associa a cada arquivo um ponteiro que indica a posição atual no arquivo e também altera o valor do ponteiro de posição, para que as chamadas subsequentes de read ou write (que geralmente apontam para o próximo byte a ser lido) possam começar em qualquer ponto do arquivo.
2º: chamada Link
Seu intuito é permitir que um mesmo arquivo apareça com dois ou mais nomes, inclusive em diretórios diferentes. Um uso típico da chamada link é permitir que vários membros da mesma equipe de programação compartilhem um arquivo comum, cada um deles tendo o arquivo aparecendo em seu próprio diretório, possivelmente com diferentes nomes.
Por exemplo:
[pic 1]
Neste exemplo, estão presentes dois usuários, ast e
Jim. Cada um possui seus próprios diretórios com seus arquivos.
Se ocorrer do usuário ast executar um programa que contenha a chamada de sistema link(“/usr/jim/memo”, “/usr/ast/note”); significa que o usuário ast estará “puxando” o arquivo “memo” no diretório de jim, para seu próprio diretório, com o nome “note”. Com isso, /usr/jim/memo e /usr/ast/note referem-se agora ao mesmo arquivo.
Resumindo: todo arquivo tem um número único, seu i-número, que o identifica. O que a chamada link faz é simplesmente criar uma nova entrada de diretório com um nome novo, usando o i-número de um arquivo existente. Após isso, as duas entradas têm o mesmo i-número e, portanto, fazem referência ao mesmo arquivo. Se uma das duas for removida, o outro arquivo permanece. Mas, se ambas forem removidas, o S.O perceberá que não há entradas para o arquivo e, então, o arquivo será removido do disco.
...