Как создать виртуальный привод CD в Mac OS X - PullRequest
5 голосов
/ 24 октября 2008

Как можно создать виртуальный CD-драйвер в Mac OS X программно?

Я не могу найти какие-либо соответствующие API-интерфейсы Какао или какие-либо чистые C-решения BSD.

Любая помощь или информация приветствуется.

Ответы [ 4 ]

7 голосов
/ 24 октября 2008

Вам потребуется использовать инфраструктуру I / O Kit для разработки вашего собственного драйвера устройства, который будет эмулировать виртуальный привод CD. Вот несколько ссылок на соответствующие API для начала работы.

Основы комплекта ввода / вывода

Рекомендации для драйверов устройств комплекта ввода / вывода

Темы программирования расширения ядра

2 голосов
/ 28 октября 2008

Есть несколько разных ответов, которые люди предложили здесь. Проблема в том, что вы пытаетесь достичь. Если вы действительно хотите эмулировать CD-ROM (вплоть до набора команд), вам нужно написать драйвер устройства. Если ваша цель - просто эмулировать блочное устройство с содержимым, похожим на компакт-диск, вы можете создать образ диска с помощью утилиты диска и позволить встроенному драйверу образа диска обработать его для вас.

MacFUSE полезен, если вы хотите представить какую-то пользовательскую функциональность файловой системы, но если вам нужна та же семантика, что и на оптическом диске (будь то уровень блока или набора команд), это неправильный инструмент.

1 голос
/ 24 октября 2008

Если вы просто хотите смонтировать ISO или что-то еще, то это делается с помощью Дисковой утилиты, просто перетащите его на боковую панель, затем выберите его и выберите mount.

Если вы хотите сделать это из кода, вы можете выполнить команду hdiutil, как показано здесь . Я не уверен, что для этого есть вызов API, но заставить эту команду выполнить эту работу довольно безболезненно.

0 голосов
/ 25 октября 2008

Самый простой способ смонтировать пользовательский том - MacFUSE . Он обрабатывает детали IOKit для вас и позволяет вам написать реализацию в пространстве пользователя. Тем не менее, я не думаю, что вы можете сделать MacFUSE «похожим» на CD; для этого вам нужно изменить FUSE.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...