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


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

> >>> Я? Я про непатченные и не говорил. Значит, ты что-то не так понял.
> >>
> >> А как ещё можно было понять твой ответ вот здесь: m034244.html ? Ты там писал именно о запуске немодифицированных драйверов.
> >>
> >
> > Вот это?:
> >
> >> Вкомпилированы в ядро, а также могут быть загружаемыми модулями. Да, по идее они, наверное, патчатся вместе с ядром. Но смущает именно утверждение, что драйвера немодифицированные. А может быть правда? Драйвер же не напрямую работает с ресурсами, а в основном через хелперы ядра? То есть, Хелперы в ядре, и они патчатся, а драйвер их только вызывает?
>
> Следующий за этим абзац:
> >>(потому что я не представляю, как запущенный в r3 немодифицированный драйвер сможет достучаться до портов). Если это так, то против OS/2 оно бессильно, и вся затея рушится.
> >
> >до портов он как раз достучаться может, то есть, может выполнять команды типа in и out. Для этого есть адресное пространство портов, которое в виде специальных i/o flexpages (виртуальные страницы памяти) отображается в адресное пространство портов ring3-драйвера. То есть, драйвер получает порты в виде flexpages от своего пейджера. После этого он может давать команды IN и OUT. Если приложение обращается к порту, к которому у него нет доступа, возникает i/o page fault (на самом деле, просто исключение процессора при отсутствии привилегий на ввод/вывод) Ядро (L4) перехватывает этот exception и направляет IPC-сообщение пейджеру приложения. Пейджер может решить отобразить i/o flexpages в адресное пространство приложения, и тогда доступ к порту появится, и операция in/out будет успешной.
>

"Немодифицированный" и "непатченный" -- это разные вещи. В случае проекта Afterburner исходники линуксовых драйверов не модифицируются (они остаются неизменными), но патчатся вставкой дополнительных NOP'ов и дополнительных данных в специальную секцию кода.

> >>
> >
> > "Intel и Microsoft используют подход" (не написано "похожий или тот же самый подход")
>
> Какой? Без прилагательного это предложение теряет смысл. С учётом первого предложения, это "похожий" или "такой же".
>

Там написано "the approach", без прилагательного. Какой именно подход, не каонкретизируется.

> >>> Я имею в виду -- если попробовать сделать по аналогии.
> >>
> >> С чем? Интел и Микрософт раскрыли свои разработки?
> >
> > я про это ничего не знаю
>
> Тогда в чём заключается "по аналогии"?

Возможно, про эти разработки где-то написано. Тогдам можно заимствовать некоторые идеи.

Wed 27 Jun 2007 07:43 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.