terça-feira, 10 de agosto de 2010

Capítulo 1, Questões 21~25

21. Qual é a diferença essencial entre arquivos especiais de bloco e arquivos especiais de caractere?
S. Arquivos especiais de bloco são usados para modelar dispositivos que fornecessem endereçamento aleatório, como discos. Já os arquivos especiais de caracteres são usados para modelar dispositivos que utilizem acesso serial aos dados, como modens e impressoras.

22*. No exemplo dado na Figura 1.17, o procedimento de biblioteca é denominado read e a própria chamada ao sistema é denominada read. É essencial que ambos tenham o mesmo nome? Em caso negativo, qual é o mais importante?
S. Não é necessários que ambos tenham o mesmo nome. A segunda pergunta é ambígua, pode estar se referindo a importância do procedimento ou a importância do nome do procedimento. O nome do procedimento não é importante de forma alguma, funcionalmente falando. A chamada ao sistema é mais importante que a chamada da biblioteca. Já que sem a chamada do sistema, nenhuma biblioteca pode fazer tal chamada, o que não é verdade para o contrário. O programa pode sim fazer uma chamada direta ao sistema.

23. O modelo cliente-servidor é muito usado em sistemas distribuídos. Ele pode também ser utilizado em sistemas de um único computador?
S. Pode sim, e esta é a tendência atual dos sistemas operacionais. Fazendo isto, busca-se um micronúcleo mínimo, muito mais fácil de gerenciar. Uma outra vantagem deste sistema é o desacoplamento dos serviços oferecidos pelo sistema, caso algum dos serviços falhe, por exemplo o sistema de arquivos, isto não vai comprometer o funcionamento da máquina como um todo.

24*!. Para um programador, uma chamada ao sistema se parece com qualquer outra chamada um procedimento de biblioteca. É importante que um programador saiba quais procedimentos de biblioteca resultam em chamadas ao sistema? Sob quais circunstâncias e por quê?
S. É muito importante sobre a questão do desempenho. Chamadas ao sistema requerem desvio de fluxo e tratamento das chamadas que trazem consigo armazenamento e resgate de contexto, coisas que tomam tempo.

25$. A Figura 1.23 mostra que várias chamadas ao sistema em Unix não têm equivalentes na API do Win32. Para cada chamada relacionada que não tenha equivalente Win32, quais são as consequências para o programador em converter um programa Unix para executar no Windows?
S. Essa pergunta é capciosa. De certa forma este livro quer sempre que pode mostrar que o Unix é melhor que o Windows, a pergunta poderia ter sido feita ao contrário para mostrar superioridade do Windows sobre o Unix. A resposta para a pergunta é óbvia, ele deve procurar procedimentos com funcionalidades similares aos do Unix, ou com mesmo efeito para o usuário final.

!: Pergunta interessante.
*!: Pergunta interessante mas que tenho dúvida.
$: Pergunta com opiniões muito pessoais do autor e que foram comentadas por mim.

Um comentário: