RU/2: Форум. Общение пользователей и разработчиков OS/2 (eCS). : Ответить на сообщение
Имя:
e-mail:
FIDO:
Home page:
сохранить данные о вас
Тема:
> > > Но добавляются две проблемы: выбор ассемблера (синтаксис + побайтовое совпадение, если оно нужно) > > > > не совсем понял: побайтовое совпадение чего с чем? исходного и получившегося бинарника? -- это вроде не нужно. > > Если все immediate-операнды типа "mov ax, offset _foobar" до конца не разгаданы, а пристроить свои изменения в конец сегмента не терпится, то ассемблирование с совпадением _длин_ инструкций сильно облегчит жизнь. > > > Смысл в том, что при загрузке ядра монитор виртуальной машины патчит инструкции на месте свободного пространства из NOP'ов так, что туда вставляются вызовы этого монитора. Монитор имеет специальную версию для каждого гипервизора. То есть, ядро ОС работает через вызовы монитора VM, а тот, в свою очередь -- через механизмы гипервизора. (подробнее можно прочитать на упомянутой странице) > > > > Я чего подумал. -- А если эту штуку применить к осевому ядру? По идее, нужны сорцы. У оси их вроде бы, нет (правда, есть "утекшие" сорцы Мерлина...), но что если дизассемблировать? > > Смотря на сколько лет выбиты гранты... $-) На практике простая виртуализация с невмешивающимся монитором и дальнейшей интеграцией пробирки "сверху" через LAN решает задачу в 90% случаев. Я вот обнаружил, что моим пробиркам под Linux-хостом additions'ы уже совсем не нужны, и спокойно переселил Win2000 и OS/2 из VMware в QEMU. >
__, _, __, _,_ _, _
|_ / \ |_) | | |\/|
| \ / | \ | | | |
~ ~ ~ ~ `~' ~ ~
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.