intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Cấp hệ điều hành

Chia sẻ: Bùi Trọng Quốc Viễn | Ngày: | Loại File: PDF | Số trang:29

199
lượt xem
32
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Cấu trúc Overlay có tính chất định vị động cho phép sử dụng bộ nhớ nhiều hơn phần bộ nhớ mà hệ thống dành cho chƣơng trình. Cấu trúc chƣơng trình mang tính chất tĩnh, không thay đổi trong tất cả các lần thực hiện chƣơng trình. -So với cấu trúc động, cấu trúc Overlay đòi hỏi cung cấp thông tin đơn giản, không gắn cấu trúc vào chƣơng trình nguồn -Với sơ đồ Overlay tốt và các module độ dài không quá lớn thì hiệu quả không kém so với cấu trúc động...

Chủ đề:
Lưu

Nội dung Text: Cấp hệ điều hành

  1. Caáp heä ñieàu haønh Muïc tieâu: Tìm hieåu kyõ thuaät boä nhôù aûo (Virtual Memory) - Caùc chæ thò I/O aûo - Kyõ thuaät xöû lyù tieán trình song song -
  2. Caáp heä ñieàu haønh Cấu trúc chƣơng trình Cấu trúc Overlay Trong cấu trúc Overlay, các module chƣơng trình sau khi biên dịch đƣợc chia thành các mức: Mức 0: mức chứa module gốc dùng để nạp chƣơng trình Mức 1: chứa các module đƣợc gọi bởi mức 0 Mức 2: chứa các module đƣợc gọi bởi mức 1 ………. Mức i: chứa các module đƣợc gọi bởi mức i-1 Bộ nhớ dành cho chƣơng trình cũng đƣợc chia thành các mức tƣơng ứng với các mức chƣơng trình. Kích thƣớc mỗi mức trong bộ nhớ bằng kích thƣớc module lớn nhất của mức chƣơng trình tƣơng ứng. CPU M0 Mức 0: 80Kb (80Kb) M1 M2 Mức 1: 90Kb (50Kb) (90Kb) M3 M4 M5 Mức 2: 100Kb (50Kb) (100Kb) (70Kb)
  3. Caáp heä ñieàu haønh Cấu trúc chƣơng trình Cấu trúc Overlay * Ƣu điểm: - Cấu trúc Overlay có tính chất định vị động  cho phép sử dụng bộ nhớ nhiều hơn phần bộ nhớ mà hệ thống dành cho chƣơng trình. Cấu trúc chƣơng trình mang tính chất tĩnh, không thay đổi trong tất cả các lần thực hiện chƣơng trình. - So với cấu trúc động, cấu trúc Overlay đòi hỏi cung cấp thông tin đơn giản, không gắn cấu trúc vào chƣơng trình nguồn - Với sơ đồ Overlay tốt và các module độ dài không quá lớn thì hiệu quả không kém so với cấu trúc động * Nhƣợc điểm: hiệu qủa tiết kiệm bộ nhớ phụ thuộc cách tổ chức, bố trí các module chƣơng trình
  4. Caáp heä ñieàu haønh Boä nhôù aûo Khoù khaên: - Boä nhôù coù dung löôïng nhoû vaø giaù thaønh raát cao - Laäp trình vieân phaûi maát nhieàu thôøi gian ñeå xöû lyù kích thöôùc chöông trình - Khoù söû duïng caùc giaûi thuaät toát ñoøi hoûi khoâng gian boä nhôù lôùn Giaûi phaùp truyeàn thoáng: - Chia chöông trình thaønh caùc maûng nhoû (overlay) coù theå ñaët vöøa boä nhôù - Chöông trình thöïc thi laàn löôït caùc overlay Nhöôïc ñieåm: Ngöôøi laäp trình töï thao taùc baèng tay caùc coâng vieäc: - Taùch chöông trình - Quyeát ñònh vò trí caát overlay trong boä nhôù phuï - Saép xeáp chuyeån ñoåi overlay giöõa boä nhôù chính vaø phuï Khaéc phuïc: Phöông phaùp töï ñoäng hoùa toaøn boä quaù trình overlay  Phöông phaùp boä nhôù aûo
  5. Caáp heä ñieàu haønh Boä nhôù aûo * Kyõ thuaät phaân trang Taùch rieâng khoâng gian ñòa chæ vaø caùc vò trí oâ nhôù - Ví duï: maùy tính vôùi tröôøng ñòa chæ 16 bit trong caùc chæ thò vaø 4096 töø - nhôù  Chöông trình maùy tính ñòa chæ hoùa 216 = 65536 töø nhôù 1. Noäi dung boä nhôù chính ñöôïc caát vaøo 2. Caùc töø nhôù ñöôïc ñaët töø 4096 ñeán boä nhôù phuï 64K 8191 khoâng gian 4K ñòa chæ Ñòa chæ 0 boä nhôù chính 0 4096 4095 8191 12287 3. Caùc töø nhôù töø 4096 ñeán 8191 naïp vaøo boä nhôù chính 4. Aùnh xaï ñòa chæ töø 4096 ñeán 8191 leân caùc vò trí nhôù töø 0 ñeán Aùnh xaï ñòa chæ töø khoâng gian 4095 ñòa chæ leân boä nhôù chính 65535
  6. Caáp heä ñieàu haønh Boä nhôù aûo * Kyõ thuaät phaân trang Yeâu caàu: Boä nhôù phuï coù theå chöùa ñöôïc toaøn boä chöông trình - Khaùi nieäm: - + Baûn sao chöông trình trong boä nhôù phuï laø baûn goác + Caùc maûng chöông trình mang vaøo boä nhôù chính ôõ nhöõng thôøi ñieåm khaùc nhau laø baûn sao Thieát keá: - + Khoâng gian ñòa chæ aûo taùch thaønh nhieàu trang kích thöôùc baèng nhau vaø luoân laø luõy thöøa cuûa 2 + Khoâng gian ñòa chæ vaät lyù cuõng taùch thaønh töøng maûng coù kích thöôùc baèng kích thöôùc caùc trang vaø caát vaøo khung trang
  7. Caáp heä ñieàu haønh Boä nhôù aûo * Kyõ thuaät phaân trang 32K Ví duï: 64K khoâng gian khoâng gian vaät lyù ñòa chæ aûo 0 0 4K 4K Page 0 0-4095 Page 0 0-4095 4096 4096 Page 1 4096-8191 Page 1 4096-8191 8192 8192 Page 2 8192-12287 Page 2 8192-12287 12288 12288 Page 3 12288-16383 Page 3 12288-16383 16384 16384 Page 4 .... Page 4 .... 20480 20480 Page 5 .... Page 5 .... 24576 24576 Page 6 24576-28671 Page 6 .... 28672 28672 Page 7 28672-32767 Page 7 .... 32768 Page 8 .... 36864 Page 9 .... 40960 0011000000010110 Page 10 .... 45056 Page 11 .... 49152 Page 12 .... 12 bit 4 bit 53248 Ñòa chæ choïn treân Soâ trang Page 13 .... 57344 trang aûo = 22 aûo = 3 Page 14 57344-61139 (12310) 61140 Page 15 61140-65536
  8. Caáp heä ñieàu haønh Boä nhôù aûo * Kyõ thuaät phaân đoạn + Kỹ thuật phaân trang: Neáu kích thöôùc chöông trình/döõ lieäu khoâng baèng ñuùng moät trang Khoaûng troáng khoâng duøng ñeán  Hieän töôïng phaân maûnh  Hao phí boä nhôù + Kỹ thuật phaân ñoaïn: - Thieát keá: * Taïo caùc khoâng gian ñòa chæ ñoäc laäp (goïi laø segment) * Moãi segment coù chieàu daøi khaùc nhau vaø coù theå thay ñoåi theo thôøi gian thöïc * Ñeå xaùc ñònh ñòa chæ trong boä nhôù phaân ñoaïn, chöông trình cung caáp ñòa chæ coù 2 phaàn: soá segment vaø ñòa chæ trong segment - Öu ñieåm: * Ñôn giaûn hoùa vieäc quaûn lyù caáu truùc döõ lieäu * Deã daøng duøng chung döõ lieäu cho caùc chöông trình * Tieát kieäm boä nhôù
  9. Caáp heä ñieàu haønh Boä nhôù aûo * Kyõ thuaät phaân đoạn Segment 0 (4K) Segment 0 (4K) Segment 0 (4K) Segment 0 (4K) Segment 1 (8K) Segment 7 (5K) Segment 7 (5K) Segment 7 (5K) (3K) (3K) (3K) Segment 2 (5K) Segment 2 (5K) Segment 2 (5K) Segment 2 (5K) Segment 3 (8K) Segment 3 (8K) Segment 3 (8K) Segment 6 (4K) (4K) Segment 4 (7K) Segment 4 (7K) Segment 5 (4K) Segment 5 (4K) (3K) (3K) - Nhöôïc ñieåm: Boä nhôù ñöôïc chia, moät soá chöùa segment vaø moät soá chöùa loã troáng  Hieän töôïng baøn côø  laõng phí boä nhôù
  10. Caáp heä ñieàu haønh Boä nhôù aûo * Kyõ thuaät phaân đoạn: khaéc phuïc hieän töôïng baøn côø Phöông phaùp 1: Moãi laàn xuaát hieän loã troáng, di chuyeån segment veà vò trí 0 cuûa boä nhôù Segment 0 (4K) Segment 0 (4K) Segment 0 (4K) Segment 0 (4K) Segment 0 (4K) Segment 1 (8K) Segment 7 (5K) Segment 7 (5K) Segment 7 (5K) Segment 7 (5K) (3K) Segment 2 (5K) Segment 2 (5K) Segment 2 (5K) Segment 2 (5K) Segment 2 (5K) Segment 3 (8K) Segment 6 (4K) Segment 6 (4K) Segment 3 (8K) Segment 3 (8K) (4K) Segment 4 (7K) Segment 4 (7K) Segment 4 (7K) Segment 4 (7K) Segment 4 (7K) (7K) (3K) (3K) Toán nhieàu thôøi gian ñeå di chuyeån
  11. Caáp heä ñieàu haønh Boä nhôù aûo * Kyõ thuaät phaân đoạn: khaéc phuïc hieän töôïng baøn côø Phöông phaùp 2 (Best Fit): Choïn phaàn troáng vöøa khít nhaát vôùi segment caàn ñöa vaøo Segment 0 (4K) Segment 0 (4K) Segment 0 (4K) Segment 0 (4K) Segment 1 (8K) Segment 7 (5K) Segment 7 (5K) Segment 7 (5K) (3K) (3K) Segment 8 (3K) 3K Segment 2 (5K) Segment 2 (5K) Segment 2 (5K) Segment 2 (5K) Segment 8 (3K) Segment 3 (8K) Segment 3 (8K) Segment 6 (4K) Segment 6 (4K) (4K) 4K (4K) Segment 4 (7K) Segment 4 (7K) Segment 4 (7K) Segment 4 (7K)
  12. Caáp heä ñieàu haønh Boä nhôù aûo * Kyõ thuaät phaân đoạn: khaéc phuïc hieän töôïng baøn côø Phöông phaùp 3 (First Fit): Queùt voøng troøn danh saùch caùc phaàn troáng vaø choïn phaàn troáng ñaàu tieân ñuû lôùn vöøa vôùi segment caàn ñöa vaøo Segment 0 (4K) Segment 0 (4K) Segment 0 (4K) Segment 0 (4K) Segment 1 (8K) Segment 7 (5K) Segment 7 (5K) Segment 7 (5K) (3K) (3K) Segment 8 (3K) 1 Segment 2 (5K) Segment 2 (5K) Segment 2 (5K) Segment 2 (5K) Segment 8 (3K) Segment 3 (8K) Segment 3 (8K) Segment 6 (5K) Segment 6 (4K) (4K) (3K) 2 Segment 4 (7K) Segment 4 (7K) Segment 4 (7K) Segment 4 (7K)
  13. Caáp heä ñieàu haønh Boä nhôù aûo SƠ ĐỒ KẾT HỢP PHÂN TRANG VÀ PHÂN ĐOẠN * Vì sao cần kết hợp?: Sơ đồ phân trang đảm bảo hiệu quả sử dụng bộ nhớ mà không phụ thuộc vào cấu trúc chƣơng trình của ngƣời sử dụng, điều khiển trang thuận tiện, đơn giản. Tuy nhiên khi chƣơng trình có kích thƣớc lớn thì kích thƣớc bảng PCB cũng lớn theo  lãng phí bộ nhớ. Nếu kích thƣớc trang quá nhỏ  kích thƣớc PCb lớn  tăng khả năng nạp đi nạp lại trang  giảm hiệu quả sử dụng bộ nhớ. Sơ đồ phân đoạn linh hoạt hơn về độ dài các đoạn nhƣng vì độ dài các đoạn khác nhau  phức tạp trong vấn đề thực hiện và cấp phát bộ nhớ  Để phát huy ƣu điểm và hạn chế nhƣợc điểm của các sơ đồ trên, ngƣời ta thƣờng sử dụng sơ đồ kết hợp phân trang và phân đoạn
  14. Caáp heä ñieàu haønh Boä nhôù aûo SƠ ĐỒ KẾT HỢP PHÂN TRANG VÀ PHÂN ĐOẠN Trong sơ đồ này, chƣơng trình đƣợc biên dịch theo sơ đồ phân đoạn và có một bảng quản lý SCB. Mỗi đoạn chƣơng trình lại đƣợc biên tập theo sơ đồ phân trang và tạo ra từng bảng PCB riêng cho mỗi đoạn. Khi chƣơng trình đƣợc nạp vào hệ thống, hệ điều hành sẽ cấp phát cho chƣơng trình các trang cần thiết để chứa đủ các đoạn chƣơng trình
  15. Caáp heä ñieàu haønh Boä nhôù aûo SƠ ĐỒ KẾT HỢP PHÂN TRANG VÀ PHÂN ĐOẠN Gọi trƣờng địa chỉ A của phần tử thứ I trong SCB với SCB là nơi chứa bảng quản lý trang thứ I (PCBi) có trƣờng độ dài L chứa độ dài của PCBi Khi thực hiện, bảng PCB đƣợc nạp vào bộ nhớ và địa chỉ đầu của nó đƣợc ghi vào thanh ghi quản lý đoạn Rs. Địa chỉ truy nhập dữ liệu đƣợc biểu diễn bởi bộ ba (s,p,d), trong đó: s: số hiệu đoạn cần truy nhập trong SCB - p: số hiệu trang cần truy nhập trong PCB - d: địa chỉ tƣơng đối tính từ đầu trang -
  16. Caáp heä ñieàu haønh Boä nhôù aûo SƠ ĐỒ KẾT HỢP PHÂN TRANG VÀ PHÂN ĐOẠN Để truy nhập tới dữ liệu, hệ thống trải qua 3 bƣớc: * Bƣớc 1: Lấy nội dung thanh ghi Rs cộng với s và truy nhập tới phần tử thứ s trong SCB * Bƣớc 2: Nếu D=0 thì thực hiện thủ tục nạp PCB tƣơng ứng vào bộ nhớ và cập nhật nội dung trƣờng A. Khi nạp xong PCB, hệ thống cộng nội dung trƣờng A với p để truy nhập tới phần tử thứ p trong PCB * Bƣớc 3: Khi tìm thấy phần tử p trong PCB, hệ thống sẽ ghép nội dung của Ap (tƣơng ứng phần tử thứ p) với d để tìm ra địa chỉ đọc/ghi dữ liệu
  17. Caáp heä ñieàu haønh Caùc chæ thò I/O aûo Phöông phaùp toå chöùc I/O aûo: laø töôûng töôïng döõ lieäu ñoïc/ghi laø moät - chuoãi caùc baûn ghi logic Moät baûn ghi logic laø moät ñôn vò thoâng tin - Moät chuoãi caùc baûn ghi logic ñöôïc goïi laø taäp tin - Caùc baûn ghi trong taäp tin khoâng caàn coù ñoä daøi baèng nhau - Caùc loaïi taäp tin tuaàn töï: löu tröõ treân baêng töø, ñóa töø meàm, CD,.. - Caùc loaïi chæ thò I/O aûo: - * Chæ thò nhaäp aûo (ñoïc taäp tin) * Chæ thò xuaát aûo (ghi taäp tin) * Chæ thò môû taäp tin
  18. Caáp heä ñieàu haønh Caùc chæ thò I/O aûo Höôùng di Caùc taäp tin truy xuaát tuaàn töï chuyeån cuûa 2. Chæ thò READ tuaàn taäp tin töï laáy baûn ghi logic 1 Chæ thò nhaäp aûo cô baûn: lieân tieáp vaø ghi leân vuøng ñeäm 2 Soá caùc Chæ thò phaûi xaùc ñònh baûn ghi 3 logic ñöôïc thoâng tin: 4 - Taäp tin ñöôïc ñoïc Boä nhôù chính 5 - Ñòa chæ boä nhôù chính löu giöõ baûn ghi 6 Baûn ghi Vuøng ñeäm 1. Cung caáp chæ thò logic 7 OPEN ñeå môû taäp tröôùc khi söû duïng 8 9 10 11 12 ...
  19. Caáp heä ñieàu haønh Caùc chæ thò I/O aûo Caùc taäp tin truy xuaát tuaàn töï Höôùng di chuyeån cuûa taäp tin Chæ thò xuaát aûo cô baûn: 1 2. Chæ thò REWIND xaùc 2 ñònh vò trí baûn ghi logic Soá caùc seõ ñöôïc ghi ñaàu tieân baûn ghi 3 logic 4 Boä nhôù chính 1. Cung caáp chæ thò 5 OPEN ñeå môû taäp tröôùc khi söû duïng 6 Baûn ghi Vuøng ñeäm logic 7 3. Chæ thò WRITE tuaàn Xaùc ñònh vò trí baûn ghi töï lieân tieáp taïo caùc baûn logic keá tieáp ñöôïc ghi ghi lieân tieáp leân taäp tin Maát nhieàu thôøi gian ñeå ñoïc tuaàn töï töø ñaàu
  20. Caáp heä ñieàu haønh Caùc chæ thò I/O aûo Caùc taäp tin truy xuaát ngaãu nhieân Höôùng di chuyeån cuûa taäp tin Chæ thò xuaát aûo cô baûn: 1 Soá caùc 2 baûn ghi Chæ thò phaûi xaùc ñònh logic 3 ñöôïc thoâng tin: - Taäp tin ñöôïc ñoïc 4 1. Cung caáp chæ thò Boä nhôù chính - Ñòa chæ boä nhôù chính OPEN ñeå môû taäp 5 tröôùc khi söû duïng löu giöõ baûn ghi 6 Baûn ghi - Vò trí baûn ghi logic Vuøng ñeäm logic 7 trong taäp tin 2. Chæ thò aûo ñoïc baûn ghi logic n 3. Chæ thò WRITE ghi baûn ghi leân taäp tin
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2