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


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

> >> Напоминаю: мы обсуждали нашу ситуацию - когда исходников драйверов нет, поэтому они все непатченные. И сидят они в r3 - потому что в r0 только микроядро (так ведь?).
> >
> > Я вообще-то предполагал, что патченные -- например, если добыть .obj-и и их дизассемблировать. Тогда можно к дизассемблированному коду применить "патчилку" -- т.е., afterburner.
>
> Вообще-то ты выдвинул идею о запуске непатченных драйверов (через раздачу прав на доступ к портам).

Я? Я про непатченные и не говорил. Значит, ты что-то не так понял.

> А если драйверы дизассемблированы, то зачем вообще нужен виртуализатор?
>

Дизассемблированы они как раз для обработки Afterburner'ом. Ему для обработки требуются тексты ядра ОС и драйверов на ассемблере. Не для того, чтобы их "хакать" и что-то там свое вставлять, а именно для автоматической пре-виртуализации. Это можно сделать (почти) автоматически (на данный момент разработчики Afterburner кое-что вручнуют патчат в сорцах Linux, а кое-что автоматически "пре-процессированием" ассемблерных исходников; потом они планируют это перевести в полностью автоматический режим).

> Логичнее слегка модифицировать эти тексты и откомпилировать их в 32-разрядные драйверы.

"Слегка" имхо, не получится, я так думаю, там кардинально все переписывать придется (если в 32 бит). Там и API (32-разрядный -- KEE, или какой он там будет) совсем другой будет, абсолютно не такой как 16-битный. Структура может быть совсем другая. Имея только дизассемблированные .obj, наверное, это будет сделать очень трудно -- а я говорю просто об автоматической или полуавтоматической обработке.

> > Вообще, я как раз считал, что драйверы _патченные_ afterburner'ом. Если не патчить, а использовать драйверы в неизменном виде, то мне уже подсказали, что для этого уже существуют некие технологии Intel и Microsoft для запуска windows-драйверов внутри VM -- может быть, их можно адаптировать для нашего случая?
>
> Насколько я помню ту "подсказку", там говорилось о том, что Микрософт разрабатывает свою технологию, аналогичную afterburner. Соответственно, применять они её будут только для драйверов Windows.
> Нашей проблеме (драйверы OS/2) оно поможет не больше, чем afterburner.
>

Там не говорилось, что аналогичную Afterburner -- как я понял, у микрософта сорцы драйверов не требуются. И что только для драйверов windows -- тоже не говорилось. Я имею в виду -- если попробовать сделать по аналогии.

> > Если мы не сможем ничего патчить, то технология виртуализации имхо, должна быть совершенно другая, чем afterburner.
>
> А тебе в одной из рассылок так и сказали: для того, что ты хочешь, требуется "гораздо более тяжёлая система виртуализации".

Ну не "гораздо" -- такого слова там не прозвучало. Сказали, что скорее всего, придется еще и виртуализовать флаг прерываний (чего проект виртуализации L4Ka не делает). И вроде даже, этого может быть достаточно (как я понял). А может и не достаточно. Но по крайней мере, никто не говорит, что виртуализация должна быть настолько навороченной, что надо эмулировать все, вплоть до инструкций процессора (как в QEMU).-

Mon 25 Jun 2007 17:24 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.