mweerden: O NT foi projetado para vários usuários desde o primeiro dia, então esse não é realmente um motivo. No entanto, você está certo quanto ao fato de que a criação de processos desempenha um papel menos importante no NT do que no Unix, pois o NT, ao contrário do Unix, favorece o multithreading ao invés do multiprocessamento.
Rob, é verdade que fork é relativamente barato quando COW é usado, mas, na verdade, fork é geralmente seguido por um executivo. E um executivo deve carregar todas as imagens também. Discutir o desempenho do garfo, portanto, é apenas parte da verdade.
Ao discutir a velocidade de criação do processo, provavelmente é uma boa idéia distinguir entre NT e Windows / Win32. No que diz respeito ao NT (ou seja, o próprio kernel), não acho que a criação de processos (NtCreateProcess) e a criação de threads (NtCreateThread) seja significativamente mais lenta do que no Unix médio. Pode haver um pouco mais acontecendo, mas não vejo o motivo principal para a diferença de desempenho aqui.
Se você observar o Win32, entretanto, perceberá que ele adiciona um pouco de sobrecarga à criação do processo. Por um lado, requer que o CSRSS seja notificado sobre a criação do processo, que envolve o LPC. Ele exige que pelo menos o kernel32 seja carregado adicionalmente e precisa realizar vários itens de trabalho de contabilidade adicionais antes que o processo seja considerado um processo Win32 completo. E não nos esqueçamos de toda a sobrecarga adicional imposta pela análise de manifestos, verificando se a imagem requer um shim de compatibilidade, verificando se as políticas de restrição de software se aplicam, blá, blá.
Dito isso, vejo a desaceleração geral na soma de todas aquelas pequenas coisas que precisam ser feitas, além da criação bruta de um processo, espaço VA e thread inicial. Mas, como disse no início - devido ao favorecimento do multithreading em relação à multitarefa, o único software que é seriamente afetado por essa despesa adicional é o software Unix mal portado. Embora esta situação mude quando softwares como o Chrome e o IE8 de repente redescobrem os benefícios do multiprocessamento e começam a inicializar e desmontar com frequência os processos ...