在我的本地机器上,我有/sys/block/sda1/stat.
在亚马逊机器上,我有/sys/block/xvda1/stat.
当我运行cat /sys/block/sda1/stat或cat /sys/block/xvda1/stat两者都给出 11 个输出字段时。
/sys/block/sda1/stat和/sys/block/xvda1/stat文件和有什么不一样?
我想知道是否可以使用/sys/modulelsmod的目录列表来获取当前加载的模块列表。
那只是加载模块的列表吗?或者也许与/sys/module/*/initstate?
我找到了一个文件/sys/class/firmware/timeout,这个文件只包含一个单词60。此超时是否与bootloaderlike相关GRUB timeout?它的实际用途是什么?
Ulrich Dangel 很好地解释了 devtmpfs 和 udev 之间的区别。
sysfs 呢?
我知道内核使用 sysfs 将设备节点导出到用户空间以供 udev 使用。那么devtmpfs和sysfs是一样的吗?如果是,为什么他们使用不同的名称?如果不是,sysfs 和 devtmpfs 之间的真正区别是什么?
[gala@arch ~]$ sudo !!
sudo hdparm -i /dev/sda
/dev/sda:
Model=KINGSTON SHFS37A120G, FwRev=603ABBF0, SerialNo=50026B725B0A1515
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=unknown, BuffSize=unknown, MaxMultSect=1, MultSect=1
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=234441648
IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6
AdvancedPM=yes: unknown setting WriteCache=enabled
Drive conforms to: unknown: ATA/ATAPI-2,3,4,5,6,7
* signifies the current active mode
Run Code Online (Sandbox Code Playgroud)
hdparmModel从哪里读取字段?从哪里来sysfs?从哪里来?
blkio.throttle.write_bps_device所有设备的特定参数(例如)的值都存储在单个文件中。echo "$MAJOR:$MINOR $LIMIT" > blkio.throttle.write_bps_device将值插入/更新到 $LIMIT。正如您所想,它不会清除文件。所以我看不到删除值的方法。此外,这个配置界面似乎违反了“每个文件一个项目”的规则。
我想知道是否可以只挂载 sysfs 的一部分以在 chroot 中使用。示例我只需要 /sys/class/gpio 而不需要休息。
mount -t sysfs sys/some/folder /mnt/temp_sys
Run Code Online (Sandbox Code Playgroud) 我有一个 AMD CPU,有 8 个核心,每个核心有 2 个线程。Linux(正确地)将其显示为 16 个“cpu”。然而,sysfs 实际上显示了 32 个“可能的”CPU,其中 16 个不存在并且处于离线状态:
$ cat /sys/devices/system/cpu/possible
0-31
$ cat /sys/devices/system/cpu/present
0-15
$ cat /sys/devices/system/cpu/online
0-15
$ cat /sys/devices/system/cpu/offline
16-31
Run Code Online (Sandbox Code Playgroud)
需要明确的是,这里没有任何问题;确实有 16 个逻辑 CPU 存在并且在线。我不清楚的是为什么 Linux 检测到额外的 16 个逻辑 CPU,这些 CPU 不存在但可能存在。
我认为这些是相关的内核文档:https://www.kernel.org/doc/html/latest/core-api/cpu_hotplug.html。但我没有看到任何关于如何选择可能的 CPU 数量的说明。(请注意,它远低于kernel_maxCPU 数量,我的系统上为 8191。)
(一点额外的背景:我有一些代码需要解析这些值。做正确的事情似乎很简单,但我希望有一个清晰的文档字符串来解释为什么可能的 CPU 数量可能超过计算机上现有的 CPU 数量普通台式电脑。)
当我们注册驱动程序时,“name”参数出现在 中/proc/devices,但我们可以使用 /dev 中与设备对应的条目写入设备。/proc 和 /dev 条目背后的核心思想是什么?更进一步,sysfs 应该是 procfs 的替代品吗?它与 procfs 有何不同?
我有康柏 CQ60-120ec 笔记本。我发现有一个目录/sys/class/thermal/cooling_device2。类型表示LCD。我试图控制冷却设备,它使我的笔记本电脑背光变暗。但我有一个问题,我在互联网上找不到任何地方。为什么它显示为热设备?为什么不作为acpi背光?
拜托,如果你知道为什么会这样,不要怪我不知道 linux。我对 linux 相当了解,但这件事在我的梦想中打上了问号。