Processos no Linux
Veja quais são os atributos dos processos (programas) no Linux
É importante que você entenda que cada programa é pelo menos um processo e que cada processo possui alguns atributos, tais como:
- Process ID (PID) ou identificação do processo: Cada processo possui um número de identificação único. O primeiro processo init sempre terá o PID 1 e para o restante dos processos este número é incrementado à medida que novos processos são executados;
- User ID e Group ID (ID do usuário e ID do grupo): Os processos precisam ser executados com os privilégios de uma conta de usuário e do grupo associado a eles. Isto é importante porque assim o sistema pode determinar e gerenciar o acesso aos recursos;
- Processo Pai: No Linux nenhum processo é executado de forma independente dos outros. Todos os processos no sistema, com exceção do init, possuem um processo pai, que é responsável pela sua execução. O atributo ParentID grava o PID do processo pai. Caso o processo pai termine sua execução antes do processo filho, o processo filho é “apadrinhado” pelo init, ganhando o Parent ID igual a 1;
- Variáveis de ambiente: Cada processo herda do processo pai algumas variáveis de ambiente que simplesmente guardam alguns valores que podem ou não ser importantes para o processo em execução. É possível que durante sua execução um processo altere, incremente ou apague uma variável de ambiente. Um processo filho pode herdar as variáveis de um processo pai. Mas um processo pai não consegue acessar as variáveis criadas ou alteradas por seus filhos.
- Diretório de trabalho: Os processos também são associados a um diretório de trabalho, onde podem fazer a leitura e a escrita do disco;
- Temporizadores: O Kernel mantém registros da hora em que os processos são criados bem como o tempo de CPU que eles consomem durante a sua execução.
Em um ambiente multiprogramado com apenas um processador, cada processo é executado aos poucos de cada vez, de forma intercalada.
O sistema operacional aloca a CPU um pouco para cada processo. Um processo após receber o controle do processador só o perderá quando ocorrer uma interrupção ou quando requerer algum serviço do sistema operacional.
Estas interrupções são transparentes aos processos, pois apenas interrompem temporariamente sua execução, que depois continuará a ser executada como se nada tivesse acontecido.
Ao requerer um serviço do sistema operacional, o processo é bloqueado até que o serviço requerido ao sistema operacional seja satisfeito.
Aprenda muito mais sobre Linux em nosso curso online. Você pode fazer a matrícula aqui com trial de 7 dias grátis. Se você já tem uma conta, pode acessar aqui.