A QUICK REFERENCE TO… VIRTUAL FILESYSTEMS
Linux contains a number of virtual filesystems, ones that do not contain actual files but present information as though it were a file. The one most commonly used is /dev, which contains node ‘files’ to access most devices on the system – most notably, but in no way restricted to, storage devices. Two other virtual filesystems are mounted at /proc and
/sys. These expose various aspects of the inner workings of the system. You can read all of them, at least if you are root – for example, /proc/mounts contains details of all mounted filesystems, /proc/cmdline shows the options passed to the kernel when the system was booted, while /proc/cpuinfo lists your processor cores and their capabilities. As /sys works similarly, why have both? Well, /proc has been around for ever, while /sys is a more recent addition, containing more information. It seems the intention to migrate everything to /sys got lost somewhere along the way so we have both legacy and modern systems alongside one another.
Everything in these filesystems is readable and many of the files are also writable, such as the example in the question about backlights. They provide a low-level way to access attributes of the system, suitable for use in scripts and the like.
Because the three virtual filesystems mentioned here are all mounted directly under /, it is important to exclude them when making backups. In particular, /proc/kcore can get huge. It contains kernel memory information and grows continually – it is currently showing as 128TB on this machine!