問題タブ [mach]

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 投票する
1 に答える
68 参照

c - フィルタ タイプが宣言されていませんか?

関数に渡すには をキャストする必要Interrupt Filterがありますが、問題は、私の Xcode は常にFilter型が宣言されていないことを教えてくれることです..

ここに私のコードの一部があります:

私は初めてなのでMacXcodeこの場合どうすればいいのかよくわかりません。

関数が実際にその型のパラメーターを取得しているときに、定義されていないことについてどのように不平を言うのでしょうか?

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

macos - Mac SDK ライブラリ: そこには何がありますか? foo.dylib 対 foo.A.dylib 対 foo.B.dylib

実際に含まれているものを理解しようとして、SDK を調べています。

dylib が複数のバージョンで出荷される場合があることに気付きました。

これらの .A および .B バージョンは何のためのものですか? 誰が何を使っている?

0 投票する
0 に答える
225 参照

linux - ファイルを使用した MacOS カーネルとユーザー空間の通信

カーネルからファイルを作成したいのですが、このファイルはユーザー空間からアクセスする必要があります。他の通信方法 (ioctl など) は適切ではありません。ユーザー空間アプリケーションはファイルしか必要とせず、そのソース コードを持っていないからです。

MACでこれを行う必要があります。Linux を使用していた場合は sysfs を使用しますが、MacO には sysfs がないため、devfs を使用することにしました。

私はサンプルのソウルションを作成し、すべてうまくいきましたが、問題は、デバイス ファイル (devfs ファイル) にサイズがないことです。ユーザー空間コードはファイル サイズをチェックし、このファイルをスキップします。サイズがどのくらいになるかはわかっていますが、devfs ファイルに設定する方法がわかりません。

ファイルは非常に大きくなる可能性があるため、実際のファイルシステムでファイルを作成したくありません。私が望むのは、読み取りと書き込みを内部関数にリダイレクトすることだけです。

FUSE ( http://en.wikipedia.org/wiki/Filesystem_in_Userspace ) は理想的ですが、これにはユーザー空間デーモンが含まれます。

助言がありますか?

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

go - GoLang / CGO: Go から Mach API host_statistics() を呼び出す際の問題

次の C コード フラグメントを使用して、OS X の CPU 負荷を取得します。

cgo チュートリアルを読んだ後、このコードを Go に移植しようとしました。結果のコードは次のようになります。

ただし、コードをビルドしようとすると、次のエラー メッセージが表示されます。

cgo がタイプについて不平を言う理由がわかりません。host_statistics() の署名は、mach ヘッダーで次のように定義されています。

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

ios - EXC_BAD_ACCESS から回復するにはどうすればよいですか?

意図的にEXC_BAD_ACCESS. NSObject読み取り専用の仮想メモリ ページへの書き込みをトリガーする。理想的には、 をキャッチEXC_BAD_ACCESSし、仮想メモリ ページを読み書き可能としてマークし、通常どおりに実行を継続させたいと考えています。これは可能ですか?私が書いたコードEXC_BAD_ACCESSは以下のとおりです。

WeakTargetObject.h (ARC)

WeakTargetObject.m (ARC)

main.m (MRR)

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

ios - EXC_BAD_ACCESS 例外のアドレスを見つけるにはどうすればよいですか?

EXC_BAD_ACCESS から回復するにはどうすればよいですか? 、から回復する方法を見つけましたEXC_BAD_ACCESSが、アクセスの悪いポインターがグローバルに格納されていました。明らかに、これはスケーリングしません。iOS シミュレータ (i386) でコードを実行すると、関数内でデバッガfaultvaddrのセクションにレジスタが表示されます。ただし、その値は から返されたポインターと同じではないか、近くありません。この値を動的に取得する方法はありますか?Exception State Registerscatch_exception_raisevm_allocate

以下の関数が与えられたcatch_exception_raise場合、原因となったアドレスをどのように発見しますEXC_BAD_ACCESSか?

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

go - Go言語のMachポートとチャネルは互いにどのように関係していますか?

XNU (OS X および iOS のカーネル) で IPC のメカニズムとして広く使用されている Mach ポートは、メッセージのキューのエンドポイントとして機能します。

Go Channel は、CAR Hoare の Communicating Sequential Processes をモデルにしていることでよく知られています。マッハポートはどうですか?ポートのセキュリティと権利のプロパティ、および Go Channel の型の安全性に関係なく、それらは本質的に同じパターンで動作しますか?

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

ios - iOS 7 でデバイスがスリープ状態になると、clock_get_time/mach_absolute_time の更新が停止する

私のアプリケーションは、mach_absolute_time を使用して最後のタッチ イベント以降のティックを計算し、10 分のアイドル時間制限を超えるとユーザーをログアウトさせます。

これはすべて iOS 6 では正常に動作しますが、iOS 7 では正しく動作していないことに気付きました。具体的には、iOS 7 デバイスが (バッテリで) 取り外されると、次のようにスリープ状態になると、デバイスは目盛りの増加を停止するようです。コンソールの次の行 (これは、非アクティブ状態が約 5 分間続くと発生します):

powerd[47] : スリープ: BATT を使用 (充電: 99%)

したがって、10 分後にデバイスを起動し、mach_absolute_time を使用してティックを計算すると、差はわずか 5 分であることがわかります (実際には 10 分経過しています)。

奇妙なことに、すべてが正常に機能し、デバイスが電源に接続されているとティックが実行され続けます。デバイスが接続されている場合、デバイスがコンソール ログでスリープ状態になることは決して示されません (ただし、画面はオフになり、動作はプラグを抜いた場合と視覚的に同じになります)。

これも clock_get_time を使用して試しましたが、同じ問題に直面しています。

デバイスがスリープ状態になったときに Mach 絶対時間を刻み続けるために iOS 7 でできることはありますか? [[NSDate date] timeIntervalSince1970]ユーザーがシステム時間を操作してこれをバイパスできるため、使用したくありません。

洞察をありがとう。