Vi hạt nhân trong Operahệ thống ting: Archikiến trúc, Ưu điểm

Trước khi tìm hiểu MicroKernel, hãy hiểu:

Hạt nhân là gì?

Kernel là một phần quan trọng của HĐH quản lý tài nguyên hệ thống. Nó còn đóng vai trò là cầu nối giữa phần mềm và phần cứng của máy tính. Đây là một trong những chương trình đầu tiên được tải khi khởi động sau bộ nạp khởi động. Kernel cũng chịu trách nhiệm cung cấp quyền truy cập an toàn vào phần cứng của máy cho các chương trình khác nhau. Nó cũng quyết định thời điểm và thời gian một ứng dụng nhất định sử dụng phần cứng cụ thể.

Hạt nhân vi mô là gì?

hạt nhân vi mô là một phần mềm hoặc mã chứa số lượng chức năng, dữ liệu và tính năng tối thiểu cần thiết để triển khai một hệ điều hành. Nó cung cấp một số cơ chế tối thiểu, đủ tốt để chạy các chức năng cơ bản nhất của hệ điều hành. Nó cho phép các phần khác của hệ điều hành được triển khai vì nó không áp đặt nhiều chính sách.

Các vi hạt nhân và môi trường người dùng của chúng thường được triển khai trong C++ or Ngôn ngữ lập trình C với một chút lắp ráp. Tuy nhiên, có thể thực hiện được các ngôn ngữ triển khai khác với một số mã hóa cấp cao.

Hạt nhân nguyên khối là gì?

Hạt nhân nguyên khối chạy tất cả các dịch vụ hệ thống cơ bản như quản lý quy trình, Quản lý bộ nhớ, giao tiếp I/O và xử lý ngắt, hệ thống tệp, v.v. trong không gian kernel.

Trong cách tiếp cận hạt nhân này, toàn bộ hệ điều hành chạy dưới dạng một chương trình duy nhất ở chế độ hạt nhân. Hệ điều hành được viết dưới dạng tập hợp các thủ tục được liên kết với nhau thành một chương trình nhị phân lớn có thể thực thi được.

hạt nhân vi mô Archikiến trúc

Microkernel là phần quan trọng nhất để triển khai chính xác một hệ điều hành. Bạn có thể thấy trong sơ đồ bên dưới, Microkernel thực hiện các hoạt động cơ bản như bộ nhớ, cơ chế lập lịch quy trình và giao tiếp giữa các quy trình.

hạt nhân vi mô Archikiến trúc
Dựa trên vi hạt nhân Operahệ thống ting

Microkernel là phần mềm duy nhất thực thi ở cấp độ đặc quyền. Các chức năng quan trọng khác của HĐH được xóa khỏi chế độ kernel và chạy ở chế độ người dùng. Các chức năng này có thể là trình điều khiển thiết bị, ứng dụng, máy chủ tệp, giao tiếp giữa các quá trình, v.v.

Các thành phần của vi hạt nhân

Một vi nhân chỉ bao gồm các chức năng cốt lõi của hệ thống. Một thành phần chỉ được đưa vào Microkernel nếu việc đặt nó bên ngoài sẽ làm gián đoạn chức năng của hệ thống. Tất cả các thành phần không cần thiết khác nên được đặt ở chế độ người dùng.

Các chức năng tối thiểu cần có trong Microkernel là:

  • Quản lý bộ nhớ các cơ chế như không gian địa chỉ nên được đưa vào Microkernel. Nó cũng chứa các tính năng bảo vệ bộ nhớ.
  • Cơ chế lập lịch của bộ xử lý nên chứa các bộ lập lịch tiến trình và luồng.
  • Giao tiếp giữa các quá trình quản lý các máy chủ chạy không gian địa chỉ của riêng chúng.

Sự khác biệt giữa hạt nhân vi mô và hạt nhân nguyên khối

Thông số Nhân nguyên khối hạt nhân vi mô
Cơ bản Đó là một quá trình lớn chạy trong một không gian địa chỉ duy nhất Nó có thể được chia thành các quy trình riêng biệt được gọi là máy chủ.
Để viết một hạt nhân nguyên khối, cần ít mã hơn. Để viết một vi hạt nhân, cần có nhiều mã hơn
Bảo mật Nếu một dịch vụ gặp sự cố, toàn bộ hệ thống sẽ sụp đổ trong một hạt nhân nguyên khối. Nếu một dịch vụ gặp sự cố, nó sẽ không bao giờ ảnh hưởng đến hoạt động của vi hạt nhân.
Giao tiếp Nó là một tệp nhị phân tĩnh duy nhất Máy chủ giao tiếp thông qua IPC.
Ví dụ Linux, BSD, Microsoft Windows (95,98, Tôi), Solaris, OS-9, AIX, DOS, XTS-400, v.v. L4Linux, QNX, SymbianK42, Mac OS X, Integrity, Vv

Ưu điểm của vi hạt nhân

Dưới đây là những ưu/lợi ích của việc sử dụng Microkernel

  • Kiến trúc vi nhân nhỏ và biệt lập nên có thể hoạt động tốt hơn.
  • Microkernel an toàn vì chỉ có những thành phần làm gián đoạn chức năng của hệ thống mới được đưa vào.
  • Việc mở rộng hệ thống dễ tiếp cận hơn nên có thể thêm vào ứng dụng hệ thống mà không làm ảnh hưởng tới Kernel.
  • Hạt nhân vi mô có dạng mô-đun và các mô-đun khác nhau có thể được thay thế, tải lại, sửa đổi mà không cần chạm vào Hạt nhân.
  • Ít sự cố hệ thống hơn khi so sánh với các hệ thống nguyên khối.
  • Giao diện vi nhân giúp bạn thực thi cấu trúc hệ thống mô-đun hơn.
  • Không cần biên dịch lại, thêm tính năng mới
  • Sự cố máy chủ cũng bị cô lập như bất kỳ sự cố nào của chương trình người dùng khác.
  • Hệ thống vi nhân rất linh hoạt, do đó các chiến lược và API khác nhau, được triển khai bởi các máy chủ khác nhau, có thể cùng tồn tại trong hệ thống.
  • Tăng tính bảo mật và ổn định sẽ làm giảm số lượng mã chạy ở chế độ kernel

Nhược điểm của Microkernel

Dưới đây là nhược điểm/nhược điểm của việc sử dụng Microkernel:

  • Việc cung cấp dịch vụ trong hệ thống vi nhân đắt tiền so với hệ thống nguyên khối thông thường.
  • Cần chuyển đổi ngữ cảnh hoặc gọi hàm khi trình điều khiển được triển khai dưới dạng thủ tục hoặc quy trình tương ứng.
  • Hiệu suất của hệ thống vi nhân có thể không quan trọng và có thể dẫn đến một số vấn đề.

Tổng kết

  • Kernel là một phần quan trọng của HĐH quản lý tài nguyên hệ thống.
  • Hạt nhân vi mô là một phần mềm hoặc mã chứa số lượng chức năng, dữ liệu và tính năng tối thiểu cần thiết để triển khai một hệ điều hành.
  • Trong phương pháp tiếp cận Monolithic Kernel, toàn bộ hệ điều hành chạy dưới dạng một chương trình duy nhất ở chế độ kernel
  • Microkernel là phần quan trọng nhất để triển khai chính xác một hệ điều hành.
  • Một vi nhân chỉ bao gồm các chức năng cốt lõi của hệ thống.
  • Hạt nhân nguyên khối là một quy trình lớn chạy trong một không gian địa chỉ duy nhất, trong khi Microkernel có thể được chia thành các quy trình riêng biệt được gọi là máy chủ.
  • Kiến trúc vi hạt nhân nhỏ và biệt lập nên có thể hoạt động tốt hơn
  • Cung cấp dịch vụ trong hệ thống vi nhân đắt tiền so với hệ thống nguyên khối thông thường