Pregunta

Mi programa lee las rutas del dispositivo como / dev / rdisk0 desde la entrada y luego busca en IOKit un disco con el nombre BSD disk0 . Para esto, tengo que eliminar / dev / r de la ruta.

La codificación rígida de esta ruta puede romperse en futuras versiones de Mac OS X. Por lo tanto, pensé en otra forma: podría hacer coincidir el IOService usando la versión BSD Major y Minor del dispositivo.

Aquí está mi pregunta: ¿Es posible extraer los números mayores y menores de BSD de una ruta?

¿Fue útil?

Solución

Sí Utilice el stat syscall. El miembro de struct stat que está buscando es st_dev , que creo que es un OR de mayor y menor después de un cambio de bit.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top