สารบัญ:
คำจำกัดความ - โปรแกรมการย้ายถิ่นฐานตนเองหมายถึงอะไร?
โปรแกรมเปลี่ยนตำแหน่งตัวเองเป็นโปรแกรมที่จะทำการย้ายคำสั่งที่ไวต่อที่อยู่ไปยังส่วนอื่น ๆ ของหน่วยความจำ โปรแกรมทำการโยกย้ายของตัวเองและไม่จำเป็นต้องมีการเชื่อมโยง การย้ายตัวเองใช้ในระบบปฏิบัติการแบ่งปันเวลาซึ่งที่อยู่โหลดของโปรแกรมอาจเปลี่ยนแปลงได้สำหรับการดำเนินการที่แตกต่างกัน
Techopedia อธิบายโปรแกรมการย้ายตัวเอง
โปรแกรมการเปลี่ยนตำแหน่งตัวเองจะเปลี่ยนแปลงตัวเองเพื่อดำเนินการจากตำแหน่งอื่นของหน่วยความจำ การย้ายตัวเองทำให้ไม่จำเป็นต้องมีหลายสำเนาของโปรแกรมบนดิสก์โดยที่แต่ละสำเนามีต้นกำเนิดโหลดแตกต่างกัน อย่างไรก็ตามโปรแกรมการเปลี่ยนตำแหน่งตัวเองไม่จำเป็นเมื่อคอมพิวเตอร์ใช้หน่วยความจำเสมือน
ในระหว่างกระบวนการย้ายโปรแกรมจะย้ายคำแนะนำที่ไวต่อที่อยู่ที่สำคัญซึ่งช่วยให้สามารถดำเนินการจากส่วนใด ๆ ของหน่วยความจำ ข้อกำหนดสำหรับกระบวนการขนย้ายมีดังนี้:
- ตารางของคำแนะนำที่ไวต่อที่อยู่ โปรแกรมต้องทราบที่มาที่แปลและที่อยู่เริ่มต้นการดำเนินการรวมทั้งที่อยู่ของคำแนะนำที่ไวต่อที่อยู่
- ตรรกะการเปลี่ยนตำแหน่งซึ่งเป็นรหัสที่ดำเนินการกระบวนการย้าย
ฟังก์ชั่นสองฟังก์ชั่นนั้นสร้างขึ้นในโปรแกรม ที่อยู่เริ่มต้นของรหัสการเปลี่ยนตำแหน่งมักจะระบุไว้เป็นที่อยู่เริ่มต้นการดำเนินการของโปรแกรม เมื่อโหลดโปรแกรมลงในหน่วยความจำเพื่อดำเนินการโลจิคัลการเปลี่ยนตำแหน่งจะควบคุมและดำเนินการย้ายตำแหน่งใหม่โดยใช้ที่อยู่โหลดและข้อมูลเกี่ยวกับคำแนะนำที่ไวต่อที่อยู่
กระบวนการย้ายตัวเองอาจเป็นแบบคงที่หรือแบบไดนามิก การดำเนินการย้ายแบบคงที่จะดำเนินการก่อนที่โปรแกรมจะถูกดำเนินการในขณะที่การย้ายแบบไดนามิกจะดำเนินการในระหว่างการดำเนินการโปรแกรม การย้ายแบบไดนามิกอาจระงับการดำเนินการของโปรแกรมก่อนและทำการย้ายใหม่หรือใช้การลงทะเบียนการย้ายซ้ำ
โปรแกรมการย้ายตัวเองมีประสิทธิภาพน้อยกว่าเมื่อเทียบกับโปรแกรมที่โหลดซ้ำได้
นอกเหนือจากโปรแกรมการย้ายถิ่นฐานตัวเองที่แท้จริงแล้วโปรแกรมมัลแวร์ยังใช้วิธีการโยกย้ายตัวเองแบบเดียวกันเพื่อเผยแพร่ผ่านระบบและเครือข่ายเพื่อเผยแพร่รหัสที่เป็นอันตราย
