Chương 1 "Tổng quan về hệ điều hành" Cùng nắm kiến thức trong chương này thông qua việc tìm hiểu các nội dung sau: Hệ điều hành là gì? Hệ thống mainframe; Hệ để bàn; Hệ đa xử lý;Hệ phân tán; Hệ thống cụm; Hệ thời gian thực. ! | Bài giảng Hệ điều hành: Chương 1 - ThS. Nguyễn Thị Hải Bình TỔNG QUAN VỀ HỆ ĐIỀU HÀNH ThS. Nguyễn Thị Hải Bình Khoa CNTT, ĐH Giao thông vận tải Email: calmseahn@ NỘI DUNG 1 HỆ ĐIỀU HÀNH LÀ GÌ? 2 QUÁ TRÌNH PHÁT TRIỂN CỦA HĐH 3 BÀI TẬP 2 HỆ ĐIỀU HÀNH LÀ GÌ? 3 Tại sao cần tới Hệ điều hành? HAI CÁCH NHÌN HỆ ĐIỀU HÀNH • Theo người dùng (User view) • Dễ sử dụng • Hiệu quả • Ứng dụng phong phú • Theo phần cứng (system view) • Quản lý và cấp phát tài nguyên một cách hiệu quả và công bằng • Quản lý việc thực thi của các chương trình ứng dụng QUÁ TRÌNH PHÁT TRIỂN CỦA HĐH • Hệ thống mainframe - Mainframe Systems • Hệ để bàn - Desktop Systems • Hệ đa xử lý - Multiprocessor Systems • Hệ phân tán - Distributed Systems • Hệ thống cụm - Clustered system • Hệ thời gian thực - Realtime Systems • Hệ thống nhúng – Embedded Systems MAINFRAME SYSTEMS • Batch systems • Multiprogramming systems • Time sharing system BATCH SYSTEMS • Hệ điều hành sơ khai nhất • Tác vụ chính là chuyển điều khiển tự động từ công việc này sang công việc khác • Cần có người vận hành • Giảm thời gian xử lý bằng cách ghép nhóm các công việc có cùng yêu cầu (batching jobs) • Ghép 2 công việc cùng dùng trình biên dịch Fortran để tiết kiệm thời gian load trình biên dịch Fortran BATCH SYSTEMS MULTIPROGRAMMING SYSTEMS • Multiprogramming làm tăng hiệu năng của CPU bằng cách tổ chức các công việc để CPU luôn có 1 công việc cần thực hiện. • Các công việc đó được lưu trong bộ nhớ chính tại cùng một thời điểm và CPU là đa nhiệm giữa chúng • Khi một công việc phải đợi tác vụ nào đó, Hệ điều hành sẽ chuyển CPU cho một công việc khác. MULTIPROGRAMMING SYSTEMS MULTIPROGRAMMING SYSTEMS • Hệ điều hành cần có các chức năng cơ bản sau • Các hàm nhập/xuât - I/O routines • Định thời công việc - Job scheduling • Quản lý bộ nhớ - Memory management • Định thời CPU - CPU scheduling • Phân bổ thiết bị - Allocation of devices TIME SHARING .