Position-independent code là gì?

Noun Programming
Mã độc lập vị trí

Trong máy tính, mã độc lập vị trí (position-independent code) hoặc mã thực thi độc lập vị trí (position-independent executable) là một phần của mã máy (machine code), được đặt ở đâu đó trong bộ nhớ chính (primary memory), có thể thực thi bất kể địa chỉ tuyệt đối (absolute address) của nó (tức là bằng cách sử dụng địa chỉ tương đối). Mã độc lập vị trí (position-independent code) thường được sử dụng cho các thư viện chia sẻ (shared library) do đó, cùng một mã thư viện có thể được tải ở một vị trí trong mỗi không gian địa chỉ (address space) của chương trình, nơi nó sẽ không trùng lặp với bất kỳ mục đích sử dụng bộ nhớ nào khác (ví dụ: các thư viện dùng chung khác). Mã độc lập vị trí (position-independent code) cũng được sử dụng trên các hệ thống máy tính cũ thiếu MMU để hệ điều hành có thể giữ các ứng dụng cách xa nhau ngay cả trong không gian địa chỉ duy nhất của hệ thống không có MMU.

Mã độc lập vị trí (position-independent code) có thể được thực thi tại bất kỳ địa chỉ bộ nhớ (memory address) nào mà không cần sửa đổi. Mã này khác với mã tuyệt đối (absolute code) phải được tải tại một vị trí cụ thể để hoạt động chính xác, và mã load-time locatable, trong đó trình liên kết (linker) hoặc bộ nạp chương trình (program loader) sửa đổi một chương trình trước khi thực thi để nó chỉ có thể được chạy từ một vị trí bộ nhớ cụ thể.

Learning English Everyday