|
||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Формат исполняемых PE-файлов
|
|||||||||||||||||||||||||||||||||||||||||||||||||||
| Base | Size or Type | Name Of field | Brief description |
| 00h | DWord | Page RVA | Указатель на страницу применения настроек перемещений |
| 04h | DWord | Block Size | Размер блока настроек (с заголовком) |
| 08h | Word | TypeOffset Record | Массив записей настроек, их переменное количество |
| Total Structure size | ... | таблица имеет переменный размер |
| 15 . . . 12 Type | 11 . . . 0 Offset | Биты слова, Type указывает на тип настройки, а Offset на ее смещение внутри 4-килобайтового блока применимости настроек. |
| 0h - | адрес абсолютный и никаких изменений производить не требуется. |
| 1h - | добавить старшие 16 битов Дельты к 16 битовому полю находящемуся по смещению Offset. 16 битовое поле представляет старшие биты 32-битового слова. |
| 2h - | добавить младшие 16 битов Дельты по смещению Offset. 16-битовое поле представляет младшую половину 32-битового слова. Данная запись настройки присутствует только на RISC машине когда Object align не является по умолчанию 64К. |
| 3h - | прибавляет 32-битовое Дельта к 32-битовому значению. |
| 4h - | настройка требует полного 32-битового значения. Старшие 16-бит берутся по адресу Offset, а младшие в следующем элементе TypeOffset Все это объединяется в знаковую переменную, затем добавляется 32-битовое дельта и DWord 8000h. Старшие 16 бит получившегося значения сохраняются по адресу Offset в 16-битовом поле. |
| 5h - | ? что-то связанное с MIPS. |
В реальной жизни я сталкивался только с типами 0 и 3, все остальные на интелах очевидно не столь юзабельны, интересное поле для экспериментов. Все прочие типы перемещений зарезервированы Microsoft.
|
Опрос |
|
|
|
Конкурсы
|
|
|
| Реклама |
|
|
Web дизайн: Бурлаков Михаил
Web программирование: Бурлаков Михаил