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


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

>> Ты самого себя внимательно прочитал? Ты же пишешь о том, что драйвер из r3 лезет к порту, вызывая этим exception, а пейджер по его результатам устанавливает нужные права доступа. Где здесь Afterburner и nop-ы?
>
> При чтении из порта может возникнуть exception, если порт еще не отображен в адресное пространство портов задачи. Это верно для любой L4 задачи, лазающей к портам. Это штатный способ контроля доступа к портам. К Afterburner это имеет самое прямое отношение. В случае Afterburner как раз, некоторые инстркукции "разреживаются" NOP'ами, чтобы во время загрузки на это место вставить вызовы wedge. Кроме того, привилегированные инструкции вызывают TRAP'ы, который обрабатывает wedge. Здесь нет никакого противоречия.

Разгребание исключения после попытки полезть в порт и наделение (по итогам этого разребания) соответствующего кода правом лазить к этому порту - это один подход (не требующий модификаций кода драйвера).
Замена инструкций обращения к порту на вызовы wedge - другой, требующий модификации кода ("разреживания").
И эти два подхода - взаимно-исключающие.
Кстати, задумайся - как (когда) опасные инструкции заменяются на вызовы wedge. Делать это после трапа, как я понимаю, нельзя - не все такие инструкции вызывают трап. При загрузке файла в память? Но для этого нужно, чтобы тот код, который файлы в память грузит, был знаком с внутренним форматом исполнимого файла. Как это сочетается с тем, что технология не зависит от того, что виртуализуется?

>> 2. Вспомни, в каких случаях употребляется артикль "the".
>
> Я знаю, что "a" означает абстрактный экземпляр предмета, а "the" очначает конкретный его экземпляр. "The approach" -- какойй-то конкретный подход. Но какой, из контекста не ясно (не обязательно аналогичный afterburner'у).

"A" употребляется только при первом упоминании предмета. Во всех последующих - "the". И наоборот: "the" без предществующего "a" не употребляется (за редкими исключениями). Таким образом, наличие в предложении "the approach" означает, что речь идёт о том "approach", о котором речь шла до этого. А до этого говорилось только о принципах работы afterburner, так что вывод получается автоматически.

Thu 28 Jun 2007 20:15 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.