Format Windows Portable Executable memiliki nuansa kecilnya sendiri, jadi inilah panduan singkat tentang cara kerjanya.
Windows Portable Executable (PE) adalah format file asli Windows untuk file executable dan tipe file biner lainnya. Format file PE dirancang agar tidak bergantung pada platform, sehingga dapat digunakan di mesin Windows apa pun menjalankan versi sistem operasi dan arsitektur prosesor yang sama dengan file tersebut dikompilasi.
Jadi, mari kita membedah format file Windows PE, dan mempelajari tentang struktur dan komponen penyusunnya.
Apa itu File Eksekusi Portabel Windows?
Sebelum menjelajahi format Windows Portable Executable, penting untuk memperjelas dasar-dasarnya. Mari mundur selangkah dan pelajari tentang konsep dasar Windows PE—COFF.
Saat Anda mengompilasi kode sumber ke suatu program, kompiler menghasilkan file objek (.obj). File objek ini berisi instruksi untuk komputer dalam format biner.
COFF atau Common Object File Format adalah seperangkat konvensi standar untuk merepresentasikan instruksi biner. COFF membantu menjaga kompatibilitas lintas platform karena semua format file COFF mengikuti seperangkat aturan dan konvensi yang sama untuk mengatur kode dan data. Meskipun COFF awalnya dikembangkan untuk digunakan pada sistem *NIX, sekarang COFF ada di mana-mana di semua platform.
Format file Windows Portable Executable (PE) adalah modifikasi dari COFF dan telah dikembangkan untuk digunakan secara eksklusif Sistem Windows 32-bit dan 64-bit. Tidak seperti COFF, yang menyediakan format standar untuk file objek, Windows PE menyediakan format standar untuk file executable dan library.
Ini berisi bagian dan header yang memberikan informasi tentang file yang dapat dieksekusi yang dimaksud dan membantu pemuat sistem mengelola data yang terkait dengan file yang dapat dieksekusi. Header dalam file PE membantu pemuat sistem memetakan file ke memori, menyelesaikan dependensi seperti ekspor/impor API, mengelola sumber daya, dan menyiapkan file untuk dieksekusi.
Linux juga memiliki iterasi COFF sendiri; itu disebut File Tautan yang Dapat Dieksekusi atau singkatnya, biner ELF. Anda dapat memeriksa apakah suatu file adalah ELF atau tidak dengan menjalankan perintah berkas di Linux dengan nama file sebagai argumen pertama.
Struktur Windows Portable Executable
Format file Portable Executable terdiri dari beberapa komponen, masing-masing dengan tujuan tertentu. Komponen-komponen ini meliputi:
- Header bagian, yang menjelaskan tata letak dan karakteristik setiap bagian file Bagian itu sendiri, yang berisi kode, data, dan sumber daya yang dapat dieksekusi.
- Header PE, yang memberikan informasi tentang keseluruhan struktur dan persyaratan file.
- Header DOS, yang menyertakan program kecil yang berjalan saat file dijalankan pada sistem DOS.
- Dan terakhir, header bagian PE, yang menjelaskan lokasi dan atribut setiap bagian di dalam file.
Secara keseluruhan, komponen-komponen ini bekerja sama untuk membuat format terstruktur yang memungkinkan sistem operasi memuat, menjalankan, dan mengelola kode yang dapat dieksekusi yang terkandung dalam file dengan benar. Mari pelajari dengan tepat apa yang dilakukan setiap komponen.
Kepala DOS
Bagian pertama dari file PE disebut DOS Header. Sejumlah kecil kode yang dapat dieksekusi disimpan di header DOS yang juga dapat dijalankan di mesin DOS.
Kode ini juga disebut rintisan MS-DOS dan digunakan untuk melempar pesan kesalahan pada sistem yang tidak mendukung file PE.
Tajuk PE
Header Portable Executable memberikan informasi tentang file yang dapat dieksekusi, seperti seberapa besar file, di mana bagian-bagian yang berbeda berada, dan sumber daya apa yang diperlukan untuk dieksekusi. Header PE juga memiliki informasi tentang jenis yang dapat dieksekusi, apakah itu a File Windows .DLL atau .EXE.
Header Bagian
Bagian diterapkan untuk mengatur banyak komponen yang dapat dieksekusi seperti kode, data, dan sumber daya seperti string teks, gambar, dll. Header bagian menyertakan informasi mengenai ukuran dan lokasi setiap bagian, serta bendera yang terkait.
Bendera yang terkait dengan setiap header bagian dapat menunjukkan berbagai atribut bagian, seperti apakah dapat dijalankan, ditulis, atau dibaca. Bendera ini membantu sistem operasi untuk memuat dan mengelola konten setiap bagian dengan benar selama eksekusi program.
Bagian
Bagian itu sendiri terdiri dari kode nyata, data, dan sumber daya yang dapat dieksekusi. Setiap segmen disejajarkan dengan batas memori tertentu dan memiliki kumpulan atributnya sendiri yang memengaruhi cara sistem operasi menanganinya.
Sekarang Anda Tahu Semua Tentang Format File Windows Portable Executable
Windows Portable Executable adalah format file yang kuat dan serbaguna yang digunakan untuk menghasilkan berbagai macam aplikasi Windows dan komponen sistem. Dengan memahami struktur format file PE, pengembang dapat membuat aplikasi efisien yang memanfaatkan karakteristik khas Windows.
Selain mendapatkan pemahaman mendalam tentang platform yang akan dijalankan aplikasi Anda, dengan mengikuti beberapa barang standar praktik pengkodean, Anda dapat memaksimalkan kualitas aplikasi terlepas dari platform yang dijalankannya pada.