Вы находитесь на странице: 1из 2

Instituto Federal de Educação, Ciência e Tecnologia –

Campus Crato
Curso: Bacharelado em Sistemas de Informação
Disciplina: Sistemas Operacionais
Professor: Guilherme Esmeraldo

Projeto I
GERENCIADOR DE PROCESSOS

1. Introdução

Como sabemos, um processo é uma instância de programa em execução e,


quando utilizamos um computador, necessariamente, estamos utilizando vários
processos. Com o desenvolvimento das técnicas de integração de circuitos integrados e
avanços das técnicas embutidas nos Sistemas Operacionais (SOs), é possível que
executemos vários processos “em paralelo”. O SO tem, desta forma, que gerenciar o
tempo de processador (time slice) em que cada processo/thread terá disponível para
execução de tarefas, e com isso, o escalonamento de tarefas (alocação do processador
para determinado processo/thread) (time sharing).
Geralmente, os SOs trazem ferramentas de suporte ao gerenciamento de
processos. Com essas ferramentas, o administrador do sistema, e os usuários em geral,
pode, por exemplo, consultar informações (proprietário, identificador, tempo de execução,
prioridade de execução, memória consumida, etc), iniciar, bloquear/continuar e encerrar,
bem como alterar prioridades de execução.

2. Especificação

Este projeto é essencialmente um exercício pratico objetivando não apenas


solidificar os conhecimentos teóricos vistos em sala de aula, mas, principalmente,
propiciar ao aluno uma vivência no desenvolvimento de ferramentas de gerenciamento
dos recursos de um Sistema Operacional, especificamente, de gerenciamento de
processos.
O exercício consiste no projeto e implementação de um Gerenciador de Processos
(GP) para o sistema operacional GNU/Linux. O GP a ser desenvolvido deverá ter as
seguintes características:

a) Listar processos de um determinado usuário;

b) Permitir consulta de informações sobre um determinado processo , tais como:


- Identificador de Processo (PID);
- Prioridade de execução (NICE);
- Proprietário (USER);
- Tempo total de execução (TIME);
- Estado (STATUS).

c) Permitir alterar o estado de um processo:


- Bloquear;
- Continuar (caso o processo esteja bloqueado);
- Executar;
- Reiniciar;
- Finalizar.
d) Trocar prioridade de execução;
- De um processo em execução ou
- Antes de executar um processo.

e) Ser codificado exclusivamente na Linguagem de programação C/C++.

3. Metas

Para o completo sucesso nessa tarefa, o projeto deverá:

a) ser desenvolvido em equipes;


b) e, ao fim, conter: entrega de código-fonte, apresentação de projeto e modelos de
implementação, com demonstração da aplicação em execução.

Вам также может понравиться