Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM PC

23 766 5
Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM PC

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC mục lục Phần I: I Giới thiệu chung .2 Công việc quản lý nhớ 2 Quản lý nhớ chế độ bảo vệ II Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC .3 1.Không gian địa vật lý .3 2.Các địa logic tuyến tính .4 3.Các ghi điều khiển 4.Việc phân trang 5.Các tuỳ chọn phân trang 6.Các bảng trang th mục trang .6 6.1 Chuyển đổi địa tuyến tính (các trang 4-Kbyte) 6.2 Chuyển đổi địa tuyến tính(các trang 4-MByte) 6.3 Kết hợp trang 4-Kbyte 4-MByte 7.Địa sở th mục trang 8.Các điểm vào th mục trang điểm vào bảng trang 9.Những điểm vào th mục trang bảng trang mặt 13 10 Bộ đệm dùng để chuyển đổi địa 13 11.Sự mở rộng địa vật lý 14 11.1 Chuyển đổi địa tuyến tính với việc đánh địa mở rộng đợc kích hoạt(với trang 4-Kbyte) 15 11.2 Chuyển đổi địa tuyến tính với việc đánh địa mở rộng đợc kích hoạt(với trang 2-Mbyte 4-Mbyte) 16 11.3 Truy nhập vào toàn không gian địa vật lý mở rộng với cấu trúc bảng trang mở rộng .17 11.4 Các điểm vào th mục trang bảng trang với chế độ đánh trang mở rộng đợc kích hoạt 17 12.Sự mở rộng kích thớc trang 36-bit 19 12.1 Sự miêu tả đặc tính mở rộng kích thớc trang 36-bit 19 12.2 Phát lỗi 22 13.Anh xạ đoạn sang trang 22 Phần II: Chơng trình minh hoạ Phần III: Tài liệu tham khảo I.Giới thiệu chung: phần i: nội dung lý thuyết 1.Công việc quản lý nhớ Bộ nhớ tài nguyên mà thực chơng trình Trên thực tế thời điểm hầu hết nhớ không tham gia vào việc thực chơng trình mà đóng vai trò lu giữ thông tin để xử lý sau Tuy vai trò bytes tích cực vô to lớn Nếu hạn chế dung lợng nhớ tăng tốc độ thực chơng trình nh đơn giản hóa cấu trúc chơng trình Các chơng trình chờ đợi phân phối nhớ đợc lu trữ nhớ Tồn nhiều phơng pháp cho phép sử dụng nhớ nh mở rộng nhớ trong, tạo cảm giác có nhớ với dung lợng lớn nhiều nhớ có Sự tồn tài Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC nguyên ảo làm cho công tác lập trình trở nên dễ dàng, đơn giản ngời sử dụng lo lắng tính toán khối lợng sử dụng Tuy tốc độ thực có phần giảm sút nhng hiệu chung lớn đáp ứng nhu cầu ngời sử dụng Một phần nhớ phải đợc dùng để lu trữ nhân hệ thống Đó tập hợp chơng trình điều khiển phải thờng xuyên có mặt nhớ để thực cần thiết Một chức quan trọng hệ điều hành bảo vệ chơng trình liệu khỏi bị h hỏng, bị truy nhập cách không hợp thức chơng trình khác hoạt động Trong phần ta giả thiết chơng trình điều khiển hệ điều hành làm việc hợp lý không ảnh hởng đến chơng trình liệu ngời sử dụng Trên thực tế có tồn sai sót hệ điều hành gặp tổ hợp đặc biệt có chơng trình liệu Nhng sai sót loại thờng đợc ghi nhận kịp thời đợc khắc phục phiên cải tiến hệ điều hành Đối với máy IBM-PC phơng pháp tổ chức quản lý nhớ đợc thực nh sau: PC XT thực chế độ quản lý gọi chế độ thực ( real mode) Không gian nhớ vật lý không gian nhớ logic trùng PC AT 286 thực đợc hai chế độ quản lý nhớ chế độ thực (real mode) chế độ bảo vệ (protect mode) Cách quản lý chế độ bảo vệ theo kiểu phân đoạn PC AT 386 có hai chế độ quản lý nhớ chế độ thực (real mode) chế độ bảo vệ(protect mode) Ơ chế độ bảo vệ, cách quản lý đợc thực theo hai kiểu phân đoạn phân trang Trong phần sau ta xét cách tổ chức hệ thống từ PC AT 386 trở lên Quản lý nhớ chế độ bảo vệ Các kiến trúc Intel từ 80386 trở lên cung cấp hai chế phân đoạn phân trang Trong chế phân đoạn , chơng trình ngời sử dụng đợc biên tập riêng môdul độc lập Kết tập hợp chơng trình bảng điều khiển cho biết chơng trình sử dụng modul nào, độ dài môdul Bảng điều khiển gọi bảng quản lý đoạn ký hiệu SCB(segment control block) SCB chứa thông tin trợ giúp định vị chơng trình giai đoạn thực hiện, hệ thống dựa vào SCB để nạp modul cần thiết vào nhớ Trong cấu trúc này, chừng chỗ hệ thống nạp tiếp modul Gặp trờng hợp thiếu nhớ, chế phân đoạn cần phải đợc bố trí lại nhớ Đa bớt số môdul có khả không sử dụng lại nữa.Nh cấu trúc không đòi hỏi ngời sử dụng phải khai báo thêm thông tin phụ nào, công việc hệ thống đảm nhiệm dung lợng nhớ tự tăng nói chung tốc độ thực chơng trình tăng theo Nhợc điểm cấu trúc hiệu sử dụng nhớ phụ thuộc nhiều vào cách phân chia chơng trình thành modul độc lập Cũng nh cấu trúc Overlay, cần tồn vài modul độ dài lớn hiệu qủa sử dụng nhớ giảm cách đáng kể Cấu trúc áp dụng đ ợc nhớ đợc quản lý theo kiểu phân đoạn Trong cấu trúc phân trang, chơng trình đợc tập hợp nh trờng hợp có cấu trúc tuyến tính , nhng sau đợc chơng trình biên tập chia thành phần có độ dài gọi trang Sản phẩm biên tập bảng quản lý trang (PCB-page control block), phần tử bảng ứng với trang chơng trình ngời sử dụng Khi thực hiện, supervisor quản lý trang theo dõi , đảm bảo đa trang cần thiết vào nhớ Cấu trúc phân trang nói chung phát huy đợc hiệu qủ nhớ đợc quản lý theo chiến lợc phân trang Trong thực tế , chiến lợc phân trang thờng đợc áp dụng với modul chơng trình với phơng pháp quản lý liệu kiểu phân trang Dới hình minh hoạ chế phân đoạn phân trang nhớ Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC trang Hình 1: Phân đoạn phân trang Trong phần tìm hiểu cấu trúc phục vụ cho việc quản lý phân II.Cấu trúc liệu phục vụ việc quản lý nhớ phân trang IBM-PC Không gian địa vật lý Trong chế độ bảo vệ, kiến trúc Intel cung cấp không gian địa vật lý bình thờng 4GByte(232 bytes) Đây không gian địa mà xử lý đánh địa lên bit địa Không gian địa phẳng( không bị phân đoạn), với điạ xếp liên tiếp từ đến FFFFFFFH Không gian địa vật lý đợc ánh xạ đến nhớ đọc-viết, nhớ đọc, nhớ ánh xạ vào/ra Những điều kiện dễ dàng ánh xạ nhớ đợc sử dụng để chia nhớ vật lý thành đoạn trang Trong xử lý Pentium Pro, kiến trúc Intel hỗ trợ việc mở rộng không gian địa vật lý đến 236 bytes(64 GBytes), với địa vật lý tối đa FFFFFFFH Sự mở rộng đợc yêu cầu cờ mở rộng địa vật lý( PAE), định vị bit ghi điều khiển CR4 Các địa logic tuyến tính Tại mức kiến trúc hệ thống chế độ bảo vệ , xử lý sử dụng hai giai đoạn việc chuyển đổi điạ để đến đợc địa vật lý : chuyển đổi địa vật lý phân trang không gian địa tuyến tính Thậm chí với việc sử dụng tối thiểu đoạn, byte không gian địa xử lý đợc truy nhập địa logic Một địa logic bao gồm chọn đoạn 16-bit khoảng trống (offset) 32-bit(hình 2) Bộ chọn đoạn xác định đoạn mà byte đợc định vị vào khoảng trống xác định rõ vị trí byte đoạn quan hệ với địa sở đoạn Bộ xử lý chuyển đổi địa logic vào địa tuyến tính Một địa tuyến tính địa 32-bit không gian địa tuyến tính xử lý Giống nh không gian địa vật lý , không gian địa tuyến tính phẳng(không phân đoạn), không gian địa 32 byte, với địa nằm từ đến FFFFFFFH Không gian địa tuyến tính chứa tất đoạn bảng hệ thống xác định cho hệ thống Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC Để chuyển đổi địa logic sang địa tuyến tính, xử lý làm công việc sau: Sử dụng khoảng trống(offset) chọn đoạn để định vị phần tử miêu tả đoạn cho đoạn vào bảng mô tả toàn cục GDT(Global Descriptor Table) bảng mô tả cục LDT(Local Descriptor Table ) đọc vào xử lý (Bớc cần chọn đoạn đợc nạp vào ghi đoạn.) Kiểm miêu tả đoạn để xem quyền truy nhập vùng nhớ đoạn để chắn đoạn truy nhập đợc khoảng trống nằm giới hạn đoạn Cộng địa sở(đầu tiên) cảu đoạn từ miêu tả đoạn đến địa tơng đối (offset) đến cấu trúc địa tuyến tính Hình 2: Sự chuyển đổi địa logic sang địa tuyến tính Nếu việc phân trang không đợc sử dụng, xử lý ánh xạ trực tiếp địa tuyến tính đến địa vật lý (có nghĩa địa tuyến tính bus địa xử lý.).Nếu không gian địa tuyến tính đợc phân trang, mức thứ hai việc chuyển đổi địa đợc sử dụng để chuyển đổi địa tuyến tính vào địa vật lý 3.Các ghi điều khiển Các ghi điều khiển xác chế độ hoạt động xử lý đặc tính nhiệm vụ thực Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC Hình 3: Các ghi điều khiển Các ghi điều khiển gồm có : CR0 : chứa cờ điều khiển hệ thống để điều khiển chế độ hoạt động trạng thái xử lý CR1 : đợc đặt trớc CR2 : chứa địa tuyến tính trang lỗi CR3: chứa địa vật lý th mục trang Chỉ có 20 bit nhiều ý nghĩa ghi địa th mục trang đợc xác định rõ, 12 bit thấp CR3 để đảm bảo th mục trang có địa bắt đầu cách trang, nói cách khác th mục trang đợc xếp hàng theo trang (4-Kbyte) CR4: Chứa nhóm cờ kích hoạt vài mở rộng cấu trúc nh mức u tiên hệ điều hành hỗ trợ cho Streaming SIMD Extensions 4.Việc phân trang(paging) Khi chạy chế độ bảo vệ, kiến trúc Intel cho phép không gian địa tuyến tính( không gian nhớ đánh địa đợc) ánh xạ trực tiếp vào nhớ vật lý lớn(ví dụ nhớ RAM 4Gbytes) hay ánh xạ gián tiếp(sử dụng chế phân trang) vào nhớ vật lý nhỏ vào đĩa lu trữ Phơng pháp sau việc ánh xạ không gian địa tuyến tính đợc tham chiếu chung nh nhớ ảo hay nhớ ảo phân trang yêu cầu Khi chế phân trang đợc sử dụng, xử lý chia không gian điạ tuyến tính thành trang có kích thớc cố định ,thờng có độ dài 4Kbytes Những trang đợc ánh xạ vào nhớ vật lý hay đĩa lu trữ Khi chơng trình(hay nhiệm vụ) tham chiếu đến địa logic nhớ, xử lý chuyển đổi địa sang địa tuyến tính sau sử dụng chế phân trang để chuyển đổi địa tuyến tính sang địa vật lý tơng ứng Nếu trang có chứa địa tuyến tính mặt thời nhớ vật lý, xử lý sinh ngoại lệ thông báo trang ch a có nhớ(#PF) Trình xử lý ngoại lệ cho thông báo trang cha có nhớ dẫn cho hệ điều hành hay trình thực để nạp trang từ đĩa lu trữ vào Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC nhớ vật lý Khi trang đợc nạp vào nhớ vật lý , tín hiệu đáp lại từ trình quản lý ngoại lệ gây lệnh để sinh ngoại lệ đợc bắt đầu Thông tin mà xử lý sử dụng để ánh xạ địa tuyến tính vào không gian địa vật lý sinh thông báo trang cha có nhớ(khi cân thiết) đợc chứa th mục trang bảng trang nhớ Phân trang khác so với phân đoạn sử dụng trang có kích thớc cố định Không giống với đoạn có kích thớc với mã hay cấu trúc liệu mà chúng chứa, trang có kích thớc có định Nếu việc phân đoạn dạng việc chuyển đổi địa sử dụng, cấu trúc liệu nằm nhớ vật lý có tất phần nhớ Nếu phân trang đợc sử dụng , cấu trúc liệu nằm phần nhớ phần đĩa lu trữ Để tối thiểu hoá số lợng chu kỳ bus đòi hỏi cho việc chuyển đổi địa , th mục trang đợc truy nhập gần điểm vào bảng trang đa lu giữ kín xử lý (trong đệm dùng để chuyển hoá địa chỉ) Bộ đệm đáp ứng hầu hết nhu cầu cho việc đọc th mục trang thời bảng trang mà không cần đòi hỏi chu kỳ bus Các chu kỳ bus phụ xuất đệm không chứa điểm vào bảng trang,điều sẩy trang không đợc truy nhập thời gian dài 5.Các tuỳ chọn phân trang Việc phân trang đợc điều khiển ba cờ trong ghi điều khiển xử lý: Cờ PG(paging) , bit 31 ghi CR0 Cờ PSE(page size extensions), bit ghi CR4 Cờ PAE(physical address extension) bit ghi CR4 Cờ PG kích hoạt chế chuyển đổi trang Hệ điều hành hay trình thực thờng thiết lập cờ khởi tạo xửlý Cờ PG cần đợc thiết lập chế chuyển đổi trang xử lý đợc dùng để cung cấp hệ thống nhớ ảo đợc yêu cầu đánh trang hay hệ điều hành đợc thiết kế để chạy nhiều chơng trình (hay nhiệm vụ) chế độ 8086 ảo Cờ PSE kích hoạt kích thớc trang lớn : trang 4Mb 2Mb (khi cờ PAE đợc thiết lập) Khi cờ PSE bị xoá, độ dài trang chung 4Kbytes đợc sử dụng Cờ PAE kích hoạt địa vật lý 36-bit Sự mở rộng địa vật lý đợc sử dụng việc phân trang đợc kích hoạt Nó dựa vào th mục trang bảng trang để tham chiếu địa vật lý FFFFFFFH 6.Các bảng trang th mục trang Thông tin mà xử lý sử dụng để chuyển đổi địa tuyến tính địa vật lý (khi chế độ phân trang đợc kích hoạt) đợc chứa cấu trúc liệu sau : Th mục trang(page directory) : Một mảng điểm vào th mục trang 32-bit(PDEpage directory entry) chứa trang 4Kbytes Đạt đến 1024 điểm vào th mục trang nằm th mục trang Bảng trang(page table) : mảng điểm vào bảng trang 32-bit(PTE page table entry) đợc chứa trang 4Kbytes Một bảng trang chứa 1024 điểm vào bảng trang (Bảng trang không đợc sử dụng cho trang 4Mb 2Mb Những kích thớc trang đợc ánh xạ trực tiếp từ hay nhiều điểm vào th mục trang.) Trang(page): Không gian địa 4Kbyte, 2Mbyte,4Mbyte Bảng trỏ th mục trang( Page directory pointer table): Mảng bốn điểm vào 64-bit,mỗi điểm vào đến th mục trang Cấu trúc liệu đợc sử dụng mở rộng địa vật lý đợc kích hoạt Những bảng cung cấp truy nhập đến trang 4Kbyte hay trang 4Mbyte việc đánh địa vật lý 32-bit thông thờng đợc sử dụng đến trang 4KByte , 2Mbyte, 4Mbyte việc đánh điạ mở rộng đợc sử dụng.Bảng sau minh hoạ kích thớc trang kích thớc địa vật lý đạt đợc từ thiết lập khác cờ điều khiển phân trang Mỗi điểm vào th mục trang chứa cờ kích thớc PS(page size) , cờ xác định rõ liệu điểm vào có đến bảng trang mà điểm vào lần lợt đến trang 4Kbyte( PS thiết lập giá trị 0) hay liệu điểm vào th mục trang có trực tiếp đến trang 4Mbyte hay 2Mbyte(PSE hay PAE đợc thiết lập lên PSE thiết lập lên 1) Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC Bảng 1: Kích thớc trang kích thớc địa vật lý 6.1.Chuyển đổi địa tuyến tính(Các trang 4-Kbyte) Hình miêu tả th mục trang hệ thống đẳng cấp bảng trang ánh xạ địa tuyến tính đến trang 4K-byte Các điểm vào th mục trang đến bảng trang, điểm vào bảng trang đến trang nhớ vật lý Phơng pháp phân trang đợc sử dụng để đánh địa lên tới 220 trang, phơng pháp mở không gian địa tuyến tính 232 bytes (4 GbBytes) Để chọn điểm vào bảng khác này, địa tuyến tính đợc chia thành ba vùng: Điểm vào th mục trang (Page-directory entry): Từ bits 22 đến bit 31 cung cấp khoảng trắng để chứa điểm vào th mục trang Điểm vào đợc lựa chọn địa vật lý sở bảng trang Điểm vào bảng trang (Page-table entry): Từ bit 12 đến bit 21 địa tuyến tính cung cấp khoảng trống cho điểm vào bảng trang đợc lựa chọn Điểm vào cung cấp địa vật lý sở trang nhớ vật lý Địa tơng đối trang(Page offset) Từ bit đến bit 11 cung cấp khoảng trống cho địa vật lý trang Phần mềm quản lý nhớ có tuỳ chọn việc sử dụng th mục trang cho tất chơng trình nhiệm vụ, th mục trang cho nhiệm vụ,hay cặp th mục trang Hình 4: Chuyển đổi địa tuyến tính (Các trang 4-Kbyte) 6.2 Chuyển đổi địa tuyến tính ( Các trang 4-Mbyte) Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC Hình cách mà th mục trang đợc sử dụng để ánh xạ đến địa tuyến tính đến trang M-byte Các điểm vào th mục trang đến trang 4-Mbyte nhớ vật lý Phơng pháp phân trang đợc sử dụng để ánh xạ lên đến 1024 trang vào không gian địa tuyến tính 4-Gbyte Kích th ớc trang 4-Mbyte đợc chọn thiết lập cờ PSE ghi điều khiển CR4 thiết lập cờ kích thớc trang (PS) điểm vào th mục trang Với cờ này, địa tuyến tính đợc chia thành hai phần: Điểm vào th mục trang (page directory entry): Từ bit 22 đến bit 31 , cung cấp vùng trống cho điểm vào th mục trang Điểm vào đợc chọn cung cấp địa vật lý trang 4-Mbyte Địa tơng đối trang (page offset) :Từ bit đến bit 21, cung cấp vùng trống cho địa vật lý trang Hình 5: Chuyển đổi địa tuyến tính với trang 4-Mbyte 6.3 Kết hợp trang 4-Kbyte 4-Mbyte Khi cờ PSE CR4 đợc thiết lập lên 1, trang 4-Mbyte bảng trang cho trang 4-Kbyte đợc truy nhập từ th mục trang Nếu cờ PSE bị xoá , có bảng trang cho trang 4-Kbyte đợc truy nhập (bất chấp thiết lập cờ PS điểm vào th mục trang) Một ví dụ tiêu biểu cho việc kết hợp trang 4-Kbyte 4-Mbyte đặt hệ điều hành hay trình thực nhân vào trang lớn để làm giảm thiếu sót TLB( đệm dùng để chuyển hóa địa chỉ) cải thiện hiệu toàn hệ thống.Bộ xử lý giữ cho khỏi gián đoạn điểm vào trang 4-Mbyte điểm vào trang 4-KByte đệm TLB riêng rẽ Vì thế, việc đặt thờng xuyên mã sử dụng nh nhân trang lớn , làm trống điểm vào TLB trang 4-KByte cho chơng trình ứng dụng nhiệm vụ 7.Địa sở th mục trang Một địa vật lý th mục trang thời đợc chứa ghi CR3(Cũng đợc gọi ghi sở th mục trang PDBR, the page directory base register ) Nếu việc phân trang đợc sử dụng, ghi CR3 cần đợc nạp nh phần tiến trình khởi tạo xử lý (trớc việc phân trang đợc kích hoạt) Thanh ghi CR3 sau đợc thay đổi cách rõ ràng vịêc nạp vào giá trị với lệnh MOV cách hoàn toàn nh phần chế chuyển đổi nhiệm vụ Không có cờ thời ghi cho th mục trang Th mục trang không nằm thời (đợc đánh trang nhớ vật lý) nhiệm vụ liên kết đợc treo, nhng hệ điều hành cần phải chắn th mục trang đợc ảnh ghi đoạn trạng thái nhiệm vụ (Task-State SegmentTSS) nhiệm vụ đợc thể nhớ vật lý trớc nhiệmvụ đợc kết thúc Th mục trang nằm lại nhớ nhiệm vụ hoạt động Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC 8.Các điểm vào th mục trang điểm vào bảng trang Hình miêu tả khuôn dạng điểm vào th mục trang bảng trang trang 4-KByte địa vật lý 32-bit đợc sử dụng Hình 6: Khuôn dạng điểm vào th mục trang bảng trang cho trang 4-KByte địa vật lý 32-bit Tiếp theo , hình miêu tả khuôn dạng điểm vào th mục trang 4MByte địa vật lý 32-bit đợc sử dụng Hình 7: Khuôn dạng điểm vào th mục trang cho trang 4-MByte địa vật lý 32-bit Chức cờ trờng điểm vào hai hình nh sau: Vùng địa sở trang(Page base address): Từ bit 12 đến bit 31 Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC (Các điểm vào bảng trang cho trang 4-KByte) Vùng xác định rõ địa vật lý byte trang 4-KByte Những bit trờng đợc biểu diễn 20 bits nhiều ý nghĩa địa vật lý, chúng bắt buộc trang phải đợc canh lề vào ranh giới 4KByte (Các điểm vào th mục trang cho bảng trang 4-KByte.) Vùng xác định rõ địa vật lý bit bảng trang Những bit trờng đợc biểu diễn 20 bits nhiều ý nghĩa địa vật lý , chúng bắt buộc trang phải đợc canh lề vào ranh giới 4KByte (Các điểm vào th mục trang cho trang 4-MByte.) Vùng xác định rõ địa vật lý byte trang 4-MByte Chỉ bit từ 22 đến 31 trờng đợc sử dụng (và bit từ 12 đến 21 đợc đặt trớc phải đợc thiết lập cho xử lý Intel từ xử lý Pentium II) Những bit địa sở đợc biểu diễn 10 bits nhiều ý nghĩa của địa vật lý đó, chúng bắt buộc trang 4-MByte đợc lề ranh giới 4-MByte Cờ P (present flag) : bit Bit liệu trang hay bảng trang đợc đến điểm vào có đợc nạp vào thời nhớ vật lý Khi cờ đợc thiết lập lên 1, trang nằm nhớ vật lý việc chuyển đổi địa đợc thực Khi cờ bị xóa, trang nhớ xử lý cố gắng để truy nhập vào trang này, sinh thông báo trang cha có nhớ ( a page-fault exception - #PF) Bộ xử lý không thiết lập hay xoá cờ , mà hệ điều hành hay trình thực có tránh nhiệm giữ cho khỏi gián đoạn trạng thái cờ Bit cần đợc thiết lập lên chế độ đánh điạ vật lý mở rộng đợc kích hoạt Nếu xử lý sinh thông báo trang cha có nhớ, hệ điều hành cần phải thực thao táctheo trình tự sau: Sao chép trang từ đĩa lu trữ vào nhớ vật lý cần Nạp địa trang vào điểm vào bảng trang hay th mục trang thiết lập cờ P Những bit khác nh bit D hay bit A thiết lập lúc Làm hiệu lực điểm vào bảng trang đệm TLB Trả lại từ trình xử lý trang mặt nhớ đến khởi động lại chơng trình bị ngắt hay nhiệm vụ bị ngắt Cờ R/W (Read/Write flag): bit Chỉ rõ đặc quyền đọc/ghi trang hay nhóm trang( trờng hợp điểm vào th mục trang trỏ đến bảng trang.).Khi cờ bị xoá, trang đợc đọc (read-only).Khi cờ đợc thiết lập lên trang đợc đọc ghi lên Cờ tác động lẫn với cờ U/S cờ WP ghi CR0 Cờ U/S (User/Supervisor flag) : bit Chỉ rõ đặc quyền ngời sử dụng hay ngời quản trị hệthống cho trang hay nhóm trang(trong trờng hợp điểm th mục trang trỏ đến bảng trang.) Khi cờ bị xoá, trang đợc đến mức đặc quyền ngời quản trị hệ thống.Khi cờ đợc thiết lập, trang đợc đến mức đặc quyền ngời sử dụng Cờ tác động lẫn với cờ R/W cờ WP ghi CR0 Cờ PWT (Page-level write-through flag): bit3 10 Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC Điều khiển sách giấu ghi thẳng (write-through) hay giấu ghi lại (write-back) trang hay bảng trang Khi cờ đợc thiết lập, cache ghi thẳng đợc kích hoạt cho trang liên kết hay bảng trang Bộ xử lý bỏ qua cờ cờ CD(cache disable) CR0 đợc thiết lập Cờ PCD( Page-level cache disable flag) : bit Điều khiển việc giấu trang hay bảng trang Khi cờ PCD đợc thiết lập, việc giấu trang liên kết hay bảng trang đợc ngăn chặn , cờ bị xoá trang hay bảng trang đợc giấu Cờ cho phép việc giấu bị hiệu lực cho trang mà chứa cổng vào nhớ đợc ánh xạ hay trang không cung cấp tăng hiệu giấu Bộ xử lý bỏ qua cờ cờ CD CR0 đợc thiết lập Cờ A (Accessed flag): bit Chỉ liệu trang hay bảng trang đợc truy nhập cờ đợc thiết lập Phần mềm quản lý nhớ xoá cờ trang hay bảng trang đợc nạp lần vào nhớ vật lý Bộ xử lý sau thiết lập cờ lần trang hay bảng trang đợc truy nhập Bộ xử lý không xoá đợc hoàn toàn bit có phần mềm làm đợc Cờ D (Dirty flag) : bit Cờ liệu trang vừa đợc ghi cờ đợc thiết lập Cờ không đợc dùng điểm vào th mục trang đến bảng trang Phần mềm quản lý nhớ xoá cờ trang đợc nạp lần vào nhớ vật lý Bộ xử lý sau thiết lập cờ cho lần trang đợc truy thao tác ghi Bộ xử lý không xoá đợc cách hoàn toàn bit Chỉ có phần mềm xoá đợc Bit Avà bit D đợc cung cấp cho việc sử dụng phần mềm quản lý nhớ để quản lý việc chuyển đổi trang bảng trang vào hay nhớ vật lý Cờ PS (Page size flag): bit Cờ xác định kích thớc trang Cờ đợc sử dụng điểm vào th mục trang Khi cờ bị xoá, kích thớc trang 4-KByte điểm vào th mục trang đến bảng trang Khi cờ đợc thiết lập, kích thớc trang 4-MByte cho việc đánh địa 32-bit (và 2MByte việc đánh địa vật lý mở rộng đợc kích hoạt.) điểm vào th mục trang trỏ đến trang Nếu điểm vào th mục trang trỏ đến bảng trang, tất trang liên kết với bảng trang trang 4-Kbyte Cờ G (Global flag) : bit Chỉ trang chung cờ đợc thiết lập Khi trang đợc đánh dấu chung cờ kích hoạt trang chung (Page global enable flag) ghi CR4 đợc thiết lập, điểm vào bảng trang hay th mục trang cho trang không bị làm hiệu lực TLB ghi CR3 đợc nạp hay chuyển đổi nhiệm vụ xuất Cờ đợc cung cấp để ngăn chặn trang sử dụng thờng xuyên(nh trang chứa nhân hay hệ điều hành khác hay mã chạy đợc) đợc đa khỏi TLB Chỉ phần mềm thiết lập hay xoá cờ Với điểm vào th mục trang đến bảng trang, cờ đợc bỏ qua đặc tính chung trang đợc thiết lập điểm vào bảng trang Những bit đợc đặt trớc cung cấp cho phần mềm Trong điểm vào bảng trang, bit đợc đặt trớc thờng đợc xoá 0; điểm vào th mục trang trỏ đến bảng trang, bit đợc đặt trớc cần xoá Với điểm vào th mục trang cho trang 4-MByte, từ bit 12 đến bit 21 đợc đặt trớc xoá với xử lý Intel đến Pentium II Với hai loại điểm vào bit 9,10, 11 đợc cung cấp cho phần mềm Khi bit P bị xoá, từ bit đến bit 31 đợc cung cấp cho phần mềm Khi cờ PSE PAE ghi điều khiển CR4 đợc thiết lập , xử lý sinh thông báo trang cha có nhớ bit đặt trớc không đợc thiết lập 9.Những điểm vào th mục trang bảng trang mặt 11 Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC Khi cờ P bị xoá cho điểm vào bảng trang hay điểm vào th mục trang, hệ điều hành hay trình thực sử dụng phần lại điểm vào cho việc l u trữ thông tin nh vị trí trang đĩa lu trữ hệ thống Hình 8: Khuôn dạng điểm vào bảng trang th mục trang cho nhng trang mặt 10.Bộ đệm để chuyển hóa địa (TLB Translation Lookaside Buffer) Bộ xử lý lu trữ điểm vào th mục trang bảng trang đợc sử dụng gần vào nhớ cache chip đợc gọi đệm để chuyển hoá điạ Các xử lý họ P6 Pentium chia TLBs thành cache liệu cache lệnh Họ P6 giữ cho khỏi gián đoạn việc chia TLBs cho kích thớc trang 4-MByte 4-KByte Lệnh CPUID đợc sử dụng để xác định kích thớc TLBs đợc cung cấp họ P6 xử lý Pentium TLB MP 80386 có 32 entry, entry quy chiếu đến trang nhớ có kích thớc 4-KByte Tổng cộng TLB phủ vùng nhớ 128 Kbyte Đối với số hệ thống đa nhiệm tần suất truy nhập nhớ qua TLB 98% số lần quy chiếu nhớ qua th mục bảng trang chiếm 2% Hầu hết việc phân trang đợc thực việc sử dụng nội dung TLB Các chu kỳ bus đến th mục trang bảng trang nhớ đợc thực TLB không chứa thông tin chuyển đổi cho trang đợc yêu cầu Các TLB truy nhập đến chơng trình ứng dụng nhiệm vụ (mức đặc quyền u tiên lớn 0), nhng chúng làm hiệu lực TLB Chỉ có hệ điều hành hay thủ tục chạy chạy mức đặc quyền u tiên làm hiệu lực TLB hay chọn điểm vào TBL.Bất điểm vào th mục trang hay bảng trang đợc thay đổi (nhập vào cờ P bị xoá), hệ điều hành cần làm hiệu lực điểm vào phù hợp TLB để đợc cập nhật điểm vào đợc tham chiếu đến.Mặc dù, đặc tính mở rộng địa vật lý (PAE) đợc kích hoạt để sử dụng việc đánh địa 36-bit, bảng đợc cộng vào hệ thống cấp bậc phân trang Bảng đợc gọi bảng trỏ th mục trang Nếu điểm vào đợc thay đổi bảng này(để trỏ tới th mục trang khác), TLBs sau cần phải đợc xoá bỏ việc ghi lên CR3 Tất TLB (không chung) bị làm hiệu lực cách tự động lúc ghi CR3 đợc nạp (trừ phi cờ G cho điểm vào trang hay điểm vào bảng trang đợc thiết lập) Thanh ghi CR3 đợc nạp vào hai cách: Một cách rõ ràng việc sử dụng lệnh MOV nh sau: MOV CR3, EAX ghi EAX chứa địa sở (đầu tiên) th mục trang phù hợp Một cách hoàn toàn việc chạy chuyển đổi nhiệm vụ, thay đổi cách tự động nội dung ghi CR3 Lệnh INVLPG đợc cung cấp để làm hiệu lực điểm vào bảng trang xác định TLB Bình thờng, lệnh làm hiệu lực điểm vào TLB riêng, nhng vài trờng hợp, làm hiệu lực nhiều điểm vào đợc lựa chọn chí tất điểm vào TLB Lệnh bỏ qua việc thiết lập cờ G điểm vào th mục trang hay bảng trang Trong xử lý Pentium , cờ kích hoạt trang chung (PGE)trong ghi CR4 cờ G điểm vào th mục trang hay bảng trang(bit 8) đợc sử dụng để ngăn chặn trang đợc sử dụng thờng xuyên khỏi bị làm hiệulực cách tự động TLB chuyển đổi nhiệm vụ hay việc nạp ghi CR3 Khi xử lý nạp điểm vào th mục trang hay bảng trang cho trang chung vào TLB, điểm vào nằm lại TLB cách không vô hạn định Cách để làm hiệu lực điểm vào trang chung cách định mệnh xoá cờ PGE sau làm hiệu lực TLB hay sử dụng lệnh INVLPG để làm hiệu lực điểm vào th mục trang bảng trang cá nhân TLB 12 Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC 11 Sự mở rộng địa vật lý Cờ mở rộng địa vật lý (PAE) ghi CR4 kích hoạt mở rộng địa vật lý từ 32-bits sang 36-bits (Đặc tính đợc giới thiệu kiến trúc Intel xử lý Pentium Pro.) Ơ đây, xử lý cung cấp thêm pin dòng địa (address line pins) để cung cấp vùng nhớ cho bits thêm vào Tuỳ chọn đợc sử dụng chế độ phân trang đợc kích hoạt (đó cờ PG ghi CR0 cờ PAE ghi CR4 đợc thiết lập.) Khi chế độ mở rộng địa vật lý đợc kích hoạt, xử lý cho phép vài kích thớc trang : 4-KByte,2-MByte, 4-MByte Với việc đánh địa 32-bit, kích thớc trang đợc đánh địa tập hợp bảng phân trang.(Đó điểm vào th mục trang trỏ tới trang 2-MByte trang 4-MByte hay bảng trang theo thứ tự trỏ tới trang 4-KByte.) Để cung cấp địa 36-bit, thay đổi sau đợc tạo cho cấu trúc liệu việc phân trang : Các điểm vào bảng phân trang đợc tăng lên 64 bits để cung cấp vùng nhớ cho địa vật lý sở 36 bit Mỗi th mục trang bảng trang trang 4-KByte có đến 512 điểm vào Một bảng , đợc gọi bảng trỏ th mục trang, đợc thêm vào chế độ cấp bậc chuyển đổi địa tuyến tính Bảng có điểm vào , điểm vào 64 bit, nằm th mục trang chế độ cấp bậc Khi chế mở rộng địa vật lý, xử lý cung cấp đến th mục trang Trờng địa sở th mục trang 20-bit ghi CR3(PDPR) đợc thay trờng địa sở bảng trỏ th mục trang 27-bit.(Trong trờng hợp ghi CR3 đợc gọi PDPTR) Trờng cung cấp 27 bits nhiều ý nghĩa địa vật lý byte bảng trỏ th mục trang, bits bắt buộc bảng phải đợc định vị vùng ranh giới 32-byte Việc chuyển đổi địa vật lý đợc thay đổi phép ánh xạ địa tuyến tính 32-bit vào không gian địa vật lý lớn Hình 9: Cấu trúc ghi CR3 chế độ mở rộng địa vật lý đợc kích hoạt 11.1 Chuyển đổi địa tuyến tính với việc đánh địa mở rộng đ ợc kích hoạt (các trang 4-KByte) Hình 10 miêu tả trỏ th mục trang , th mục trang, chế độ cấp bậc bảng trang việc ánh xạ địa tuyến tính đến trang 4-KByte với chế độ đánh địa vật lý mở rộng đợc kích hoạt Phơng pháp phân trang đợc sử dụng để đánh địa lên tới 220 trang, mở rộng không gian địa tuyến tính 232 bytes (4 GBytes) 13 Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC Hình 10: Chuyển đổi địa tuyến tính với chế độ đánh địa vật lý mở rộng đợc kích hoạt với trang 4-KByte Để chọn điểm vào bảng khác nhau, địa tuyến tính đợc chia vào vùng: Điểm vào bảng trỏ th mục trang(Page-directory-pointer-table-entry) : bit 30 bit 31 cung cấp khoảng trống cho điểm vào bảng trỏ th mục trang Điểm vào đợc chọn cung cấp địa vật lý sở (đầu tiên) th mục trang Điểm vào th mục trang( Page- directory-entry) :từ bit 21 đến bit 29 cung cấp khoảng trống cho điểm vào th mục trang đợc chọn Điểm vào th mục trang cung cấp địa vật lý sở (đầu tiên) bảng trang Điểm vào bảng trang (Page-table entry): từ bit 12 đến bit 20 cung cấp khoảng trống cho điểm vào bảng trang đợc chọn Điểm vào cung cấp địa vật lý sở (đầu tiên) trang nhớ vật lý Địa tơng đối trang (Page offset): từ bit đến bit 11 cung cấp khoảng trống cho địa vật lý trang 11.2 Chuyển đổi địa tuyến tính với chế độ đánh địa mở rộng đ ợc kích hoạt(các trang 2Mbyte 4Mbyte) Hình 11 miêu tả bảng trỏ th mục trang th mục trang đợc sử dụng để ánh xạ địa tuyến tính đến trang 2-MByte 4-MByte Phơng pháp phân trang đợc sử dụng để ánh xạ đến 2048 trang ( điểm vào bảng trỏ th mục trang lần lợt chứa 512 điểm vào th mục trang.)vào không gian địa tuyến tính 4-GByte 14 Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC Hình 11 :Chuyển đổi điạ tuyến tính với chế độ đánh điạ vật lý mở rộng đợc kích hoạt với trang 2-Mbyte 4-MByte Kích thớc trang 2-MByte 4-MByte đợc chọn việc thiết lập cờ PSE ghi điều khiển CR4 cờ PS điểm vào th mục trang Khi cờ đợc thiết lập, địa tuyến tính đợc chia vào vùng: Điểm vào bảng trỏ th mục trang(Page-directory-pointer-table entry) : bit 30 bit 31 cung cấp khoảng trống cho điểm vào bảng trỏ th mục trang Điểm vào đợc lựa chọn cung cấp địa vật lý sở (đầu tiên) th mục trang Điểm vào th mục trang(Page-directory-table entry): từ bit 21 đến bit 29 cung cấp vùng trống cho điểm vào th mục trang Điểm vào đợc chọn cung cấp địa vật lý sở (đầu tiên) trang 2-MByte hay 4-MByte Địa tơng đối trang (Page offset): từ bit đến bit 20 cung cấp khoảng trống cho địa vật lý trang 11.3 Truy nhập vào toàn không gian địa vật lý mở rộng với cấu trúc bảng trang mở rộng Cấu trúc bảng trang miêu tả phần trớc đợc phân thành hai vùng cho phép đạt đến GBytes không gian địa vật lý mở rộng 64-GByte đợc đánh địa lần Các vùng 4-Gbyte thêm vào nhớ vật lý đợc đánh địa theo hai cách sau: Đổi trỏ ghi CR3 trỏ đến bảng trỏ th mục trang khác, bảng theo thứ tự trỏ đến tập hợp th mục trang bảng trang khác Đổi điểm vào bảng trỏ th mục trang trỏ đến th mục trang khác, th mục trang theo thứ tự lại trỏ đến tập hợp bảng trang khác 11.4 Các điểm vào th mục trang bảng trang với chế độ đánh trang mở rộng đợc kích hoạt Hình 12 miêu tả cấu trúc bảng trỏ th mục trang, th mục trang, điểm vào bảng trang trang 4-Kbyte địa vật lý mở rộng 36-bit đợc sử dụng Hình 13 miêu tả cấu trúc bảng trỏ th mục trang điểm vào th mục trang trang 2-MByte 4-MByte địa vật lý mở rộng 36-bit đợc sử dụng Những chức cờ điểm vào giống nh miêu tả phần :Các điểm vào th mục trang bảng trang.Những điểm khác điểm vào nh sau: Một điểm vào bảng trỏ th mục trang đợc thêm vào Kích thớc điểm vào tăng lên từ 32-bits lên 64 bits Số tối đa điểm vào th mục trang hay bảng trang 512 15 Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC Trờng địa vật lý sở điểm vào đợc mở rộng lên 24 bits Địa vật lý sở (đầu tiên) điểm vào xác định nh sau tuỳ thuộc vào loại điểm vào: Điểm vào bảng trỏ th mục trang : địa vật lý byte th mục trang 4-KByte Điểm vào th mục trang: địa vật lý byte bảng trang 4KByte hay trang 2-MByte Điểm vào bảng trang: địa vật lý byte trang 4-KByte Với tất điểm vào trang (trừ điểm vào th mục trang đến trang 2-MByte hay 4-MByte), bits địa sở (đầu tiên) trang đợc biểu diễn 24 bits nhiều ý nghĩa địa vật lý 36-bit, chúng bắt buộc bảng trang trang phải đợc nằm vùng ranh giới 4-Kbyte Khi điểm vào th mục trang trỏ tới trang 2-MByte hay 4-MByte, điạ sở đợc biểu diễn 15 bits nhiều ý nghĩa địa vật lý 36 bit, chúng bắt buộc trang phải đợc đặt vùng ranh giới 2-MByte 4-MByte Hình 12: Cấu trúc bảng trỏ, th mục trang, điểm vào bảng trang cho trang 4-KByte địa vật lý mở rộng 36-bit 16 Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC Hình 13: Cấu tạo bảng trỏ th mục trang, điểm vào th mục trang cho trang 2-MByte 4-MByte địa vật lý mở rộng 36-bit Bit P (present flag- bit 0) tất điểm vào bảng trỏ th mục trang cần phải thiết lập lên lúc chế độ đánh địa vật lý mở rộng đợc kích hoạt Đó lúc cờ PAE (bit ghi CR4) cờ PG(bit 31 ghi CR0 )đợc thiết lập Nếu cờ P không đợc thiết lập tất điểm vào bảng trỏ th mục trang bảng trỏ th mục trang chế độ đánh địa vật lý mở rộng đợc kích hoạt, ngoại lệ bảo vệ chung (general-protection exception ,#GP) đợc sinh Cờ PS (page size flag- bit 7) điểm vào th mục trang xác định điểm vào trỏ đến bảng trang hay trang 2-MByte 4-MByte Khi cờ bị xoá, điểm vào tới bảng trang, cờ đợc thiết lập lên điểm vào trỏ tới trang 2-MByte 4-MByte Cờ cho phép trang 4-KByte, 2-MByte, 4-MByte đợc xếp nằm tập hợp bảng phân trang Các cờ A D (bit 6) đợc cung cấp cho điểm vào bảng trang đến trang Bits 9,10,11 tất điểm vào trang cho chế độ mở rộng địa vật lý đợc cung cấp cho phần mềm (Khi cờ P đợc thiết lập, từ bit đến bit 63 đợc cung cấp cho phần mềm.) Tất bit hình đợc đánh dấu đặt trớc cần xoá phần mềm không truy nhập đợc phần mềm Khi cờ PSE và/hoặc cờ PAE ghi điều khiển CR4 đợc thiết lập lên 1, xử lý sinh thông báo trang cha có nhớ (#PF),nếu bit đặt trớc điểm vào th mục trang bảng trang không đợc xoá , xử lý sinh thông báo ngoại lệ bảo vệ chung (#GP) bits đặt trớc điểm vào bảng trỏ th mục trang bảng trỏ th mục trang không đợc xoá 12 Sự mở rộng kích thớc trang 36-bit (page size extension- PSE) Sự mở rộng kích thớc trang 36-bit mở rộng địa vật lý 36-bit cung cấp cho trang 4-MByte giữ cho khỏi gián đoạn điểm vào th mục trang 4-byte Phơng pháp tiếp cận cung cấp chế đơn giản cho nhà cung cấp hệ điều hành để đánh địa nhớ vật lý 4-GByte mà không đòi hỏi thay đổi thiết kế chính, nhng có giới hạn hiệu cho tôn trọng việc phân trang theo yêu cầu Họ P6 đặc tính mở rộng địa vật lý xử lý cung cấp truy nhập chung vào không gian địa vật lý 36-bit Mặc dù , đòi hỏi mở rộng điểm vào th mục trang bảng trang đến cấu trúc 8-byte(64 bits) , có thêm bảng trỏ th mục trang, dẫn đến kết cấp độ khác hành động gián tiếp chuyển đổi địa Với họ xử lý P6 cung cấp đặc tính mở rộng kích thớc trang 36-bit, kiến trúc nhớ ảo đợc mở rộng để cung cấp kích thớc trang 4-MByte kết hợp với việc đánh địa vật lý 36-bit Cần nhớ vài xử lý họ P6 không cung cấp đặc tính 17 Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC 12.1 Sự miêu tả đặc tính mở rộng kích thớc trang 36-bit Đặc tính mở rộng kích thớc trang 36-bit (PSE-36) đợc phát hệ điều hành thông qua lệnh CPUID Đặc biệt, hệ điều hành chạy lệnh CPUID với giá trị ghi EAX sau xác định hỗ trợ cho đặc tính việc kiểm tra bit 17 ghi EAX trả lại giá trị Nếu đặc tính PSE-36 đợc hỗ trợ , hệ điều hành đợc cho phép sử dụng đặc tính này, nh sử dụng bits đợc đặt trớc cách hình thức Để sử dụng đặc tính PSE-36, cờ PSE cần phải đợc kích hoạt hệ điều hành (bit ghi CR4) Cần nhớ bit phân chia điều khiển CR4 không tồn để qui định việc sử dụng trang 36-bit MByte, đặc tính trở thành mẫu cho trang 4-Mbyte xử lý hỗ trợ Bảng sau kích thớc trang kích thớc địa vật lý đạt đợc từ thiết lập khác cờ điều khiển trang cho xử lý họ P6 để hỗ trợ đặc tính PSE36 Vùng xám thay đổi bảng kết từ đặc tính PSE 36-bit Bảng 2: Các chế độ phân trang kích thớc địa vật lý Để sử dụng đặc tính PSE-36, đặc tính PAE cần đợc xoá Mặc dù, đặc tính PSE-36 không ảnh hởng đến đặc tính PAE 36-bit Hệ điều hành tồn phần mềm sử dụng đặc tính PAE tiếp tục có đặc tính chức tơng thích với xử lý họ P6, hỗ trợ đặc tính PSE 36-bit Đặc biệt, cấu trúc điểm vào th mục trang PAE đợc kích hoạt cho trang 2-MByte 4-MByte xác nh mô tả hình 13 Bất kỳ đặc tính đánh địa 36-bit đợc sử dụng(PAE hay PSE 36-bit), không gian địa tuyến tính xử lý lại 32 bits Những ứng dụng cần phân vùng không gian địa công việc chúng, công việc nạp qua tiến trình hệ điều hành đa nhiệm ,để tạo thuận lợi cho nhớ vật lý thêm vào đợc cung cấp hệ thống Đặc tính PSE 36-bit mở rộng cấu trúc điểm vào th mục trang kiến trúc Intel cho trang 4-MBytevà địa 32-bit việc sử dụng bits 13 đến 16 (các bits đợc đặt trớc cách hình thức đợc yêu cầu ghi 0) để mở rộng địa vật lý mà không đòi hỏi điểm vào th mục trang 8-byte Vì thế, với đặc tính PSE-36, th mục trang chứa đến 1024 điểm vào, điểm vào trỏ đến trang 4-Mbyte , trang tồn đâu không gian địa vật lý 36-bit xử lý Hình 14 việc ánh xạ địa tuyến tính đến trang 4-MByte đặc tính PSE 36-bit đợc kích hoạt Địa vật lý sở trang 4-MByte đợc chứa th mục trang PA-2(các bit từ 13 đến 16) đợc sử dụng để cung cấp bits cao (từ bit 32 đến bit 35) địa vật lý 36-bit PA-1(từ bit 22 đến bit 31) tiếp tục cung cấp 10 bit (từ bit 22 đến 31) địa vật lý cho trang 4-MByte Địa offset trang cung cấp 22 bit thấp địa tuyến tính Sơ đồ loại bỏ mức thứ hai hành động gián tiếp việc sử dụng bảng trang 4-Kbyte 18 Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC Hình 14: Sự khác cấu trúc PDE chế độ đánh địa 36-bit 32-bit Chú ý: PA-2 = Các bit 32 đến 35 địa sở trang 4-MByte( tơng ứng với bit 13 đến 16) PA-2 = Các bit 22 đến 31 địa sở trang 4-MByte PAT = bit 12 đợc sử dụng bit nhiều ý nghĩa số bảng thuộc tính trang (Page Attribute Table-PAT) PS = bit bit kích thớc trang (Page Size Bit) trang 4MByte( bit cần thiết lập lên 1) Reserved = bit từ 17 đến 21 đợc đặt trớc cho việc mở rộng sau Không thay đổi cấu trúc ý nghĩa bit đến 11 đến Đặc tính PSE-36 suốt với hệ điều hành tồn mà sử dụng trang 4-MByte, bit không sử dụng PA-2 thời đợc làm cho xử lý Intel Đặc tính đòi hỏi trang 4-MByte đợc xếp vùng ranh giới 4MByte nhớ vật lý liên tiếp phần 4-MByte Vì , 10 bit PA-1 đủ để xác định rõ địa vật lý sở (đầu tiên) trang 4-MByte dới 4GBytes Một hệ điều hành dễ dàng hỗ trợ địa lớn GByte cách dễ dàng việc cung cấp bit cao địa vật lý PA-2 tạo PDE (điểm vào th mục trang) cho trang 4-MByte Hình 15 miêu tả việc ánh xạ địa tuyến tính đến trang 4-Mbyte đặc tính PSE 36-bit đợc kích hoạt Địa vật lý sở trang 4-MByte đợc chứa PDE PA-2(bit 13 đến 16) đợc dùng để cung cấp bốn bit cao (từ bit 32 đến 35) địa vật lý 36 bit PA-1(từ bit 22 đến bit 31) tiếp tục cung cấp 10 bit (từ bit 22 đến 31) địa vật lý cho trang 4-MByte Địa offset trang đ ợc cung cấp 22 bit thấp địa tuyến tính Sơ đồ loại bỏ mức thứ hai hành động gián tiếp gây việc sử dụng bảng trang 4KByte 19 Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC Hình 15: Sự mở rộng kích thớc trang tuyến tính đến việc chuyển đổi vật lý Đặc tính PSE-36 suốt với hệ điều hành tồn mà sử dụng trang 4-MByte, bit không sử dụng PA-2 thời đợc làm cho xử lý Intel Đặc tính đòi hỏi trang 4-MByte đợc xếp vùng ranh giới 4MByte nhớ vật lý liên tiếp phần 4-MByte Vì , 10 bit PA-1 đủ để xác định rõ địa vật lý sở (đầu tiên) trang 4-MByte dới 4GBytes Một hệ điều hành dễ dàng hỗ trợ địa lớn GByte cách dễ dàng việc cung cấp bit cao địa vật lý PA-2 tạo PDE (điểm vào th mục trang) cho trang 4-MByte 12.2 Phát lỗi Có vài điều kiện gây cho xử lý họ P6 gây lỗi trang nhớ (page fault) Những điều kiện có liên quan đến việc sử dụng , chuyển đổi đặc tính quản lý nhớ khác nhau: Nếu đặc tính PSE đợc kích hoạt, giá trị khác bit đặt trớc lại (từ 17 đến 21) điểm vào th mục trang 4-MByte gây việc thông báo trang nhớ, với bit đặt trớc(bit 3) thiết lập mã lỗi Nếu đặc tính PAE đợc kích hoạt thiết lập cho việc sử dụng trang 2-MByte 4-MByte(đó điểm vào bảng th mục trang 8byte đợc sử dụng.), giá trị khác bit đặt trớc từ 13 đến 20 gây việc trang nhớ (page fault), với bit đặt trớc (bit 3) thiết lập mã lỗi Chú ý bit 12 đợc sử dụng để hỗ trợ đặc tính PAT(page attribute table) 13 Anh xạ đoạn sang trang Cơ chế phân đoạn phân trang đợc cung kiến trúc Intel hỗ trợ phơng pháp đa dạng để quản lý nhớ Khi chế phân đoạn phân trang đợc kết hợp, đoạn đợc ánh xạ đến trang vài trờng hợp Để cung cấp môi trờng đánh địa không phân đoạn, ví dụ nh tất mã, liệu, modul ngăn xếp đợc ánh xạ đến hay nhiều đoạn lớn( đến 4-GByte) , mà chúng chia sẻ vùng địa tuyến tính Ơ đây, đoạn hoàn toàn không nhìn thấy đợc cho ứng dụng hệ điều hành hay trình thực Nếu việc phân trang đợc sử dụng, chế phân trang ánh xạ không gian địa tuyến tính đơn(đợc chứa đoạn đơn) vào nhớ ảo Hay, chơng trình (hay nhiệm vụ) có không gian địa tuyến tính lớn nó(đợc chứa đoạn nó), chơng trình(hay nhiệm vụ ) đợc ánh xạ vào nhớ ảo qua th mục trang việc thiết lập bảng trang Các đoạn nhỏ kích thớc trang Nếu đoạn đợc đặt vào trang mà trang không đợc chia sẻ với đoạn khác, nhớ phụ lãng phí Ví dụ, cấu trúc liệu nhỏ, giả dụ 1-byte semanphore, chiếm 4KByte tự đợc đặt trang Nếu nhiều semanphore đợc sử dụng, hiệu để xếp chúng vào trang đơn Kiến trúc Intel không bắt làm cho phù hợp vùng ranh giới trang đoạn Một trang chứa phần cuối đoạn phần đầu đoạn khác Nh vậy, đoạn chứa phần cuối trang phần đầu trang khác Phần mềm quản lý nhớ đơn giản hiệu bắt buộc vài xếp theo hàng vùng ranh giới trang đoạn Ví dụ, đoạn vừa trang lại đợc đặt trang hai trang, có hai lần phí tổn phân trang để hỗ trợ việc truy nhập vào đoạn Một phơng pháp để kết hợp việc phân trang phân đoạn, việc làm đơn giản hoá phần mềm quản lý nhớ , cung cấp cho đoạn bảng trang nh hình 14 Sự quy ớc tạo cho đoạn điểm vào đơn th mục trang đợc cung cấp thông tin điều khiển truy nhập cho việc phân trang toàn đoạn 20 Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC Hình 16: Sự quy ớc quản lý nhớ đến bảng trang cho đoạn phần II: Chơng trình Minh hoạ Chơng trình minh hoạ đa số thông tin hệ thống: 1.Thông tin phần cứng Page size : kích thớc trang tính theo byte Processor type: kiểu xử lý Minimum application address: Địa nhỏ truy nhập đợc cho ứng dụng th viện liên kết động(DLLs) Maximum application address: Địa lớn truy nhập đợc cho ứng dụng th viện liên kết động (DLLs) 2.Thông tin nhớ Memory load: Phần trăm nhớ sử dụng (%) 21 Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC Total physical memory: Tổng nhớ vật lý (KB) Free physical memory: Bộ nhớ cha sử dụng (KB) Total paging file: Tổng nhớ đợc phân trang (KB) Free paging file: Bộ nhớ phân trang cha sử dụng (KB) Total virtual memory: Tổng nhớ ảo (KB) Free virtual memory : Bộ nhớ ảo cha sử dụng (KB) 22 Cấu trúc liệu phục vụ cho việc quản lý nhớ phân trang IBM-PC Phần III: Tài liệu tham khảo Giáo trình sở chuyên ngành Hệ điều hành Nguyễn Thanh Tùng INSIDE WINDOWS 2000 MSPRESS Intel Architecture Software Developers Manual - Volumn 3: System Programming 23 [...]... khiển truy nhập cho việc phân trang toàn bộ một đoạn 20 Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM- PC Hình 16: Sự quy ớc quản lý bộ nhớ chỉ đến một bảng trang cho mỗi đoạn phần II: Chơng trình Minh hoạ Chơng trình minh hoạ đa ra một số thông tin về hệ thống: 1.Thông tin về phần cứng Page size : kích thớc trang tính theo byte Processor type: kiểu bộ xử lý Minimum application... Free physical memory: Bộ nhớ cha sử dụng (KB) Total paging file: Tổng bộ nhớ đợc phân trang (KB) Free paging file: Bộ nhớ phân trang cha sử dụng (KB) Total virtual memory: Tổng bộ nhớ ảo (KB) Free virtual memory : Bộ nhớ ảo cha sử dụng (KB) 22 Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM- PC Phần III: Tài liệu tham khảo 1 Giáo trình cơ sở chuyên ngành Hệ điều hành Nguyễn Thanh... cho phần mềm Khi bit P bị xoá, từ bit 1 đến bit 31 đợc cung cấp cho phần mềm Khi cờ PSE và PAE trong thanh ghi điều khiển CR4 đợc thiết lập , bộ xử lý sinh ra một thông báo trang cha có trong bộ nhớ nếu những bit đặt trớc này không đợc thiết lập về 0 9.Những điểm vào th mục trang và bảng trang không có mặt 11 Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM- PC Khi cờ P bị xoá cho. .. ra bởi việc sử dụng các bảng trang 4KByte 19 Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM- PC Hình 15: Sự mở rộng kích thớc trang tuyến tính đến việc chuyển đổi vật lý Đặc tính PSE-36 là trong suốt với hệ điều hành đang tồn tại mà sử dụng các trang 4-MByte, bởi vì các bit không sử dụng trong PA-2 hiện thời đợc làm cho về 0 bởi các bộ xử lý Intel Đặc tính này đòi hỏi các trang. .. nhập đợc cho ứng dụng và các th viện liên kết động(DLLs) Maximum application address: Địa chỉ lớn nhất có thể truy nhập đợc cho ứng dụng và các th viện liên kết động (DLLs) 2.Thông tin về bộ nhớ Memory load: Phần trăm bộ nhớ đang sử dụng (%) 21 Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM- PC Total physical memory: Tổng bộ nhớ vật lý (KB) Free physical memory: Bộ nhớ cha... mục trang, dẫn đến kết quả là một cấp độ khác của hành động gián tiếp chuyển đổi địa chỉ Với họ các bộ xử lý P6 cung cấp đặc tính mở rộng kích thớc trang 36-bit, kiến trúc bộ nhớ ảo này đợc mở rộng để cung cấp kích thớc trang 4-MByte kết hợp với việc đánh địa chỉ vật lý 36-bit Cần nhớ rằng vài bộ xử lý của họ P6 không cung cấp đặc tính này 17 Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang. .. bit tiếp theo (từ bit 22 đến 31) của địa chỉ vật lý đó cho trang 4-MByte Địa chỉ offset trong trang này cung cấp 22 bit thấp hơn của địa chỉ tuyến tính đó Sơ đồ này loại bỏ mức thứ hai của hành động gián tiếp bởi việc sử dụng các bảng trang 4-Kbyte 18 Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM- PC Hình 14: Sự khác nhau trong cấu trúc PDE giữa chế độ đánh địa chỉ 36-bit và 32-bit.. .Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM- PC Điều khiển chính sách giấu ghi thẳng (write-through) hay giấu ghi lại (write-back) của mỗi trang hay mỗi bảng trang Khi cờ này đợc thiết lập, cache ghi thẳng đợc kích hoạt cho trang liên kết hay bảng trang Bộ xử lý bỏ qua cờ này nếu cờ CD(cache disable) trong CR0 đợc thiết lập Cờ PCD( Page-level cache... dùng trong các điểm vào th mục trang chỉ đến những bảng trang Phần mềm quản lý bộ nhớ xoá cờ này khi một trang đợc nạp lần đầu tiên vào trong bộ nhớ vật lý Bộ xử lý sau đó thiết lập cờ này cho lần đầu tiên khi một trang đợc truy bởi thao tác ghi Bộ xử lý không xoá đợc một cách hoàn toàn bit này Chỉ có phần mềm mới xoá đợc nó Bit Avà bit D đợc cung cấp cho việc sử dụng bởi phần mềm quản lý bộ nhớ để quản. .. điểm vào trang chung một cách định mệnh là xoá cờ PGE và sau đó làm mất hiệu lực các TLB đó hay sử dụng lệnh INVLPG để làm mất hiệu lực các điểm vào th mục trang và bảng trang cá nhân trong các TLB 12 Cấu trúc dữ liệu phục vụ cho việc quản lý bộ nhớ phân trang trong IBM- PC 11 Sự mở rộng địa chỉ vật lý Cờ mở rộng địa chỉ vật lý (PAE) trong thanh ghi CR4 kích hoạt một sự mở rộng của các địa chỉ vật lý từ

Ngày đăng: 23/06/2016, 16:12

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan