Ключевые слова:threads, (найти похожие документы)
- BEST_PEOPLE (2:5077/15.22) ---------------------- BEST_PEOPLE (RU.UNIX.BSD) -
From : Valentin Nechayev 2:5020/400 12 May 01 10:07:12
Subj : Threads in FreeBSD 4.3
-------------------------------------------------------------------------------
* Forwarded from area 'RU.UNIX.BSD'
From: netch@segfault.kiev.ua (Valentin Nechayev)
>>> Slawa Olhovchenkov wrote:
VN>> Угу. Только вот Matt Dillon доказывает, что все это фигня и что они
VN>> постановили что KSE не могут параллельно исполняться - и баста.
VN>> А кому нужно параллельно - rfork в зубы.
SO> Что есть KSE?
http://people.freebsd.org/~jasone/kse/http://people.freebsd.org/~jasone/refs/freebsd_kse/
В двух словах - kernel-scheduled entities внутри процесса. Фактически
kernel-level threads. Hо дальше общей идеи начинается разнобой - главный
вопрос, могут ли разные KSE одного процесса исполняться одновременно
на разных процессорах? Если да (полный честный многопроцессорный мультитрединг,
вариант jasone и примкнувших;))) - то еще много надо в ядре переделывать,
особенно в области локов; если нет (на чем настаивает Dillon) - опять
rfork и прочее, зато реализуемо.
Следует учесть, что вариант Dillon'а тоже полезен: потому что
сейчас с нынешним libc_r или с автоматом (squid/inn) процесс
может зависнуть на ХЗ сколько в uninterruptible disk wait,
типа ожидания чего-то от умершего NFS сервера; если же разные KSE пусть
даже без возможности реально исполняться параллельно - пока одна спит в disk
wait, другая работает.
В общем, есть на что посмотреть, когда сделают.
/netch
--- ifmail v.2.15dev5 * Origin: Lucky Netch Incorporated (2:5020/400)