Teste
1- Defina quais são as funções do sistema operacional.
O sistema operacional tem como função controlar o hardware e permitir executar os softwares. Outra parte que cabe ao sistema operacional é a interface com o usuário, pois não bastaria apenas o sistema operacional controlar o hardware e executar programas se este não oferecer ao usuário uma interface que possa ser utilizada pelo mesmo. O Windows, por exemplo, tem uma interface que é controlada pelo EXPLORER. O MacOS X tem uma interface que é controlada pelo Aqua e pelo FINDER.
O Linux tem uma interface gráfica que é controlada pelo X Window System, mas este ainda depende de gerenciadores de janelas que o usuário poderá escolher: KDE, Gnome, Xfce, Fluxbox, OpenBox, Enlghtenment.
2- Defina interrupções e exceções, dê um exemplo de cada.
Interrupções e exceções são ocorrências, que em geral, alteram o fluxo normal de execução. E são a forma que o sistema responde a eventos externos como o timer tick, dispositivos e erros.
Exceções
Exceções são síncronas ao fluxo de instruções. Em outras palavras, uma instrução específica causa uma exceção quando ela tenta finalizar a execução. Nenhuma instrução após a instrução em falta é executada antes do tratador de exceção finalize. Exceções podem ser de dois tipos: exceções de hardware, levantadas pelo SO em resposta ao processador (e.g divisão por 0, page fault), ou exceções de software, levantadas pelo próprio processo ou qualquer outro componente que esteja sendo usando. Muitas exceções estão relacionadas com a memória. Por exemplo, uma exceção é dada quando um acesso desalinhado é tentado, quando há violação de proteção de memória. Exceções também ocorrem quando instruções ilegais ou uma combinação ilegal de registradores são executadas. No Linux syscalls, device not available, stack overflow no espaço de usuário, operação inválida, divide error, page fault, são exemplos de exceções kernel-level. O SO levanta