問題タブ [windows-kernel]

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

windows - Windows でどのプロセスが高いタイマー解像度を設定したかを確認する方法

私のシステムは、高いタイマー分解能 ( NtQueryTimerResolution0.5ms を返します) に悩まされています。

一部のプロセスは 5000 (0.5ms) の値で呼び出しているはずですNtSetTimerResolutionが、どのプロセスかを判断するにはどうすればよいですか? Intel には、プロセスごとの現在のタイマーの解像度を表示するBattery Life Analyzerというツールがあるのを見ましたが、そのツールは Intel パートナーのみが利用できます。WinDbg 経由で表示する別のツールまたは方法はありますか? 注: ブレークポイントの設定が機能していないため、起動時に発生するようです (デバッガーの起動時には解像度が既に高くなっています)。

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

windows - カーネル内のスレッドの CPU 時間を取得するには?

レガシ ドライバーから PsCreateSystemThread API を呼び出して、いくつかのスレッドを作成しています。この呼び出しはカーネル内から行われるため、これらの新しく作成されたスレッドはシステム プロセスのコンテキストで実行されます。

私の質問には、これらのスレッドへのハンドルが与えられています。CPU 時間を取得できる API はありますか? スレッドが実際に何かを行っていた純粋な CPU 時間 (GetProcessTimes を呼び出して取得したカーネル時間と同様) に興味があります。GetThreadTimes という API があることは知っていますが、それはユーザー モードのものです。カーネル モード内で CPU 時間が必要です。

ありがとう

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

windbg - GFlags ハングした GUI で停止する

今日、GFlags オプションStop on hang GUIがGFlags ユーザー インターフェイスのKernel Flagsタブに表示される理由を知りたいと思いました。カーネルには、ハングする可能性のある GUI がありますか?

そこで、マイクロソフトから情報を取得しようとしましたが、MSDN は次のように述べています。

Stop on hang GUI フラグが GFlags に表示されますが、Windows には影響しません。

だから私はさらに疑問に思っています.GUIを持っているカーネルのカーネルフラグですが、それはWindowsカーネルではありませんか?

実用的ではないように思えますが、これを説明できる人はいますか?

また、 WinDbg からより多くの情報を取得しようとしました.hh !gflagが、これが Windows では機能しないという声明すら出ていません。

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

c++ - UNC パスの長い Unicode バージョンを作成するには?

次のような UNC パスがあれば、という印象を受けました。

MAX_PATHの制限を超えて拡張したかったので、これを行うことができました:

しかし、Windows XP で次のコマンドを実行すると、エラー コードで失敗しますERROR_INVALID_NAME

何か不足していますか?

PS。そのフォルダーは存在し、\\SRVR-A\Home\UserA\Documents\TestFolder代わりに存在する場合、API は正常に動作します。

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

winsock2 - winsockカーネルWSKの関数のようなhtonlのインクルードヘッダーとは何ですか?

私は WinSock の経験がかなりありますが、これが Winsock カーネルへの最初の冒険です。< wsk.h > のみをインクルードすると、変換関数 ntohl、htonl ntohs、および htons が未定義になります。これらの変換関数には、どの #include を使用する必要がありますか。「wsk htonl」を検索しましたが成功しませんでした。

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

c++ - 説明されているように、RtlStringCbPrintf は ntstrsafe.h にありません。

Winsock Kernel でRtlStringCbPrintfを使用しようとしています。Ntstrsafe.h をインクルードしましたが、コンパイラでエラーが表示されます

RtlStringCbPrintfAまたはRtlStringCbPrintfWを使用すると、コンパイルされます。ジェネリック バージョンを使用できないのはなぜですか? Ntstrsafe.h を見ると、RtlStringCbPrintfARtlStringCbPrintfWのプロトタイプ宣言が表示されますが、コメントでは参照されていますが、RtlStringCbPrintfの宣言はありません。Character Set プロパティが使用するバージョンを選択するように汎用フォームを使用できないのはなぜですか? My Character Set プロパティがUse Multi-Byte Character Set に設定されている

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

dll - Windows Native API を呼び出すためのオープン ソース ライブラリはありますか

そのネイティブ API (ntdll.dll 内の Nt*/Zw* 関数呼び出し) を呼び出す必要があるアプリケーションがあります。データ型定義、関数プロトタイプ、さらには dll を動的にロードおよびアンロードするための C++ ラッパーを提供するオープン ソース ライブラリはありますか?

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

kernel - Windows カーネル: OS モジュールのコードにパッチを適用する

環境:

  1. Windows 8.1 (x64)
  2. ビジュアルスタジオ
  3. WinDbg

ドライバーの起動時に、実行時の動作を変更するために bthport.sys の 1 バイトを変更する必要があります。更新する正確な場所を見つけることができます。残念ながら、命令を更新すると、GeneralProtection のエラーが発生し、セットアップされます。 CR0 レジスタの WP フラグは役に立ちませんでした。

カーネル モード ドライバーでページ保護をプログラムで制御するにはどうすればよいですか?