Sau khi mountđược liệt kê một số hệ thống tập tin. Tôi cần biết những gì trong /dev, /procvà /sys. Một số ví dụ sẽ là tuyệt vời!
Sau khi mountđược liệt kê một số hệ thống tập tin. Tôi cần biết những gì trong /dev, /procvà /sys. Một số ví dụ sẽ là tuyệt vời!
Câu trả lời:
Các /devcây chứa các nút thiết bị , mang đến cho không gian người dùng truy cập vào các trình điều khiển thiết bị trong việc điều hành hệ điều hành loại kernel.¹ Tất cả POSIX của hệ điều hành của bạn có một /devcây.
Các /proccây có nguồn gốc từ hệ thống V Unix, nơi mà nó chỉ cung cấp thông tin về mỗi quá trình chạy, sử dụng một /proc/$PID/stuffchương trình. Linux đã mở rộng rất nhiều điều đó , thêm tất cả các loại thông tin về trạng thái của kernel đang chạy. Ngoài các tệp thông tin chỉ đọc này, Linux /proccòn có các tệp ảo có thể ghi có thể thay đổi trạng thái của kernel đang chạy. Các hệ điều hành loại BSD thường không có /procchút nào, vì vậy phần lớn những gì bạn tìm thấy ở đây là không thể mang theo được.
Giải pháp dự định cho mớ hỗn độn này trong Linux /proclà /sys. Lý tưởng nhất là tất cả các thông tin không được xử lý được đưa vào /proccây nên đã được chuyển đến /sysbây giờ, nhưng quán tính lịch sử đã giữ rất nhiều thứ /proc. Thông thường có hai cách để thực hiện một sự thay đổi trong kernel chạy: cũ /proccách, giữ cho khả năng tương thích ngược, và mới /syscách mà bạn đang phải được sử dụng now.²
Chú thích:
Ngoài ra còn có một số /devmục mà không tương ứng với các thiết bị phần cứng, chẳng hạn như /dev/null, /dev/random, và /dev/tty. Đây là những thiết bị ảo cho phép các chương trình không gian người dùng nói chuyện với các phần khác của kernel bên cạnh các trình điều khiển đang chạy theo kiểu giống như thiết bị.
Như một quy luật, /syscó xu hướng được tổ chức chặt chẽ hơn /proc, vì /sysphản ánh các cấu trúc dữ liệu nhân bên trong quản lý tài nguyên của hệ thống, trong khi /procđã phát triển hữu cơ trong nhiều năm và các quyết định thiết kế nghi vấn cũ không thể thay đổi ngay bây giờ vì có các chương trình sử dụng các giao diện cũ đó . /sysbắt đầu với một thiết kế rõ ràng hơn và không phải kéo theo nhiều hành lý lịch sử như /proc.