Os Sistemas Operacionais
Por: Chewbi • 14/5/2017 • Exam • 569 Palavras (3 Páginas) • 264 Visualizações
2 – Explique a diferença entre um processo e um programa de usuário.
R: Processo é um módulo executável único, que corre concorrentemente com outros módulos executáveis.
Programa de usuário é uma sequência de instruções específicas que descrevem uma tarefa a ser realizada por um computador.
4 – Desenhe uma arvore de processos que represente o seguinte fluxo de funcionamento do S.O.
- O usuário, através do terminal, lança um novo processo;
- Esse processo cria 3 novos processos para auxilio;
- O segundo processo dos 3 novos cria mais um processo;
- Paralelamente, o sistema lança dois novos processos, um para verificar e-mails, e o outro para verificar eventos na agenda de manutenção.
R:
[pic 1]
6 – Sistemas operacional tem dois objetivos principais, e um deles é realizado pela disponibilização de chamadas ao sistema. Sobre este assunto, responda:
- Qual é este objetivo? Como as chamadas ao sistema garantem sua realização?
R: Gerenciar recursos escassos do sistema computacional, abstrair a funcionalidade específica do hardware. Para tal, um Sistema Operacional deve oferecer funções comuns a vários sistemas (de hardware), independente das características específicas e dispositivos presentes.
- Explique em detalhes técnicos o que ocorre com o processador, sistema operacional e programa de usuário quando este ultimo faz uma chamada ao sistema.
R:
8 – Explique a finalidade de cada linha do trecho de código a seguir, em linguagem C e com chamadas a um sistema POSIX. Explique também a funcionalidade do programa como um todo:
While (True){
type_prompt();
read_command(command, parameters); R: lê uma quantidade de nbytes de bytes.
if (fork() != 0) R: cria um processo filho, clone do processo atual.
waitpid(-1, &status, 0); R: O processo atual fica suspenso enquanto o processo pid não terminar execução.
else
execve(command, parameters, 0); R: Substitui o programa do processo atual pelo programa indicado por nome.
}
R:
10 – Quais são as principais preocupações na programação e produção de Sistemas Operacionais? Explique.
R: Por serem projetos grandes e complexos e estão sujeitos a diversos erros e falhas eles tem que ser feitos com cuidado buscando estabilidade, segurança e manutenibilidade.
12 – Apesar de apresentar consideráveis desvantagens, a estrutura monolítica ainda é a mais utilizada em Sistemas Operacionais. Explique.
R: Pois as funcionalidades são separadas em vários objetos, o sistema inteiro é feito como um só, qualquer chamada ao sistema estão disponíveis para qualquer programa, não há ocultação de informações e interfaces dentro do kernel, mas as chamadas ao sistema podem ser estruturadas em vários objetos, que são link-editados em um único.
14 – Sobre S.O. estruturados em camadas, responda:
- O que é? Quais problemas ele visa resolver, quando comparado com a estrutura monolítica? Quais os problemas apresentados?
R: São divisões que o S.O. cria para facilitar o acesso a determinadas áreas. Dificuldade de implementação, desempenho inferior, necessidade de propagação de chamadas ao sistema pelas camadas e transformações constantes nos dados sendo repassados entre as camadas.
- Desenhe uma representação do como seria uma chamada ao sistema por um processo do usuário que necessite acesso ao disco. [pic 2]
16 – Ao utilizar o Minix3, um sistema operacional estruturado em microkernel, em um dado momento um processo precisa acessar o disco para leitura de dados. Porem, o driver do disco apresenta uma falha.
- Como este S.O. resolve o problema?
R: Ele apenas faz uma reinicialização.
...