Kỹ thuật paging trong quản lý memory

Trang bộ nhớ là gì

Phân trang là phương pháp ghi và đọc dữ liệu từ bộ nhớ phụ (ổ cứng) để sử dụng trong bộ nhớ chính (RAM). Khi máy tính của bạn vượt quá dung lượng RAM cho phép, hệ điều hành (HĐH) sẽ di chuyển những trang bộ nhớ thông qua ổ cứng máy tính của bạn để giải phóng RAM cho các quy trình khác. Điều này giúp đảm bảo rằng hệ điều hành sẽ không bao giờ chạy vượt quá dung lượng RAM cho phép và sự cố. Tuy nhiên, việc phụ thuộc quá nhiều vào các trang bộ nhớ có thể làm giảm hiệu suất hệ thống, bởi vì Bộ nhớ truy cập tạm thời (RAM) hoạt động nhanh hơn nhiều so với tốc độ của ổ cứng. Điều này có nghĩa là hệ điều hành phải chờ để theo kịp tốc độ của ổ cứng mỗi khi trang bộ nhớ bị tráo đổi – dẫn đến nhiều công việc hơn vào lúc này.

Xem thêm: Phân biệt hoán đổi và phân trang trong quản lý bộ nhớ

phân trang bộ nhớ

Làm thế nào để trang bộ nhớ hoạt động?

Hệ điều hành đọc dữ liệu từ khối gọi là trang, tất cả các trang có cùng kích thước. Để làm điều đó, hệ điều hành trước tiên phải tham khảo ý kiến bảng trang – sử dụng bởi bộ nhớ ảo để lưu trữ ánh xạ giữa các địa chỉ ảo và vật lý. Bộ nhớ vật lý được sắp xếp thành một “khung” hoặc “khung trang”. Khi trang bộ nhớ được sử dụng, nó sẽ loại bỏ nhu cầu cấp phát bộ nhớ vật lý không đổi.

>>> Xem thêm:  Phân biệt Kernel Space và User Space

Cách tiếp cận này cung cấp một lợi thế tốt hơn nhiều so với các phương pháp quản lý bộ nhớ trước đây, bởi vì nó tạo điều kiện cho việc sử dụng lưu trữ nhanh hơn và hiệu quả hơn.

Khi một chương trình cố gắng truy cập trang bộ nhớ không được lưu trữ trên RAM, bộ vi xử lý coi hành vi này là lỗi trang (Lỗi trang). Khi điều này xảy ra, hệ điều hành phải:

  1. Xác định vị trí dữ liệu trên ổ cứng
  2. Lấy khung trang trống trên RAM để sử dụng làm vùng chứa dữ liệu.
  3. Tải dữ liệu truy vấn về khung trang có sẵn trên RAM.
  4. Cập nhật bảng trang để cập nhật khung trang mới.
  5. Trả lại điều khiển cho chương trình, thử lại hướng dẫn gây ra lỗi trang.

Khi tất cả các khung trang được sử dụng, hệ điều hành phải chọn một khung trang để sử dụng lại cho trang mà chương trình cần. Nếu khung trang được phân bổ động bởi chương trình để giữ dữ liệu hoặc nếu chương trình sửa đổi vì nó được đọc từ RAM, thì nó phải được ghi vào đĩa cứng trước khi được giải phóng, một lỗi trang khác xảy ra và Trang phải được đọc lại từ RAM.

Ưu điểm

Bằng cách đẩy bộ nhớ vào các khối cố định, nó sẽ loại bỏ vấn đề phân mảnh bên ngoài. Nó cũng hỗ trợ nhiều chương trình (Đa chương trình). Các chi phí liên quan đến nén dữ liệu trong quá trình di chuyển được loại bỏ. Dễ dàng trao đổi vì mọi thứ đều có cùng kích thước, thường có cùng kích thước với các khối đĩa đến và từ các trang được chuyển đổi.

>>> Xem thêm:  Hướng dẫn kill process trên Linux

Khiếm khuyết

Phân trang làm tăng chi phí cho phần cứng máy tính, vì các địa chỉ trang bộ nhớ được ánh xạ tới phần cứng. Bộ nhớ buộc phải lưu trữ các biến như bảng trang. Một số không gian bộ nhớ vẫn không được sử dụng khi các khối khả dụng không đủ cho không gian địa chỉ để chạy các công việc.

Làm thế nào để tạo phân trang hiệu quả hơn?

Mỗi khi hệ điều hành chuyển từ logic sang phisical, cần kiểm tra bảng trang – được lưu trữ trong RAM. Điều này có nghĩa là mỗi truy vấn quá trình yêu cầu hai truy cập bộ nhớ vật lý. Vấn đề này làm giảm hiệu suất tổng thể của thiết bị.

Để giải quyết vấn đề này, tôi sử dụng Bộ đệm dịch thuật Lookaside (TLB). TLB là bộ nhớ cache lưu trữ các bản dịch bộ nhớ ảo đến các địa chỉ vật lý gần đó để truy cập nhanh hơn.

Xem thêm nhiều bài khác tại : https://excel-cracker.com/he-dieu-hanh

Comments are closed.