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


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

> >
> > Не забывай, что драйверы в твоём проекте грузит OS/2, а привилегии сегментам раздаёт микроядро, ничего про OS/2 не знающее. Оно же понятия не имеет, что вот в этот вот кусочек памяти находится драйвер, которому к портам лазить нужно.
> >
>
> Не самО микроядро, а некий сервер (уже получивший эти ресурсы ранее у микроядра и сервера sigma0). Надо придумать, как за саму OS/2 сделать запрос этих портов и прочих ресурсов у сервера-менеджера ресурсов. (OS/2 не знает, что надо запросить эти ресурсы, но (в случае L4Linux) linux-то как-то знает, что ему надо запросить ресурсы, и запрашивает. Я думаю, аналогично линуксу можно сделать и с OS/2)
>

То есть (в случае линукса), есть паравиртуализованный Linux, он про L4 ничего не знает. И еще есть модуль afterburn-wedge, специфичный для L4 и независимый от ОС. (который выполняет роль монитора виртуальной машины) То есть, Linux не знает про L4, а wedge не знает про ОС. При загрузке ОС "virtualization-sensitive" инструкция, окруженная NOP-ами, патчится модулем wedge так, что вместо просто исполнения инструкции (как на голом железе), вызываются функции внутри wedge. Как я понимаю, именно wedge за Linux запрашивает у marzipan ресурсы (порты, IRQ, память и т.п.), кроме того, сам Linux ничего не знает про пейджеры. Но, Linux работает через вызовы wedge, который в свою очередь, и работает с пейджером и знает, что у него надо запросить память или порты.

Точно так же, как это сделано с Linux, можно сделать с ядром OS/2. (Но пока остается неясным, можно ли afterburner доточить так, чтобы он работал со смешанным 16-bit/32-bit кодом).

WBR,
Валерий


Fri 22 Jun 2007 11:20 Mozilla/5.0 (OS/2; U; Warp 4.5; en-US; rv:1.7.10) 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.