|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Alex Tomas 2:5020/400 15 Jul 2002 09:49:09 To : ’ҐаҐе®ў ѓҐ ¤Ё© Subject : Re: Slackware vs RH vs Mandrake etc. -------------------------------------------------------------------------------- > <m365zi95hd.fsf@lexa.home.net> <20020714105707.GE1491@iv.nn.kiev.ua> > <20020714172900.B7737@pii233> From: Alex Tomas <bzzz@tmi.comex.ru> чем значит 'потенциально лучше'? да, надежность можно сделать выше, но за счет производительности. 1) основа microkernel - message passing. это достаточно дорогая вещь, если применять ее всюду. вместо того, чтобы просто положить в стек параметры и вызвать необходимую функцию, создают 'сообщение', кладут его в очередь, в другой подсистеме вытаскивают из очереди, etc. это overhead. на MP это еще больший overhead, ибо очередь надо в консистентом состоянии поддерживать 2) чтобы подсистемы были защищены друг от друга, они должны жить в разных адресных пространствах. таким образом, при переходе из одной подсистемы в другую (vfs->fs->device driver, socket->tcp->ip->device driver, etc) необходимо переходить в другое адресное пространство. обычно это еще более дорогостоящая операция, ибо обнуляется весь tlb, а в некоторых случаях и кэш (когда адресация в нем идет по виртуальным адресам) народ борется с любым overhead, пытаясь выжать максимум производительности (создают userspace threads с минимальным использованием ядра, тужаться над slab и так далее). и все это происходит на монолитах.sun перепахала свою sunos дабы сделать полноценное MP. однако она не очень торопица пересесть на microkernel. а те системы, которые поверх Mach - не выжили, btw. Mac OS X не в счет, ибо там никакой производительности не требуется. Опять же, кто сказал, что будущее за ней? кстати, а ваш application сможет нормально продолжить работу, если упадет одна из подсистем, на которую он завязан. например, vfs? можно, конечно, поднять ее снова. но уж так ли это сильно отличается от monolith reboot ? и так ли часто на production вы ставите то, что не очень нужно? PS. а таненбаум - это Ульянов от software design. красиво стелет, но вот minix 'по-уму' не смог >>>>> Терехов Геннадий (ТГ) writes: ТГ> Вон, LT в своей книжке (там где он приводит аргументы в защиту ТГ> монолита) пишет что, мол, сложность организации взаимодействия ТГ> между более простыми частями сведет на нет их простоту... Больше ТГ> аргументов там нет. Hо это с точки зрения программиста (сложнее ТГ> написать), но если такую систему правильно сделать она, имхо, ТГ> будет надежней системы с монолитным ядром. Да и сам LT там же (в ТГ> ответном письме к Танненбауму) признает что микроядро ТГ> потенциально лучше. И если бы на момент создания им ядра Линукса ТГ> было бы готово ядро GNU, он бы этим не занимался. Да и недостатки ТГ> реализации микроядра в minix, это проблемы minix а не микроядра. ТГ> Геннадий -- пора --- ifmail v.2.15dev5 * Origin: HOME (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/7590aacb7e2b.html, оценка из 5, голосов 10
|