TRABALHO LIVRO MAZIERO
Lista de Exercícios I
1 - Exercícios (Questões):
1.1. Explique o que e, para que serve, e o que contem um PCB - Process Control Block.
É uma estrutura de dados que representa uma tarefa no núcleo. Serve para armazenar as informações relativas ao seu contexto e os demais dados necessários à sua gerência.
Ela contem: Identificador da tarefa; Estado da tarefa; Informações de contexto do processador; Lista de áreas de memória usadas pela tarefa; Listas de arquivos abertos, conexões de rede e outros recursos usados pela tarefa; Informações de gerência e contabilização. 1.2. O que significa “time sharing” e qual a sua importância em um sistema operacional? É um conceito de compartilhamento de tempo, onde cada atividade que detém o processador recebe um limite de tempo de processamento, denominado quantum.
Esgotado seu quantum, a tarefa em execução perde o processador e volta para uma fila de tarefas “prontas”, que estão na memória aguardando sua oportunidade de executar. Permite que o SO não precise esperar que uma tarefa tenha quer ser totalmente finalizada para executar uma próxima tarefa.
1.3. Como e com base em quais critérios e escolhida a duração de um quantum de processamento? Em um sistema operacional típico, a implementação da preempção por tempo tem como base as interrupções geradas pelo temporizador programável do hardware.
Esse temporizador normalmente é programado para gerar interrupções em intervalos regulares (a cada milissegundo, por exemplo) que são recebidas por um tratador de interrupção (interrupt handler); as ativações periódicas do tratador de interrupção são normalmente chamadas de ticks do relógio. Quando uma tarefa recebe o processador, o núcleo ajusta um contador de ticks que essa tarefa pode usar, ou seja, seu quantum é definido em número de ticks. A cada tick, o contador é decrementado; quando ele chegar a zero, a tarefa perde o processador e volta à fila de prontas.
1.4.