Bài giảng Hệ điều hành - Chương 1: Tổng quan về hệ điều hành - Lê Ngọc Minh
Hệ điều hành (Operating
System) là gì?
– Chương trình trung gian giữa
phần cứng máy tính và người
sử dụng, có chức năng điều
khiển phần cứng và cung cấp
các dịch vụ cơ bản cho các ứng
dụng.
? Mục tiêu (2 góc nhìn)
– Phân phối, quản lý tài nguyên
hệ thống một cách hiệu quả
– Giúp người sử dụng dễ dàng
khai thác tối đa hiệu suất hệ
thống.
? Phần cứng (hardware):
– Bao gồm các tài nguyên cơ bản của máy tính như CPU, bộ nhớ,
các thiết bị I/O,.
? Hệ điều hành (Operating System)
– Phân phối tài nguyên, điều khiển và phối hợp các hoạt động của
các chương trình trong hệ thống.
? Chương trình ứng dụng (applications programs)
– Sử dụng tài nguyên hệ thống để giải quyết một vấn đề tính toán
nào đó của người sử dụng (ví dụ: compilers, database systems,
video games, business programs).
? Các users sử dụng hệ thống
– Con người, máy móc, hệ thống máy tính khác,.
Trang 1
Trang 2
Trang 3
Trang 4
Trang 5
Trang 6
Trang 7
Trang 8
Trang 9
Trang 10
Tóm tắt nội dung tài liệu: Bài giảng Hệ điều hành - Chương 1: Tổng quan về hệ điều hành - Lê Ngọc Minh
Trường Đại Học Bách Khoa TP. Hồ Chí Minh Khoa Công Nghệ Thông Tin Hệ Điều Hành (O perating System s) THOẠI NAM LÊ NGỌC MINH -1.1- Nội dung môn Hệ Điều Hành Chương 1: Tổng quan về Hệ điều hành (Operating System-OS) Chương 2: Khái niệm về quá trình (process) Chương 3: Đồng bộ và giải quyết tranh chấp Chương 4: Tắc nghẽn (Deadlock) và phương pháp giải quyết Chương 5: Định thời biểu cho quá trình Chương 6: Phân cấp bộ nhớ -Bộ nhớ thực Chương 7: Bộ nhớ ảo Chương 8: Hệ thống I/O Chương 9: Hệ thống file Ôn tập -1.2- 1 Thông tin về môn học Sách tham khảo 1) “Operating System Concepts”, Silberschatz et al., 6thEd, 2003. 2) “An Introduction to Operating Systems”, Harvey M. Deitel. 1990. Kiểm tra – Thi trắc nghiệm cuối học kỳ (10/10) Thông tin khác – Địa chỉ liên lạc – Thoại Nam – Bộ Môn Phần Mềm Hệ Thống – Khoa CNTT. – Email: nam@dit.hcmut.edu.vn -1.3- Chương I TỔNG QUAN VỀ HỆ ĐIỀU HÀNH -1.4- 2 Nội dung Giới thiệu tổng quan – Định nghĩa Hệ Điều Hành (Operating System) – Cấu trúc hệ thống máy tính – Các chức năng chính của OS Quá trình phát triển của Hệ Điều Hành – Mainframe Systems – Desktop Systems – Multiprocessor Systems – Distributed Systems – Realtime Systems – Handheld Systems -1.5- Giới thiệu tổng quan Hệ điều hành (Operating U sers System) là gì? – Chương trình trung gian giữa phần cứng máy tính và người sử dụng, có chức năng điều khiển phần cứng và cung cấp các dịch vụ cơ bản cho các ứng Chương trình dụng. Mục tiêu (2 góc nhìn) Hệ Điều Hành – Phân phối, quản lý tài nguyên hệ thống một cách hiệu quả Phần cứng – Giúp người sử dụng dễ dàng khai thác tối đa hiệu suất hệ thống. -1.6- 3 Các thành phần của hệ thống -1.7- Các thành phần của hệ thống (t.t) Phần cứng (hardware): – Bao gồm các tài nguyên cơ bản của máy tính như CPU, bộ nhớ, các thiết bị I/O,... Hệ điều hành (Operating System) – Phân phối tài nguyên, điều khiển và phối hợp các hoạt động của các chương trình trong hệ thống. Chương trình ứng dụng (applications programs) – Sử dụng tài nguyên hệ thống để giải quyết một vấn đề tính toán nào đó của người sử dụng (ví dụ: compilers, database systems, video games, business programs). Các users sử dụng hệ thống – Con người, máy móc, hệ thống máy tính khác,... -1.8- 4 Các chức năng chính của OS Phân chia thời gian xử lý và định thời CPU Phối hợp và đồng bộ hoạt động giữa các processes (coordination & synchronization) Quản lý tài nguyên hệ thống (thiết bị I/O, bộ nhớ, file chứa dữ liệu, ...) Thực hiện và kiểm soát access control, protection. Duy trì sự nhất quán (integrity) của hệ thống, kiểm soát lỗi và phục hồi hệ thống khi có lỗi (error recovery) Cung cấp giao diện làm việc cho users -1.9- Lịch sử phát triển hệ điều hành Mainframe Systems – Batch systems – Multi-programmed systems – Time-sharing systems Batch System – Thiết bị I/O : card reader, tape drives – Cần có người vận hành: operator (user ≠ operator) » Giảm setup time → ghép nhóm công việc (batching jobs) Ví dụ: ghép 2 công việc cùng dùng trình biên dịch Fortran, → tiết kiệm được thời gian load trình biên dịch Fortran. – Là hệ điều hành sơ khai nhất chỉ có Resident Monitor, trong đó chứa các phần điều khiển quá trình xử lý, tính toán như: » Loader, job sequencing, control card interpreter, device drivers. -1.10- 5 Lịch sử phát triển hệ điều hành (t.t) Resident monitor Loader – Nắm quyền điều khiển ban đầu Job Sequencing – Chuyển quyền điều khiển sang C ontrol Card cho công việc (job) Interpreter – Khi công việc kết thúc, quyền Device Drivers điều khiển lại trao về cho resident monitor. Resident Monitor Resident monitor gồm có – Control card interpreter – Job sequencing – Loader Tổ chức bộ nhớ trong Batch System – Device drivers -1.11- Lịch sử phát triển hệ điều hành (t.t) Multi-programmed Systems – Job pool: cấu trúc dữ liệu cho phép OS lựa chọn công việc được thực thi kế tiếp – Nhiều công việc được nạp vào bộ nhớ chính cùng lúc, thời gian xử lý của CPU được phân chia giữa các công việc đó – Tận dùng được thời gian rảnh, khi một công việc nào đó phải chờ I/O thì phải nhường CPU cho công việc khác (overlapping CPU - I/O). Yêu cầu đối với OS – Job Scheduling – Memory management – CPU scheduling – Allocation of devices –Protection -1.12- 6 Lịch sử phát triển hệ điều hành (t.t) So sánh multi-programming và uni-programming -1.13- Lịch sử phát triển hệ điều hành (t.t) Time-Sharing (multitasking) Systems – Multi-programmed systems không cung cấp khả năng tương tác với users – CPU luân phiên chuyển đổi thực thi giữa các công việc » Quá trình chuyển đổi xảy ra thườngxuyênhơn, mỗi công việc chỉ được chia một phần nhỏ thời gian CPU » Cung cấp sự tương tác giữa hệ thống với user – Khi kết thúc thực thi một lệnh, OS sẽ chờ lệnh kế tiếp từ bàn phím chứ không phải từ card reader » Một công việc chỉ được chiếm CPU để xử lý khi nó nằm trong bộ nhớ chính » Khi cần thiết, một công việc nào đó có thể được chuyển từ bộ nhớ chính ra thiết bị lưu trữ, nhường bộ nhớ chính cho công việc khác. -1.14- 7 Lịch sử phát triển hệ điều hành (t.t) Yêu cầu đối với OS trong Time-Sharing Systems – Định thời công việc (job scheduling) – Quản lý bộ nhớ (Memory Management) » Các công việc được hoán chuyển giữa bộ nhớ chính và đĩa » Virtual memory: cho phép một công việc có thể được thực thi mà không cần phải nạp hoàn toàn vào bộ nhớ chính – Quản lý các process (Process Management) » Định thời CPU (CPU scheduling) » Đồng bộ các công việc (synchronization) » Tương tác giữa các công việc (process communication) » Tránh Deadlock – Quản lý hệ thống file, hệ thống lưu trữ (disk management) – Phân bổ các thiết bị, tài nguyên – Cơ chế bảo vệ (protection) -1.15- Lịch sử phát triển hệ điều hành (t.t) Desktop System (Personal Computer) – Thường phục vụ cho một user đơn lẻ. – Mục tiêu chính của các hệ thống PC là hướng đến sự tiện lợi (convinience) cho user và khả năng đáp ứng (reponsiveness) cao. – Có nhiều thiết bị I/O như keyboards, mouse, màn hình, máy in. – Không yêu cầu cao cấp về bảo mật và tối ưu hiệu suất CPU như các hệ thống khác. – Có thể vận hành nhiều hệ điều hành khác nhau (Windows, MacOS, Solaris, Linux,...) -1.16- 8 Lịch sử phát triển hệ điều hành (t.t) Hệ thống đa xử lý (multiprocessor systems) – Hệ thống có nhiều hơn 1 CPU và được kết nối chặt (tightly coupled) i.e. các processors chia sẻ bộ nhớ chung và clock, giao tiếp qua bộ nhớ chia sẻ. Ưu điểm –Tăngsystem throughput và độ tin cậy (reliability) – Multiprocessor vs. multiple single-processor → economy scale Symmetric multiprocessing (SMP) – Các processor vận hành cùng một hệ điều hành duy nhất. – Nhiều ứng dụng thực thi cùng lúc với performance cao. – Đa số các hệ điều hành hỗ trợ SMP. Asymmetric multiprocessing – Mỗi processor thực thi một công việc khác nhau, master processor định thời và phân công việc cho các slave processors. -1.17- Lịch sử phát triển hệ điều hành (t.t) Hệ thống phân bố (Distributed Systems) – Phân bổ công việc trên nhiều processors. – Loosely coupled: mỗi processor có bộ nhớ riêng, các processors giao tiếp qua các kênh nối như bus tốc độ cao hoặc đường điện thoại. – Trong góc nhìn của user, DS được vận hành bởi một hệ điều hành duy nhất. Ưu điểm – Cho phép chia sẻ tài nguyên (resource sharing) – Chia sẻ công việc tính toán (computational sharing) – Độ tin cậy cao (high reliability) Yêu cầu cơ sở hạ tầng mạng máy tính – LAN,WAN Dựa trên mô hình client-server hoặc peer-to-peer -1.18- 9 Lịch sử phát triển hệ điều hành (t.t) Hệ thống thời gian thực (Real-Time Systems) – Thường dùng trong các thiết bị chuyên dụng như điều khiển các thử nghiệm khoa học, điều khiển trong y khoa, dây chuyền công nghiệp. – Ràng buộc tương đối chặt chẽ về thời gian: hard và soft real- time. Hard real-time: – Hạn chế (hoặc không có) bộ nhớ phụ, tất cả dữ liệu nằm trong bộ nhớ chính (RAM) hoặc ROM – Yêu cầu thời gian đáp ứng, xử lý rất nghiêm ngặt, thường sử dụng trong điều khiển công nghiệp, công nghệ robotics. Soft real-time – Thường xuất hiện trong lĩnh vực multimedia, thực tế ảo (virtual reality) với yêu cầu mềm dẻo hơn về thời gian. -1.19- Lịch sử phát triển hệ điều hành (t.t) Handheld Systems – Personal Digital Assistants (PDAs), Mobile Phone – Cellular telephones –Đặcđiểm » Bộ nhớ cực kỳ nhỏ » Tốc độ processor không cao (vì phải tiêu thụ ít năng lượng) » Màn hình hiển thị có kích thước nhỏ, độ phân giải thấp. – Portability, convenience -1.20- 10
File đính kèm:
- bai_giang_he_dieu_hanh_chuong_1_tong_quan_ve_he_dieu_hanh_le.pdf