QuestionarioSO1

2
Questionário de Sistemas Operacionais – Parte 1 1. Diferencie processo de programa. Programas são estáticos e processos são dinâmicos. Processos são programas em execução. São a unidade básica de trabalho da CPU. 2. Quais as áreas de um processo? São elas: code section, data section, stack, heap, registers e o PC (program counter). 3. Quais são os estados de um processo e o que causa a mudança de um estado para outro? Os estados de um processo são: * novo: o processo acabou de ser criado * ready (ponto): na fila de processos prontos para serem executados * running: está sendo executado pela CPU * waiting: está esperando, respondendo a um evento * terminado: terminou de ser executado, foi tirado da CPU e teve sua memória liberada. Um processo passa de “new” pra “ready” quando é admitido pelo sistema operacional. Um processo passa de “ready” para “running” quando o scheduler lhe concede tempo da CPU. Um processo pode passar de “running” para “ready” voltando para a fila de processos a serem executados, quando sofre uma interrupção. Um processo pode passar de “running” par “wait” quando o SO recebe uma requisição de I/O ou quando executa a chamada à system call wait(). Um processo pode passar de “wait” para “ready” assim que terminar o tempo de espera ou quando o SO responder à requisição de I/O. Um processo é terminado quando finaliza sua execução, quando é matado pelo processo pai, ou pelo sistema operacional. 4. Que é o PCB (process control block) e que tipo de informações ele guarda? Cite três exemplos destas informações. O PCB é a forma que o processo é descrito no sistema operacional. Ele guarda todas as informações relativas a um processo como: PID, PC e registradores. 5. Existem três grandes filas em um sistema operacional. Quais são elas, que informações guardam e como são organizadas? São elas: * Fila de processos: que contém todos os processos aceitos pelo sistema operacional * Ready Queue: que contém os processos que estão prontos para serem executados pela CPU. * Device Queue: que contém os processos que estão em estado de wait enquanto o SO atende a requisições de I/O ou executa a instrução wait(). Estas filas são organizadas em uma lista encadeada de PCBs. Cada fila é representada por uma outra estrutura de dados que contém um ponteiro para a cabeça e a cauda da lista de PCBs. 6. Diferencie long-term scheduler, short-term scheduler e medium-term scheduler. Quais outros nomes eles recebem? Long-term scheduler, também chamado de job scheduler é o escalonador de processos. Em sistemas batch é comum que nem todos os processos submetidos possam ser

Transcript of QuestionarioSO1

  • Questionrio de Sistemas Operacionais Parte 1

    1. Diferencie processo de programa.Programas so estticos e processos so dinmicos. Processos so programas emexecuo. So a unidade bsica de trabalho da CPU.

    2. Quais as reas de um processo?So elas: code section, data section, stack, heap, registers e o PC (program counter).

    3. Quais so os estados de um processo e o que causa a mudana de um estado para outro?Os estados de um processo so:* novo: o processo acabou de ser criado* ready (ponto): na fila de processos prontos para serem executados* running: est sendo executado pela CPU* waiting: est esperando, respondendo a um evento* terminado: terminou de ser executado, foi tirado da CPU e teve sua memrialiberada.

    Um processo passa de new pra ready quando admitido pelo sistema operacional.Um processo passa de ready para running quando o scheduler lhe concede tempoda CPU.Um processo pode passar de running para ready voltando para a fila de processosa serem executados, quando sofre uma interrupo.Um processo pode passar de running par wait quando o SO recebe uma requisiode I/O ou quando executa a chamada system call wait().Um processo pode passar de wait para ready assim que terminar o tempo deespera ou quando o SO responder requisio de I/O.Um processo terminado quando finaliza sua execuo, quando matado pelo processopai, ou pelo sistema operacional.

    4. Que o PCB (process control block) e que tipo de informaes ele guarda? Cite trsexemplos destas informaes.O PCB a forma que o processo descrito no sistema operacional. Ele guarda todas asinformaes relativas a um processo como: PID, PC e registradores.

    5. Existem trs grandes filas em um sistema operacional. Quais so elas, que informaesguardam e como so organizadas?So elas:* Fila de processos: que contm todos os processos aceitos pelo sistema operacional* Ready Queue: que contm os processos que esto prontos para serem executados pelaCPU.* Device Queue: que contm os processos que esto em estado de wait enquanto o SOatende a requisies de I/O ou executa a instruo wait().

    Estas filas so organizadas em uma lista encadeada de PCBs. Cada fila representadapor uma outra estrutura de dados que contm um ponteiro para a cabea e a cauda dalista de PCBs.

    6. Diferencie long-term scheduler, short-term scheduler e medium-term scheduler. Quaisoutros nomes eles recebem?Long-term scheduler, tambm chamado de job scheduler o escalonador de processos.Em sistemas batch comum que nem todos os processos submetidos possam ser

  • executados. Assim sendo, eles ficam temporariamente armazenados em um dispositivosecundrio (geralmente um disco), para poderem ser executados posteriormente. Oescalonador de processos o responsvel por tirar esses processos deste repositrio ecarreg-los na memria para execuo.Short-term scheduler, tambm chamado de CPU scheduler o responsvel por pegar os processos que esto na ready queue e alocar para eles tempo da CPU.

    Medium-term scheduler, tambm chamado de swapper, o responsvel por pegar umprocesso da memria e coloc-lo na swap e vice-versa.

    7. Em um sistema multiprocessado, que acontece com o job scheduler se o grau demultiprogramao for estvel?Se a multiprogramao for estvel, a taxa mdia de criao de processos deve ser igual taxa mdia de finalizao de processos. Assim, o escalonador de processos pode sernecessrio somente quando um processo deixa o sistema.

    8. Diferencie I/O bound de CPU bound.9. Que mais vantajoso para um sistema operacional: ter uma alta taxa de I/O bound ou de

    CPU bound? Explique-se.10. Considere um computador com diversos conjuntos de registradores. Descreva as aes

    de uma mudana de contexto (context switching) quando o novo contexto j estiverarmazenado em um dos conjuntos de registradores. O que mais deve acontecer se onovo contexto tiver na memria em vez de em um conjunto de registradores? E se todosos conjuntos de registradores estiverem sendo usados?

    11. Qual o principal problema gerado pela troca de contexto? Que pode ser feito para evit-la?

    12. Em sistemas UNIX qual chamada ao Sistema Operacional (system call) feita para secriar um novo processo?

    13. Que um processo filho compartilha com um processo pai?14. Qual a vantagem de se restringir os recursos do processo pai ao processo filho?15. Em termos de execuo, quais as possibilidades existentes quando um processo cria

    outro?16. E em termos de espao de endereamento?17. Cite trs razes para a finalizao de um processo.18. Diferencie processos cooperantes de processos concorrentes.19. Que so sockets?20. Que significa e como funciona o protocolo RPC?21. Que so pipes?22. Diferencie pipe ordinrio de nomeado.23. Que so threads?24. Diferencie threads de processos filhos.25. Qual as vantagens e desvantagens de se criar uma thread ao invs de um processo filho?

    Sugira uma aplicao que se beneficia com as threads e uma que no se beneficia.26. Quais so as diferenas entre fluxos de execuo no nvel de usurios e fluxos de

    execuo que tm suporte do ncleo? Em quais circunstncias um deles melhor queoutro?

    27. Diferencie processos preemptivos de no-preemptivos.28. Qual a funo do dispacher?29. Que seo ctica?30. Que semforo?31. Explique o problema dos filsofos? Que realidade computacional ele expressa?