Bài giảng Hệ điều hành - Chương: Tổng quan hệ điều hành

Môn học: Hệ điều hành  
1
Phát biểu hệ điều hành là gì? Giải thích vai trò của hệ  
điều hành trong hệ thống máy tính  
Trình bày lịch sử phát triển và đặc điểm của một số loại  
hệ điều hành  
Liệt kê các thành phần chính của một hệ điều hành  
Trình bày ều hành  
Trình bày quá trình khởi động máy tính  
2
• Đã nghe:  
– Máy tính là thiết bị  
tính toán nhiều tính năng  
– Máy tính gồm 3 thành phần:  
• Bộ xử lý  
• Bộ nhớ  
• Các thiết bị nhập xuất  
• Đã sử dụng máy tính:  
– Chơi game  
– Nghe nhạc  
– Lập trình  
• Đã sử dụng máy tính như thế nào, có dễ không?  
3
Ứng dụng / Người dùng  
OS  
Phần cứng  
• Một lớp phần mềm ở giữa phần cứng và các chương trình ứng dụng/người  
dùng.  
• Ảo hóa (virtualize) các thành phần phần cứng nhằm giúp việc giao tiếp: dễ  
dàng và an
• Quản lý việc sử dụng chia sẻ các tài nguyên máy tính của các chương  
trình/người dùng: công bằng và hiệu quả  
• Cung cấp một tập các hàm thư viện để đơn giản hóa việc phát triển ứng  
4
dụng  
5
• Máy tính mainframe: cung cấp khả năng tính toán  
– Làm sao chia sẻ thiết bị đắt tiền giữa nhiều người dùng?  
• Đăng kí giờ sử dụng  
• Đưa chương trình cho người sử dụng máy tính  
• Họ chạy chương trình và in kết quả trả lại cho bạn  
– Thông thường, chương trình nằm trong các thẻ đọc (card) được phân  
cách bởi các thẻ điều khiển (control card). Đầu đọc thẻ (card reader) sẽ  
đọc dữ liệu trên các thẻ này  
• Hệ điều hành (HĐH) được phát triển để thực hiện các công việc một  
cách tuần tự  
– HĐH luôn nằm trong bộ nhớ (Quản lý thường trú – Resident monitor)  
6
• CPU sẽ rảnh mỗi khi chương trình thực thi cần giao tiếp  
với thiết bị ngoại vi  
– Ý tưởng: khi một chương trình tương tác với thiết bị ngoại vi thì  
CPU sẽ phục vụ chương trình khác  
• Hệ thống đa chương (Multiprogrammed system) ra đời  
– Nạp đồng thời nhiều chương trình vào đĩa (sau này là vào bộ  
nhớ RAM)  
– Chuyển sang phục vụ chương trình khác nếu chương trình hiện  
thời đang tương tác với thiết bị ngoại vi  
• Thiết bị ngoại vi thường chậm hơn đĩa (sau này là bộ nhớ RAM)  
7
• Đặc điểm của hệ thống đa chương  
– Đồng thời thực hiện nhập/xuất của chương trình này và tính  
toán cho chương trình khác  
– Tiêu chí: bộ xử lý luôn trong tình trạng làm việc  
– Phải biết khi nào công việc nhập xuất xong: ngắt vs. polling  
8
• Vấn đề  
– Làm sao chia sẻ cùng một máy tính (lúc đó rất đắt) giữa nhiều người  
dùng và vẫn duy trì giao diện giao tiếp với người dùng?  
• Chia sẻ thờ
– Nối nhiều thiết bị đầu cuối đầu cuối đến một máy tính  
– Điều phối sử dụng máy tính cho nhiều người dùng  
– Chuyển đổi phục vụ giữa các chương trình người dùng sao cho đủ  
nhanh để người sử dụng có thể tương tác với chương trình trong khi  
chúng đang chạy (tạo cảm giác mỗi người dùng đang dùng máy riêng  
của mình)  
9
• Thực thi các ứng dụng có yêu cầu nghiêm ngặt về thời gian hoàn thành  
• Hard real-time system  
– Hệ thống điều khiển bay, các hệ thống điều khiển công nghiệp, v.v..  
– Gây thảm
– Thách thức: làm sao không trễ hạn mà không phung phí nhiều tài nguyên  
• Soft real-time system  
– Ứng dụng multimedia  
– Có thể ghạn đôi chút!  
– Thách thức: khi hệ thống quá tải  
10  
• Vài ứng dụng có các công việc có thể thực hiện đồng  
thời  
– Dự báo thời tiết, mô phỏng, tính toán lại các bảng tính  
• Có thể tăng tốc độ bằng cách chạy các công việc trên  
các bộ xử lý khác nhau song song đồng thời  
• Cần HĐH và ngôn ngữ lập trình hỗ trợ chia nhỏ công  
việc thành các hành động song song  
• Cần HĐH hỗ trợ đồng bộ và truyền thông nhanh  
• Nhiều kiến trúc song song khác nhau  
11  
• Clustering – Hệ thống phân tán cục bộ  
– Dùng nhiều máy nhỏ để phục vụ các công việc lớn  
• Rẻ hơn là dùng một máy tính lớn  
• Độ tin cậy cao hơn, tăng khả năng mở rộng  
• Hệ thống phân tán trên diện rộng  
– Cho phép sử dụng tài nguyên phân tán  
• VD. sử dụng PC để truy cập Web  
• Không cần mang nhiều thông tin cần thiết theo mình  
• HĐH hỗ trợ truyền thông và chia sẻ tài nguyên phân tán  
– VD. hệ lưu trữ tập tin trên mạng  
• Quan tâm tính thực thi (mặc dù tăng tốc không phải là mục tiêu của HĐH  
này), độ tin cậy cao, sử dụng nguồn tài nguyên đa dạng  
12  
• Phát triển rộng khắp  
– Hiện thời: ĐTDĐ và PDA  
– Tương lai, các thiết bị tính toán ở mọi nơi  
• Đặc tính  
– Tài nguyên hạn chế: CPU chậm, bộ nhớ nhỏ, không ổ đĩa, v.v.  
– Làm sao ta có thể chạy các chương trình mạnh hơn trong điều kiện tài  
nguyên phần cứng hạn chế?  
• Sử dụng nhiều thiết bị…  
• Tăng thêm các tiện ích trên thiết bị  
• HĐH giúp quản lý năng lượng, tính di động, tìm kiếm tài nguyên,  
v.v.v.  
13  
14  
1970  
1970  
1980  
1980  
1990  
1990  
2000  
2000  
15  
• Làm thế nào các chương trình / ứng dụng  
người dùng có thể giao tiếp với HĐH?  
16  
• Là tập các hàm cơ bản nhất của hệ điều hành để phục vụ các yêu  
cầu từ các chương trình người dùng  
• Ví dụ, chuỗi các lời gọi hệ thống được thực hiện để sao chép nội  
dung của một tập tin sang một tập tin khác  
17  
• Thông thường, chương trình người dùng không gọi trực tiếp các lời gọi hệ  
thống của hệ điều hành  
• Hệ điều hành thường cung cấp bộ thư viện các hàm lập trình, chẳng hạn  
Win32 API, iúp việc lập  
trình dễ dàng hơn phải dùng các lời gọi hệ thống  
• Tuy nhiên, thông thường người lập trình thường dùng các hàm thư viện của  
các ngôn ngữ lập trình như thư viện C, Java,… (do dễ sử dụng hơn các hàm  
thư viện củ
• Cho dù là sử dụng hàm ngôn ngữ lập trình hay hàm thư viện hệ điều hành  
thì cuối cùng cũng sẽ chuyển thành các lời gọi hệ thống tương ứng  
18  
ReadFile(…)  
read()  
read()  
19  
20  
Tải về để xem bản đầy đủ
pdf 41 trang yennguyen 26680 Free
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Hệ điều hành - Chương: Tổng quan hệ điều hành", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_he_dieu_hanh_chuong_tong_quan_he_dieu_hanh.pdf