Kích thước cài đặt thường trú của một tiến trình là dung lượng bộ nhớ thuộc về nó và hiện có (RAM) trong RAM (RAM thực, không bị tráo đổi hoặc không tồn tại).
Chẳng hạn, nếu một quá trình phân bổ một đoạn bộ nhớ (giả sử 100Mb) và sử dụng nó một cách chủ động (đọc / ghi vào nó), kích thước tập thường trú của nó sẽ vào khoảng 100Mb (cộng với chi phí chung, phân đoạn mã, v.v.). Nếu sau quá trình dừng sử dụng (nhưng không giải phóng) bộ nhớ đó trong một thời gian, HĐH có thể chọn hoán đổi các đoạn của bộ nhớ đó để trao đổi, để nhường chỗ cho các tiến trình khác (hoặc bộ đệm). Kích thước cài đặt thường trú sau đó sẽ giảm theo số lượng nhân được hoán đổi. Nếu quá trình thức dậy và bắt đầu sử dụng lại bộ nhớ đó, hạt nhân sẽ tải lại dữ liệu từ trao đổi và kích thước cài đặt thường trú sẽ tăng trở lại.
Các ru_maxrss
lĩnh vực struct rusage
là "nhãn hiệu nước cao" cho kích thước bộ cư dân. Nó chỉ ra mức sử dụng RAM tối đa cho quá trình này (khi sử dụng RUSAGE_SELF
).
Bạn có thể giới hạn kích thước cài đặt thường trú của quy trình để tránh việc một ứng dụng "ăn hết" RAM trên hệ thống của bạn và buộc các ứng dụng khác phải trao đổi (hoặc thất bại hoàn toàn với điều kiện hết bộ nhớ).
ru_maxrss
là tính bằng byte trên máy mac / BSD.