At 16:00 17/6/2001 -0300, F�bio Franco de Oliveira wrote:
>Multi-thread significa multi-camadas, n�o � ? Ent�o significa que o Windows
>� mais r�pido do que o Unix/Linux em rela��o a throughput ??

Threads sao 'miniprocessos' que compartilham o mesmo segmento de memoria do 
processo pai. Como em Linux e unixes gratis em geral o suporte a threads 
nao eh muito bom, o pessoal emula-as com chamadas a fork() e clone(), q sao 
tao rapidas qt em maquinas monoprocessadas que nao tem muita carga. Mas, 
AFAIK, isso nao escala bem, pois cada processo filho desta forma ter� seu 
espaco de memoria separado, ocupando mais memoria do que uma thread, e 
terao que se comunicar por messaging normal por IPC ao inves de leitura e 
escrita no espaco em memoria compartilhado entre as threads, gerando 
overload desnecessario e nao sendo bem distribuidos em maquinas com varios 
processadores, caindo o desempenho. Eh por isso que programas que fazem uso 
intensivo de threads, como a Java Virtual Machine e programas grandes em 
C++ sao mais lentos no Linux do que em outras plataformas. Sistemas q tem 
threading mais maduro no kernel sao o Solaris, Tru64, BeOS e Windows 2000.

-ktb

--
Thiago Pimentel
Preview Tecnologia


Assinantes em 18/06/2001: 2306
Mensagens recebidas desde 07/01/1999: 118659
Historico e [des]cadastramento: http://linux-br.conectiva.com.br
Assuntos administrativos e problemas com a lista:
            mailto:[EMAIL PROTECTED]

Responder a