問題タブ [bsod]
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.
c# - SerialPort: アプリがデータ転送中にデバイスを切断するとブルー スクリーンが発生する
シリアルポート(USBブリッジ付き)を備えたデバイスのソリューションに取り組んでいます。データ転送中にデバイスを切断するとブルースクリーンが発生することを除いて、すべて問題ありません。そして、私のアプリはそれに関する例外をキャッチしません。それを処理する方法はありますか?データが完全に転送されるまで切断しないようにユーザーに依頼してください。
デバイスからデータを読み取るために System.IO.Ports.SerialPort クラスを使用しています。
windows - この iframe タグが原因で x64 Windows 上の Safari がクラッシュするのはなぜですか?
このコードを聞いたことがない場合は、Safari で実行したときに x64 ビット Windows 7 で BSoD クラッシュが発生します。
当然のことながら、問題はそれがどのように正確に発生するかということであり、なぜ 18082563 であり、「1808256 4」とは言わないのでしょうか?
c - ドライバーを使用して特定の場所から RAM データを読み取りますか?
0x00000001 から RAM データを読み取り、それをハードディスクのファイルにコピーしようとしています (学習中です!) ので、これを書き、コンパイルして実行しました
だから私はBSODを手に入れました 幸いなことに、私はVmwareを使用してこれを実行していました:-) 私はいつもアプリプログラムだけがメモリから直接読み取る権利を持っていないと思っていました.
ここで私の質問は、ドライバーは直接物理アドレスまたは仮想アドレスを使用しますか??? ドライバー プログラミング (Ring 1 または 2) の場合のように、&pointer が物理または仮想を返す値のタイプを意味します。Ring 3 アプリが仮想アドレスを返すことはわかっています。ええ、私はすでにドライバーの本を読み始めています。もっと早く知りたかっただけです。
windows - IoGetDeviceProperly は BSOD を引き起こします
Windows でハードディスク用のフィルター ドライバー (DDK の DiskPerf など) を作成しました。HardWareID など、ドライバーが接続されているデバイスに関する情報を取得する必要があります。IRP_MJ_READ 関数内で IoGetDeviceProperly を使用します。しかし、この方法はBSODを引き起こし、BSODは問題が「IRQL_NO_LESS_OR_EQUAL」であると言います。MSDN によると、DispatchRead と IoGetDeviceProperly はどちらも PASSIVE_LEVEL で実行されます。なにが問題ですか?ドライバが接続されているデバイスに関する情報を取得するにはどうすればよいですか?
windows - 別のOSで再起動した後、BSODを確実に検出できますか?
別のOSでBSODによって引き起こされた再起動を検出する必要があります。そのような状況を追跡することはできますか?メモリダンプで十分ですか?Windows 7は、システムが重大なエラーから回復したという素晴らしいダイアログを表示します-どのようにそれを知るのですか?
c++ - 私のプログラムを実行しているときにDirectx 11の死のブルースクリーン
次のコードを使用しようとしています。
drawFrame の場所は...
また、次を使用して m_flashTexture をセットアップしたことにも言及する必要があります。
このコードを実行するたびに (他にもたくさんありますが、他の多くのクラスに埋もれています。他の何かが役立つと思われる場合はお知らせください..) flashPlayer のどこかでブルー スクリーンが表示されます。 ->drawFrame() 関数。ブルースクリーンの原因がわかりません。
ブルースクリーンの原因となるような目立ったアイデアはありますか?
ありがとう。
詳しくは
これがクラッシュダンプの結果です
これが何を意味するか知っている人はいますか?
c++ - Directx 11 Bitblt 代替
directx 11アプリケーションに統合しようとしている次の機能があります。directx9 を使用している場合はすべて正常に動作しますが、directx 11 に変換すると、Bitblt ラインでブルー スクリーン エラーが発生します (HDC で何か問題が発生しているに違いありません)。このコードを HDC ではなく、directx 11 と互換性のあるサーフェスに変換する最善の方法は何かと考えていました。
関数は次のとおりです。
この関数に渡す HDC は、次の方法で作成されます。
私が間違っていることのアイデアはありますか? Directx 9オブジェクトを使用してもブルースクリーンが発生しないのに、何が起こっているのか、なぜブルースクリーンが発生するのか理解できないようです。これを行うより良い方法はありますか?
(また、ドライバーを更新しようとしましたが、すべて最新です)。
お手伝いありがとう。
bsod - picadm がキャッシュされたメモリ管理領域を解放することにより、ブルー スクリーン オブ デスが STOP 0xC2 で表示される
Picadm は、私たちが作成したシステム ドライバーです。特別なプールを有効にして、破損の時点でブルー スクリーンが発生するようにしました。
ブルー スクリーンは、次の情報で発生します。
- *
- バグチェック分析 *
- *
BAD_POOL_CALLER (c2) 現在のスレッドは不正なプール要求を行っています。通常、これは不適切な IRQL レベルであるか、同じ割り当てを二重に解放するなどです。引数: Arg1: 0000000000000007、既に解放されているプールを解放しようとしています Arg2: 0000000000001097、(予約済み) Arg3: 0000000000210007、プール ブロックのメモリ内容 Arg4: fffff8a004b98e00、解放されるプールのブロックのアドレス*
上記の情報は、fffff8a004b98e00 が BSOD につながる 2 回解放されていることを示しています。特別なプールが有効になっているため、このメモリ アドレスの割り当てと解放の履歴を確認できます。次の結果が得られます。
上記は、このアドレスが 2 回削除されたことを示しています。
クエリ:両方のスタック トレースがまったく同じであることは、私にはかなり奇妙に思えます。スレッドも同じです。これが発生する考えられる理由は何ですか。スタック トレースに関連するコードを確認しましたが、 CcUninitializeCacheMapの 2 回の実行につながる while/do/for または jump ステートメントが見つかりません。
以下はBSOD発生時のスレッドスタックです。これは、削除が発生した場所と同じスレッドです。
どんな助けでも大歓迎です!
windows - ソケット バインドを呼び出すと、Windows のブルースクリーンが表示される
特定の条件下でアプリケーションを実行すると、Windows ブルースクリーンが発生することがわかりました。いくつかの調査の後、Winsock2 API を使用して、シナリオを 50 行以下の C コードのサンプルに絞り込むことができました。サンプル -詳細は MS リクエストにより削除されました-。サンプルを数秒間実行すると、Windows Server 2008 R2 がクラッシュします。この問題は、さまざまな物理マシンと仮想マシンで再現されます。
問題の再現が一貫していることを考えると、Microsoft が喜んで修正するもののように見えます。このようなバグを報告する正しい方法は何ですか? 他の提案はありますか?
windows - VM から BSOD テキストを取得しています
virtualbox vm から BSOD テキストをどのように取得しますか??
BSOD はテキストであるため、VM のメモリ空間のどこかに、おそらく適切に定義された場所に保存する必要があります。
再起動ではなくブルー スクリーンで停止するように構成された複数の VM があり、定期的にスクリーン ショットを撮るためのコードが用意されています。
この時点で、私の計画は 2 つの画像を区別することです。違いがなく (つまり、画面に変化がなく)、4 隅のピクセルがすべて青 (および右の青) の場合、BSOD の抽出を試みます。テキストで「* STOP:」シーケンスを検索し、BSOD であることを確認します。
私は当初、画像自体からテキストを抽出するための迅速で汚い OCR ソリューションを計画していましたが、メモリからテキストを比較的簡単に抽出できれば、OCR エラーの可能性を排除できます。
マニュアルと API リファレンスを熟読しましたが、すぐに適用できると思われるものは見当たりませんでした。
Virtual Box ホストからゲスト メモリにアクセスして、BSOD テキストをメモリから直接取得することはできますか?
アップデート
明確にするために、現時点で4つの異なるオプションを検討しました
1) Windows デバッグ プロトコルをリバース エンジニアリングし、VM のシリアル ポートでリッスンするための少なくとも基本的なデバッガーを構築する
- シリアル プロトコルのリバース エンジニアリングが必要です。これにはかなりの困難が伴うと思われます
2) Virtualbox で保存された状態ファイルをリバース エンジニアリングし、VM を BSOD に保存した後、そのファイルに保存されていると思われるテキストを VESA メモリ領域から抽出します。
- ソース コード自体以外に、このファイル形式に関するドキュメントを見つけることができませんでした。
3) API を使用して取得した出力画像に対して OCR を実行する
- これが最善の方法かもしれません。私の経験外で、ある種の ocr ソリューションを構築またはセットアップしてトレーニングする必要があります。比較的簡単に実行でき、一定幅のフォント/クリーンな画像、2 色のみの処理
4)API呼び出しを使用するか、何らかの方法でアクセス/公開する拡張機能を作成して、ゲストメモリに直接アクセスします
- Warren が指摘したように、メモリにアクセスするための API はないようです。何らかの方法で vm のメモリを公開する拡張機能を作成できる可能性がありますが、Virtualbox の内部構造を理解する必要があります。
これは Solaris ホストで実行されており、起動する場合としない場合がある Windows vm が 1 つしかない場合があります。この VM は、Windows の比較的最近のバージョン (XP、2003、2003 R2、2008、Vista、2008 R2) である可能性があります。任意の数の Linux ベースの VM を生成できますが、ライセンスの問題により追加の Windows VM を生成することはできません。この時点までの私の考えは、ゲストのメモリから直接取得するのが実装するのが最も簡単だろうということでした.