interrupt-handling

    3

    2答えて

    保護モードで動作する小さなOSを書いています。私は、カスタムの割り込み記述子テーブルをロードしたいところに来ています。どこから起動するのかわかりません。私はthe OS Dev wikiにいくつかのものを読みましたが、私は答えが必要ないくつかの質問があります。 OS Dev Wikiには、the first 32 (0-31) interrupts are reserved and used by

    2

    1答えて

    ISRをint形式で9hのアセンブリでリアルモードで作成しました。 このISRでは、ハードディスクにデータを書き込むためにINT 13h、AH = 0x02を呼び出します。しかし、データはハードディスクに書き込まれません。また、int 13h、ああ= 0x02も(ハードディスクからデータを読む)は動作しません。 コール後int 13h、キャリーフラグはオンですが、AHとALはゼロです。 ISRから

    3

    3答えて

    私はいくつかのタイマで使用するためにint 70hとIRQ8を使ってRTCによって引き起こされた割り込みを処理すると思われる割り込みサービスルーチンを書いています。残念ながら、私はそれに多くの問題を抱えてきたので、問題をいくつかの小さな問題に分けて、それぞれを個別に解決することに決めました。まず、ハードウェアの部分をあきらめて、最初にソフトウェアで割り込みを実装することに決めました。 今はNASM

    4

    4答えて

    この質問は、以前はいろいろな形で質問されていたことは間違いありませんが、特定のシナリオでそれほど重要ではありません。 UDP経由でネットワークメッセージを受信するのを待っている間にブロックしているスレッドを停止する最も正しい方法は何ですか?例えば 、私は以下のスレッドを持っていると言う: public class ClientDiscoveryEngine extends Thread {

    0

    1答えて

    私は除算例外を処理するプログラムを作成するタスクを持っています。私はそれについての情報を見つけるのに苦労している。私が理解しているように、私は割り込みベクトルテーブルの0番目のエントリを変更する必要がありますが、私はそれをどのようにしますか?私はLIDT命令があることを知っていますが、テーブル全体を書く必要はありませんか? 16ビットモードで作業しています。

    1

    2答えて

    実行中に割り込みがどのように見えているのかを知りたい。私は割り込みのレベル、エッジ、ハイブリッド、およびメッセージのタイプについて読んでおり、デバイスが割り込みのための信号を送るパルスを送信しますが、どのようにプログラムがその割り込みを参照していますか?または、プログラムに割り込みが表示されていませんか? このご協力ありがとうございました

    1

    2答えて

    デバッガを使用してコードを実行すると、一連の手順の後に最終的にコードが失われ、順不同のコマンドが実行されます。私はスタックがオーバーフローしているかどうか分からない。 これは、私は通常、取得エラーです: MSP430:トラブル長0x1d2のページ0に0xffe2eでメモリブロックを読む:無効なパラメータ(複数可) それが何ができるか上の任意の提案ですか?いくつかの割り込みを処理しない可能性のある問

    1

    1答えて

    タイトルには、私は連鎖連鎖をしようとしていると書いてあります。私が探しているのは、Timer Interrupt(IRQ 0)が呼び出され、割り込みハンドラ(ISR)が終了するとコードが実行されるということです。私はAssembly、C、またはそれを可能にする言語でそれをやろうとしています。このpageの例が見つかりましたが、TASMでは動作しません。あなたは私にこれを手伝ってもらえますか?これに

    2

    2答えて

    Linuxカーネルの制御フローでは、割り込みの位置を持つIDT(例:0x80システムコール)に制御が移ることがわかりました。そして、コントロールは適切なシステムコールに移動します。 IDTは起動時にのみ初期化されることも読んでください。 実際のカーネルのIDT情報について、その場所などを知りたいと思います。また、知っているように、他の時にそれは変更されているか? 助けてください。

    4

    1答えて

    OpenALを使用して多くのサウンドを再生するiphoneアプリケーションを作成しました。 これらのサウンドはmp3であり、非常に重く(1mn以上)、メモリを少なくするためにそれらをストリームします(サウンドあたり2つのバッファ)。私SoundManager.mファイルで //used to disable openAL during a call void openALInterrup