Primeira Avaliação de SO2
-
Explique, através de vantagens e desvantagens, implementação de Threads no espaço do usuário e Threads no espaço do kernel. Como o Unix e O linux gerenciam a parte executora dos processos?
-
Como funciona o algoritmo de escalonamento inferior do Unix (baseado em múltiplas filas de prioridades) quanto ao mecanismo de atualização de prioridade e proteção a postergação indefinida de processos?
-
Como é implementado o sistema de arquivos NFS?
-
Explique o mecanismo de transmissão de informações entre processos através de Sockets. Aborde o caso onde exista fluxo confiável de pacotes orientados à conexão.
-
Implemente um protótipo em C de um shell simplificado, capaz de realizar chamadas a binários no ambiente do sistema Unix ou Linux.
while(TRUE){ //rodar para sempre
type_prompt(); //display do prompt na tela
read_command(command, param); //lendo uma linha do teclado
pid = fork(); //cria um processo filho
if(pid > 0){
printf(“Unable to fork0”); //condição de erro
continue; //repete o laço
}
if(pid != 0){
waitpid(-1, status, 0); //processo pai espera pelo filho
}else
execve(command, param, 0); //filho executa
}
}