我的程序从输入中读取 / dev / rdisk0 之类的设备路径,然后在 IOKit 中查找BSD名称为 disk0 的磁盘。为此,我必须从路径中删除 / dev / r

在Mac OS X的未来版本中,此路径的硬编码可能会中断。因此,我可以采用另一种方式:我可以使用BSD主要版本和次要版本的设备匹配 IOService

这是我的问题:是否可以从路径中提取BSD次要和主要数字?

有帮助吗?

解决方案

是。使用 stat 系统调用。您正在寻找的 struct stat 的成员是 st_dev ,我相信这是一个主要和次要的OR,稍微移位。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top