0
0
Lập trình
Admin Team
Admin Teamtechmely

Khái Niệm Hệ Điều Hành: Cấu Trúc, Chức Năng và Mục Tiêu

Đăng vào 1 tháng trước

• 4 phút đọc

Khái Niệm Hệ Điều Hành

1.1 Cấu Trúc Phân Lớp của Hệ Thống

Kiến Trúc của Một Hệ Thống Máy Tính

Trong bài viết này, chúng ta sẽ khám phá cấu trúc phân lớp của một hệ thống máy tính đa năng hiện đại, bao gồm một hoặc nhiều CPU cùng với những bộ điều khiển thiết bị (device controllers) kết nối thông qua bus chung. Bên cạnh đó, hệ thống cũng chia sẻ bộ nhớ dùng chung (shared memory). Mỗi bộ điều khiển thiết bị sẽ chịu trách nhiệm cho một loại thiết bị cụ thể như ổ đĩa, thiết bị âm thanh, hoặc màn hình đồ họa.

  • CPU: Được coi là "bộ não" của máy tính, thực hiện mọi tác vụ tính toán và điều phối các hoạt động trong hệ thống. Đảm bảo rằng các chương trình chạy một cách chính xác và hiệu quả.
  • Bộ điều khiển thiết bị: Giữ một số bộ nhớ đệm cục bộ và một tập hợp các thanh ghi mục đích đặc biệt. Nó di chuyển dữ liệu giữa các thiết bị ngoại vi và bộ nhớ đệm cục bộ của nó.
  • CPU và bộ điều khiển thiết bị: Làm việc đồng thời, cạnh tranh để sử dụng bộ nhớ dùng chung.

Các Thành Phần của Một Hệ Thống

Một hệ thống máy tính thường bao gồm bốn thành phần chính (theo Silberschatz, 2002):

  1. Phần cứng (hardware): Cung cấp tài nguyên tính toán cơ bản như CPU, bộ nhớ, và thiết bị vào/ra.
  2. Hệ điều hành (operating system): Kiểm soát và phối hợp việc sử dụng phần cứng cho các ứng dụng đa dạng.
  3. Chương trình ứng dụng (application programs): Các ứng dụng mà người dùng tương tác, bao gồm hệ quản trị cơ sở dữ liệu, game, và nhiều hơn nữa.
  4. Người dùng (users): Các cá nhân hoặc máy móc, máy tính khác sử dụng hệ thống.

Mục Tiêu của Hệ Điều Hành

Hệ điều hành nằm giữa phần cứng và các chương trình ứng dụng, với mục tiêu tạo ra một môi trường thuận lợi cho người sử dụng thực thi các chương trình ứng dụng hiệu quả hơn.

  • Chuẩn hóa giao diện người dùng: Giúp bất kỳ người dùng nào cũng có thể tiếp cận các hệ thống phần cứng khác nhau dễ dàng hơn.
  • Sử dụng hiệu quả tài nguyên: Đảm bảo tài nguyên phần cứng được khai thác tối đa để nâng cao hiệu suất.

Ví dụ, khi nhiều ứng dụng camera được mở đồng thời trên laptop sử dụng Windows, hệ điều hành sẽ xử lý yêu cầu dùng camera mà không cần ứng dụng tự tương tác với thiết bị vật lý. Nó cung cấp một API để các ứng dụng khác nhau có thể gọi và sử dụng camera, điều này giúp tối ưu hóa hiệu suất sử dụng.

1.2 Chức Năng của Hệ Điều Hành

Giả Lập Một Máy Tính Ảo

Hệ điều hành còn có chức năng giả lập một máy tính ảo, ẩn giấu thông tin phức tạp của phần cứng và giúp lập trình viên khai thác phần cứng một cách hiệu quả nhất.

  • Đơn giản hóa lập trình: Lập trình viên không cần thao tác trực tiếp với số nhị phân mà có thể sử dụng ngôn ngữ bậc cao hơn.
  • Tạo điều kiện cho tiến trình: Mỗi tiến trình sẽ cảm thấy nó sở hữu toàn bộ tài nguyên của hệ thống như bộ nhớ và thời gian CPU.
  • Dễ dàng giao tiếp với thiết bị: Hệ điều hành cung cấp driver và giao thức giúp lập trình viên không phải trực tiếp điều khiển phần cứng.
  • Mở rộng hệ thống dễ dàng: Bằng cách thêm máy ảo (virtual memory, RAM ảo), người dùng có thể nâng cấp hệ thống mà không cần mua thêm phần cứng.
  • Tính độc lập giữa các tiến trình: Mỗi tiến trình chỉ hoạt động trong không gian địa chỉ ảo riêng của nó, ngăn chặn lỗi xẩy ra ở một tiến trình ảnh hưởng tới các tiến trình khác.
  • Thích hợp cho phát triển hệ điều hành: Giúp các nhà phát triển thử nghiệm dễ dàng hơn mà không ảnh hưởng tới hệ thống chính.

Quản Lý Tài Nguyên của Hệ Thống

Hệ điều hành có trách nhiệm quản lý tài nguyên hệ thống như CPU, bộ nhớ, và thiết bị vào ra

  • Phân phối tài nguyên: Hệ điều hành cần cung cấp tài nguyên cho các chương trình đang yêu cầu.
  • Giải quyết tranh chấp: Khi nhiều yêu cầu cùng tới một tài nguyên, hệ điều hành cần xác định thứ tự cấp phát tài nguyên cho các yêu cầu đó.

source: viblo

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào