Tente algo assim:
Todos os processos começam com apenas um thread e podem criar mais usando pthread_create
, por exemplo. (Todos os encadeamentos de um processo criados dessa maneira compartilham o mesmo espaço de endereço.) O planejador do kernel trabalha nesses encadeamentos, independentemente de serem um encadeamento "principal" / inicial do processo ou adicionais - não há essencialmente nenhuma diferença entre eles do agendador ponto de vista.
O Linux inicialmente não tinha encadeamentos, apenas processos. Portanto, a parte do sistema operacional que programa o "trabalho da CPU" é geralmente chamada de agendador do processo, por razões históricas. (Isso não é específico do Linux, a mesma coisa para a maioria dos sistemas do tipo Unix (todos?). O agendador de threads simplesmente não é o vocabulário usual usado.)
Eu nem mencionaria clone
(e muito menos vfork
) nesse ponto, a menos que você já tenha explicado todo o negócio dos namespaces.