| 1. |
What is portable executable |
|
Answer» All windows executable files and assemblies follow the Portable executable file formats. .NET PE file FORMAT consists of four parts:
All .NET assemblies are built over the PE file formats, that is used for all exes and dlls, which itself are built over the MS-DOS executable file formats. Most of PE files are split up into separate sections, where each section stores different TYPES of data. Like: .text stores all executable code, .rsrc store unmanaged resources, .debug stores debugging information, .data section stores the global variables..etc.,. A PE file has headers and sections that tell the dynamic linker about how to map file into memory. The task of the dynamic linker is to map each section of the memory and ASSIGN the correct permissions to the resulting regions, according to the instructions found in the headers In a .NET framework executable, the PE code section is having a stub that invokes the CLR virtual machine startup entry, _CorExeMain or _CorDllMain in mscoree.dll, which is much the same as in Visual Basic executables. The DEVELOPMENT on this platform intends to be binary compatible with Microsoft .NET, it uses the same PE format as the Microsoft implementation. |
|