Concorrência de encadeamentos posix em máquinas multiprocessadas
Eu tenho algumas dúvidas sobre a simultaneidade de threads posix na máquina multiprocessador. Eu encontrei perguntas semelhantes no SO sobre isso, mas não encontrei resposta conclusiva.
Abaixo está o meu entendimento. Eu quero saber se estou correto.
Os encadeamentos Posix são encadeamentos em nível de usuário e o kernel não está ciente disso.
O agendador de kernel tratará o Processo (com todos os seus threads) como uma entidade para agendamento. É a biblioteca de encadeamentos que, por sua vez, escolhe qual encadeamento será executado. Ele pode dividir o tempo de CPU fornecido pelo kernel entre os encadeamentos executáveis.
Os encadeamentos do usuário podem ser executados em diferentes núcleos de cpu. ie Permite que os encadeamentos T1 e T2 sejam criados por um processo (T), então T1 pode ser executado em Cpu1 e T2 pode ser executado em Cpu2 MASeles não podem correr simultaneamente.
Por favor, deixe-me saber se o meu entendimento está correto.
Obrigado...