Виндовс Портабле Екецутабле формат има своје мале нијансе, па ево кратког водича о томе како функционишу.

Виндовс Портабле Екецутабле (ПЕ) је изворни формат Виндовс датотека за извршне датотеке и друге типове бинарних датотека. ПЕ формат датотеке је дизајниран да буде независан од платформе, тако да се може користити на било којој Виндовс машини покреће исту верзију оперативног система и архитектуру процесора за коју је датотека била саставио.

Дакле, хајде да анализирамо Виндовс ПЕ формат датотеке и научимо о његовој структури и саставним компонентама.

Шта је Виндовс преносива извршна датотека?

Пре него што истражите Виндовс Портабле Екецутабле формат, важно је да разјасните основе. Хајде да се вратимо корак уназад и научимо о основном концепту Виндовс ПЕ—ЦОФФ.

Када преведете изворни код у програм, компајлер генерише објектну датотеку (.обј). Ова објектна датотека садржи упутства за рачунар у бинарном формату.

ЦОФФ или Цоммон Објецт Филе Формат је стандардизовани скуп конвенција за представљање бинарних инструкција. ЦОФФ помаже у одржавању компатибилности међу платформама јер сви ЦОФФ формати датотека прате исти скуп правила и конвенција за организовање кода и података. Иако је ЦОФФ првобитно био развијен за употребу на *НИКС системима, сада је свеприсутан на свим платформама.

Формат датотеке Виндовс Портабле Екецутабле (ПЕ) је модификација ЦОФФ-а и развијен је да се користи искључиво на 32-битни и 64-битни Виндовс системи. За разлику од ЦОФФ-а, који обезбеђује стандардизовани формат за објектне датотеке, Виндовс ПЕ обезбеђује стандардизовани формат за извршне и библиотечке датотеке.

Садржи одељке и заглавља који пружају информације о извршном фајлу у питању и помаже учитавачу система да управља подацима који се односе на извршну датотеку. Заглавља у ПЕ датотеци помажу учитавачу система да мапира датотеку у меморију, разреши зависности као што су АПИ извоз/увоз, управља ресурсима и припреми датотеку за извршење.

Линук такође има сопствену итерацију ЦОФФ-а; зове се Екецутабле Линк Филе или укратко, ЕЛФ бинарни. Можете проверити да ли је датотека ЕЛФ или не тако што ћете покренути филе цомманд на Линук-у са именом датотеке као првим аргументом.

Структура Виндовс преносивог извршног фајла

Формат Портабле Екецутабле датотеке састоји се од неколико компоненти, од којих свака има одређену сврху. Ове компоненте укључују:

  • Заглавља секција, која описују изглед и карактеристике сваке секције датотеке. Саме секције, које садрже извршни код, податке и ресурсе.
  • ПЕ заглавље, које пружа информације о укупној структури датотеке и захтевима.
  • ДОС заглавље, које укључује мали програм који се покреће када се датотека извршава на ДОС систему.
  • И на крају, заглавља ПЕ одељка, која описују локацију и атрибуте сваког одељка унутар датотеке.

Све у свему, ове компоненте раде заједно како би креирале структурирани формат који омогућава оперативном систему да правилно учитава, извршава и управља извршним кодом садржаним у датотеци. Хајде да научимо шта тачно свака компонента ради.

ДОС Хеадер

Први део ПЕ датотеке назива се ДОС заглавље. Мала количина извршног кода је ускладиштена у ДОС заглављу које се такође може покренути на ДОС машини.

Овај код се такође назива МС-ДОС стуб и користи се за избацивање поруке о грешци на системима који не подржавају ПЕ датотеку.

ПЕ Хеадер

Заглавље Портабле Екецутабле даје информације о извршном фајлу, на пример, колика је датотека, где се налазе различити делови и који ресурси су потребни извршном фајлу. ПЕ заглавље такође садржи информације о типу извршне датотеке, било да је то а Виндовс .ДЛЛ датотека или .ЕКСЕ.

Заглавља секција

Секције се имплементирају да организују многе компоненте извршне датотеке као што су код, подаци и ресурси као што су текстуални низови, слике итд. Заглавља секција укључују информације о величини и локацији сваког одељка, као и све повезане ознаке.

Ознаке повезане са заглављем сваког одељка могу указивати на различите атрибуте секције, као што је да ли је извршна, за писање или читање. Ове заставице помажу оперативном систему да правилно учитава и управља садржајем сваке секције током извршавања програма.

Секције

Сами одељци садрже прави код, податке и ресурсе извршне датотеке. Сваки сегмент је поравнат са одређеном границом меморије и има сопствени скуп атрибута који утичу на то како оперативни систем њиме рукује.

Сада знате све о Виндовс Портабле извршном формату датотеке

Виндовс Портабле Екецутабле је робустан и свестран формат датотеке који се користи за производњу широког спектра Виндовс апликација и системских компоненти. Разумевањем структуре ПЕ формата датотеке, програмери могу да направе ефикасне апликације које искориштавају карактеристичне карактеристике Виндовс-а.

Осим што сте стекли дубинско разумевање платформе на којој ће ваша апликација радити, пратећи неколико стандардних добрих праксе кодирања, моћи ћете да максимизирате квалитет апликације без обзира на платформу коју покреће на.