Freebsd
Processos
O FreeBSD é um sistema operacional multitarefa. Isso significa que ele cria um ambiente onde os recursos computacionais são divididos de forma à parecer que mais de um programa é executado ao mesmo tempo. Todo comando que você executar, iniciará ao menos um novo processo, e existem vários processos do sistema que estão sempre em execução, mantendo a funcionalidade do ambiente como um todo.
Cada processo tem seu próprio espaço de endereço privado. O espaço de endereço é inicialmente dividido em três segmentos lógicos: texto, dados e pilha. O segmento do texto é somente leitura e contém as instruções de máquina de um programa. Os dados e os segmentos de pilha são lidos e escritos. O segmento de dados contém as porções de dados inicializados e não inicializado de um programa, enquanto o segmento de pilha contém o aplicativo de tempo de execução pilha. Na maioria das máquinas, o segmento de pilha é prorrogado automaticamente pelo kernel como o processo é executado. Um processo pode expandir ou contrair o seu segmento de dados, fazendo uma chamada de sistema, enquanto que um processo pode alterar o tamanho de seu segmento de texto somente quando os conteúdos do segmento são cobertas com os dados do sistema de arquivos, ou quando ocorre a depuração. O conteúdo inicial dos segmentos de um processo filho são duplicatas dos segmentos de um processo pai.
Cada processo é identificado de forma única com um número, que é chamado de PID, e, assim como os arquivos, cada processo também tem um dono e grupo. As informações sobre dono e grupo são utilizadas com o intúito de determinar que arquivos e dispositivos o processo pode abrir, utilizando as permissões discutidas anteriormente. A maioria dos processos tem ainda um processo pai. O processo pai é o processo que o iniciou. Por exemplo, quando você digita um comando em uma shell, então essa shell é um processo,