/sys
sudah tua . Itu diperkenalkan sebelum kernel Linux mencapai 2,6 (kembali ketika ada split 2.4 / 2.5). Sejak rilis Ubuntu pertama menggunakan kernel 2.6 , setiap versi Ubuntu telah memiliki /sys
.
/dev
berisi file perangkat yang sebenarnya. Ini tidak memberikan akses ke semua perangkat yang kernel tahu dari (seperti perangkat ethernet, untuk satu - ? Mengapa antarmuka jaringan tidak di / dev seperti perangkat lain , Mengapa perangkat Ethernet tidak muncul di "/ dev"? ). Ini adalah antarmuka ke perangkat itu sendiri - Anda menulis ke perangkat, membaca darinya, dll.
/sys
adalah antarmuka ke kernel. Secara khusus, ia menyediakan tampilan seperti sistem file dari informasi dan pengaturan konfigurasi yang disediakan kernel, seperti halnya /proc
. Menulis ke file-file ini mungkin atau mungkin tidak menulis ke perangkat yang sebenarnya, tergantung pada pengaturan yang Anda ubah. Ini tidak hanya untuk mengelola perangkat, meskipun itu adalah kasus penggunaan umum.
Informasi lebih lanjut dapat ditemukan di dokumentasi kernel :
Top Level Directory Layout
~~~~~~~~~~~~~~~~~~~~~~~~~~
The sysfs directory arrangement exposes the relationship of kernel
data structures.
The top level sysfs directory looks like:
block/
bus/
class/
dev/
devices/
firmware/
net/
fs/
devices/ contains a filesystem representation of the device tree. It maps
directly to the internal kernel device tree, which is a hierarchy of
struct device.
bus/ contains flat directory layout of the various bus types in the
kernel. Each bus's directory contains two subdirectories:
devices/
drivers/
devices/ contains symlinks for each device discovered in the system
that point to the device's directory under root/.
drivers/ contains a directory for each device driver that is loaded
for devices on that particular bus (this assumes that drivers do not
span multiple bus types).
fs/ contains a directory for some filesystems. Currently each
filesystem wanting to export attributes must create its own hierarchy
below fs/ (see ./fuse.txt for an example).
dev/ contains two directories char/ and block/. Inside these two
directories there are symlinks named <major>:<minor>. These symlinks
point to the sysfs directory for the given device. /sys/dev provides a
quick way to lookup the sysfs interface for a device from the result of
a stat(2) operation.
Sebagai contoh:
Salah satu cara mengatur kecerahan monitor laptop adalah:
echo N > /sys/class/backlight/acpi_video0/brightness
Untuk mendapatkan alamat MAC kartu jaringan:
cat /sys/class/net/enp1s0/address
Untuk mendapatkan gubernur penskalaan CPU saat ini:
cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
Dan seterusnya...
/sys
telah ada selama lebih dari satu dekade sekarang .