Você está na página 1de 3

EXERCÍCIOS

1. Os serviços e funçőes oferecidas por um sistema operacional podem ser divididas em duas categorias. Descreva
brevemente as duas categorias e discuta como elas se diferem.
Gerencia: de arquivos, memoria, dispositivos, proteção e processador
Abstração: para os dispositivos e independência de hardware;
2. Liste 5 (cinco) serviços, oferecidos por um sistema operacional, que săo projetados para tornar o sistema de
computaçăo mais conveniente para os usuários.
3. O que săo System Calls? Cite exemplos e năo deixe de explicar seu mecanismo de invocaçăo.
As chamadas de sistema são as ativações de procedimentos do núcleo usando interrupções de software;
4. Explique o que săo sistemas operacionais monolíticos, monolíticos com módulos e baseados em micro-kernel.
Monolítico: executam apenas uma tarefa por ves;
Monolítico com módulo
5. Descreva as açőes tomadas pelo kernel para fazer a troca de contexto entre processos.
6. Explique o que săo os anéis de execucaçăo. Qual a diferença entre código executando no nível 0 e em outros níveis.
7. O que săo processos, e quais os estados que podem assumir?
8. O que săo threads? Em que diferem de processos convecionais?
9. Mostre um exemplo de uso do fork(). Explique quais săo os valores retornados pela funçăo.
10. Na criaçăo de processos utilizando fork() um novo processo é criado com a imagem do processo pai. Como o kernel
Linux evita a necessidade de realizar esta cópia no momento da chamada do fork?
11. O que significa escalonamento preemptivo?
12. O que significa dizer que o Kernel também é preemptivo?
13. O que é starvation? Mostre um algoritmo que poderia levar a essa condiçăo.
14. O que é um deadlock? Mostre um um algoritmo que pode entrar em deadlock.
15. Quais dos seguintes algoritmos de escalonamento podem levar a "starvation" e porque?
a) First-come, Fist-served
b) Shortest job first
c) Round Robin
d) Priority
16. Que técnica é usada para evitar que um processo em um algoritmo de escalonamento por Multilevel Feedback-
Queue nunca execute?
17. Mostre como funciona a soluçăo de alternância estrita. Explique qual é sua limitaçăo na prática.
18. O que é o problema da Regiăo Crítica? Mostre um exemplo onde năo tratá-lo poderia levar a um erro.
19. O que săo semáforos? Mostre um exemplo de uso.
20. Mostre uma soluçăo usando semáforos para o problema "Bounded-Buffer"
21. Mostre uma soluçőes usando semáforos para o problema "Readers-Writers" com prioridade para leitores e com
prioridade para escritores.
22. Mostre uma soluçăo usando semáforos para o problema "Dining-Philosophers"
23. O que é copy-on-write e sob quais circunstâncias ela é útil?
24. Explique o que é segmentaçăo e paginaçăo.
A paginação permite que o programa possa ser espelhado em diferentes áreas de memória de maneira não contigua,
o espaço de endereçamento é dividido em páginas de tamanho fixo já a técnica de segmentação divide os programas
em segmentos de tamanhos variados com seu próprio espaço de endereçamento;
25. Explique o que é endereço lógico, endereço linear e endereço físico. Qual unidade (paginaçăo ou segmentaçăo) é
responsável por converter cada um destes endereços.
26. A segmentaçăo em no Kernel Linux năo é usada intensamente, porque? Também diga quais săo os 4 principais
segmento utilizados neste sistema operacional.
27. No kernel Linux executando na arquitetura x86 como é feito o Acesso Rápido aos Descritores de Segmento?
28. Explique a diferença entre fragmentaçăo interna e externa.
Fragmentação externa ocorre quando muitos arquivos de tamanhos diferentes são criados, modificados ou eliminados
e resulta em vários pequenos espaços em branco. A fragmentação interna é a perda de espaço dentro de uma área de
tamanho fixo;
29. Que esquema de paginaçăo é utilizado para mapear mais que 4GB na arquitetura x86 de 32 bits?
30. Dadas partiçőes de memória de 100KB, 500KB, 200KB, 300KB e 600KB (em ordem), como cada um dos algoritmo:
Fist-fit, best-fit e worst-fit, alocariam processos de 212Kb, 417Kb, 112KB e 426KB? Qual dos algoritmos faria o uso mais
eficiente de memória.
31. Explique os seguintes algoritmos para substituiçăo de páginas (page replacement): FIFO, Optimal e LRU. No caso do
LRU, vocę deve explicar quais săo as políticas de aproximaçăo para o LRU.
32. Como funciona o mapeamento de arquivos em memória, qual a vantagem de utilizar esse modo de acesso.
33. O que é o modo de alocaçăo de memória "Buddy System". Qual a sua desvantagem?
34. O que é o mecanismo de alocaçăo chamado SLAB?
35. O que é o Overcommit de memória? Quais as possíveis configurações para a váriavel de kernel
/proc/sys/vm/overcommit_memory no kernel 2.6?
36. No kernel Linux qual é a chamada de sistema utilizada para aumentar o heap do processo? Qual sua relaçăo com a
funçăo malloc()?
37. Em que momentos é executado o algoritmo de "Page Frame Reclaiming"?
38. Considerandodo algoritmo de "Page Frame Reclaiming" o que acontece quando os processos de usuários começam
a consumir mais memória?
39. Quais as vantagens e desvantagens de guardar o nome do programa criador junto aos atributos do arquivo?
40. Na semântica de sistema de arquivos do Unix o que acontece quando um arquivo que está aberto é removido?
41. No NFS (Network File System) o que é o "Silly Rename"? Porque surgem os arquivos .nfsXXXXXX ?
42. Discuta os fatores envolvidos na escolha do tamanho de bloco utilizado por um filesystem.
43. Sobre métodos de alocaçăo de espaço, responder:
a) Como funciona a alocaçăo de espaço contígua? Que problemas apresenta?
b) Como funciona a alocaçăo de espaço por encadeamento (linked allocation). Quais os problemas
apresentados por este método?
c) Como funciona a FAT (File-Allocation Table) usado pelo MS-DOS, qual a diferença em relaçăo ŕ alocaçăo por
encadeamento simples?
d) Mostre como ficaria a tabela FAT para um arquivo composto pelos seguintes blocos: 220, 340, 500, 600.
e) Em um sistema de arquivos usando uma FAT o que acontece se ocorrer a corrupçăo total da tabela de
alocaçăo de arquivos?
f) Como funciona a alocaçăo de espaço indexada? Que problemas da alocaçăo usando encadeamento ela tenta
resolver?
f) Dentro da alocaçăo indexada quais săo os mecanismos usados para guardar os índices?
g) O que săo i-nodes? Em qual mecanimos de alocaçăo indexada eles se enquadram?
44. Considere um sistema com i-nodes com 15 ponteiros. Nestes i-nodes os 12 primeiros săo usados para alocaçăo
direta; o 13 ponteiro para alocaçăo simples indireta; o 14 para alocaçăo dupla indireta e o 15 para alocaçăo tripla-
indireta. Considere ainda que cada bloco tem 512Kb. Como ficaria a estrutura de inodes para armazenar um arquivo e
129024 bytes (252 blocos)?
45. Qual a diferença de simbolic links e hard links? E como é a implentaçăo de cada um? Como é feito o controle de
remoçăo de arquivo em cada caso?
46. Considere um sistema onde o espaço livre é geręnciado por uma lista de espaço livre. Suponha que o ponteiro para
a lista de espaços-livres foi perdido. Esta lista pode ser reconstruída? Explique sua resposta.
47. Quais săo os métodos para geręnciamento de espaço livre?
48. Quais as estapas de um checkagem de consistęncia de um file system?
49. Como funcionam os sistema de arquivos baseados em Journaling? Quais suas vantagem? O que tentam garantir?
50. Explique os seguintes algoritmos de escalonamento de requisiçőes de disco: FCSF, SSTF (Shortest-Seek First), SCAN,
C-SCAN e LOOK.
51. Quais sao os algoritmos de escalonamentos disponíveis atualmente do kernel Linux? Descreva cada um deles.
52. Compare RAID0, RAID1, RAID5 e RAID6.
53. Suponha que vocę possui 4 discos rígidos de 750GB. Quanto espaço disponível vocę obteria usando RAID5 e quanto
espaço vocę obteria com RAID6? Quantos discos poderiam falhar em cada um destes casos?
54. Quando várias interrupçőes ocorrem ao mesmo tempo um esquema de prioridades pode resolver o conflito. Discuta
as questőes que devem ser consideradas ao atribuir as diferentes prioridades.
55. Descreva as vantagens e desvantagens em usar mapeamento por memório ou IO Ports para acessar dispositivos de
IO.
56. Como é feito o I/O usando polling. Quais as desvantagens?
57. Como é feito o I/O usando interrupçőes?
58. O que é feito I/O via DMA? Qual a vantagem sobre outros esquemas?
59. Discuta vantagens e desvantagens em ter I/O bloqueante. Como isso está relacionado a programaçăo utilizando
threads.

Você também pode gostar