Bài giảng Hệ điều hành nâng cao - Bài 1: Tổ chức Hệ điều hành - Trần Hạnh Nhi
Chức năng của Hệ điều hành
Quản trị tài nguyên (resource principle) :
Tài nguyên : CPU, Mem, IO; Files, ports, mailboxes
Đối tượng sử dụng tài nguyên : Process, Thread
Nhiệm vụ : Cung cấp các giải thuật cấp phát, quản lý tài nguyên.cho các đối tượng hoạt động trong hệ thống
Mục tiêu : Cấp phát đầy đủ, công bằng R cho Ps; Sử dụng hiệu quả Rs, Nâng cao thông lượng Ps
Trừu tượng hoá hệ thống (beautification principle)
Nhiệm vụ : Cung cấp các giải thuật để che dấu chi tiết phần cứng, tạo 1 môi trường dễ làm việc hơn (hope) cho user
Mục tiêu : tạo môi trường an toàn, tạo sự trừu tượng hoá, độc lập thiết bị
Ví dụ : device driver
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Hệ điều hành nâng cao - Bài 1: Tổ chức Hệ điều hành - Trần Hạnh Nhi", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Bài giảng Hệ điều hành nâng cao - Bài 1: Tổ chức Hệ điều hành - Trần Hạnh Nhi
1 HỆ ĐIỀU HÀNH NÂNG CAO Tr ư ờng đ ại học Khoa học tự nhiên Khoa Công nghệ Thông tin Trần Hạnh Nhi 2 Tổ chức Phụ trách Lý thuyết : Trần Hạnh Nhi Phụ trách thực hành: Phạm Nguyễn Anh Huy Trần Anh Tuấn Lê Thụy Anh Đinh Bá Tiến Trang web của môn học : 3 Mục tiêu Kết quả mong đ ợi về lý thuyết : Hiểu đư ợc cách thức Hệ đ iều hành làm việc Nắm đư ợc các nguyên lý thiết kế Hệ đ iều hành Biết đư ợc một số c ơ chế, chiến l ư ợc c ơ bản đ ể giải quyết các nhiệm vụ của Hệ đ iều hành Kết quả cần đ ạt đư ợc về thực hành Vận dụng đư ợc các kiến thức lý thuyết đ ể cài đ ặt giả lặp một số module của Hệ đ iều hành Sử dụng đư ợc các c ơ chế hỗ trợ của một Hệ đ iều hành cụ thể (Windows NT) đ ể giải quyết các bài toán c ơ bản. 4 Kiến thức yêu cầu Kiến trúc Máy tính Hệ đ iều hành c ơ bản Lập trình C/C++ 5 Tính đ iểm 70% Lý thuyết + 30% Thực hành Lý thuyết : 1 bài thi cuối khoá (không tham khảo tài liệu) Mỗi sinh viên làm bài đ ộc lập Thực hành: 2 bài tập lớn Thời hạn và cách thức nộp bài sẽ do giáo viên phụ trách thực hành qui đ ịnh Mỗi nhóm thực hành gồm 2 sinh viên Bắt buộc có nộp bài thực hành mới đư ợc thi lý thuyết 6 Tài liệu tham khảo Trần Hạnh Nhi : Giáo trình Hệ đ iều hành Nâng cao A.Silberschatz & P/Galvin : OS concepts (5e) Slides : W. Stallings : Operating Systems A.Tanenbaum et al : OS Design and Implementation Minix : R.Finkel :: An OS vade mecum Book online : Jeffrey Richter : Advanced Windows Tiến Huy- Đan Th ư - Hạnh Nhi : Kỹ thuật lập trình trên Windows NT 7 Nội dung Ch ươ ng 1 : Tổ chức Hệ đ iều hành Ch ươ ng 2 : Quản lý tiến trình Ch ươ ng 3 : Liên lạc giữa các tiến trình Ch ươ ng 4 : Quản lý bộ nhớ chính Ch ươ ng 5 : An toàn hệ thống 8 Bài giảng 1 : Giới thiệu Tại sao phải tìm hiểu về Hệ đ iều hành ? Hệ đ iều hành là gì ? Vai trò trong hệ thống ? Chức n ă ng ? Kiến trúc ? Các nguyên lý thiết kế Hệ đ iều hành 9 Tại sao cần tìm hiểu Hệ đ iều hành ? Để phá vỡ sự “bí ẩn” của hệ thống : Tại sao máy tính có thể “biết” đư ợc nội dung đ ĩa ? Tại sao có thể vừa soạn thảo, vừa nghe nhạc trên cùng 1 máy tính (có 1 CPU ?) Tại sao 1 ứng dụng kích th ư ớc 1 M có thể hoạt đ ộng trên Windows mà bị báo “Not enough memory” trên DOS ? Để khai thác tốt h ơ n môi tr ư ờng làm việc : Lập trình trên môi tr ư ờng đ a nhiệm (multitask), đ a xử lý(multiprocessing) với các mô hình multiprocess, multithreads.. Sử dụng bộ nhớ hiệu quả sử dụng các c ơ chế Thông tin liên lạc, an toàn & bảo mật Vì là môn học bắt buộc 10 Hệ đ iều hành, anh là ai ? Ư ùng dụng Hệ đ iều hành Phần cứng Giao diện ảo Giao diện vật lý 11 Chức n ă ng của Hệ đ iều hành Quản trị tài nguyên (resource principle) : Tài nguyên : CPU, Mem, IO; Files, ports, mailboxes Đối t ư ợng sử dụng tài nguyên : Process, Thread Nhiệm vụ : Cung cấp các giải thuật cấp phát, quản lý tài nguyên.cho các đ ối t ư ợng hoạt đ ộng trong hệ thống Mục tiêu : Cấp phát đ ầy đ ủ, công bằng R cho Ps; Sử dụng hiệu quả Rs, Nâng cao thông l ư ợng Ps Trừu t ư ợng hoá hệ thống (beautification principle) Nhiệm vụ : Cung cấp các giải thuật đ ể che dấu chi tiết phần cứng, tạo 1 môi tr ư ờng dễ làm việc h ơ n (hope) cho user Mục tiêu : tạo môi tr ư ờng an toàn, tạo sự trừu t ư ợng hoá, đ ộc lập thiết bị Ví dụ : device driver 12 Các thành phần Quản lý tiến trình Quản lý bộ nhớ chính Quản lý nhậäp xuất Quản lý bộ nhớ phụ Hệ thống tập tin Hệ thống bảo vệ Giao tiếp mạng Bộ thông dịch lệnh 13 Kiến trúc Hệ đ iều hành Đ ơ n giản (Monolithic) Hạt nhân (Kernel) Phân lớp (Layered) Máy ảo (Virtual Machine) H ư ớng đ ối t ư ợng (OOOS) Exokernel 14 Monolithic 15 Monolithic OS = Th ư viện tiện ích Có thể tổ chức thành nhiều module : CPU scheduling, Mem Management, Device managementnh ư ng chỉ có 1 trong những module này hoạt đ ộng tại một thời đ iểm Đ ơ n nhiệm Quyền đ iều khiển đư ợc chuyển đ ổi thông qua lời gọi hàm Khi tầm vóc phát triển hệ thống trở nên thiếu tin cậy. Ví dụ : MS-DOS, Ultrix (mature Unix) 16 Kernel 17 Kernel OS = Kernel + System processes Kernel đư ợc bảo vệ Đa nhiệm Kernel chịu trách nhiệm phân chia thời gian sử dụng CPU, Giao tiếp giữa các tiến trình Chỉ có 2 mức kernel/non-kernel =>kernel lớn, thiếu tin cậy nh ư tr ư ớc Định nghĩa cứng các giao tiếp với ứng dụng trong kernel Ví dụ : Windows NT 18 Layered 19 Layered OS = các lớp trừu t ư ợng hoá một tác vụ quản lý Lớp trên đư ợc sử dụng các hàm xử lýù tài nguyên thuộc tác vụ do lớp d ư ới cung cấp Khó xác đ ịnh đư ợc các lớp xử lý rạch ròi, thứ tự lớp ? Tạo tiến trình -> PM gọi MM Bộ nhớ đ ầy -> MM gọi PM Xếp lớp theo hàm xử lý , thay vì tác vụ Seg management- P scheduling- Seg creation- P creation Ví dụ : THE , MULTICS 20 Virtual Machine 21 Virtual Machine OS = Virtualizing kernel + virtual machines Virtual machine = physical hardware Virtualizing kernel tạo ra nhiều VM trên 1 máy tính. Process interface = hardware interface Ư u đ iểm : Môi tr ư ờng thuận lợi cho sự t ươ ng thích (compatibility) T ă ng tính an toàn hệ thống do cung cấp các VM đ ộc lập. Dể phát triển các HDH đơ n nhiệm cho mỗi VM Khuyết đ iểm: Phức tạp cho việc giả lặp (transput, add translation) Ví dụ : CMS(conversational Monitor System) trên VM/370 (hỗ trợ hardware) 22 OOOS OS = tập các đ ối t ư ợng Tiến trình, tập tin, hàm, khối nhớ Một hàm xử lý (kernel/non-kernel mode) thao tác trên một tập các đ ối t ư ợng. Che dấu thông tin Ví dụ :CAP, StarOS, iMAX432 23 Exokernel 24 Exokernel H ư ớng đ ến một HDH linh đ ông trong giao tiếp với ứng dụng, cho phép ứng dụng chuyên biệt hoá hệ đ iều hành theo nhu cầu đ ặc thù một cách dễ dàng OS = Exokernel + Library OS Ư ùng dụng có thể phát triển các mô hình tổ chức VM, IPC theo nhu cầu riêng Ví dụ : ý t ư ởng của project do Dawson R Engler et al phát triển tại MIT
File đính kèm:
- bai_giang_he_dieu_hanh_nang_cao_chuong_1_to_chuc_he_dieu_han.ppt