linux - Linux 中 `sysinfo.h` 的 Mac OS X 等效头文件

标签 linux macos porting sysinfo

sysinfo.h 是否有任何 Mac OS X 等效头文件?在 Linux 中。我正在将代码从 Linux 移植到 Mac,但结构 struct sysinfo没有找到。

编辑:==更多信息== 在 Linux 平台中,我使用头文件 <sys/sysinfo.h>在 Mac 中找不到。 通过在 Linux 中包含 header ,我执行以下操作: struct sysinfo s; sysinfo(&s);

结果给我一些系统相关信息。 现在,当我将我的项目从 Linux 移植到 Mac 时,我想知道 Mac 是否提供任何类似的功能。

请帮忙。

提前致谢。

最佳答案

Mac OS X 中与 sysinfo 最接近的等效项是 sysctl/MIB。它不直接返回 sysinfo 结构,但该结构中的大多数值都可用作 sysctl 键。例如:

  • uptimekern.boottime 估算(尽管它反射(reflect)的是实际启动时间,而不是运行时间)
  • loads 可用作 vm.loadavg
  • totalram = hw.memsize(以字节为单位)
  • freeramsharedrambufferram 很复杂,因为 XNU 内存管理器的工作方式与 Linux 不同。我不确定是否公开了最接近的等效值(“事件”和“非事件”内存)。
  • totalswapfreeswap 体现在vm.swapusage 中。 (但请注意,OS X 会动态分配交换空间。)
  • procs 似乎没有任何等效项。
  • totalhighfreehigh 特定于 i386 Linux。

关于linux - Linux 中 `sysinfo.h` 的 Mac OS X 等效头文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12523704/

相关文章:

c++ - Matlab 到 C++ 代码转换

java - 如何在java程序中调用shell脚本?

c - 打开 char dev 文件时出现 ioctl 错误

Cocoa:带有用于切换选项卡的工具栏图标的选项卡 View

objective-c - 如何创建自定义 NSMenuItem

jquery - 帮助将 javascript 函数移植到 jQuery - 学习工具

mysql - 即使有权限也无法创建MySQL数据库

python - 如何在没有 $HOME/py36/bin/python 的情况下运行 Python 3.6

objective-c - 强制 NSView 以编程方式重绘

c++ - 是否可以在 Linux 中以编程方式单击另一个应用程序的按钮?