|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Igor Sysoev 2:5020/400 13 Feb 2002 14:08:31 To : All Subject : pthread -------------------------------------------------------------------------------- Дожил, читаем в googl groups, отвечаем в talk.ru. В мозилле, задолбался. Жуткий интерфейс, кодовые слова, блин. Больше отвечать не буду. > IS> Я не утверждал, что user-level only - это правильный путь. Отнюдь. > IS> Я утверждал, что так, как сделано в Линуксе - это неправильный путь. > > Почему? Поконкретнее, pls. > > IS> Есть же другие реализации - например, NT, Solaris LWP и то, что > IS> сейчас начали делать во фре - KSE на основе Scheduler Activations. > > И чем же эти реализации лучше? > > О том, что там тредовая модель другая, "классическая", и мало похожа > на linuxthreads, мы уже знаем. А вот чем она лучше, объясните. Лучше они тем, что шедулинг процессов и трэдов - это разные вещи. В линуксе трэды уже шедуляться отдельно от процессов ? Что касается KSE, то там помимо классической реализации предполагаются scheduler activations. Смысл последних в следущем. Процесс в начале запускает манагер user-трэдов и делает сисколл kse_init(). Возвращается, запускает сами трэды. Если трэд вызывает блокирующий сисколл, то ядро возвращет управление процессу, но не в точку за сисколлом, а в манагер как возврат из kse_init(). Манагер может шедулить другой трэд. Возврат из kse_init() может вернуть контекст (или несколько ?) трэда, который был заблокирован и опреация которого выполнилась. Манагеру достаточно сделать туда longjmp() и трэд продолжит выполнение. Каким-то образом ещё предполагается возможность исполнять такие трэды одновременно на несколькх процессорах (как - я не понял и на пальцах объяснить не могу). Смысл сего - синхронизация и шедулинг без участия ядра, нет проблем с блокирующими вызовами и возможность работы на нескольких процессорах. Если всё это получится, будет интересно посмотреть. Более подробно это описано здесь: http://people.freebsd.org/~jasone/refs/freebsd_kse/freebsd_kse.html -- Igor Sysoev Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru --- ifmail v.2.15dev5 * Origin: Talk.ru (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/6488b99cf494.html, оценка из 5, голосов 10
|