Den bärbara körbar fil -format , eller PE , används för Windows körbara filer och dynamiska länkbibliotek , eller DLL-filer . Varje PE -filen har en rubrik som innehåller egenskaper om filen och hårdvara inställningar kompatibilitet . PE- header har flera egenskaper som skiljer det som en bärbar filformat . Layout
PE filhuvudet innehåller instruktioner som informerar operativsystemet om hur man läser in delar av filen i minnet . Detta görs med hjälp av den dynamiska länkaren , som gör viktiga beslut om var att sätta vilken typ av minne . Till exempel är programkod placeras i läsminne sektioner , medan programdata placeras i läs-skrivminnet sektioner. Det finns ett antal av
Anpassning
flaggor som kan ställas in i PE- header som kan skräddarsy en fil för att köra på en viss typ av hårdvara . Till exempel kan du ställa in " endianess " av data . Detta avser vilken ände av en databyte innehar den mest signifikanta biten och vilken ände håller den minst signifikanta biten . I huvudsak , berättar den datorn om du vill läsa data från höger till vänster eller vice versa . Dessa hårdvara - specifika detaljer tillåter PE filer som ska anpassas för att köras på ett antal olika dataarkitekturer .
. Netto Extensions
Microsoft . NET Framework förlängde PE -format för att ge stöd för . Net runtime . Den . Net Common Language Runtime , eller CLR , är en miljö som körs . NET-applikationer . När ett PE -fil med . Net förlängningar läses av operativsystemet , händer det över resten av verkställigheten till CLR . Filen exekveras sedan i CLR miljön , snarare än det traditionella operativsystemet miljö .
Kompatibel med flera operativsystem
PE header formatet är kompatibelt med flera operativsystem system. På Linux -operativsystem , kan programmet Vin läsa och köra PE header-filer . Dessutom använder open - source version av . NET Framework Mono , som kan köras på andra operativsystem än Windows , samma PE filer som Windows och är därmed förenligt .