Cấu trúc của hệ điều hành

Cấu trúc hệ điều hành

by Admin


Đăng vào Sat Aug 19 2017



Một hệ điều hành cung cấp môi trường cho các chương trình được thực hiện. Các hệ điều hành khác nhau sẽ có thiết kế, cách chạy khác nhau. Chúng ta có thể nhìn hệ điều hành ở nhiều khía cạnh khác nhau. Ở khía cạnh người dùng, chúng ta sẽ quan tâm đến những dịch vụ mà hệ điều hành mang lại (dịch vụ đính kèm mail trong Win 10, dịch vụ chuyển file trong MacOS). Ở khía cạnh nhà phát triển (developer), đó sẽ là giao diện (interface) có sẵn/ tích hợp trên hệ điều hành. Và hơn hết nữa, là về cấu tạo và sự kết nối của nó (hệ điều hành có hỗ trợ bluetooth, wifi,… không).

 

Sẽ có nhiều bài viết xung quanh cấu trúc của hệ điều hành. Phần đầu chúng ta sẽ nói về các dịch vụ của nó.

 

Phần 1: Các dịch vụ của hệ điều hành 

 

 

Một hệ điều hành cung cấp môi trường để chạy các chương trình. Bên cạnh đó, nó còn cung cấp một số dịch vụ cho các chương trình và cho người sử dụng các chương trình đó.

 

1. Giao diện người dùng (Graphical user interface/ UI): Hầu như tất cả các hệ điều hành hiện tại đều có một UI. Giao diện này có thể có nhiều dạng khác nhau.

 

Một là giao diện câu lệnh (command-line interface/ CLI): nơi mà người dùng phải nhập lệnh để yêu cầu dịch vụ từ hệ điều hành.

Hai là giao diện tập lệnh (batch interface): nơi mà tất cả câu lệnh được bỏ vào một chương trình chạy được, và cần chạy file để yêu cầu dịch vụ.

Cuối cùng và cũng là phương thức được nhiều người xài nhất chính là giao diện đồ hòa (Graphical User Interface/ GUI): nơi bạn có thể dùng chuột, phím cùng các thao tác click, đánh máy để yêu cầu dịch vụ từ hệ điều hành.

 Hai giao diện câu lệnh nhiều người sử dụng là CMD của hệ điều hành Window và terminal window của hệ điều hành Linux. Bạn có thể tìm hiểu lý do nên sử dụng terminal window/ cmd tại đây.

 

CMD của hệ điều hành Window 

 

 

Terminal window của hệ điều hành Ubutu (Linux)

 

2. Chạy chương trình: Hệ thống phải có khả năng tải chương trình, file vào trong bộ nhớ để chạy. Và chương trình, file đó bắt buộc có điểm dừng.

 

3. Thao tác nhập xuất: Chương trình đang chạy có thể yêu cầu tương tác với phần cứng. Ví dụ như chương trình quay màn hình yêu cầu webcam phải hoạt động. Tùy chương trình mà phần cứng, dữ liệu vào, dự liệu ra cần yêu cầu.

 

4. Quản lý file hệ thống: có những hệ điều hành sẽ yêu cầu quyền truy cập, hoặc không cho phép người dùng ghi, sửa một số file hệ thống để đảm bảo hiệu năng, bảo mật của máy tính.

 

5. Trao đổi: Có những trường hợp một quá trình/ chương trình yêu cầu trao đổi thông tin với nhau. Sẽ có sự trao đổi thông tin, dữ liệu giữa các chương trình trong cùng một máy tính hoặc các chương trình giữa các máy tính khác nhau cùng nằm trong một hệ thống mạng.

Sự trao đổi có thể được tạo ra qua hai phương thức: bộ nhớ chung (shared memory) hoặc đưa thông tin (message passing).

 

6. Phát hiện lỗi: Hệ điều hành phải có chức năng phát hiện và sửa lỗi nhanh chóng.

 

7. Quản lý tài nguyên: Khi có nhiều người dùng hay nhiều chương trình đồng thời chạy, tài nguyên phải được hệ điều hành quản lý, điều tiết một cách hiệu quả. Có một số phương thức quản lý tài nguyên sẽ được cập nhật trong những bài sau.

 

8. Đếm: Hệ điều hành phải có khả năng quản lý người dùng nào sử dụng bao nhiêu tài nguyên. Dữ liệu thu thập được sẽ có ích với các nhà quản trị hệ thống để phát triển hiệu năng máy tính hơn.

 

9. Bảo vệ và bảo mật: chức năng, dịch vụ cơ bản của mọi hệ điều hành chống lại các tác nhân gây hại bên trong và bên ngoài.

 

 Bạn có thể tham khảo bài tiếp theo: Giao diện hệ điều hành.


Để lại bình luận:
Curious developer
Tech seeker
Search