Processos

Um processo é um simples programa que está rodando em seu espaço de endereçamento virtual próprio. É distinto de um job ou comando, que, em sistemas UNIX, podem ser compostos de muitos processos realizando uma única tarefa. Comandos simples como "ls" são executados como simples processos. Um comando composto, contendo pipes irá executar um processo por segmento pipe. Em sistemas UNIX, o gerenciamento dos recursos da CPU deve ser feito, em grande parte, por contrôle de processos, pois os recursos de alocação e as facilidades de execução em bacht disponíveis em outros sistemas são pouco desenvolvidas ou inexistentes.

Tipos de Processos

Processos interativos são iniciados a partir de, e controlados por uma sessão terminal. Estes processos podem rodar tanto em foreground como em background.
Processos batch, ou em lote, são processos não associados a nenhum terminal. Ao invés disso, são submetidos a uma fila, da qual jobs são executados sequencialmente. UNIX oferece um comando bacht muito primitivo.
Daemons são processos servidores, inicialmente inicializados durante o boot, que rodam continuamente enquanto o sistema estiver ativo, esperando, em background, até que um processo requisite seus serviços. Por exemplo, network daemons ficam em estado idle até que um processo requisite serviço de rede.

Atributos

Process ID, PID, é um número que identifica unicamente este processo e é usado para referir-se a ele.
Parent process ID, PPID, é o process ID do processo pai do processo, ou seja, o processo que o criou.
TTY é o dispositivo de terminal associado com o processo
O UID real de um processo é o UID do usuário que o criou. O UID efetivo, é o UID que é utilizado para determinar o acesso do processo a recursos do sistema. Usualmente, RUID e EUID são os mesmos e o processo tem os mesmos acessos que o usuário que o disparou. Entretanto, quando SUID está setado em um executável, então o EUID do processo executando é setado para o UID do propritário do arquivo, que herda as permissões deste.
O GUID real e efetivo de um processo é grupo primário ou corrente do usuário. Seu GID efetivo, utilizado para determinar permissões de acesso, é o mesmo que o GID real, exceto quando o SGID está setado em um executável. Neste caso, o EGID assume o GID do grupo proprietário do arquivo.

Voltar
Avançar