Modelagem e desenvolvimento de sistemas
10) Dê exemplo que apresente todas as mudanças de estado de um processo, juntamente com o evento associado a cada mudança.
R: Estado de Execução: processo que está sendo processado pela UCP no momento.
Estado de Pronto: processo que aguarda para ser executado. Estado de Espera: processo que aguarda por algum evento ou recurso para prosseguir processamento.
Estado de Criação: processo cujo PCB já foi criado porém ainda não teve seu processamento iniciado. Estado de Terminado: processo que não pode ter mais nenhum programa executado no seu contexto, porém o sistema operacional mantém suas informações de controle presentes na memória.
11) Diferencie processos multithreads, subprocessos e processo independentes.
R: Processos independentes não têm vínculo com os processos criadores. A criação de um processo independente exige a alocação de um PCB, possuindo contextos de hardware, contexto de software e espaço de endereçamento próprios. Subprocessos são processos criados dentro de uma estrutura hierárquica. Caso um processo pai deixe de existir, os subprocessos subordinados são automaticamente eliminados.
Semelhante aos processos independentes, subprocessos possuem seu próprio PCB.
Além da dependência hierárquica entre processos e subprocessos, uma outra característica neste tipo de implementação é que subprocessos podem compartilhar quotas com o processo pai. Neste caso, quando um subprocesso é criado, o processo pai cede parte de suas quotas ao processo filho. Processos multithreads suportam múltiplos threads, cada qual associado a uma parte do código da aplicação. Neste caso não é necessário haver diversos processos para a implementação da concorrência. Threads compartilham o processador da mesma maneira que um processo, ou seja, enquanto um thread espera por uma operação de E/S, outro thread pode ser executado.
12) Explique a diferença entre processos foreground e background.
Um processo foreground é aquele