Bài giảng Hệ điều hành - Nguyễn Thị Ngọc Vinh - Chương 1: Giới thiệu chung
1. Các thành phần của hệ thống máy tính
2. Khái niệm hệ điều hành
3. Các dịch vụ do HDH cung cấp
4. Giao diện lập trình của HDH
5. Quá trình phát triển và một số khái niệm quan trọng
6. Cấu trúc HDH
7. Một số HDH cụ thể
iên soạn: I/ 2009 - 2010 www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 2 TÀI LIỆU THAM KHẢO 1. Silberschatz A., Galvin G., Operating systems concepts, 8th ed, John Willey&Sons, 2008 2. Hà Quang Thụy. Nguyên lý các hệ điều hành. Nxb KHKT 2009 3. Nguyễn Thanh Tùng. Giáo trình hệ điều hành. ĐHBK HN 1999 www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 3 NỘI DUNG CHÍNH 1. Chƣơng 1: Giới thiệu chung 2. Chƣơng 2: Hệ thống file 3. Chƣơng 3: Quản lý bộ nhớ 4. Chƣơng 4: Quản lý tiến trình www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 4 CHƢƠNG 1: GIỚI THIỆU CHUNG www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 5 NỘI DUNG 1. Các thành phần của hệ thống máy tính 2. Khái niệm hệ điều hành 3. Các dịch vụ do HDH cung cấp 4. Giao diện lập trình của HDH 5. Quá trình phát triển và một số khái niệm quan trọng 6. Cấu trúc HDH 7. Một số HDH cụ thể www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 6 I. CÁC THÀNH PHẦN CỦA HỆ THỐNG MÁY TÍNH Phần cứng:cung cấp các tài nguyên cần thiết Phần mềm: các chƣơng trình cụ thể HDH: phần mềm đóng vai trò trung gian, làm cho việc sử dụng hệ thống máy tính đƣợc tiện lợi và hiệu quả Chương trình ứng dụng, chương trình hệ thống và tiện ích Hệ điều hành Phần cứng Người sử dụng www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 7 II. KHÁI NIỆM HỆ ĐIỀU HÀNH Đƣợc định nghĩa thông qua mục đích, vai trò, và chức năng trong hệ thống máy tính Hệ thống phần mềm đóng vai trò trung gian, thực hiện 2 chức năng cơ bản: Quản lý tài nguyên Quản lý việc thực hiện các chƣơng trình www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 8 II. KHÁI NIỆM HỆ ĐIỀU HÀNH 1. Quản lý tài nguyên Đảm bảo cho tài nguyên hệ thống đƣợc sử dụng một cách có ích và hiệu quả Các tài nguyên: bộ xử lý (CPU), bộ nhớ chính, bộ nhớ ngoài (các đĩa), các thiết bị vào ra Phân phối tài nguyên cho các ứng dụng hiệu quả: Yêu cầu tài nguyên đƣợc HDH thu nhận và đáp ứng bằng cách cấp cho chƣơng trình các tài nguyên tƣơng ứng HDH cần lƣu trữ tình trạng tài nguyên Đảm bảo không xâm phạm tài nguyên cấp cho chƣơng trình khác www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 9 II. KHÁI NIỆM HỆ ĐIỀU HÀNH 2. Quản lý việc thực hiện các chương trình 1 chƣơng trình đang trong quá trình chạy gọi là tiến trình (process) Hệ điều hành giúp việc chạy chƣơng trình dễ dàng hơn Tạo ra các máy ảo: là máy logic với các tài nguyên ảo Tài nguyên ảo: mô phỏng tài nguyên thực đƣợc thực hiện bằng phần mềm Cung cấp các dịch vụ cở bản nhƣ tài nguyên thực Dễ sử dụng hơn Số lƣợng tài nguyên ảo có thể lớn hơn số lƣợng tài nguyên thực www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 10 III. CÁC DỊCH VỤ DO HDH CUNG CẤP Tải và chạy chƣơng trình: Để thực hiện, chƣơng trình đƣợc tải từ đĩa vào bộ nhớ, sau đó đƣợc trao quyền thực hiện các lệnh Khi thực hiện xong, cần giải phóng bộ nhớ và các tài nguyên => HDH sẽ thực hiện công việc này HDH tự tải mình vào bộ nhớ Giao diện với ngƣời dùng: Dƣới dạng dòng lệnh Giao diện đồ họa Thực hiện các thao tác vào/ ra dữ liệu www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 11 III. CÁC DỊCH VỤ DO HDH CUNG CẤP Làm việc với hệ thống file Phát hiện và xử lý lỗi Phát hiện và xử lý kịp thời các lỗi xuất hiện trong phần cứng cũng nhƣ phần mềm => Đảm bảo cho hệ thống hoạt động ổn định, an toàn Truyền thông: Cung cấp dịch vụ cho phép thiết lập liên lạc và truyền thông tin Cấp phát tài nguyên Dịch vụ an ninh và bảo mật www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 12 IV. GIAO DIỆN LẬP TRÌNH CỦA HDH Để các chƣơng trình có thể sử dụng đƣợc những dịch vụ HDH cung cấp giao diện lập trình Gồm các lời gọi hệ thống (system call) Lời gọi hệ thống: các lệnh đặc biệt mà CTUD gọi khi cần yêu cầu HDH thực hiện một việc gì đó Lời gọi hệ thống đƣợc thực hiện qua những thƣ viện hàm gọi là thƣ viện hệ thống www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 13 V. QUÁ TRÌNH PHÁT TRIỂN Các hệ thống đơn giản: chƣa có HDH Xử lý theo mẻ: Chƣơng trình đƣợc phân thành các mẻ: gồm những chƣơng trình có yêu cầu giống nhau Toàn bộ mẻ đƣợc nạp vào băng từ và đƣợc tải vào máy để thực hiện lần lƣợt Chương trình giám sát (monitor): tự động nạp chƣơng trình tiếp theo vào máy và cho phép nó chạy => Giảm đáng kể thời gian chuyển đổi giữa hai chƣơng trình trong cùng một mẻ Trình giám sát là dạng đơn giản nhất của HDH www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 14 V. QUÁ TRÌNH PHÁT TRIỂN Đa chƣơng trình: Hệ thống chứa đồng thời nhiều chƣơng trình trong bộ nhớ Khi một chƣơng trình phải dừng lại để thực hiện vào ra, HDH sẽ chuyển CPU sang thực hiện một chƣơng trình khác => Giảm thời gian chạy không tải của CPU www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 15 V. QUÁ TRÌNH PHÁT TRIỂN Đa chƣơng trình: Thời gian chờ đợi của CPU trong chế độ đa chƣơng trình giảm đáng kể so với trong trƣờng hợp đơn chƣơng trình HDH phức tạp hơn rất nhiều so với HDH đơn chƣơng trình Đòi hỏi hỗ trợ từ phần cứng, đặc biệt khả năng vào/ra bằng ngắt và DMA www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 16 V. QUÁ TRÌNH PHÁT TRIỂN Chia sẻ thời gian: Chia sẻ thời gian có thể coi nhƣ đa chƣơng trình cải tiến CPU lần lƣợt thực hiện các công việc khác nhau trong những khoảng thời gian ngắn gọi là lƣợng tử thời gian Chuyển đổi giữa các công việc diễn ra với tần số cao và tốc độ CPU lớn => Tất cả ngƣời dùng đều có cảm giác máy tính chỉ thực hiện chƣơng trình của mình => CPU đƣợc chia sẻ giữa những ngƣời dùng khác nhau tƣơng tác trực tiếp với hệ thống www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 17 VI. CẤU TRÚC HDH 1. CÁC THÀNH PHẦN Quản lý tiến trình: Tạo và xoá tiến trình Tạm treo và khôi phục các tiến trình bị treo Đồng bộ hoá các tiến trình (lập lịch cho các tiến trình .v.v.) Giải quyết các bế tắc, ví dụ nhƣ khi có xung đột về tài nguyên Tạo cơ chế liên lạc giữa các tiến trình www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 18 VI. CẤU TRÚC HDH 1. CÁC THÀNH PHẦN Quản lý bộ nhớ: Quản lý việc phân phối bộ nhớ giữa các tiến trình Tạo ra bộ nhớ ảo và ánh xạ địa chỉ bộ nhớ ảo vào bộ nhớ thực Cung cấp và giải phóng bộ nhớ theo yêu cầu của các tiến trình Quản lý không gian nhớ đã đƣợc cấp và không gian còn trống www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 19 VI. CẤU TRÚC HDH 1. CÁC THÀNH PHẦN Quản lý vào ra: Đơn giản hoá và tăng hiệu quả quá trình trao đổi thông tin giữa các tiến trình với thiết bị vào ra Quản lý tệp và thƣ mục: Tạo, xóa tệp và thƣ mục Đọc ghi tệp Ánh xạ tệp và thƣ mục sang bộ nhớ ngoài Hỗ trợ mạng và xử lý phân tán Giao diện với ngƣời dùng Các chƣơng trình tiện ích và ứng dụng www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 20 VI. CẤU TRÚC HDH 2. NHÂN CỦA HDH Nhân (kernel) là phần cốt lõi, thực hiện các chức năng cơ bản nhất, quan trọng nhất của HDH và thường xuyên được giữ trong bộ nhớ HDH gồm nhiều thành phần, chỉ tải những thành phần quan trọng không thể thiếu đƣợc vào bộ nhớ gọi là nhân Kích thƣớc nhân to: chứa nhiều thành phần, không mất nhiều thời gian khi cần nhƣng tốn nhiều bộ nhớ Nhân chạy trong chế độ đặc quyền – chế độ nhân Các chƣơng trình bình thƣờng chạy trong chế độ ngƣời dùng www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 21 VI. CẤU TRÚC HDH 3. MỘT SỐ CẤU TRÚC HDH Cấu trúc nguyên khối Toàn bộ chƣơng trình và dữ liệu của HDH có chung 1 không gian nhớ HDH trở thành một tập hợp các thủ tục hay các chƣơng trình con Ƣu điểm: nhanh Nhƣợc điểm: không an toàn, không mềm dẻo Linux trình ứng dụng trình ứng dụng Hệ điều hành Chế độ người dùng Chế độ đặc quyền Hình :Cấu trúc nguyên khối www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 22 VI. CẤU TRÚC HDH 3. MỘT SỐ CẤU TRÚC HDH Cấu trúc vi nhân Nhân chỉ chứa các chức năng quan trọng nhất Các chức năng còn lại đƣợc đặt vào các modul riêng: chạy trong chế độ đặc quyền hoặc ngƣời dùng Ƣu điểm: mềm dẻo, an toàn Nhƣợc điểm: tốc độ chậm hơn so với cấu trúc nguyên khối Vi nhân trình ứng dụng quản lý tệp quản lý mạng Hình 1.5 Cấu trúc vi nhân trình ứng dụng www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 23 VI. CẤU TRÚC HDH 3. MỘT SỐ KIỂU CẤU TRÚC HDH Cấu trúc phân lớp Các thành phần đƣợc chia thành các lớp nằm chồng lên nhau Mỗi lớp chỉ có thể liên lạc với lớp nằm kề bên trên và kề bên dƣới Mỗi lớp chỉ có thể sử dụng dịch vụ do lớp nằm ngay bên dƣới cung cấp Ƣu điểm: dễ xây dựng, dễ sửa lỗi Nhƣợc điểm: tốc độ chậm hơn cấu trúc nguyên khối www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 24 VII. MỘT SỐ HDH CỤ THỂ UNIX MINIX LINUX MS-DOS Windows NT
File đính kèm:
- Bài giảng Hệ điều hành - Nguyễn Thị Ngọc Vinh - Chương 1 Giới thiệu chung.PDF