Hệ điều hành GNU/Linux đƣợc xây dựng bao gồm có 2 vùng cơ bản với các vai trò và chức năng khác nhau để đảm bảo hệ thống có thể hoạt động ổn định và tránh những sai sót gây hƣ hỏng toàn bộ hệ thống.
- Vùng ngƣời sử dụng (hay còn gọi là vùng ứng dụng) bao gồm các phần mềm, các dòng lệnh mà ngƣời sử dụng nhập trực tiếp vào máy tính để thực thi. Các phần mềm, mã lệnh sẽ đƣợc đƣa xuống cấp độ nhân một cách trực tiếp hoặc thông qua các thƣ viện của GNU.
Hình 2.11 Kiến trúc của hệ điều hành GNU/Linux
- Vùng nhân gồm có nhân Linux, giao thức gọi hệ thống, và các kiến trúc phụ thuộc vào nhân khác. Trong đó:
+ Giao thức gọi hệ thống nằm ở phía trên cùng, là nơi thực hiện các hàm gọi từ vùng ngƣời sử dụng bằng cách chuyển các hàm đó vào nhân Linux và xuất thông tin trở ra cho ngƣời sử dụng.
+ Nhân Linux là bộ phận trung tâm quan trọng nhất của vùng nhân cũng nhƣ của hệ điều hành Linux. Đây là nơi quản lý toàn bộ quản lý tài nguyên của
45
hệ thống. Bao gồm: quản lý tiến trình, quản lý bộ nhớ, quản lý tập tin, quản lý in/out, quản lý lƣu trữ, quản lý ngắt,…
+ Các kiến trúc phụ thuộc vào nhân hay còn gọi là các driver là các module thực hiện việc giao tiếp giữa nhân Linux với các thiết bị khác nhƣ ổ cứng, card mạng, card màn hình,…
Do hệ điều hành GNU/Linux là hệ điều hành mở nên ngƣời sử dụng có thể xem các thông tin về các module trong nhân Linux cũng nhƣ thêm các module tự tạo vào nhân. Tuy nhiên các module này phải đƣợc lập theo những chuẩn nhất định, phụ thuộc vào nhân để đảm bảo hệ thống không bị gián đoạn và hƣ hỏng.