Re[2]: Tanenbaum-Torvalds Debate: Part II
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 17.05.06 15:26
Оценка: +1
Здравствуйте, iZEN, Вы писали:

ZEN>Основным аргументом Линуса против Таненбаума, как известно, было высказвание об усложнении связей между микроядром и подсистемами/драйверами, из-за чего страдала производительность. Так что на тот момент (1991-92гг.) было лучше делать системы моноядерными в пользу практичности, простоты и быстродействия. Ведь в те времена преобладали в основном машины с процессорами i386 и i486 и объёмом памяти не больше 4МБ.


Имхо, по поводу практичности и быстродействия довольно спорное утверждение, т.к. в тогда уже существовала микро-ядерная ОС QNX. И производительность у нее была вполне достаточной, тем более, что это Real-Time OS.

Насколько я помню, как раз в Real-Time OS микроядро и старались применять, т.к. только этот подход давал возможности для обеспечения надежности и предсказуемости. В частности, вынесение драйверов из ядра позволяло прерывать работу драйвера при более приоритетным прерывания, которое адресовалось real-time процессу. Еще одним фактором в пользу микроядерности в Real-Time OS было то, что OS сама по себе состояла только из минимального набора модулей (главным из которых был диспетчер). А остальные части (такие как GUI, shell-ы, файловая система) были опциональными и могли приобретаться только в случае их необходимости (для многих встраиваемых приложений они были вообще не нужны).

Так что уже в то время были реальные доказательства возможности построения работоспособных систем на базе микроядра. Другое дело, что подобное занятие было более трудоемким. Будучи прагматиком Линус выбрал более простой путь.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.