RU/2: Форум. Общение пользователей и разработчиков OS/2 (eCS). : А вот вопрос, однако...


Список сообщений | Написать новое | Ответить на сообщение | Домой Поиск:
Предыдущее сообщение | Следующее сообщение
From : Юрий Пронякин
To : valerius
Subj : А вот вопрос, однако...

> Все же, слово "Линукс" здесь ни при чем.

Я же сказал - оно здесь условно.

> Созданию своего ядра это помогает очевидным образом. -- Я предлагаю запускать старое и новое ядро в параллельных виртуальных машинах. Одна из них основная, другая вспомогательная.

Это понятно.

> Новое ядро работает в основной VM, в которой работаю все приложения; старое -- во вспомогательной. На старом ядре запускаются старые драйвера; новое ядро их использует, делая запросы к приложению-мапперу, запущенному в VM со старым ядром.

А вот это не совсем понятно. Что это за приложение такое, способное передавать запросы абсолютно любому драйверу OS/2? Унифицированного интерфейса драйверов в OS/2 нет - значит, в этот маппер придётся закладывать поддержку только избранных драйверов, и каждого из них - персонально. Но тогда размер этого маппера гросит стать сопоставимым с размером самого ядра. Мило, ничего не скажешь.

> Созданию нового ядра это помогает в том смысле, что пока есть недостаток новых родных драйверов для нового ядра, можно старые драйвера запускать в VM со старым ядром. То есть -- пока нет новых драйверов, это позволяет новому ядру быть не в вакууме, а использоваться, пока пишутся новые драйвера. Это позволяет тестировать новое ядро и отлавливать в нем ошибки, даже если для него пока не хватает драйверов. То есть, переход к новому ядру будет плавным.

Стоп. Если я правильно понимаю, новое ядро предполагается полностью 32-разрядным, с чисто 32-разрядными приложениями. А виртуализированная OS/2 нужна для использования 16-разрядных драйверов и запуска нынешних программ. Но откуда для этих драйверов и этих приложений возьмутся 16-разрядные кодовые сегменты? Ведь микроядро, монопольно ведающее раздачей памяти, их создавать не умеет. А если такую возможность туда добавить, то это: а) противоречит идее использовать микроядро в оригинальном виде, и б) поднимает вопрос: зачем тогда виртуальная OS/2 - ведь драйверы уже можно использовать и напрямую?

> ОС-клиент общается с приложением-маппером, запущенном внутри DD OS, при помощи IPC-сообщений микроядра. (По сути, это удаленный вызов процедуры)

Как я уже сказал, такой маппер, судя по всему, будет чрезвычайно раздутым, а на его создание уйдёт уйма времени. Делать это для драйверов Linux или Windows - понятно и оправданно. Но для идущих на выброс драйверов OS/2???

> drivers.php -- Проект "Device Drivers" L4Ka. Там целый раздел про виртуализацию, можно почитать почти весь, если заинтересовало.

Как следует относиться к следующему их утверждению: "Our prototype's network performance is within 3--8% of a native Linux system"? "Типа шутка юмора"?

Tue 19 Jun 2007 00:24 Mozilla/5.0 (OS/2; U; Warp 4.5; ru-RU; rv:1.7.12) Gecko/2005




Programmed by Dmitri Maximovich, Dmitry I. Platonoff, Eugen Kuleshov.
25.09.99 (c) 1999, RU/2. All rights reserved.
Rewritten by Dmitry Ban. All rights ignored.