有没有办法在Mac OS X中获取设备的BSD编号?
题
我的程序从输入中读取 / dev / rdisk0
之类的设备路径,然后在 IOKit
中查找BSD名称为 disk0
的磁盘。为此,我必须从路径中删除 / dev / r
。
在Mac OS X的未来版本中,此路径的硬编码可能会中断。因此,我可以采用另一种方式:我可以使用BSD主要版本和次要版本的设备匹配 IOService
。
这是我的问题:是否可以从路径中提取BSD次要和主要数字?
解决方案
是。使用 stat
系统调用。您正在寻找的 struct stat
的成员是 st_dev
,我相信这是一个主要和次要的OR,稍微移位。
不隶属于 StackOverflow