Qual é a diferença entre um processo e uma imagem de processo?
tudo isto está no contexto das estruturas de controlo do processo e da localização do processo na memória.
4 answers
Aqui está uma página web com mais detalhes sobre as imagens do processo
Um processo pode envolver mais do que a sua imagem. É uma imagem viva e em mudança , daí o nome , que é gerido pela CPU.
Um único processo pode ter várias imagens em diferentes intervalos, juntamente com seu efeito na CPU que não está diretamente incluída na imagem, como operações aritméticas.
Quando UM programa é carregado como um processo, é-lhe atribuída uma secção de memória virtual que forma o seu espaço de endereços utilizável. Dentro desta imagem de processo existem tipicamente pelo menos quatro elementos:
Código do programa (ou texto)
As instruções do programa a serem executadas. Note que não é necessário para o processador ler a totalidade de um processo em física memória quando UM programa é executado, em vez de um procedimento conhecido como ?dinamica chamada? o próximo bloco de instruções é carregado conforme necessário e pode ser compartilhado entre processos.
Dados da aplicação
Pode distinguir-se como variáveis inicializadas, incluindo variáveis externas variáveis globais e estáticas, variáveis não inicializadas (conhecidas como bss) área de sistemas derivados Unix). Os blocos de dados não são partilhados entre processos por defeito.
Pilha
Um processo terá normalmente pelo menos duas últimas entradas, primeira saída (LIFO) pilhas, incluindo uma pilha de utilizadores para o modo de utilizador e uma pilha de 'kernel' para modo de kernel.
Bloco De Controlo Do Processo
Informação necessária ao sistema operativo para controlar o processo.
O Processo é simplesmente uma abstração de um programa em execução. No contexto das estruturas de controle do processo, quando o processo está sendo referido, o que normalmente significa é o bloco de controle do processo.
Resumo das estruturas de controlo: o sistema operacional controla todos os processos através de uma tabela/lista de processos na memória do sistema. Parece-se com isto.
Process 1
Process 2
...
Process n
Cada um destes itens da lista é uma imagem de processo . Cada imagem de processo por sua vez (tipicamente) contém:
- utilizador data (programa de utilizador, pilha de utilizador, heap)
- bloco de controlo do processo (id do processo, informação de Estado, informação de controlo do processo)
Desta forma, a imagem do processo é o PCB e muito mais.
Resumindo, o SO mantém uma lista de imagens de processo, que consistem no bloco de controle do processo e todos os dados relacionados com o programa do Usuário.