Bài giảng Hệ điều hành - Chương 7.2: Quản lý bộ nhớ cung cấp cho người học các kiến thức về cấp phát không liên tục: Cơ chế phân trang, cơ chế phân đoạn, cơ chế kết hợp phân trang và phân đoạn. Mời các bạn cùng tham khảo nội dung chi tiết.
HỆ ĐIỀU HÀNH Chương – Quản lý nhớ (2) 14/03/2017 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved Câu hỏi ôn tập chương 7-1 Chuyển đổi địa gì? Địa nhớ biểu diễn trình chạy chương trình? Khi địa lệnh liệu chuyển thành địa thật? Thế dynamic linking? Nêu ưu điểm? Thế dynamic loading? Nêu chế overlay? Swapping? Nêu mơ hình quản lý nhớ? 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved Câu hỏi ôn tập chương 7-1 (tt) Thế phân mảnh ngoại? Phân mảnh nội? Cho ví dụ? Fixed partitioning gì? Các chiến lược placement? Dynamic partitioning gì? Các chiến lược placement? 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved Câu hỏi ôn tập chương 7-1 (tt) Giả sử nhớ cấp phát phân vùng có kích thước 600K, 500K, 200K, 300K (theo thứ tự), sau thực thi xong, tiến trình có kích thước 212K, 417K, 112K, 426K (theo thứ tự) cấp phát nhớ nào, sử dụng: Thuật toán First fit, Best fit, Next fit (con trỏ vị trí 500K), Worst fit? Thuật tốn cho phép sử dụng nhớ hiệu trường hợp 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved Mục tiêu chương 7-2 Hiểu vận dụng chế quản lý nhớ: Cơ chế phân trang Cơ chế phân đoạn 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved Nội dung chương 7-1 Cấp phát không liên tục Cơ chế phân trang Cơ chế phân đoạn Cơ chế kết hợp phân trang phân đoạn 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved Cơ chế phân trang Bộ nhớ vật lý khung trang (frame) Kích thước của frame lũy thừa của 2, từ khoảng 512 byte đến 16MB Bộ nhớ luận lý (logical memory) hay không gian địa luận lý tập mọi địa luận lý mà chương trình bất kỳ sinh page Ví dụ MOV REG,1000 //1000 địa luận lý Bảng phân trang (page table) để ánh xạ địa luận lý thành địa thực 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved Cơ chế phân trang (tt) frame number page number 0 1 2 3 logical memory 11/2/2017 page table Copyrights 2017 CE-UIT All Rights Reserved page page page page physical memory Cơ chế phân trang (tt) Chuyển đổi địa paging Cài đặt bảng trang Effective access time Tổ chức bảng trang Bảo vệ nhớ 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved Chuyển đổi địa paging Địa luận lý gờm có: Sớ hiệu trang (Page number) p Địa tương đối trang (Page offset) d Nếu kích thước của khơng gian địa ảo 2m, kích thước của trang 2n (đơn vị byte hay word tùy theo kiến trúc máy) page number p page offset d n bits m - n bits (định vị từ ÷ 2m − n − 1) (định vị từ ÷ 2n − 1) Bảng trang có tổng cộng 2m/2n = 2m - n mục (entry) 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved 10 User view của chương trình Thơng thường, chương trình biên dịch Trình biên dịch tự động xây dựng segment Ví dụ, trình biên dịch Pascal tạo segment sau: Global variables Procedure call stack Procedure/function code Local variable Trình loader gán mỗi segment số định danh riêng stack procedure symbol table function sqrt main program Logical address space 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved 26 Phân đoạn Dùng chế phân đoạn để quản lý nhớ có hỗ trợ user view Không gian địa ảo tập đoạn, mỡi đoạn có tên kích thước riêng Một địa luận lý định vị bằng tên đoạn độ dời (offset) bên đoạn (so sánh với phân trang!) 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved 27 Phân đoạn (tt) logical address space physical memory space segment segment segment 11/2/2017 segment Copyrights 2017 CE-UIT All Rights Reserved 28 Cài đặt phan đoạn Địa luận lý cặp giá trị (segment number, offset) Bảng phân đoạn (segment table): gồm nhiều mục, mỗi mục chứa base, chứa địa khởi đầu của segment nhớ limit, xác định kích thước của segment Segment-table base register (STBR): trỏ đến vị trí bảng phân đoạn nhớ Segment-table length register (STLR): số lượng segment của chương trình ⇒ Một sớ segment s hợp lệ s < STLR 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved 29 Một ví dụ về phân đoạn stack 1400 procedure segment 2400 segment symbol table 3200 function sqrt segment 4300 main program segment segment 4700 segment table 5700 6300 logical address space physical memory space 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved 30 Phần cứng hỗ trợ phân đoạn segment table s CPU < yes + physical memory no trap; addressing error 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved 31 Chuyển đổi địa chế phan đoạn 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved 32 Chia sẻ đoạn editor 43062 data segment segment logical address space process P1 segment table process P1 68348 72773 editor data segment 90003 segment logical address space process P2 11/2/2017 segment table process P2 98853 physical memory Copyrights 2017 CE-UIT All Rights Reserved 33 Kết hợp phân trang phân đoạn Kết hợp phân trang phân đoạn nhằm kết hợp ưu điểm đồng thời hạn chế khuyết điểm của phân trang phân đoạn: Vấn đề của phân đoạn: Nếu đoạn lớn khơng nạp vào nhớ Ý tưởng giải quyết: paging đoạn, cần giữ nhớ page của đoạn cần Logic Addr = 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved 34 Kết hợp phân trang phân đoạn (tt) 11/2/2017 Cài đặt phân đoạn 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved 36 Tóm tắt lại nội dung buổi học Cấp phát không liên tục Cơ chế phân trang Cơ chế phân đoạn Cơ chế kết hợp phân trang phân đoạn 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved 37 Bài tập Xét không gian địa có 12 trang, mỡi trang có kích thước 2K, ánh xạ vào nhớ vật lý có 32 khung trang a Địa logic gồm bit? b Địa physic gồm bit? 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved 38 Bài tập Xét hệ thống sử dụng kỹ thuật phân trang, với bảng trang lưu trữ nhớ a Nếu thời gian cho lần truy xuất nhớ bình thường 200ns thời gian cho thao tác truy xuất nhớ hệ thống này? b Nếu sử dụng TLBs với hit-ratio 75%, thời gian để tìm tròn TLBs xem bằng 0, tính thời gian truy xuất nhớ hệ thớng 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved 39 Bài tập Xét bảng phân đoạn hình Tính địa vật lý tương ứng với địa logic sau đây: a 430 b 110 c 2500 d 3400 e 4112 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved 40 ... 2017 CE-UIT All Rights Reserved Mục tiêu chương 7-2 Hiểu vận dụng chế quản lý nhớ: Cơ chế phân trang Cơ chế phân đoạn 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved Nội dung chương 7-1 ... Copyrights 2017 CE-UIT All Rights Reserved 11 Chuyển đổi địa paging (tt) Ví dụ: 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved 12 Cơ chế phan trang (tt) 11/2/2017 Copyrights 2017 CE-UIT All Rights... translation look-aside buffers (TLBs) 11/2/2017 Copyrights 2017 CE-UIT All Rights Reserved 14 Cài đặt bảng trang (tt) Dùng ghi Page-Table Base Register (PTBR) 11/2/2017 Copyrights 2017 CE-UIT All