私はAMD64アーキテクチャ用のOSカーネルを作成していますが、複雑な理由からIRQ 0(レガシーPIT)を無効にしたいと思っています。 (タイマーが必要な場合は、HPETまたはローカルAPICを使用することをお勧めします)。しかし、osdever.net、Wikipedia、またはOSDev Wikiのいずれもそれをオフにする方法については説明していません。誰もこれを行う方法を説明できますか?in
/out
ASM命令ですか?レガシー8253/4 PITを無効にするにはどうしたらいいですか?
1
A
答えて
0
また、GitHubで見つかるSilcosカーネルも開発中です。カーネル用のタイマー・サブシステム・フレームワークを開発する際に、この問題にも直面しました。現実には、PITを設定することによってPITを無効にする方法はありません。マザーボード固有の方法があるかもしれませんが、私たちはそこに行きたくありません。
あなたがする必要があるのは、必要でないときにオーバヘッドを減らすために、最大許容期間で周期的割り込みをPITで生成しなければならないことです。各IRQでは、1つのIRQ上で複数のデバイスを処理する
のようなIRQサブシステムを構築する必要があります。
関連する問題
- 1. $ logProviderを無効にするにはどうしたらいいですか?
- 2. スクラッチプレビューウィンドウを無効にするにはどうしたらいいですか?
- 3. viewdidloadを無効にするにはどうしたらいいですか?
- 4. pywebkitコンソールメッセージを無効にするにはどうしたらいいですか?
- 5. ICS:ホームボタンを無効にするにはどうしたらいいですか?
- 6. Maven Javadocプラグインをコマンドラインから無効にするにはどうしたらいいですか? pom.xmlで
- 7. カスタマイズしたstyle.cssでブートストラップを無効にするにはどうしたらいいですか?
- 8. コードからFirebaseプロジェクトのユーザアカウントを無効にするにはどうしたらいいですか?
- 9. コントローラからボタンを無効にするにはどうしたらいいですか?
- 10. Clarity DataGridの一部であるチェックボックスを無効にするにはどうしたらいいですか?
- 11. set_value()を反転して約束を無効にするにはどうしたらいいですか?
- 12. 無効にしたマット入力を有効にするにはどうすればいいですか?
- 13. 無効にしたチェックボックスを有効にするにはどうすればいいですか?
- 14. コード契約を完全に無効にするにはどうしたらいいですか?
- 15. cpanelの電子メールログイン時にフォワードボタンを無効にするにはどうしたらいいですか?
- 16. django-registrationで/ account/registerを無効にするにはどうしたらいいですか?
- 17. PhpStormでPHPエコーのハイライトを無効にするにはどうしたらいいですか?
- 18. symfony 2/3でセッションを無効にするにはどうしたらいいですか?
- 19. VSコードでガターインジケータを無効にするにはどうしたらいいですか?
- 20. CKEditor 4のソースモードでプレビューボタンを無効にするにはどうしたらいいですか?
- 21. 特定のコントローラでRailsセッションストアを無効にするにはどうしたらいいですか?
- 22. Wordpressでプラグインのクラスの機能を無効にするにはどうしたらいいですか?
- 23. Highcharts 6.xでホバーマーカーアニメーションを無効にするにはどうしたらいいですか?
- 24. 小さなブロックでHaskell警告を無効にするにはどうしたらいいですか?
- 25. Apache :: DBIでpingを無効にするにはどうしたらいいですか?
- 26. Quartz JDBCJobStoreでジョブを無効にするにはどうしたらいいですか?
- 27. サードパーティのライブラリでApache Commons/Log4Jのログを無効にするにはどうしたらいいですか?
- 28. WildFlyでEJBを無効にするにはどうしたらいいですか?
- 29. Eclipseでプロジェクトファセットを無効にするにはどうしたらいいですか?
- 30. `cassandra.yaml`で自動圧縮を無効にするにはどうしたらいいですか?
PITをワンショットモードに設定してから、一度起動すると割り込みを確認してタイマーをリセットしないでください。 –
ありがとうございます。私はそれが動作するかどうかを確認します。 – codecuirassier