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 08/04/2022 5080
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