Phân Trang- FIFO, LRU, OPT - Thesea2201

Chuyển đến nội dung chính

Phân trang- FIFO, LRU, OPT

Phân trang- FIFO, LRU, OPT

I) Lý thuyết: Page-replacement algorthm -Chọn fram của process sẽ được thay thế trang nhớ -Mục tiêu: số lương page-fault nhỏ nhất; -Được đánh giá bằng cách thực thi giải thuật đói với mỗi chuỗi tham chiếu bộ nhớ( memory reference string) và xác định số lần xảy ra page fault. Ví duï Thứ tự tham chiếu các địa chỉ nhớ, với page size= 100: 0100, 0432, 0101, 0612, 0102, 0103, 0104, 0101, 0611, 0102, 0103, 0104, 0101, 0610, 0102, 0103, 0104, 0101, 0609, 0102, 0105 các trang nhớ được tham chiếu lần lượt = chuổi tham chiếu bộ nhớ(trang nhớ) 1, 4, 1, 6, 1, 1, 1, 1, 6, 1, 1, 1, 1, 6, 1, 1, 1, 1, 6, 1, 1 II) Các giải thuật: 1. FIFO: Cần biết được:- Số khung trang, tình trạng ban đầu, chuỗi tham chiếu. Hướng tiếp cận: Ghi nhận thời điểm một trang được mang vào bộ nhớ chính. Khi cần thay thế trang, trang ở trong bộ nhớ lâu nhất sẽ được chọn. Ví dụ: Sử dụng 3 khung trang, ban đầu cả 3 đều trống, chuỗi tham chiếu: 7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1 Ta có được bảng sau với * là các lỗi trang(page fault). Mặc dù ban đầu trang là trống nhưng do 7 vân chưa có trong trang nhớ nên mặc định là lõi trang. Lưu ý: Nghịc lý belady: Số lượng lỗi trang sẽ tăng lên mặc dù số khung trang sử dụng tăng lên. Ví dụ: Xét chuổi tham chiếu: 1.2.3.4.1.2.5.1.2.3.4.5 2. OPT: Thay thế trang nhớ được tham chiếu trễ nhất trong tương lai. Ưu điểm: ít xảy ra lỗi trang nhất. Nhược điểm: Khó hiện thực được. Ví dụ: cho chuỗi : 7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1 với 3 khung trang, ban đầu đều trống. 3. LRU: Thay thế trang nhớ được tham chiếu trễ nhất trong quá khứ. Thuật toán FIFO sử dụng thời điểm nạp để chọn trang thay thế, thuật toán tối ưu lại dùng thời điểm trang sẽ được sử dụng, vì thời điểm này không thể xác định trước nên thuật toán LRU phải dùng thời điểm cuối cùng trang được truy xuất – dùng quá khứ gần để dự đoán tương lai. Thuật toán này đòi hỏi phải được cơ chế phần cứng hỗ trợ để xác định một thứ tự cho các trang theo thời điểm truy xuất cuối cùng. Ví dụ: cho chuỗi : 7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1 Với 3 khung trang, ban đầu đều trống. Thêm 1 bài tập phân trang bằng LRU mà 1 bạn Công Bắc gửi về cho mình LRU. Tổng kết: Trên đây là 3 giải thuật thay trang, cách thực hiện đơn giản, chỉ cần làm 2 bài là có thể nhuần nhuyễn rồi:). Có điều gì thắc mắc thì các bạn bình luận ở dưới trang hoặc gởi mail về cho mình [email protected] Chúc các bạn học tốt.

Nhận xét

  1. Unknownlúc 21:03 17 tháng 1, 2021

    cột 5 từ cuối đếm lên ở LRU bị sai thì phải?

    Trả lờiXóaTrả lời
    1. Nghia Nguyenlúc 07:04 7 tháng 3, 2023

      Đúng r mà b, ko sai đâu

      XóaTrả lời
        Trả lời
    2. Trả lời
Thêm nhận xétTải thêm...

Đăng nhận xét

Bài đăng phổ biến từ blog này

Chuyển đổi địa chỉ vật lý và địa chỉ ảo trong bộ nhớ chính

Hình ảnh MEMORY MANAGEMENT  Chuyển đổi địa chỉ: quá trình ánh xạ một địa chỉ từ không gian địa chỉ này sang không gian địa chỉ khác. Bài tập1: Xét một không gian địa chỉ có 8 trang, mỗi trang có kích thước 1KB. ánh xạ vào bộ nhớ vật lý có 32 khung trang  a) Địa chỉ logic gồm bao nhiêu bit ?  b) Địa chỉ physic gồm bao nhiêu bit ? c) Bảng trang có bao nhiêu mục?Mỗi mục trong bảng trang cần bao nhiêu bit? Giải:  Nhận xét: Không gian địa chỉ có 8 trang-> cần 3 bit để biểu diễn(2^3=8)), kích thước d= 2^10 -> cần 10 bit biểu diễn, ánh xạ vào bộ nhớ vật lyscos 32 khung trang-> cần 5 bit biểu diễn(2^5=32) a) Địa chỉ logic: page +ofset= 3+ 10 = 13 b) Địa chỉ vật lý: frame +ofset= 5+10 =15 c) Số mục của bảng trang = số trang =8. Mỗi mục trong bảng trang cần 5 bit. Lưu ý: trong bảng trang chỉ có chứa khung trang, vì trang được đánh mặc định tăng dần 0,1,2,3,..... Đọc thêm

Chuyển Ubuntu sang phân vùng mới

Hình ảnh  Chuyển Ubuntu sang phân vùng mới Vấn đề: Một ngày xấu trời, dung lượng phân vùng của Ubuntu gần hết do xài quá nhiều docker. Dev muốn chuyển Ubuntu sang nhà mới(phân vùng mới) có dung lượng cao hơn. Cách làm sau được lược bỏ 1 số phần của bài hướng dẫn gốc . Bài viết sẽ để cập đến phân vùng mới - muốn chuyển đến( /dev/sdb1 ), có dung lượng cao hơn; và phân vùng cũ( /dev/sdb4 ), có dung lượng ít hơn.  Trong tùy trường hợp mà sẽ có kí hiệu phân vùng khác nhau như: /dev/sda0, /dev/sdb3. Muốn tìm chính xác thì xài Gparted - đề cập phía dưới. Chuyển phân vùng sang phân vùng mới Giao diện của Gparted như thế này, ta tiến hành: Chuột phải vào phân vùng mới -> Delete Chuột phải vào phân vùng cũ /dev/sdb4 -> chọn Copy Chuột phải vào phân vùng mới /dev/sdb1 -> chọn Paste Kế đến ta chuột phải vào phân vùng mới /dev/sdb1 -> chọn New UUID Nhấn tích xanh để thực thi Cập nhật Grub Reboot vào lại Ubuntu CŨ Vào app Disks của Ubuntu: Nhấn nút Windows -> gõ Disks M... Đọc thêm Ảnh của tôi KAITOKIDK10 Truy cập hồ sơ

Lưu trữ

  • tháng 9 20213
  • tháng 10 20191
  • tháng 9 20197
  • tháng 6 20172

Nhãn

  • autocomplete
  • basic
  • biennt
  • book
  • coding
  • composer
  • dac nhan tam
  • Dan ong sao hoa dan ba sao kim
  • delay
  • download
  • dual boot
  • fun
  • image
  • j2team_share
  • joke
  • jquery
  • js
  • kaitokidk10
  • laravel
  • linux
  • log file
  • opencv
  • partition
  • python
  • sach
  • sach hay
  • startup application
  • terminal
  • tuoi tre khong tri hoan
  • ubuntu
  • wget
Hiện thêm

Báo cáo vi phạm

Từ khóa » Thuật Toán Lru Sẽ Không Hiệu Quả Khi