Bài 8 - Các mô hình bộ nhớ đơn giản. Những nội dung chính được trình bày trong chương này gồm có: Mô hình Linker-Loader, mô hình base & bound. để biết thêm nội dung chi tiết. | BÀI 8 : CÁC MÔ HÌNH BỘ NHỚ ĐƠN GIẢN Cầp phát liên tục : Linker-Loader Base & Bound Mô hình Linker-Loader Tại thời điểm Link, giữ lại các địa chỉ logic Vị trí base của tiến trình trong bộ nhớ xác định được vào thời điểm nạp : địa chỉ physic = địa chỉ logic + base 0x1000 0x3000 0x3000 jump 0x2000 jump 0x5000 0x7000 OS (base) Mô hình Linker-Loader Bảo vệ ? Dời chuyển sau khi nạp ? Không có vùng nhớ liên tục đủ lớn để chứa toàn bộ tiến trình ? Mô hình Base & Bound 0x1000 0x3000 Base 0x3000 OS jump 0x2000 jump 0x2000 Bound 0x7000 Tại thời điểm Link, giữ lại các địa chỉ logic Vị trí base , bound được ghi nhận vào 2 thanh ghi: Kết buộc địa chỉ vào thời điểm thi hành => tái định vị được : địa chỉ physic = địa chỉ logic + base register Bảo vệ : địa chỉ hợp lệ [base, bound] Mô hình Base & Bound Tiến trình tăng trưởng ? Vẫn là vấn đề cấp phát liên tục ! Chia sẻ ? Phân biệt code và data ? MMU logical addrs memory Physical addrs CPU Kết buộc địa chỉ tại thời điểm thi hành=> hỗ trợ của phần cứng | BÀI 8 : CÁC MÔ HÌNH BỘ NHỚ ĐƠN GIẢN Cầp phát liên tục : Linker-Loader Base & Bound Mô hình Linker-Loader Tại thời điểm Link, giữ lại các địa chỉ logic Vị trí base của tiến trình trong bộ nhớ xác định được vào thời điểm nạp : địa chỉ physic = địa chỉ logic + base 0x1000 0x3000 0x3000 jump 0x2000 jump 0x5000 0x7000 OS (base) Mô hình Linker-Loader Bảo vệ ? Dời chuyển sau khi nạp ? Không có vùng nhớ liên tục đủ lớn để chứa toàn bộ tiến trình ? Mô hình Base & Bound 0x1000 0x3000 Base 0x3000 OS jump 0x2000 jump 0x2000 Bound 0x7000 Tại thời điểm Link, giữ lại các địa chỉ logic Vị trí base , bound được ghi nhận vào 2 thanh ghi: Kết buộc địa chỉ vào thời điểm thi hành => tái định vị được : địa chỉ physic = địa chỉ logic + base register Bảo vệ : địa chỉ hợp lệ [base, bound] Mô hình Base & Bound Tiến trình tăng trưởng ? Vẫn là vấn đề cấp phát liên tục ! Chia sẻ ? Phân biệt code và data ? MMU logical addrs memory Physical addrs CPU Kết buộc địa chỉ tại thời điểm thi hành=> hỗ trợ của phần . | BÀI 8 : CÁC MÔ HÌNH BỘ NHỚ ĐƠN GIẢN Cầp phát liên tục : Linker-Loader Base & Bound Mô hình Linker-Loader Tại thời điểm Link, giữ lại các địa chỉ logic Vị trí base của tiến trình trong bộ nhớ xác định được vào thời điểm nạp : địa chỉ physic = địa chỉ logic + base 0x1000 0x3000 0x3000 jump 0x2000 jump 0x5000 0x7000 OS (base) Mô hình Linker-Loader Bảo vệ ? Dời chuyển sau khi nạp ? Không có vùng nhớ liên tục đủ lớn để chứa toàn bộ tiến trình ? Mô hình Base & Bound 0x1000 0x3000 Base 0x3000 OS jump 0x2000 jump 0x2000 Bound 0x7000 Tại thời điểm Link, giữ lại các địa chỉ logic Vị trí base , bound được ghi nhận vào 2 thanh ghi: Kết buộc địa chỉ vào thời điểm thi hành => tái định vị được : địa chỉ physic = địa chỉ logic + base register Bảo vệ : địa chỉ hợp lệ [base, bound] Mô hình Base & Bound Tiến trình tăng trưởng ? Vẫn là vấn đề cấp phát liên tục ! Chia sẻ ? Phân biệt code và data ? MMU logical addrs memory Physical addrs CPU Kết buộc địa chỉ tại thời điểm thi hành=> hỗ trợ của phần cứng