Atps Etapa 2
Trabalho Escolar: Atps Etapa 2. Pesquise 862.000+ trabalhos acadêmicosPor: rubensjunior17 • 13/6/2013 • 980 Palavras (4 Páginas) • 368 Visualizações
ETAPA 2
1- PASSO
1°- Quais são as partes que compõem um processo?
RESPOSTA: Um processo é formado por três componentes, estes são: Contexto de hardware, contexto de software e espaço de endereçamento, que juntos os três mantêm todas as informações necessárias para a funcionalidade de um programa. Contexto de Hardware: Tem como função o armazenamento de conteúdo, armazenando o conteúdo dos registradores gerais da UCP, além dos registradores de uso específico como program couter (PC), stack pointer (SP) e registrador de status. O contexto de hardware armazena nos registradores do processador um processo que está em execução, no momento em que o processo perde a utilização da UCP, o sistema salva as informações no contexto de hardware do processo. Contexto de Software: Tem a função de especificar e limitar os recursos que podem ser alocados em um processo, como número máximo de arquivos abertos simultaneamente, prioridade de execução e tamanho do buffer para operações de E/S.O contexto de software é composto por três grupos de informações sobre o processo :identificação, quotas e privilégios.
2°- O que é espaço de endereçamento de um processo?
RESPOSTA: Espaço de endereçamento é o intervalo de endereços de memória que um processo pode acessar. A criação e o gerenciamento de processos de espaço de usuário no Linux® possuem muitos fundamentos em comum com o UNIX® mas também incluem várias otimizações específicas para Linux. Reveja aqui o ciclo de vida dos processos Linux e explore o interior do kernel para a criação, o gerenciamento de memória, o planejamento e a destruição do processo. Linux é um sistema muito dinâmico com constantes necessidades de alterações de computação. A representação das necessidades computacionais dos centros Linux cerca a abstração comum do processo. Os processos podem ter vida curta (um comando executado da linha de comandos) ou vida longa (um serviço de rede). Por esta razão, o gerenciamento geral dos processos e seus planejamentos são muito importantes.
No espaço do usuário, os processos podem ser representados por identificadores de processo (PIDs). Na perspectiva do usuário, um PID é um valor numérico que identifica exclusivamente o processo. Um PID não é alterado durante o ciclo de vida de um processo, mas pode ser reutilizado depois que o processo termina, portanto, nem sempre é ideal armazená-lo em cache.
No espaço do usuário, é possível criar processos de qualquer uma destas formas. É possível executar um programa (o que resulta na criação de um novo processo) ou, dentro de um programa, é possível chamar uma chamada do sistema fork ou exec. A chamada fork resulta na criação de um processo filho, enquanto uma chamada exec substitui o contexto do processo atual pelo novo programa. Um ponto importante relacionado ao endereçamento de memória é constatado nesse momento. Quando o fork é realizado, internamente no Linux, é chamado um comando denominado do_fork(). A função do_fork começa com uma chamada para alloc_pidmap, que aloca um novo PID. Em seguida, do_fork faz a verificação para ver se o depurador está rastreando o processo pai. Se estiver, o sinalizador CLONE_PTRACE será configurado em clone_flags na preparação para a bifurcação. A função do_fork continua então com uma chamada para copy_process, transmitindo os sinalizadores, a pilha, os registros, o processo pai e o PID recentemente alocado.
Quando o fork é realizado é feita uma cópia da área de memmória mm para o processo filho recém-criado. Isso é feito da seguinte forma: - O processo filho recebe um novo descritor de memória,uma cópia do descritor de memória do processo pai.
...