Apa itu Self-Relokasi?

Relokasi mandiri adalah sifat yang dimiliki oleh sejumlah kecil program komputer. Program-program ini dapat mengubah lokasinya di memori saat dijalankan. Kebanyakan program memiliki sedikit atau tidak ada kontrol atas pemrograman dasar mereka sendiri; alih-alih yang ditangani oleh program tingkat tinggi. Sistem ini dapat mengubah lokasinya dengan memindahkan programnya atau dengan membuat salinannya sendiri. Ketika salinan dibuat, lokasi eksekusi biasanya berubah ke program baru dan kode lama dibiarkan tidak aktif.

Wanita melakukan handstand dengan komputer

Dalam kebanyakan kasus, program komputer yang dieksekusi terletak di dua area secara bersamaan. Itu terletak di penyimpanan fisik komputer, seperti hard drive atau unit penyimpanan lainnya, dan di memori yang mudah menguap . Program dipindahkan ke memori yang mudah menguap pada saat eksekusi untuk mempercepat waktu akses dan membuatnya bekerja lebih cepat. Posisinya di kedua lokasi ini umumnya ditentukan oleh sistem operasi komputer.

Lokasi program ini disebut alamat. Alamat ini digunakan oleh sistem dan program lain untuk menemukan program dengan cepat saat dibutuhkan. Jika sebuah program dipecah dalam penyimpanan, itu akan beroperasi lebih lambat daripada jika semuanya bersama-sama; oleh karena itu, sebagian besar sistem mencoba menyimpan program yang lebih besar melalui alamat yang berurutan. Sekali lagi, pilihan untuk melakukan ini biasanya jatuh pada sistem operasi dan program tidak memiliki kendali langsung terhadapnya.

Ketika sebuah program menggunakan relokasi mandiri, ia memiliki kontrol yang lebih besar secara signifikan atas proses-proses ini daripada program biasa. Ia memiliki kemampuan untuk mengontrol alamat di mana ia dieksekusi. Saat sedang digunakan, program dapat memindahkan program totalnya dari lokasinya ke lokasi lain dalam memori komputer yang sama. Beberapa program hanya dapat mengubah salah satu dari dua alamat, sementara yang lain dapat mengubah keduanya.

Dengan sendirinya, relokasi sendiri adalah proses yang tidak biasa, tetapi tidak bermasalah. Bahaya sebenarnya datang ketika relokasi diri digunakan bersama dengan niat jahat. Adalah mungkin bagi sebuah program untuk melakukan banyak hal tak terduga ketika ia memiliki kendali atas dirinya sendiri. Itu dapat membuat banyak salinan fisik atau mudah menguap untuk menyumbat memori komputer. Ini dapat menyebabkan restart dan mungkin merupakan awal dari serangan boot.

Selain itu, program dapat membuat cadangan sendiri untuk mencegah penghapusannya. Jika sebuah program dengan relokasi mandiri dijalankan dan kemudian menyalin dirinya sendiri, program asli akan tetap ada meskipun tidak digunakan. Jika program tersebut berbahaya dan sistem mencoba untuk menghapusnya, program yang aktif dapat dengan mudah mengaktifkan kembali kode asli sebelum dihapus.

Related Posts