Differenza tra / dev e / sys


19

Qual è esattamente la differenza tra devfs e sysfs ? Entrambi sembrano mantenere un elenco di hardware collegati al sistema . Allora perché è emersa la necessità di 2 fs separati? Per quanto posso ottenere / sys mantiene un elenco un po '"grezzo" di dispositivi (come "ser0"). Udev agisce su quei dispositivi, ottiene varie informazioni e applica varie regole per presentarle come nomi riconoscibili che vengono quindi mappati su / dev (come "camera"). È questa l'unica ragione? E poi montiamo i dispositivi corrispondenti da / dev fs (non possiamo farlo da / sys fs) in / media fs.

Ho letto la risposta alla differenza tra / dev e / sys / class? . Ma non riesco a ottenere la parte di sistema dove lo afferma

I sysfs contengono la gerarchia dei dispositivi, poiché sono collegati al computer

I file in / sys non sono file nodo dispositivo? Quindi che tipo di file sono?



Non penso sia un duplicato. Le risposte a entrambe le domande guardano sysfsda diverse prospettive e nessuna delle risposte all'altra domanda spiega come si /devcollega la directory sysfs.
Anthony G - giustizia per Monica,

Risposte:


27

Il /sysfilesystem (sysfs) contiene file che forniscono informazioni sui dispositivi: se è acceso, il nome e il modello del fornitore, a quale bus è collegato il dispositivo, ecc. È interessante per le applicazioni che gestiscono i dispositivi.

Il /devfilesystem contiene file che consentono ai programmi di accedere ai dispositivi stessi: scrivere dati su una porta seriale, leggere un disco rigido, ecc. È interessante per le applicazioni che accedono ai dispositivi.

Una metafora è quella che /sysfornisce l'accesso alla confezione, mentre /devfornisce l'accesso al contenuto della confezione.

I file /sysnon sono nodi del dispositivo, ma collegamenti simbolici e file regolari. Questi file regolari sono speciali in quanto la lettura o la scrittura in essi invoca funzioni specifiche del file nel kernel, come i nodi del dispositivo. La differenza è che i file /sysfunzionano in questo modo a causa del filesystem su cui si trovano, mentre i nodi del dispositivo funzionano in questo modo a causa delle loro caratteristiche del nodo del dispositivo (il tipo di file che indica un dispositivo (blocco o carattere) e il numero maggiore e minore del dispositivo che indica che dispositivo è).

Il motivo per cui /devesiste indipendentemente /sysè in parte storico: /devrisale agli albori di Unix, mentre /sysè un'invenzione molto più recente. Se Linux è stato progettato oggi senza background storico, /dev/sdapotrebbe esserlo /sys/block/sda/content.


3
Vedi anche: man hier.
HalosGhost
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.