linux 如何保存系统状态信息?
how does linux keep system status information?
我知道在<sys/sysinfo.h>
头文件下有sysinfo
结构存储信息。
但我想知道,Linux 是如何保存这些信息的?它是如何初始化结构的?它是什么时候创建的以及如何存储的?它是如何更新的?我们可以吗?自定义结构?
是否有保存这些信息的文件!?。
是否有其他方法来获取系统状态信息?
我们能不能绕过这个直接从硬件获取状态呢
(如果可能附上资源)
sysinfo()
返回的信息是根据需要从内核中的各种来源收集的。无一出处。
该结构不可修改,因为它是共享 kernel/userspace 接口的一部分。一般来说,如果你想向用户空间公开额外的数据,应该将其发布为 /proc
节点。
sysinfo()
返回的所有信息都可以从 procfs 中的其他来源获得:
info->uptime
: /proc/uptime
info->loads
: /proc/loadavg
info->totalram
,等等:/proc/meminfo
info->procs
: /proc
本身(计算编号的子目录!)
我知道在<sys/sysinfo.h>
头文件下有sysinfo
结构存储信息。
但我想知道,Linux 是如何保存这些信息的?它是如何初始化结构的?它是什么时候创建的以及如何存储的?它是如何更新的?我们可以吗?自定义结构?
是否有保存这些信息的文件!?。 是否有其他方法来获取系统状态信息? 我们能不能绕过这个直接从硬件获取状态呢
(如果可能附上资源)
sysinfo()
返回的信息是根据需要从内核中的各种来源收集的。无一出处。
该结构不可修改,因为它是共享 kernel/userspace 接口的一部分。一般来说,如果你想向用户空间公开额外的数据,应该将其发布为 /proc
节点。
sysinfo()
返回的所有信息都可以从 procfs 中的其他来源获得:
info->uptime
:/proc/uptime
info->loads
:/proc/loadavg
info->totalram
,等等:/proc/meminfo
info->procs
:/proc
本身(计算编号的子目录!)