CHƯƠNG 6 MỨC MÁY HỆ ĐIỀU HÀNH
lượt xem 6
download
Hệ điều hành chịu trách nhiệm cấp phát vùng nhớ cho các tiến trình có yêu cầu. Để thực hiện tốt nhiệm vụ này, hệ điều hành cần phải xem xét các khía cạnh: Sự tương ứng giữa địa chỉ logic và địa chỉ vật lý (physic) : làm cách nào để chuyển đổi một địa chỉ tượng trưng (symbolic) trong chương trình thành một địa chỉ thực trong bộ nhớ chính? Quản lý bộ nhớ vật lý: làm cách nào để mở rộng bộ nhớ có sẵn nhằm lưu trữ được nhiều tiến trình đồng thời? Chia sẻ thông tin:...
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: CHƯƠNG 6 MỨC MÁY HỆ ĐIỀU HÀNH
- CHƯƠNG 6 MỨC MÁY HỆ ĐIỀU HÀNH 1 / 50 Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- CHƯƠNG 6 MỨC MÁY HỆ ĐIỀU HÀNH 6.1 Giới thiệu mức máy hệ điều hành 6.2 Bộ nhớ ảo 6.2.1 Việc phân trang - Paging 6.2.2 Thực hiện việc phân trang 6.2.3 Phương pháp Cấp trang khi có yêu cầu và Mô hình tập làm việc 6.3 Các chỉ thị vào/ra ảo - tự đọc 2 / 50 Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- 6.1 Giới thiệu mức máy hệ điều hành Trình thông dịch chạy trên máy mức 1 có thể thông dịch các ch ương • trình được viết bằng ngôn ngữ máy mức 2 Trình thông dịch chạy trên máy mức 2 có thể thông dịch các chương • trình được viết bằng ngôn ngữ máy mức 3. Chúng ta gọi mức 3 là mức máy hệ điều hành. 3 / 50 Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- ... 6.1 Giới thiệu mức máy hệ điều hành Mức máy HĐH đã tiến • hoá dần lên từ mức máy thông thường: Hầu hết các chỉ thị - của mức máy HĐH cũng có ở mức máy thông thường Các chỉ thị mức 3 - khác, được gọi là các Thông dịch HĐH thông trực tiếp bằng chỉ thị Mức máy HĐH. dịch vi chương trình 4 / 50 Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- ... 6.1 Giới thiệu mức máy hệ điều hành - Hệ điều hành chịu trách nhiệm cấp phát vùng nhớ cho các tiến trình có yêu cầu. Để thực hiện tốt nhiệm vụ này, hệ điều hành cần phải xem xét các khía cạnh: - Sự tương ứng giữa địa chỉ logic và địa chỉ vật lý (physic) : làm cách nào để chuyển đổi một địa chỉ tượng trưng (symbolic) trong chương trình thành một địa chỉ thực trong bộ nhớ ch ính? - Quản lý bộ nhớ vật lý: làm cách nào để mở rộng bộ nhớ có sẵn nhằm lưu trữ được nhiều tiến trình đồng thời? - Chia sẻ thông tin: làm thế nào để cho phép hai tiến trình có thể chia sẻ thông tin trong bộ nhớ? - Bảo vệ: làm thế nào để ngăn chặn các tiến trình xâm phạm đến vùng nhớ được cấp phát cho tiến trình khác? 5 / 50 Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- ... 6.1 Giới thiệu mức máy hệ điều hành - Các địa chỉ trong chương trình nguồn là địa chỉ tượng trưng, vì thế, một chương trình phải trải qua nhiều giai đoạn xử lý để chuyển đổi các địa chỉ này thành các địa chỉ tuyệt đối trong bộ nhớ chính. - Có thể thực hiện liên kết các chỉ thị và dữ liệu với các địa chỉ bộ nhớ vào một trong những thời điểm sau: Thời điểm biên dịch Thời điểm nạp Thời điểm xử lý 6 / 50 Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- ... 6.1 Giới thiệu mức máy hệ điều hành Thời điểm biên dịch: Nếu tại thời điểm biên dịch, có thể biết vị trí mà tiến trình sẽ thường trú trong bộ nhớ, trình biên dịch có thể phát sinh ngay mã với các địa chỉ tuyệt đối. Nếu sau đó có sự thay đổi vị trí thường trú ban đầu của chương trình, cần phải biên dịch lại chương trình. 7 / 50 Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- ... 6.1 Giới thiệu mức máy hệ điều hành Thời điểm nạp: Nếu tại thời điểm biên dịch, chưa thể biết vị trí mà tiến trình sẽ thường trú trong bộ nhớ, trình biên dịch cần phát sinh mã tương đối. Sự liên kết địa chỉ được trì hoãn đến thời điểm chương trình được nạp vào bộ nhớ, lúc này các địa chỉ tương đối sẽ được chuyển thành địa chỉ tuyệt đối do đã biết vị trí bắt đầu lưu trữ tiến trình. Khi có sự thay đổi vị trí lưu trữ, chỉ cần nạp lại chương trình để tính toán lại các địa chỉ tuyệt đối, mà không cần biên dịch lại. 8 / 50 Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- ... 6.1 Giới thiệu mức máy hệ điều hành Thời điểm xử lý: Nếu có nhu cầu di chuyển tiến trình từ vùng nhớ này sang vùng nhớ khác trong quá trình tiến trình xử lý, thì thời điểm liên kết địa chỉ phải trì hoãn đến tận thời điểm xử lý. Để thực hiện liên kết địa chỉ vào thời điểm xử lý, cần sử dụng cơ chế phần cứng đặc biệt. 9 / 50 Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- ... 6.1 Giới thiệu mức máy hệ điều hành Khái niệm không gian địa chỉ được xây dựng trên không gian nhớ vật lý: Địa chỉ logic: còn gọi là địa chỉ ảo, là tất cả các địa chỉ do bộ xử lý tạo ra. Địa chỉ vật lý: là địa chỉ thực tế mà trình quản lý bộ nhớ nhìn thấy và thao tác. Không gian địa chỉ: là tập hợp tất cả các địa chỉ ảo phát sinh bởi một chương trình. Không gian vật lý: là tập hợp tất cả các địa chỉ vật lý tương ứng với các địa chỉ ảo. 10 / Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- ... 6.1 Giới thiệu mức máy hệ điều hành Phương thức liên kết địa chỉ vào thời điểm biên dịch và vào thời điểm nạp: Địa chỉ ảo và địa chỉ vật lý là như nhau. Phương thức liên kết vào thời điểm xử lý: địa chỉ ảo và địa chỉ vật lý khác nhau. 11 / Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- 6.2 Bộ nhớ ảo Thời kỳ đầu bộ nhớ máy tính thường nhỏ chương trình • càng bé càng tốt. Giải pháp: sử dụng bộ nhớ phụ + kỹ thuật overlay (mỗi • overlay có thể nằm lọt trong bộ nhớ) đòi hỏi nhiều công sức của người lập trình cho việc quản lý overlay. Bộ nhớ ảo (Virtual Memory): Được một nhóm nhà khoa học ở Manchester, đề xuất • năm 1961. Phương pháp thực hiện quá trình overlay một cách • tự động. Đầu 1970s bộ nhớ ảo đã trở nên thông dụng • 12 / Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- 6.2.1 Việc phân trang - Paging Ý tưởng: • Phân bộ nhớ vật lý thành các khối có kích thước • cố định, bằng nhau: là khung trang - page frame Không gian địa chỉ được chia thành các khối có • cùng kích thước với khung trang: gọi là trang (page). Khi cần nạp một tiến trình để xử lý, các trang của • tiến trình sẽ được nạp vào những khung trang còn trống. Một tiến trình kích thước N trang sẽ yêu cầu N khung trang tự do. 13 / Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- 6.2.1 Việc phân trang - Paging Mô hình bộ nhớ phân trang 14 / Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- 6.2.1 Việc phân trang - Paging Cơ chế MMU trong kỹ thuật phân trang: Cơ chế phần cứng hỗ trợ thực hiện chuyển đổi địa chỉ trong cơ chế phân trang là bảng trang (pages table). Mỗi phần tử trong bảng trang cho biết các địa chỉ bắt đầu của vị trí lưu trữ trang tương ứng trong bộ nhớ vật lý (số hiệu khung trang trong bộ nhớ vật lý đang chứa trang ). 15 / Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- 6.2.1 Việc phân trang - Paging Ví dụ: một máy tính trong đó các chỉ • thị có trường địa chỉ 16 bit và có bộ nhớ 4096 word. Một chương trình chạy trên máy • tính này có thể đánh địa chỉ 65536 word bộ nhớ, chứ không phải 4096. Khi còn chưa phát minh ra bộ nhớ • ảo, phải phân biệt 2 miền địa chỉ: khả dụng 0..4095: • 4096.. 65535: không khả dụng • 16 / Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- 6.2.1 Việc phân trang - Paging Ý tưởng: tách biệt các khái niệm về • không gian địa chỉ và các vị trí nhớ: Vào bất cứ thời điểm nào 4096 • word bộ nhớ có thể được truy cập trực tiếp, nhưng chúng không nhất thiết phải tương ứng với các địa chỉ từ 0..4095. 4096 sử dụng word 0 • 4097 sử dụng word 1 • 8191 sử dụng word 4095 • v.v. 17 / Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- ... 6.2.1 Việc phân trang - Paging ? Điều gì sẽ xảy ra nếu chương trình nhảy tới một địa chỉ nằm trong khoảng 8192..12287? • Không có bộ nhớ ảo: Lỗi • Có bộ nhớ ảo: 1. Nội dung của bộ nhớ chính được cất vào bộ nhớ phụ. 2. Các word 8192..12287 đang nằm trong bộ nhớ phụ được nạp vào bộ nhớ chính. 3. ánh xạ địa chỉ sẽ được thay đổi để ánh xạ các địa chỉ 8192..12287 vào các vị trí nhớ 0..4095. 4. Chương trình tiếp tục bình thường. 18 / Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- ... 6.2.1 Việc phân trang - Paging Kỹ thuật thực hiện overlay tự động được gọi là phân trang • - paging, các đoạn chương trình được đọc vào bộ nh ớ chính từ bộ nhớ phụ được gọi là các trang. Cơ chế phân trang có thể coi là trong su ốt đối với người • lập trình. lập trình không cần phải biết đến sự tồn tại của bộ Khi nhớ ảo. thể coi như đang lập trình cho một máy tính có m ột Có bộ nhớ chính rất lớn (ảo giác) 19 / Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
- 6.2.2 Thực hiện việc phân trang Bộ nhớ ảo cần có bộ nhớ phụ để chứa toàn bộ chương • trình. Một số quy ước: • Bản copy của chương trình trong bộ nhớ phụ là bản • gốc Phần của chương trình thỉnh thoảng được đưa vào bộ • nhớ chính là các bản copy Cập nhật bản gốc, mọi thay đổi xảy ra với bản copy trong • bộ nhớ chính cần phải phản ánh vào trong bản gốc. Không gian địa chỉ ảo được chia thành các trang có kích • thước bằng nhau, nằm trong khoảng 512..4096. 20 / Bộ môn Kỹ thuật máy tính – Khoa Điện Tử
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn