2010-03-01 30 views
11

Tôi biết sự khác biệt giữa quá trình đang chạy ở chế độ người dùng và một tiến trình đang chạy ở chế độ hạt nhân (dựa trên giới hạn truy cập, quyền truy cập vào phần cứng, v.v.). Nhưng chỉ vì tò mò, sự khác biệt giữa một tiến trình đang chạy trong chế độ hạt nhân và một tiến trình chạy như là root?Sự khác nhau giữa các tiến trình đang chạy ở chế độ hạt nhân và chạy dưới dạng root?

Trả lời

22

chế độ lõi và gốc là hai ý tưởng riêng biệt không thực sự liên quan đến nhau. Khái niệm về việc chạy một tiến trình với quyền root là một thuật ngữ unix/linux có nghĩa là bạn đã đăng nhập với tư cách là quản trị viên của hệ thống.

Bất kỳ quy trình nào bạn chạy, dù là người dùng root hay người dùng thông thường, thường chạy ở cả chế độ người dùng và chế độ hạt nhân. Hệ thống liên tục chuyển đổi giữa chế độ người dùng (nơi mã ứng dụng chạy) và chế độ hạt nhân (nơi mã hạt nhân chạy).

Một số chương trình, như nhiều trình điều khiển thiết bị, luôn chạy ở chế độ hạt nhân, nghĩa là chúng có toàn quyền truy cập vào phần cứng. Một ứng dụng bình thường chạy với các đặc quyền root vẫn tồn tại trong chế độ người dùng và chỉ chuyển sang chế độ hạt nhân khi một cuộc gọi hệ thống hạt nhân được thực hiện và sau đó chuyển về chế độ người dùng.

+0

Tôi nghĩ rằng những gì bạn mô tả là đúng, và tôi đang cố gắng tìm tài liệu tham khảo (tài liệu hạt nhân Linux sẽ là tốt nhất) nhưng tôi không thể tìm thấy bất kỳ. Bạn có bất kỳ tài liệu tham khảo cho điều này? – jperelli

Các vấn đề liên quan