Domanda

Il mio programma legge i percorsi del dispositivo come / dev / rdisk0 dall'input e quindi cerca in IOKit un disco con il nome BSD disk0 . Per questo devo rimuovere / dev / r dal percorso.

La codifica rigida di questo percorso può interrompersi nelle future versioni di Mac OS X. Pertanto, ho pensato ad un altro modo: avrei potuto abbinare il IOService usando la versione BSD Major e Minor del dispositivo.

Ecco la mia domanda: è possibile estrarre i numeri minori e maggiori di BSD da un percorso?

È stato utile?

Soluzione

Sì. Utilizzare la syscall stat . Il membro di struct stat che stai cercando è st_dev , che credo sia un OR di maggiore e minore dopo un po 'di spostamento.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top