Sự khác biệt giữa / dev và / sys


19

Chính xác thì sự khác biệt giữa devfssysfs là gì? Cả hai dường như duy trì một danh sách các phần cứng gắn liền với hệ thống . Vậy thì tại sao cần 2 fs riêng biệt thậm chí nảy sinh? Theo như tôi có thể nhận / sys duy trì danh sách các thiết bị hơi "thô" (như "ser0"). Udev hoạt động trên các thiết bị đó, nhận được nhiều thông tin khác nhau và áp dụng các quy tắc khác nhau để trình bày chúng dưới dạng tên dễ nhận biết, sau đó được ánh xạ lên / dev (như "camera"). Đây có phải là lý do duy nhất? Và sau đó chúng tôi gắn các thiết bị tương ứng từ / dev fs (chúng tôi không thể làm điều đó từ / sys fs) vào / media fs.

Tôi đã đọc câu trả lời tại Sự khác biệt giữa / dev và / sys / class? . Nhưng tôi không thể có được phần sys fs nơi nó nói rằng

Sysfs chứa cấu trúc phân cấp của các thiết bị, vì chúng được gắn vào máy tính

Các tệp trong / sys không phải là tệp nút thiết bị? Vậy thì chúng thuộc loại tập tin nào?



Tôi không nghĩ rằng đây là một bản sao. Các câu trả lời cho cả hai câu hỏi nhìn sysfstừ các quan điểm khác nhau và không có câu trả lời nào cho câu hỏi khác giải thích /devthư mục liên quan đến như thế nào sysfs.
Anthony G - công lý cho Monica

Câu trả lời:


27

Hệ /systhống tệp (sysfs) chứa các tệp cung cấp thông tin về các thiết bị: cho dù nó được bật, tên nhà cung cấp và kiểu máy, thiết bị nào được cắm vào thiết bị, v.v. Nó quan tâm đến các ứng dụng quản lý thiết bị.

Hệ /devthống tệp chứa các tệp cho phép các chương trình tự truy cập vào thiết bị: ghi dữ liệu vào cổng nối tiếp, đọc đĩa cứng, v.v ... Điều đó đáng quan tâm đối với các ứng dụng truy cập thiết bị.

Một phép ẩn dụ là /syscung cấp quyền truy cập vào bao bì, trong khi /devcung cấp quyền truy cập vào nội dung của hộp.

Các tệp trong /syskhông phải là các nút thiết bị, mà là các liên kết tượng trưng và các tệp thông thường. Các tệp thông thường đó đặc biệt ở chỗ đọc hoặc ghi vào chúng gọi các hàm cụ thể của tệp trong kernel, như các nút thiết bị. Sự khác biệt là các tệp /syshoạt động theo cách này do hệ thống tệp được bật, trong khi các nút thiết bị hoạt động theo cách này do đặc điểm nút thiết bị của chúng (loại tệp cho biết thiết bị (khối hoặc ký tự) và chỉ số chính và số phụ của thiết bị đó là thiết bị nào).

Lý do /devtồn tại độc lập /syslà một phần lịch sử: /devbắt nguồn từ buổi bình minh của Unix, trong khi đó /syslà một phát minh gần đây hơn nhiều. Nếu Linux được thiết kế ngày nay không có nền tảng lịch sử, /dev/sdacó thể là như vậy /sys/block/sda/content.


3
Xem thêm : man hier.
HalosGhost
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.