Perbedaan antara / dev dan / sys

19

Apa perbedaan antara devfs dan sysfs ? Keduanya tampaknya mempertahankan daftar perangkat keras yang terpasang pada sistem . Lalu mengapa kebutuhan untuk 2 fs terpisah bahkan muncul? Sejauh yang saya bisa dapatkan / sys mengelola daftar perangkat yang agak "mentah" (seperti "ser0"). Udev bertindak pada perangkat itu, mendapatkan berbagai informasi dan menerapkan berbagai aturan untuk menyajikannya sebagai nama yang dapat dikenali yang kemudian dipetakan ke / dev (seperti "kamera"). Apakah ini satu-satunya alasan? Dan kemudian kita memasang perangkat yang sesuai dari / dev fs (tidak bisakah kita melakukannya dari / sys fs) ke / media fs.

Saya telah membaca jawabannya di Perbedaan antara / dev dan / sys / class? . Tapi saya tidak bisa mendapatkan bagian sys fs di mana ia menyatakan itu

Sysfs mengandung hierarki perangkat, karena mereka melekat pada komputer

Apakah file di / sys bukan file node perangkat? Lalu jenis file apa itu?

sounak
sumber
1
Kemungkinan duplikat Apa perbedaan antara procfs dan sysfs?
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件
Saya rasa ini bukan duplikat. Jawaban untuk kedua pertanyaan tersebut dilihat sysfsdari sudut pandang yang berbeda dan tidak ada jawaban untuk pertanyaan lain yang menjelaskan bagaimana hubungan /devdirektori sysfs.
Anthony G - keadilan untuk Monica

Jawaban:

27

The /sysfilesystem (sysfs) berisi file yang memberikan informasi tentang perangkat: apakah itu dinyalakan, nama vendor dan model, apa bus perangkat dicolokkan ke, dll Ini menarik untuk aplikasi yang mengelola perangkat.

The /devfilesystem berisi file yang memungkinkan program untuk mengakses perangkat sendiri: menulis data ke port serial, membaca hard disk, dll Ini menarik untuk aplikasi yang perangkat akses.

Metafora adalah yang /sysmenyediakan akses ke kemasan, sementara /devmenyediakan akses ke isi kotak.

File dalam /sysbukan node perangkat, tetapi tautan simbolik dan file biasa. File-file biasa khusus dalam membaca atau menulis kepada mereka memanggil fungsi file-spesifik di kernel, seperti node perangkat. Perbedaannya adalah bahwa file /sysbekerja dengan cara ini karena sistem file yang aktif, sedangkan node perangkat bekerja dengan cara ini karena karakteristik simpul perangkat mereka (tipe file yang menunjukkan perangkat (blok atau karakter), dan nomor utama dan minor perangkat yang menunjukkan perangkat yang mana).

Alasan keberadaannya secara /devindependen /syssebagian adalah historis: /devberasal dari awal Unix, sedangkan /syspenemuan yang jauh lebih baru. Jika Linux dirancang hari ini tanpa latar belakang historis, /dev/sdamungkin /sys/block/sda/content.

Gilles 'SANGAT berhenti menjadi jahat'
sumber
3
Lihat juga: man hier.
HalosGhost