Existe-t-il un moyen d’obtenir le numéro BSD d’un périphérique sous Mac OS X?
Question
Mon programme lit les chemins de périphérique tels que / dev / rdisk0
, puis il cherche dans IOKit
un disque portant le nom BSD disk0
. . Pour cela, je dois supprimer / dev / r
du chemin.
Le codage dur de ce chemin peut se rompre dans les versions futures de Mac OS X. Par conséquent, j’ai une autre solution: je pourrais faire correspondre le IOService
à l’aide des versions BSD Major et Minor du périphérique.
Voici ma question: Est-il possible d'extraire les nombres mineurs et majeurs BSD d'un chemin?
La solution
Oui. Utilisez la commande stat
. Le membre de struct stat
que vous recherchez est st_dev
, qui, je crois, est un OU de majeur et mineur après un léger décalage.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow