= Сообщение: 6450 из 8279 ========================================= RU.LINUX = От : Alexey Vissarionov 2:5020/545 28 Nov 20 22:30:30 Кому : Eugene Muzychenko 28 Nov 20 22:30:30 Тема : Реальное время в Linux FGHI : area://RU.LINUX?msgid=2:5020/545+5fc2b023 На : area://RU.LINUX?msgid=2:5000/14+5fc28519 = Кодировка сообщения определена как: CP866 ================================== Ответ: area://RU.LINUX?msgid=2:5000/14+5fc3880b ============================================================================== Доброго времени суток, Eugene! 28 Nov 2020 18:01:36, ты -> мне:
AV>> Форточка - это единственная система с микроядром EM> Микроядро в форточке было только в самых ранних, экспериментальных, EM> версиях NT, которые в России видело лишь небольшое количество EM> энтузиастов. Подавляющее большинство (я в том числе) увидело NT, EM> начиная с версий 3.x, с классическим гибридным (монолитным модульным) EM> ядром. Это стык конца 80-х и самого начала 90-х.
Да? А вот в этих ваших интернетах пишут, что %windir/system32/ntoskrnl.exe работает в ring0, всякие драйверы в ring1, системные процессы в ring2, а пользовательские процессы в ring3... Неужели врут?
AV>> Все остальные (актуальные) ядра - монолитные: там есть только Ring0 AV>> и Ring3, соответствующие ядру (kernel) и пользовательскому окружению AV>> (userspace). EM> Это и есть виндовое ядро. :) Только в десятке к нему сбоку прикрутили EM> гипервизор, реального смысла в котором не видит никто, кроме юзеров, EM> ежедневно цепляющих новую малварь - он более-менее спасает от руткитов. EM> Всех остальных он "спасает" от возможности патчить ядро, за что среди EM> профессионалов его не любят.
Гипервизор есть в любом уважающем себя ядре. И не сбоку, а в основе защиты памяти. Пользователям иногда разрешают использовать его маленький кусочек, например при CONFIG_KVM=y
AV>> Да, сразу отвечу и на стандартный вопрос про модули: при их загрузке AV>> (man insmod) происходит не запуск через execve(), а именно загрузка AV>> в адресное пространство ядра и установка указателей на функции, AV>> содержащиеся в модуле. EM> Форточка загружает драйверы точно так же. Разница лишь в том, что EM> для форточного драйвера изначально предусмотрены протоколы, через EM> которые с ним работает система (простейшие для legacy и более EM> сложные - для PnP),
Насколько я пони мяу, именно поэтому они и работают в ring1. Что, кстати, доказывает микроядерность (как минимум формальную) этой вашей форточки :-)
EM> а в линуксе модуль, загрузившись, должен сам объяснить системе, EM> кто он такой есть, и что ему нужно.
Ядро само из него читает унифицированные структуры - он же в его адресном пространстве находится. Посмотри макросы module_init() и module_exit() в include/linux/module.h
EM> Hо вопрос-то остается: что плохого в наличии у ОС гарантированной EM> скорости реакции на события?
Что плохого в КПД 100% ? :-)
-- Alexey V. Vissarionov aka Gremlin from Kremlin gremlin ПРИ gremlin ТЧК ru; +vii-cmiii-ccxxix-lxxix-xlii
... Приручив собаку, человек потерял нюх, а освоив интернет - теряет мозг --- /bin/vi * Origin: ::1 (2:5020/545)