Hệ điều hành là một chương trình trung gian giữa phần cứng và người sử dụng. Có tác dụng điều khiển, phân chia các hoạt động máy tính và cung cấp các dịch vụ cho người dùng.
Mục tiêu của HĐH:
- Giúp người dùng xử lý và tương tác với máy tính.
- Quản lý và cấp phát tài nguyên một cách hiệu quả.
Trước hết bạn phải hiểu được cấu trúc hệ thống máy tính gồm những (4 thành phần)
- Phần cứng (hardware): CPU, bộ nhớ, các thiết bị nhập xuất (I/O),…
- Hệ điều hành: 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.
- Tầng ứng dụng: Có nhiệm vụ xử lý các phép tính toán của người dùng. Ví dụ: compilers, database systems, video games, business programs.
- Người dùng (user): con người, máy móc hay các máy tính khác.
Các chức năng chính của hệ điều hành
Hệ điều hành bao gồm 6 tính năng chính:
- Phân chia thời gian xử lý, định thời CPU.
- Phối hợp, đồng bộ hóa các tiến trình.
- Quản lý tài nguyên hệ thống (File,..)
- Quản lý access control, protected.
- Đảm bảo tính nhất quán (integrity), tự tra lỗi và khắc phục (error recovery).
- Cung cấp giao diện cho người dùng.
Phân loại Hệ điều hành
Hệ điều hành được chia thành nhiều loại tùy mục đích sử dụng với các góc độ phân loại khác nhau.
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).
Dưới góc độ số chương trình được sử dụng cù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 cùng 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.
Dưới góc độ hệ thống xử lý
Hệ điều hành gồm 5 loại hệ thống xử lý khác nhau.
- Hệ thống xử lý theo lô (Gồm đa chương và đơn chương)
- Hệ thống xử lý phân chia thời gian.
- Hệ thống xử lý thời gian thực.
- Hệ thống xử lý song song (Gồm đối xứng và bất đối xứng)
- Hệ thống xử lý phân tán.
— Hệ thống xử lý theo lô
Chia làm 2 loại:
- Đơn chương: Xử lý theo kiểu làm xong 1 tiến trình thì tiến hành làm tiến trình khác.
- Đa chương: Nạp nhiều tiến trình vào bộ nhớ chính. Khi một tiến trình thực hiện I.O (nhập xuất) thì tiến trình tiếp theo được thực thi. | Ưu điểm: Tận dụng được thời gian rảnh của CPU.
— Hệ thống xử lý theo song song:
Hai hay nhiều vi xử lý cùng chia sẻ bộ nhớ. Một bộ xử lý kiểm soát một số bộ xử lý I/O. Chia làm 2 loại chính:
- Đa xử lý đối xứng: Các processor ( Vi xử lý) chạy riêng trên một bản sao hệ điều hành giống nhau. Coppy dữ liệu cho nhau khi cần.
- Đa xử lý bất đối xứng: Các processor xử lý công việc khác nhau.
Ưu: Nhanh vì có thể ghép nhiều hệ thống, an toàn do khi xử lý gặp lỗi thì công việc sẽ được chuyển giao cho vi xử lý khác.
— Hệ thống xử lý phân tán:
Mỗi vi xử lý đều có bộ nhớ riêng biệt và xử lý các công việc khác nhau và trao đổi với nhau qua một hệ thống Bus tốc độ cao.
Ưu điểm: Nhanh, tin cậy cao, chia sẻ được tài nguyên, chia sẻ sức mạnh tính toán,v.v
— Hệ thống xử lý thời gian thực:
Sử 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, thiết bị gia dụng, quân sự.
Ràng buộc 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 về 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, robotics,… Soft real-time.
Thường được dùng trong lĩnh vực multimedia, virtual reality với yêu cầu mềm dẻo hơn về thời gian đáp ứng.
— Hệ thống nhúng
Thường là điện thoại di động (smartphone) và máy tính bảng.
Bộ nhớ nhỏ (512 KB – 128 MB – 4GB)
Tốc độ processor thấp (để ít tốn pin)
Màn hình hiển thị có kích thước nhỏ.
Có thể dùng các công nghệ kết nối như IrDA, Bluetooth, wireless.
Có thể có một hoặc nhiều cảm biến khác nhau.