Bài giảng Hệ điều hành (Operating Systems) cung cấp những nội dung kiến thức sau đây: Tổng quan về hệ điều hành, cấu trúc Hệ điều hành, quản lý tiến trình (Processes), định thời CPU, đồng bộ hóa tiến trình, tắc nghẽn (Deadlocks), quản lý bộ nhớ, bộ nhớ ảo. Mời các bạn cùng tham khảo.
TRƯỜNG ĐH CÔNG NGHỆ THÔNG TIN KHOA KỸ THUẬT MÁY TÍNH Hệ Điều Hành (Operating Systems) •Email: trunghlh@uit.edu.vn •Site : https://sites.google.com/site/trunghlhitu/ 3/25/2014 Khoa KTMT Nội dung môn học Chương 1: Tổng quan hệ điều hành Chương 2: Cấu trúc Hệ điều hành Chương 3: Quản lý tiến trình (Processes) Chương 4: Định thời CPU Chương 5: Đồng hóa tiến trình Chương 6: Tắc nghẽn (Deadlocks) Chương 7: Quản lý nhớ Chương 8: Bộ nhớ ảo Đọc thêm – tiểu luận: Chương 9: Hệ thống quản lý tập tin Chương 10: Hệ thống quản lý nhập/xuất Chương 11: Bảo vệ an toàn hệ thống 3/25/2014 Khoa KTMT Tài liệu tham khảo Trần Hạnh Nhi, Lê Khắc Nhiên Ân Giáo trình hệ điều hành Trung tâm phát triển công nghệ thông tin-ĐHQG.HCM, 2005 Nguyễn Phú Trường Giáo trình hệ điều hành ĐH Cần Thơ, 2005 Silberschatz, Galvin, Gagne Operating System Concepts Sixth edition, John Wiley & Sons,2003 Mark E Russinovich and David A Solomon, Microsoft Windows Internals, 4th Edition, Microsoft Press, 2004 3/25/2014 Khoa KTMT Chương I: Tổng quan hệ điều hành 3/25/2014 Khoa KTMT 1.1 Tổng quan „ Giới thiệu ‟ Đònh nghóa hệ điều hành ‟ Cấu trúc hệ thống máy tính ‟ Các chức hệ điều hành 3/25/2014 Khoa KTMT Đònh nghóa „ Hệ điều hành gì? ‟ Chương trình trung gian phần cứng máy tính người sử dụng, có chức điều khiển phối hợp vệc sử dụng phần cứng cung cấp dòch vụ cho ứng dụng „ Người dùng Các ứng dụng Mục tiêu ‟ Giúp người dùng dễ dàng sử dụng hệ thống Hệ Điều Hành ‟ Quản lý cấp phát tài nguyên hệ thống cách hiệu Phần cứng 3/25/2014 Khoa KTMT 1.2 PHÂN LOẠI HỆ ĐIỀU HÀNH Dưới góc độ loại máy tính Hệ điều hành dành cho máy MainFrame Hệ điều hành dành cho máy Server Hệ điều hành dành cho máy nhiều CPU Hệ điều hành dành cho máy tính cá nhân (PC) Hệ điều hành dành cho máy PDA (Embedded OS - hệ điều hành nhúng) Hệ điều hành dành cho máy chuyên biệt Hệ điều hành dành cho thẻ chíp (SmartCard) 3/25/2014 Khoa KTMT 1.2 PHÂN LOẠI HỆ ĐIỀU HÀNH Dưới góc độ số chương trình sử dụng lúc – Hệ điều hành đơn nhiệm – Hệ điều hành đa nhiệm Dưới góc độ người dùng (truy xuất tài nguyên lúc) – Một người dùng – Nhiều người dùng •Mạng ngang hàng •Mạng có máy chủ: LAN, WAN, 3/25/2014 Khoa KTMT 1.2 PHÂN LOẠI HỆ ĐIỀU HÀNH Dưới góc độ hình thức xử lý –Hệ thống xử lý theo lô –Hệ thống chia sẻ –Hệ thống song song –Hệ thống phân tán –Hệ thống xử lý thời gian thực 3/25/2014 Khoa KTMT 1.2 PHÂN LOẠI HỆ ĐIỀU HÀNH HỆ THỐNG XỬ LÝ ĐƠN CHƯƠNG Đơn chương - Tác vụ thi hành - Bộ giám sát thường trực, - CPU thao tác nhập xuất, - Xử lý offline, - Đồng hóa thao tác bên - Spooling (Simultaneous Peripheral Operation On Line) Nhập 3/25/2014 Máy tính Khoa KTMT Xuất 10 2.3 Thay trang nhớ (tt) Khoa KTMT 308 2.4 Các thuật toán thay trang „ Hai vấn đề chủ yếu: Frame-allocation algorithm – Cấp phát cho process frame nhớ thực? Page-replacement algorithm – Chọn frame process thay trang nhớ – Mục tiêu: số lượng page-fault nhỏ – Được đánh giá cách thực thi giải thuật chuỗi tham chiếu nhớ (memory reference string) xác đònh số lần xảy page fault Khoa KTMT „ Ví dụ Thứ tự tham chiếu đòa nhớ, với page size = 100: „ 0100, 0432, 0101, 0612, 0102, 0103, 0104, 0101, 0611, 0102, 0103, 0104, 0101, 0610, 0102, 0103, 0104, 0101, 0609, 0102, 0105 trang nhớ sau tham chiếu = chuỗi tham chiếu nhớ (trang nhớ) „ „ „ „ „ 1, 4, 1, 6, 1, 1, 1, 1, 6, 1, 1, 1, 1, 6, 1, 1, 1, 1, 6, 1, 309 a) Giaûi thuật thay trang FIFO Các liệu cần biết ban đầu: – – – – Số khung trang Tình trạng ban đầu Chuỗi tham chiếu Trang nhớ cũ thay Bộ nhớ cấp cho process frame Khoa KTMT 310 Nghòch lý Belady Khoa KTMT 311 Nghòch lý Belady Bất thường (anomaly) Belady: số page fault tăng trình cấp nhiều frame Khoa KTMT 312 2.4 b)Giải thuật thay trang OPT(optimal) Giải thuật thay trang OPT – Thay trang nhớ tham chiếu trễ tương lai – Khó thực? Ví dụ: process có trang, cấp frame Khoa KTMT 313 c) Giải thuật lâu chưa sử dụng Least Recently Used (LRU) Ví dụ: Mỗi trang ghi nhận (trong bảng phân trang) thời điểm tham chiếu trang LRU trang nhớ có thời điểm tham chiếu nhỏ (OS tốn chi phí tìm kiếm trang nhớ LRU có page fault) Do vậy, LRU cần hỗ trợ phần cứng chi phí cho việc tìm kiếm Ít CPU cung cấp đủ hỗ trợ phần cứng cho giải thuật LRU Khoa KTMT 314 LRU FIFO So sánh giải thuật thay trang LRU FIFO chuỗi tham chiếu trang nhớ Khoa KTMT 315 Giải thuật hội thứ hai Sử dụng bit tham khảo tại khoản thời gian đặn Dùng byte cho trang bảng nằm nhớ Dùng ghi dịch chứa lịch sử tham khảo lần gần VD: 00110101, 00000000, 11111111 Là giải thuật thay FIFO, trước thay trang xem xét bit tham khảo Đơi sử dụng hai bit: tham khảo sửa đổi cặp (x,x): – (0,0) không dùng không sửa đổi-là trang tốt để thay – (0,1) không dùng sửa đổi-khơng thật tốt trang cần viết trước thay – (1,0) dùng khơng sửa đổi-nó có thể nhanh chóng dùng lại – (1,1) dùng sửa đổi-trang có thể nhanh chóng dùng lại trang cần viết đĩa trước có thể thay Khoa KTMT 316 Giải thuật hội thứ hai (tt) Khoa KTMT 317 2.5.Số lượng frame cấp cho process OS phải đònh cấp cho process frame – Cấp frame nhiều page fault – Cấp nhiều frame giảm mức độ multiprogramming Chiến lược cấp phát tónh (fixed-allocation) – Số frame cấp cho process không đổi, xác đònh vào thời điểm loading tùy thuộc vào ứng dụng (kích thước nó,…) Chiến lược cấp phát động (variable-allocation) – Số frame cấp cho process thay đổi chạy Nếu tỷ lệ page-fault cao cấp thêm frame Nếu tỷ lệ page-fault thấp giảm bớt frame – OS phí để ước đònh process Khoa KTMT 318 a) Chiến lược cấp phát tónh Cấp phát nhau: Ví dụ, có 100 frame process process 20 frame Cấp phát theo tỉ lệ: dựa vào kích thước process si size of process pi Ví dụ: S si m 64 si 10 m total number of frames allocation for pi si m S Cấp phát theo độ ưu tiên Khoa KTMT s2 127 10 a1 64 137 127 a2 64 59 137 319 Bài tập Bài 01: Một máy tính 32-bit địa chỉ, sử dụng bảng trang nhị cấp Địa ảo phân bổ sau : bit dành cho bảng trang cấp 1, 11 bit cho bảng trang cấp 2, cho offset Cho biết kích thước trang hệ thống, địa ảo có trang ? Bài 02: Xét chuỗi truy xuất nhớ sau: 1, , , , , , , , , , , , , , , , , , , Có lỗi trang xảy sử dụng thuật toán thay sau đây, giả sử có khung trang ban đầu khung trang trống ? a) LRU b) FIFO c) Optimal d) Cơ hội thứ Khoa KTMT 320 Bài tập Cho process có số frame truy cập sau: 1,2,4,3,5,2,3,5,6,7,8,9,1,2,3,4,5,2,3,7,6,4, 5,6,7,9,8,1,2,5 Cho biết có biêu nhiêu tập làm việc (working set)? Liệt kê frame working set? Biết = Khoa KTMT 321 Bài tập Hệ thống tại thời điểm có process: process cần frame, process cần 15 frame, process cần 10 frame, process cần frame, process cần 11 frame Hệ thống có 30 frame Tính xem process cấp frame? Phân bổ đều? Theo tỷ lệ? Khoa KTMT 322 ... Hệ điều hành dành cho máy Server Hệ điều hành dành cho máy nhiều CPU Hệ điều hành dành cho máy tính cá nhân (PC) Hệ điều hành dành cho máy PDA (Embedded OS - hệ điều hành nhúng) Hệ điều hành. .. quan hệ điều hành 3/25/2014 Khoa KTMT 1.1 Tổng quan „ Giới thiệu ‟ Đònh nghóa hệ điều hành ‟ Cấu trúc hệ thống máy tính ‟ Các chức hệ điều hành 3/25/2014 Khoa KTMT Đònh nghóa „ Hệ điều hành gì?... chuyên biệt Hệ điều hành dành cho thẻ chíp (SmartCard) 3/25/2014 Khoa KTMT 1.2 PHÂN LOẠI HỆ ĐIỀU HÀNH Dưới góc độ số chương trình sử dụng lúc – Hệ điều hành đơn nhiệm – Hệ điều hành đa nhiệm