問題タブ [iokit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
3148 参照

macos - OS X のゲームパッド コード: え?

OS X 用のゲームパッドのコードを書くまでは、自分はまともなプログラマーだと思っていました。

(無料ではない) ゲームで合法的に使用できるコードを知っている人はいますか?

OS Xでゲームパッドと話すのは本当に難しいですか?私は何が欠けていますか?

0 投票する
4 に答える
1325 参照

macos - osxでのボリュームの出現/消失の検出

ユーザーがUSBキーを挿入し、外部ディスクを追加し、ディスクイメージをマウントするときに、ストレージデバイスのリストを更新したいと思います。IOKitのIOServiceAddInterestNotificationは進むべき道のように見えますが、kIOMediaClassに一般的な関心を登録するという明白な使用法は、ボリュームのアンマウントの通知のみを提供し、その後はたまにしか提供しません。

これを行う正しい方法は何ですか?

0 投票する
3 に答える
1920 参照

macos - HFS+ ボリュームと HFS 標準ボリュームの区別

IOKit と DiskArbitration フレームワークは、Mac にマウントされたボリュームについて多くのことを教えてくれますが、HFS+ ボリュームと HFS 標準ボリュームを区別できないようです。

IOKit/DA キーContentとはDAVolumeKindDAMediaContentHFS Standard ボリュームと HFS+ ボリュームの両方で常に Apple_HFS と hfs です。

diskutil と DiskUtility.appは違いを見分けることができますが、Apple によってオープンソース化されていないようです。

ps statfs (2) は区別しません

0 投票する
1 に答える
565 参照

macos - I/O カタログ クラス オブジェクトへのアクセス

I/O Kit ドライバーとして使用される OS X カーネル拡張機能 (kext) を開発しています。ただし、このドライバーは厳密に「仮想」です。ハードウェアとのインターフェイスはありません。

OS X は、カーネルにロードされるすべてのドライバーのカタログ (I/O カタログ) を保持します。また、ハードウェア デバイスと一致し、現在ハードウェアを制御している I/O カタログ ドライバを含むレジストリ (I/O レジストリ) も保持します。

私のドライバーはハードウェアに依存せず、「一致」しないため、I/O カタログにロードされるだけで、I/O レジストリには登録されません。これは、I/O ドライバー オブジェクトを取得する API が I/O レジストリに登録されているドライバーに限定され、I/O カタログ内のオブジェクトにアクセスしないため、問題を引き起こします。推奨 API を使用してドライバとのマッチングを試みましたが、前述のとおり、これらの API は I/O カタログ エントリを公開しません。

私の最終的な目標は、「setProperties」メソッドを使用してデータを転送するために、ドライバーへの参照を取得することです。他のすべてが失敗した場合は、syscall、copyin、および copyout を組み合わせて、ドライバーとの間でデータを転送できますが、現時点ではそのソリューションには興味がありません。

要するに、I/O カタログにはあるが I/O レジストリにはないドライバへの参照を取得する方法はありますか?

更新:私の言いたいことを理解するには、IORegistryExplorer の次の 2 つのスクリーン ショットを見てください。

登録済みのドライバーはAPI 経由で簡単にアクセスできますが、未登録のドライバーは IOServiceGetMatchingServices(...) を使用して一致しません。登録されていないロード済みドライバへの参照を取得するにはどうすればよいですか?

詳細については、以下をご覧ください。

0 投票する
5 に答える
2126 参照

cocoa - Mac OS X でストレージ デバイスのアイコンを取得するにはどうすればよいですか?

IOServiceGetMatchingServices次のようなプロパティ ディクショナリを使用して取得したデバイスを見つけました。

その辞書から、アイコンの情報を抽出できます。

これら2つは私にこれを与えます(例として):

この方法を使用してアイコンを抽出しようとしました:

しかしbundleWithIconですnil

これはアイコンを取得する正しい方法ですか?

でロードできるようにするには、どうにかしてバンドルをロードする必要があると思いますbundleWithIdentifier。どうすればこれを行うことができますか?

PS:(私が思うに)同じことを尋ねようとする別の質問がありますが、これが正しい方法であるかどうかではなく、バンドルのみを要求します。

0 投票する
1 に答える
480 参照

debugging - OSDictionaryをコンソール/ログにダンプ(印刷)する方法は?

kextからOSDictionaryの内容を調べたいのですが。内容をsystem.logなどに印刷する便利な方法はありますか?(ala CFShow())?

thx-> adv、

| K <

0 投票する
3 に答える
23879 参照

macos - com.apple.Dont_Steal_Mac_OS_X とは

com.apple.Dont_Steal_Mac_OS_X は IOResources プロバイダーです...

クラス継承: Dont_Steal_Mac_OS_X : IOService : IORegistryEntry : OSObject

それはどのように機能しますか?

それは何をするためのものか?

0 投票する
1 に答える
1439 参照

macos - ソフトウェアを介して OSX で USB 挿入をシミュレートする

USB ハンドラのデバッグや新しい USB ドライバの作成など、USB デバイス ノードを OSX (>= 10.5) に挿入するにはどうすればよいですか?

TokenD を使用して USB 以外のデバイスを処理するために、これに興味があります。

どうやら、偽の USB デバイス挿入に取り組み、この偽のデバイスを処理する PC/SC ifdHandler を作成する必要があります。(必ずしもデバイスでサポートされていない TokenD を挿入する他の方法を誰かが知っている場合は、私に知らせてください!)。

IOKit がこのソリューションに関与している可能性があると推測しています...これは、「だます」必要がある基本的な項目であるためです。

0 投票する
2 に答える
3195 参照

cocoa - libusbはMacOSXでUSBデバイスにアクセスするための推奨される方法ですか?

最近、libusbはOS XでUSB経由で(ATコマンドを使用して)デバイスと通信するための推奨される方法ですか?

ココアに相当する高レベルのものはありますか?