Trên hệ thống Linux đang chạy, tôi muốn biết mô-đun trình điều khiển thiết bị nào đã tạo một mục nhập sysfs cụ thể. Có thể biết không? Tôi biết tôi có thể grep cho chuỗi có liên quan trong nguồn hạt nhân và cố gắng xác định. Nhưng, có cách nào mà không làm điều đó?Xác định mô-đun hạt nhân đã tạo mục nhập sysfs
Trả lời
Bạn có thể tìm trình điều khiển nào đã tạo mục nhập sysfs bằng cách xem qua nguồn của nó. Nếu trình điều khiển sử dụng device_create_file()/device_remove_file() trong trình tự init/exit của nó tương ứng thì bạn có thể chắc chắn rằng một tệp thuộc tính sysfs đã được tạo bởi trình điều khiển. Bạn cũng có thể tìm thấy DEVICE_ATTR (_name, _mode, _show, _store) macro trong nguồn để tìm hiểu chức năng nào được cung cấp bởi tệp sysfs. Thông thường bạn có thể hoặc là cat tập tin hoặc echo một chuỗi với nó. A cat /sys/.../file, sẽ tương ứng với hàm _show và echo /sys/.../file sẽ tương ứng với hàm _store được đề cập trong macro.
Cảm ơn sanrio vì đã trả lời. Tôi biết về điều bạn đã đề cập. Câu hỏi của tôi là, cho một mục nhập sysfs, có thể nói với mô-đun trình điều khiển (nếu được liệt kê bởi lsmod) nó thuộc về trên một hệ thống Linux đang chạy. – Sann
tôi nghi ngờ có một cách trực tiếp để làm điều đó .. Nếu bạn đi qua một sau đó xin vui lòng chia sẻ nó ở đây :) – shinymetal
- 1. Hạt nhân Linux Vô hiệu hóa mục nhập TLB
- 2. Cách hạt nhân xác định chuỗi các cuộc gọi __init
- 3. Nhập mã vùng người dùng vào không gian hạt nhân
- 4. Tải mô-đun hạt nhân trong hạt nhân Android
- 5. Tạo mảng nội bộ động bên trong hạt nhân OpenCL
- 6. Libsvm precomputed hạt nhân
- 7. Gọi hạt nhân OpenCL từ một hạt nhân OpenCL khác
- 8. Đối số hạt nhân
- 9. Cách tạo thuộc tính lớp sysfs đơn giản trong Linux kernel v3.2
- 10. Xác định địa chỉ tải và điểm vào của hình ảnh hạt nhân Linux bị tước
- 11. Viết nhiều hạt nhân hoặc một hạt nhân
- 12. Linux mutexes hạt nhân
- 13. làm thế nào để chương trình giao tiếp - hạt nhân vi hạt nhân nguyên khối hạt nhân exo
- 14. Cách xác minh hạt nhân được thực hiện trong CUDA
- 15. Tạo biểu đồ cuộc gọi tĩnh cho hạt nhân Linux
- 16. malloc trong hạt nhân
- 17. Tác vụ định kỳ trong mô-đun hạt nhân Linux
- 18. Mã nguồn hạt nhân Android 4.0?
- 19. in từ hạt nhân cuda
- 20. căn chỉnh hạt nhân macro
- 21. Ninject, chuyển đối số hàm tạo cho hạt nhân
- 22. Tổ chức tiêu đề hạt nhân Linux
- 23. Android: Cách nhận nhật ký hạt nhân sau khi hoảng loạn hạt nhân?
- 24. Sự khác biệt về bản vá giữa hạt nhân Android và hạt nhân vanilla linux
- 25. Định thời các phần khác nhau trong hạt nhân CUDA
- 26. Chuỗi hạt nhân là gì?
- 27. Khả năng tương thích của hạt nhân Linux (* .ko) giữa các hạt nhân
- 28. Không thể ghi vào bộ nhớ hạt nhân qua mô-đun hạt nhân Linux (Ubuntu)
- 29. Math.max và Math.min NaN trên mục nhập không xác định
- 30. Truy cập trình điều khiển Linux thông qua sysfs
Đây có phải là C hoặc C++ không? – vdbuilder