Directory - /sys in linux
What is going on inside the /sys
directory on a Linux system?
From sysfs.txt:
sysfs is a ram-based filesystem [...]. It provides a means to export kernel data structures, their attributes, and the linkages between them to userspace.
In essence /sys allows you to get information about the system and its components (mostly attached and installed hardware) in a structured way.
See also the Wikipedia Article on sysfs. The following statement makes it pretty clear:
sysfs is a virtual file system provided by Linux. sysfs provides a set of virtual files by exporting information about various kernel subsystems, hardware devices and associated device drivers from the kernel's device model to user space. In addition to providing information about various devices and kernel subsystems, exported virtual files are also used for their configuring. sysfs is similar to the sysctl mechanism found in BSD systems, but implemented as a file system instead of a separate mechanism.
See also this excellent answer to What is the difference between procfs and sysfs? on Unix & Linux StackExchange.
Can't beat Wikipedia's simplicity:
Filesystem Hierarchy Standard > FHS compliance
Modern Linux distributions include a
/sys
directory as a virtual filesystem (sysfs, comparable to/proc
, which is a procfs), which stores and allows modification of the devices connected to the system, whereas many traditional UNIX and Unix-like operating systems use/sys
as a symbolic link to the kernel source tree.
I guess that, when this /sys
directory got finally standardized, a description and its specification will be added to the Specifications Archive under the Filesystem Hierarchy Standard documentation.