O Programa em Execução
Por: marcosvini11 • 27/9/2018 • Trabalho acadêmico • 1.122 Palavras (5 Páginas) • 223 Visualizações
1 - Um processo basicamente é um programa em execução, no qual ele é carregado para a memória principal e é criada um contexto para ele.
2 - Para que concorrência entre os programas ocorra, é necessário que todas as informações do programa interrompido sejam guardadas, e essas informações são guardadas no contexto de hardware
de cada processo.
3 - Sim, por diversos motivos, Um exemplo disso é a falta de espaço na mmemória necessárias para o processo executar.
4 - Um processo é formado por três partes, conhecidas como contexto de hardware, contexto de software e espaço de endereçamento, que juntos mantêm todas as informações necessárias à execução de um programa.
5 - O contexto de hardware armazena o conteúdo dos registradores gerais da UCP, além dos registradores de uso específico, como program counter (PC), stack pointer (SP) e registrador de status. O sistema operacional gerencia a mudança de contexto, base para a implementação da concorrência, que consiste em salvar o conteúdo dos registradores do processo que está deixando a UCP e carregá-lo com os valores referentes ao do processo que será executado. Essa operação se resume em substituir o contexto de hardware de um processo pelo de outro.
6 - No contexto de software são especificados limites e características dos recursos que podem ser alocados pelo processo, como o número máximo de arquivos abertos simultaneamente, prioridade de execução e tamanho do buffer para operações de E/S.
Identificação: Cada processo criado pelo sistema recebe uma identificação única (PID – process identification) representada por um número, o processo também possui identificação do usuário ou processo que o criou (owner). Casa usuário possui uma identificação única no sistema (UID – user identification), que permite implementar um modelo de segurança, onde apenas processos e arquivos que possuem a mesma UID do usuário podem ser acessados.
Quotas: São os limites de cada recurso do sistema que um processo pode alocar, alguns exemplos de quotas presentes na maioria dos sistemas operacionais são:
- Número máximo de arquivos abertos simultaneamente;
- Tamanho máximo de memória principal e secundária que o processo pode alocar;
- Número máximo de operações de E/S pendentes;
- Tamanho máximo do buffer para operações de E/S;
- Número máximo de processos, subprocessos e threads que podem ser criados.
Privilégios: Os privilégios ou direitos definem as ações que um processo pode fazer em relação a ele mesmo, aos demais processos e ao sistema operacional.
7 - É a área da memória pertencente ao processo onde instruções e dados do programa são armazenados para execução. Cada processo possui seu próprio espaço de endereçamento, que deve ser devidamente protegido do acesso dos demais processos.
8 – O Sistema operacional implementa o gerenciamento de processos através de um
componente chamado PCB, ou do português bloco de controle de processos. Ele
mantém no processo tudo que se refere a hardware, software e endereçamento.
9 – Criação: quando o SO adiciona um novo PCB e aloca memória para o mesmo.
Execução: quando o processo está sendo executado pela UCP.
Pronto: Quando o processo aguarda para ser executado.
Espera: Quando o processo está esperando por algum recurso do próprio SO ou de
algum meio externo para continuar executando.
Término: quando o processo já finalizou sua conduta e não precisa mais ser executado,
retornando o resultado de seu processamento.
10 – Qual processo comum, ele precisa ser criado e alocado sua memória através do
PCB, em seguida ele entra em estado de pronto, mas se necessitar utilizar alguma
informação ele fica em espera, aguardando tal informação retornar para que ele possa
utilizá-la. Depois entra em execução e por final, ao final da execução ele retorna o
resultado e entra em término.
11 – Multithreads: Quando o processador é subdivido em diversas funcionalidades,
afim de executar determinadas ações de forma simultânea, reduzindo o tempo de
processamento entre essa threads e terminando vários processos ao mesmo tempo.
Subprocessos: Aqueles processos que possuem um processo Pai, para serem
realizados eles seguem a lógica do pai e só podem ser executados por ele e com ele.
Processos Independentes: Processos que não dependem de ninguém para serem
realizados, apenas alocam seu espaço com sua PCB e iniciam sua execução quando
possível, livremente.
12 – A principal diferença entre processos Back e Foregorund é que o Foreground
acontece a vista do usuário e necessita da interação ou na troca de informação com o
usuário, já o background acontece sem que o usuário precise interferir ou troca
informações, e longe da vista do usuário.
...