DragonFly BSD
DragonFly kernel List (threaded) for 2004-02
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: lkwt in DragonFly


To: Miguel Mendez <flynn@xxxxxxxxxxxxxxxxxx>
From: Pablo Méndez Hernández <ciph3r@xxxxxxxxxxxxxx>
Date: Tue, 10 Feb 2004 21:04:58 +0100

Miguel Mendez wrote:
Jeroen Ruigrok/asmodai wrote:

I prefer to go with a hybrid method. 1:1 doesn't work.


Could you elaborate on that? I agree that the prefered implementation is
something KSE/SA alike, but Solaris is moving to 1:1 after years of trying to make N:M work properly. The main problem I see with 1:1 threading is kernel memory usage on heavily threaded applications, but other than that? Implementation is a lot simpler than in the N:M case. The SA idea looks very good on paper until you start implementing and see it's actually pretty hard work to get it functioning properly.

As remembered us Dan Eischen in threads@xxxxxxxxxxx:


http://groups.google.com/groups?q=M+x+N+group:comp.programming.threads&hl=en&lr=&ie=UTF-8&oe=UTF-8&scoring=d&selm=3f1e86d9%40usenet01.boi.hp.com&rnum=3

"Yes, it is hard to get M:N working right, though there are real advantages. (System Software development is not generally dedicated to the principle of avoiding "hard" problems, after all.) But the history of Sun's trouble with M:N isn't nearly as much technical as political. Even when developers tried to address design problems, they weren't allowed. So, yes, giving up on M:N probably was the best course, for Sun. M:N isn't something that can be done halfway -- you either commit to the whole thing and follow through, or you're better off not trying. Unlike Solaris, the Tru64 UNIX M:N scheduling model was actually designed to work, and does. It (like all else) isn't perfect, but it scales, it supports detailed and effective debugging, and it's cleanly and deeply integrated with the kernel."

Pablo Méndez Hernández



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]