EXERCÍCIOS SOBRE ENTRADA E SAÍDA
1) Explique o modelo de camadas aplicado na gerência de dispositivos.
Resp : A gerência de dispositivos é estruturada através de camadas em um modelo semelhante ao apresentado para o sistema operacional como um todo. As camadas de mais baixo nível escondem características dos dispositivos das camadas superiores, oferecendo uma interface simples e confiável ao usuário e suas aplicações. As camadas são divididas em dois grupos, onde o primeiro grupo visualiza os diversos tipos de dispositivos do sistema de um modo único, enquanto o segundo é específico para cada dispositivo. A maior parte das camadas trabalha de forma independente do dispositivo.
2) Qual é a principal finalidade das rotinas de E/S?
Resp : Tornar as operações de E/S o mais simples possível para o usuário e suas aplicações. Com isso, é possível ao usuário realizar operações de E/S sem se preocupar com detalhes do dispositivo que está sendo acessado.
3) Quais as diferentes formas de um programa chamar rotinas de E/S?
Resp : Por comandos de leitura/gravação e chamadas a bibliotecas de rotinas oferecidas por linguagens de alto nível ou diretamente através de uma system call em um código de alto nível.
4) Quais as principais funções do subsistema de E/S?
Resp : Criar uma interface padronizada com os device drivers e oferecer uma interface uniforme com as camadas superiores.
5) Por que o sistema de E/S deve criar uma interface padronizada com os device drivers ?
Resp : Para que seja possível a inclusão de novos drivers sem a necessidade de alteração da camada de subsistema de E/S.
6) Explique o funcionamento da técnica de DMA e sua principal vantagem.
Resp : De forma simplificada, uma operação de leitura em disco utilizando DMA teria os seguintes passos. A UCP, através do device driver, inicializa os registradores do controlador de DMA e, a partir deste ponto, fica livre para realizar outras atividades. O controlador de DMA, por sua vez, solicita ao controlador de disco a transferência do bloco do disco para o seu buffer interno. Terminada a transferência, o controlador de disco verifica a existência de erros e, caso não haja erros, o controlador de DMA transfere o bloco para o buffer de E/S na memória principal. Ao término da transferência, o controlador de DMA gera uma interrupção avisando ao processador que o dado já encontra-se na memória principal. A principal vantagem dessa técnica é evitar que o processador fique ocupado com a transferência do bloco para a memória.
EXERCÍCIOS SOBRE MEMÓRIA VIRTUAL
1) Quais as funções básicas da gerência de memória ?
Resp : Maximizar o número de processos na memória, permitir a execução de programas maiores que a memória física, compartilhamento de dados na memória e proteção da memória utilizada por cada processo e pelo sistema operacional.
2) Considere um sistema computacional com 40Kb de memória principal e que utiliza um sistema operacional de 10Kb que implemente alocação contígua de memória. Qual a taxa de subtuilização da memória principal para um programa que ocupe 20Kb de memória?
Resp : Considerando que o sistema opeacional e o programa somados ocupam ¾ da memória principal, temos 25% de subutilização da memória.
3) Qual a diferença entre fragmentação interna e fragmentação externa da memória principal ?
Resp : Fragmentação interna ocorre em espaços livres e contíguos na memória principal que são pré-alocados por processos, não possibilitando, portanto, o uso por outros processos. Fragmentação externa ocorre em espaços livres e contínuos, porém tão pequenos que não possibilitam a alocação de programas por processos.