簡體   English   中英

如何在 Mac OS X 上創建虛擬 CD 驅動器

[英]How to create virtual CD drive on Mac OS X

如何以編程方式在 Mac OS X 上創建虛擬 CD 驅動程序?

我找不到任何相關的 Cocoa API 或任何純 C BSD 解決方案。

任何幫助或信息表示贊賞。

您需要使用 I/O Kit 框架來開發您自己的設備驅動程序來模擬虛擬 CD 驅動器。 以下是相關 API 的一些鏈接,可幫助您入門。

I/O 套件基礎知識

I/O Kit 設備驅動程序指南

內核擴展編程主題

人們在這里提出了幾種不同的答案。 手頭的問題是你想要完成什么。 如果您真的想模擬 CD ROM(直到命令集),您將需要編寫一個設備驅動程序。 如果您的目標僅僅是模擬內容類似於 CD 的塊設備,您可以使用磁盤實用程序創建磁盤映像,並讓內置的磁盤映像驅動程序為您處理。

如果您想展示某種自定義文件系統功能,MacFUSE 很有用,但如果您正在尋找與光盤具有相同語義的東西(無論是塊級別還是命令集級別),那么它就是錯誤的工具。

如果你只是想掛載 ISO 或其他東西,那么它可以通過磁盤工具完成,只需將它拖到側欄中,然后選擇它並選擇掛載。

如果你想從代碼做到這一點,你可以發出hdiutil命令,如圖所示這里 我不確定是否有 API 調用來執行此操作,但使用該命令來執行此工作非常輕松。

掛載自定義卷的最簡單方法是MacFUSE 它為您處理 IOKit 細節,並讓您在用戶空間中編寫實現。 但是,我認為您無法將 MacFUSE 制作成“看起來像”CD。 你必須修改 FUSE 來實現這一點。

我對DAEMON Tools for Mac的驅動程序很在意:

/Library/Extensions/DAEMONToolsVirtualSCSIBus.kext/Contents/MacOS/DAEMONToolsVirtualSCSIBus

我使用Hopper反匯編了二進制文件,發現它們正在使用IOSCSIProtocolServices

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM