Bài giảng Hệ điều hành: Chương 3 - Đỗ Quốc Huy
Số trang: 137
Loại file: pdf
Dung lượng: 5.06 MB
Lượt xem: 29
Lượt tải: 0
Xem trước 10 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng Hệ điều hành: Chương 3 Quản lý bộ nhớ, cung cấp cho người học những kiến thức như: Tổng quan; Các chiến lược quản lý bộ nhớ; Bộ nhớ ảo; Quản lý bộ nhớ trong vi xử lý họ Intel. Mời các bạn cùng tham khảo!
Nội dung trích xuất từ tài liệu:
Bài giảng Hệ điều hành: Chương 3 - Đỗ Quốc Huy Hệ Điều Hành (Nguyên lý các hệ điều hành) Đỗ Quốc Huy huydq@soict.hust.edu.vn Bộ môn Khoa Học Máy Tính Viện Công Nghệ Thông Tin và Truyền Thông Chương 3 Quản lý bộ nhớ l Mục đích của hệ thống máy tính: thực hiện chương trình l Chương trình và dữ liệu (toàn bộ hoặc một phần) phải nằm trong bộ nhớ chính trong khi thực hiện l Byte tích cực:Những byte nội dung đang được thực hiện tại thời điểm quan sát l Phần chương trình chưa đưa vào bộ nhớ chính được lưu trên bộ nhớ thứ cấp (VD: đĩa cứng)⇒ Bộ nhớ ảo l Cho phép lập trình viên không lo lắng về giới hạn bộ nhớ vật lý l Để s/d CPU hiệu quả và tăng tốc độ đáp ứng của hệ thống: l Cần luân chuyển CPU thường xuyên giữa các tiến trình Điều phối CPU (Phần 3- Chương 2) l Cần nhiều tiến trình sẵn sàng trong bộ nhớ l Hệ số song song của hệ thống: Số tiến trình đồng thời tồn tại trong hệ thống l Tồn tại nhiều chiến lược quản lý bộ nhớ khác nhau l Nhiều chiến lược đòi hỏi trợ giúp từ phần cứng l Thiết kế phần cứng có thể được tích hợp chặt chẽ với HDH Chương 3 Quản lý bộ nhớ ①Tổng quan ②Các chiến lược quản lý bộ nhớ ③Bộ nhớ ảo ④Quản lý bộ nhớ trong VXL họ Intel Chương 3 Quản lý bộ nhớ 1. Tổng quan lVí dụ lBộ nhớ và chương trình lLiên kết địa chỉ lCác cấu trúc chương trình Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.1 Ví dụ Quá trình biên dịch file C Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.1 Ví dụ Quá trình biên dịch file C Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.1 Ví dụ Quá trình biên dịch file C Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.1 Ví dụ Quá trình biên dịch file C Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.1 Ví dụ Quá trình biên dịch file C Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.1 Ví dụ Ví dụ : Tạo chương trình thực thi từ nhiều modul Toto project file main.c file M1.c #include int y = 10; extern int x, y; extern void toto(); file M2.c int main(int argc, char *argv[]){ int x; toto(); extern int y; printf('KQ: %d \n',x * y); void toto(){ return 0; x = 10 * y; } } Kết quả KQ: 1000 Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.1 Ví dụ Quá trình biên dịch toto project Thư viện Header [printf] int y=10; [y←10] [y←10] M1.c M1.o [x] extern int x,y; extern void toto(); x y [printf] int main(){ Compiler Link - toto() (tcc -c) toto (tlink) - printf() printf [toto] x } y main.o main.c toto int x; [x] printf extern int y; y x toto() [toto] y M2.c M2.o toto.exe Chương 3 Quản lý bộ nhớ 1. Tổng quan lVí dụ lBộ nhớ và chương trình lLiên kết địa chỉ lCác cấu trúc chương trình Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.2 Bộ nhớ và chương trình Phân cấp bộ nhớ l Bộ nhớ là tài nguyên quan trọng của hệ thống l Chương trình phải nằm trong bộ nhớ trong để thực hiện l Bộ nhớ được đặc trưng bởi kích thước và tốc độ truy nhập l Bộ nhớ được phân cấp theo tốc độ truy nhập Loại bộ nhớ Kích thước Tốc độ Thanh ghi (Registers) bytes Tốc độ CPU(ηs) 10 Cache trên VXL Kilo Bytes nano seconds Cache mức 2 KiloByte-MegaByte 100 nanoseconds e Bộ nhớ chính MegaByte-GigaByte Micro-seconds Bộ nhớ lưu trữ (Disk) GigaByte-Terabytes Mili-Seconds 10 Băng từ, đĩa quang Không giới hạn Seconds Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.2 Bộ nhớ và chương trình Bộ nhớ chính 00000 00001 Memory l Dùng lưu trữ dữ liệu và chương trình l Là mảng các ô nhớ kiểu bytes, words FFFFE FFFFF l Mỗi ô nhớ có một địa chỉ riêng l Địa chỉ vật lý: địa chỉ x/hiện ở chân VXL Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.2 Bộ nhớ và chương trình Chương trình l Tồn tại trên thiết bị lưu trữ ngoài l Là các file nhị phân thực thi được l Vùng tham số file l Lệnh máy (mã nhị phân), l Vùng dữ liệu (biến toàn cục), . . l Phải được đưa vào bộ nhớ trong và được đặt trong một tiến trình để thực hiện (tiến trình thực hiện chương trình) l Hàng đợi vào (input queue) l Tập các tiến trình ở bộ nhớ ngoài (thông thường: disk) l Đợi để được đưa vào bộ nhớ trong và thực hiên Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.2 Bộ nhớ và chương trình Thực hiện chương trình l Nạp chương trình vào bộ nhớ l Đọc và phân tích (dịch) file thực thi (VD ...
Nội dung trích xuất từ tài liệu:
Bài giảng Hệ điều hành: Chương 3 - Đỗ Quốc Huy Hệ Điều Hành (Nguyên lý các hệ điều hành) Đỗ Quốc Huy huydq@soict.hust.edu.vn Bộ môn Khoa Học Máy Tính Viện Công Nghệ Thông Tin và Truyền Thông Chương 3 Quản lý bộ nhớ l Mục đích của hệ thống máy tính: thực hiện chương trình l Chương trình và dữ liệu (toàn bộ hoặc một phần) phải nằm trong bộ nhớ chính trong khi thực hiện l Byte tích cực:Những byte nội dung đang được thực hiện tại thời điểm quan sát l Phần chương trình chưa đưa vào bộ nhớ chính được lưu trên bộ nhớ thứ cấp (VD: đĩa cứng)⇒ Bộ nhớ ảo l Cho phép lập trình viên không lo lắng về giới hạn bộ nhớ vật lý l Để s/d CPU hiệu quả và tăng tốc độ đáp ứng của hệ thống: l Cần luân chuyển CPU thường xuyên giữa các tiến trình Điều phối CPU (Phần 3- Chương 2) l Cần nhiều tiến trình sẵn sàng trong bộ nhớ l Hệ số song song của hệ thống: Số tiến trình đồng thời tồn tại trong hệ thống l Tồn tại nhiều chiến lược quản lý bộ nhớ khác nhau l Nhiều chiến lược đòi hỏi trợ giúp từ phần cứng l Thiết kế phần cứng có thể được tích hợp chặt chẽ với HDH Chương 3 Quản lý bộ nhớ ①Tổng quan ②Các chiến lược quản lý bộ nhớ ③Bộ nhớ ảo ④Quản lý bộ nhớ trong VXL họ Intel Chương 3 Quản lý bộ nhớ 1. Tổng quan lVí dụ lBộ nhớ và chương trình lLiên kết địa chỉ lCác cấu trúc chương trình Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.1 Ví dụ Quá trình biên dịch file C Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.1 Ví dụ Quá trình biên dịch file C Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.1 Ví dụ Quá trình biên dịch file C Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.1 Ví dụ Quá trình biên dịch file C Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.1 Ví dụ Quá trình biên dịch file C Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.1 Ví dụ Ví dụ : Tạo chương trình thực thi từ nhiều modul Toto project file main.c file M1.c #include int y = 10; extern int x, y; extern void toto(); file M2.c int main(int argc, char *argv[]){ int x; toto(); extern int y; printf('KQ: %d \n',x * y); void toto(){ return 0; x = 10 * y; } } Kết quả KQ: 1000 Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.1 Ví dụ Quá trình biên dịch toto project Thư viện Header [printf] int y=10; [y←10] [y←10] M1.c M1.o [x] extern int x,y; extern void toto(); x y [printf] int main(){ Compiler Link - toto() (tcc -c) toto (tlink) - printf() printf [toto] x } y main.o main.c toto int x; [x] printf extern int y; y x toto() [toto] y M2.c M2.o toto.exe Chương 3 Quản lý bộ nhớ 1. Tổng quan lVí dụ lBộ nhớ và chương trình lLiên kết địa chỉ lCác cấu trúc chương trình Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.2 Bộ nhớ và chương trình Phân cấp bộ nhớ l Bộ nhớ là tài nguyên quan trọng của hệ thống l Chương trình phải nằm trong bộ nhớ trong để thực hiện l Bộ nhớ được đặc trưng bởi kích thước và tốc độ truy nhập l Bộ nhớ được phân cấp theo tốc độ truy nhập Loại bộ nhớ Kích thước Tốc độ Thanh ghi (Registers) bytes Tốc độ CPU(ηs) 10 Cache trên VXL Kilo Bytes nano seconds Cache mức 2 KiloByte-MegaByte 100 nanoseconds e Bộ nhớ chính MegaByte-GigaByte Micro-seconds Bộ nhớ lưu trữ (Disk) GigaByte-Terabytes Mili-Seconds 10 Băng từ, đĩa quang Không giới hạn Seconds Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.2 Bộ nhớ và chương trình Bộ nhớ chính 00000 00001 Memory l Dùng lưu trữ dữ liệu và chương trình l Là mảng các ô nhớ kiểu bytes, words FFFFE FFFFF l Mỗi ô nhớ có một địa chỉ riêng l Địa chỉ vật lý: địa chỉ x/hiện ở chân VXL Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.2 Bộ nhớ và chương trình Chương trình l Tồn tại trên thiết bị lưu trữ ngoài l Là các file nhị phân thực thi được l Vùng tham số file l Lệnh máy (mã nhị phân), l Vùng dữ liệu (biến toàn cục), . . l Phải được đưa vào bộ nhớ trong và được đặt trong một tiến trình để thực hiện (tiến trình thực hiện chương trình) l Hàng đợi vào (input queue) l Tập các tiến trình ở bộ nhớ ngoài (thông thường: disk) l Đợi để được đưa vào bộ nhớ trong và thực hiên Chương 3: Quản lý bộ nhớ 1. Tổng quan 1.2 Bộ nhớ và chương trình Thực hiện chương trình l Nạp chương trình vào bộ nhớ l Đọc và phân tích (dịch) file thực thi (VD ...
Tìm kiếm theo từ khóa liên quan:
Nguyên lý các hệ điều hành Bài giảng Hệ điều hành Hệ điều hành Quản lý bộ nhớ Hệ thống máy tính Cấu trúc chương trình Chiến lược quản lý bộ nhớGợi ý tài liệu liên quan:
-
Giáo trình Lý thuyết hệ điều hành: Phần 1 - Nguyễn Kim Tuấn
110 trang 436 0 0 -
Lecture Operating systems: Lesson 24 - Dr. Syed Mansoor Sarwar
29 trang 361 0 0 -
Lecture Operating systems: Lesson 21 - Dr. Syed Mansoor Sarwar
22 trang 313 0 0 -
Giáo trình Nguyên lý các hệ điều hành: Phần 2
88 trang 257 0 0 -
Lecture Operating systems: Lesson 13 - Dr. Syed Mansoor Sarwar
31 trang 255 0 0 -
175 trang 253 0 0
-
173 trang 249 2 0
-
Giáo trình Nguyên lý hệ điều hành (In lần thứ ba): Phần 1 - PGS.TS. Hà Quang Thụy
98 trang 225 0 0 -
Đề tài nguyên lý hệ điều hành: Nghiên cứu tìm hiểu về bộ nhớ ngoài trong hệ điều hành Linux
19 trang 221 0 0 -
Lecture Operating systems: Lesson 12 - Dr. Syed Mansoor Sarwar
24 trang 215 0 0