Perbedaan Kunci – Linker vs Loader
Program komputer digunakan untuk memberikan instruksi ke komputer. Itu ditulis menggunakan bahasa pemrograman tertentu. Bahasa pemrograman seperti C, Java adalah bahasa pemrograman tingkat tinggi dan dapat dimengerti oleh manusia tetapi tidak oleh komputer. Oleh karena itu, program tingkat tinggi diubah menjadi bahasa mesin menggunakan penerjemah bahasa. Sebuah program yang ditulis menggunakan bahasa tingkat tinggi adalah kode sumber. Setelah konversi, kode yang diterjemahkan disebut kode objek. Linker dan loader adalah dua program perangkat lunak yang digunakan untuk eksekusi program. Artikel ini membahas perbedaan antara Linker dan Loader. Linker adalah perangkat lunak yang menghubungkan kode objek dengan file tambahan seperti file header dan membuat file yang dapat dieksekusi dengan ekstensi.exe. Loader adalah perangkat lunak sistem yang memuat file yang dapat dieksekusi yang dihasilkan oleh linker ke memori utama. Itulah perbedaan utama antara Linker dan Loader.
Apa itu Linker?
Program komputer adalah sekumpulan instruksi yang diberikan kepada komputer untuk melakukan tugas tertentu. Sebuah program komputer dapat ditulis dengan menggunakan bahasa pemrograman. Sebagian besar bahasa pemrograman adalah pemrograman tingkat tinggi. Mereka mudah dimengerti dan dibaca oleh programmer. Bahasa-bahasa tersebut mengikuti sintaks yang mirip dengan bahasa Inggris. Beberapa contoh bahasa tingkat tinggi adalah Java, C, dan Python. Program yang ditulis menggunakan bahasa pemrograman tingkat tinggi dikenal sebagai kode sumber, file sumber, atau program sumber. Ekstensi kode sumber tergantung pada bahasa yang digunakan untuk mengembangkannya. Jika kode sumber ditulis dalam C++, maka ekstensi filenya adalah.cpp. Jika kode sumber ditulis dengan Python, ekstensinya adalah.py.
Bahkan kode sumbernya dapat dimengerti oleh programmer; tidak dapat dimengerti oleh komputer. Oleh karena itu, kode sumber harus diubah menjadi format yang dapat dimengerti mesin menggunakan penerjemah bahasa. Itu bisa berupa kompiler atau juru bahasa. Kode yang diterjemahkan dikenal sebagai kode objek. Kode objek dalam bahasa mesin. Ini terdiri dari nol dan sekali. Komputer dapat langsung memahami kode objek. Ini memiliki ekstensi.obj. Jika ada kode sumber sebagai Test.c, ia melewati kompiler dan kode yang dikonversi menjadi Test.obj.
Linker adalah perangkat lunak yang menghubungkan kode objek dengan file tambahan seperti file header dan membuat file yang dapat dieksekusi dengan ekstensi.exe. Program mungkin telah menggunakan fungsi bawaan. Fungsionalitas untuk fungsi bawaan tersebut ada di file header. Menurut contoh yang dijelaskan di atas, kode objek yang Test.obj ditambahkan dengan file header yang diperlukan menggunakan Linker. Itu membuat file baru yang dikenal bernama Test.exe. Ini adalah file yang dapat dieksekusi. Oleh karena itu, dapat dieksekusi oleh komputer.
Apa itu Loader?
Program yang harus dijalankan harus ditempatkan di memori. Linker menautkan kode objek dan file header dan menampilkan file yang dapat dieksekusi. Loader adalah perangkat lunak sistem yang memuat file yang dapat dieksekusi yang dihasilkan oleh linker ke memori utama. Ini mengalokasikan ruang memori ke modul yang dapat dieksekusi di memori utama. Oleh karena itu, loader adalah bagian dari sistem operasi yang bertanggung jawab untuk memuat program dan perpustakaan.
Gambar 01: Urutan di mana Kode Sumber dimuat ke Memori
Memuat program melibatkan beberapa langkah. Ini melibatkan membaca isi file yang dapat dieksekusi yang berisi instruksi program ke dalam memori dan juga untuk melakukan tugas persiapan yang diperlukan untuk menjalankan file yang dapat dieksekusi. Setelah pemuatan selesai, sistem operasi memulai program dengan meneruskan kontrol ke kode program yang dimuat. Sistem komputer khusus seperti sistem Tertanam umumnya tidak memiliki pemuat. Kode dieksekusi langsung oleh ROM.
Apa Hubungan Antara Linker dan Loader?
Output dari Linker masuk ke Loader
Apa Perbedaan Antara Linker dan Loader?
Linker vs Loader |
|
Linker adalah perangkat lunak yang menghubungkan kode objek dengan file tambahan seperti file header dan membuat file yang dapat dieksekusi dengan ekstensi.exe. | Pemuat adalah perangkat lunak sistem yang memuat file yang dapat dieksekusi yang dihasilkan oleh tautan ke memori utama. |
Masukan | |
Linker mengambil output dari penerjemah bahasa, yang merupakan kode objek. | Pemuat mengambil output dari tautan, yang merupakan file yang dapat dieksekusi. |
Fungsionalitas | |
Linker menautkan kode objek dan file header dan mengeluarkan file yang dapat dieksekusi. | Pemuat memuat file yang dapat dieksekusi yang diperoleh dari tautan ke memori utama. |
Ringkasan – Linker vs Loader
Linker dan Loader adalah dua komponen perangkat lunak yang terkait dengan eksekusi program. Artikel ini membahas perbedaan antara Linker dan Loader. Linker adalah perangkat lunak yang menghubungkan kode objek dengan file tambahan seperti file header dan membuat file yang dapat dieksekusi dengan ekstensi.exe. Loader adalah perangkat lunak sistem yang memuat file yang dapat dieksekusi yang dihasilkan oleh linker ke memori utama. Itulah perbedaan antara Linker dan Loader.