Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Поняття секції у PE-файлі. Навести приклади відомих Вам секцій




Що містіть MZ - заголовок у PE-файлах.

Загальна структура PE-файлів.

Portable Executable — (PE, произносится как [по́тэбл экзэкью́тэбл] — переносимый исполняемый) — формат исполняемых файлов, объектного кода и динамических библиотек.

Формат PE-файлов организован в виде линейного потока данных. Он начинается с заголовка MS-DOS( занимает первые 64 байта PE файла ), программы реального режима, и сигнатуры PE файла. Далее следуют заголовок PE-файла и опциональный заголовок. После них идут заголовки всех сегментов, за которыми следуют тела этих сегментов. И ближе к концу файла расположены различные области данных, включая информацию о переадресации, таблицу символов, информацию о номерах строк и данные в таблице строк.

 

18. Призначення та зміст STUB-програми.

Программа Реального режима - это программа, запускаемая MS-DOS после загрузки PE -файла. Эта же программа запускается и для обычных исполнимых файлов MS-DOS. Для операционных систем Windows, OS/2 и т.п. сюда помещается маленькая программа, запускаемая вместо настоящего приложения при попытке его запуска из-под MS-DOS. Программа обычно печатает строку текста примерно такого содержания: "This program requires Microsoft Windows v4.0 or greater." ("Эта программа требует Microsoft Windows v4.0 или позднее")
Такая программа называется STUB -программой, ее роль по умолчанию выполняет файл WINSTUB.EXE. Также пользователь может создать свою собственную STUB- программу.

У виконуваному файлі PE-формату містяться дві частини, які розраховані на використання їх у різних операційних системах. На початку виконуваного файла PE-формату розміщена інформація, яка відповідає виконуваному файлу, поданому в MZ-форматі (в перших двох байтах тут містяться ASCII-коди символів 'M' і 'Z', а саме 4dh і 5ah - буква 'h' вказує на 16-й код числа). Отже, ця частина орієнтована на використання завантажувача MS-DOS.

За масивом структур, яким закінчується додатковий заголовок PE-файла, починається таблиця секцій. Слід мати на увазі, що все те, що входить у програмний модуль (його смислова частина) в PE-файлі зберігається в областях, які іменують секціями (аналог - сегмент у файлі MZ-формату)

За таблицею секцій іде основна частина PE-файла - розділ секцій. Далі перелічені секції, які створюють компілятори фірми Microsoft. За допомогою назв і вмісту секцій можна виконати інтерпретацію даних, що в них знаходяться. Прикладення Windows може включати такі секції [13]:

. text - секція містить виконуваний код. Оскільки у 32-розрядному режимі адресації використовується суцільна модель пам'яті, то вміст секції.text усіх об'єктних файлів, що подаються на вхід компонувальника, збирається в одній секції.text виконуваного файла PE-формату;

. bss - секція містить всі неініціалізовані дані із секцій.bss об'єктних файлів, що компонуються, включаючи всі змінні, які оголошені як статичні в межах функцій або вихідного модуля;

. rdata - секція містить дані, які доступні тільки для читання - літеральні рядки, константи і налагоджувальну інформацію;

. data - секція містить ініціалізовані і глобальні змінні (крім динамічних локальних змінних, які розміщуються в стеку). В основному це ініціалізовані і глобальні дані прикладення, зібрані із всіх секцій.data об'єктних файлів, що компонуються;

. rsrc - секція містить інформацію про ресурси прикладення. Вона починається з каталогу ресурсу, і її дані структуровані в дерево ресурсів;

. edata - секція містить дані про функції прикладення, що експортуються, або dll-бібліотеки. На початку секції розміщений каталог для отримання доступу до інформації про функції, що експортуються;

. idata - секція містить дані про функції, що імпортує прикладення;

. debug - секція містить налагоджувальну інформацію. Формат PE-файла також підтримує роботу з окремим файлом налагодження (звичайно має розширення.dbg), в якому збирається вся налагоджувальна інформація.




Поделиться с друзьями:


Дата добавления: 2015-05-26; Просмотров: 496; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.