問題タブ [drivers]
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.
windows - ページプールから割り当て、プラグマを使用してページセクションの関数を割り当てるのはなぜですか?
私のすべてのドライバーコードは現在これを行っています。これは主に、以前にWindowsカーネルチームで15年間働いていた非常に上級のドライバープログラマーと一緒に働いていて、彼がそれを要求したためです。私はその習慣を身につけ、「なぜ」という質問を実際にしたことはありませんでした。
非ページプールはページに比べて少なく、ターゲットシステムについて推測できない(使用可能な非ページメモリの量など)などの明らかな理由を知っています。しかし、最近、私のドライバーコードを使い始めた多数のLinuxドライバープログラマーを継承し(Linuxにはそのような区別はないようです)、コード/データを常にページプールに入れる必要があると言ったとき、彼らは一斉に立ち上がった可能。
では、ページング/非ページングプールの割り当てを行う本当の理由は何ですか?
windows - ディスク上のドライバーとメモリにマップされたドライバーの違いの原因は何ですか?
ねえ、今日、NDIS.sys のバイナリ diff を実行しようとしましたが、奇妙なことに気付きました。私は関数を取り、それを比較し始めました。最初の 30 バイトは、ディスク (IDA を使用) とメモリ (WinDbg を使用) で同じでした。すると、何かが変わった。「 jmp_imp_XXXXX 」のようなものを見ました。JMP バイトは同じでしたが、アドレスが異なっていました。
私の質問は - 何が違いを生むのですか? 引っ越しの関係もあると思います。ジャンプは同じモジュール内でアドレス指定することですが、これは長いジャンプであるため、モジュールのベース アドレスに相対的になります。再配置が発生した場合、このアドレスも再配置する必要がありますが、同じモジュール上にあります。
私は正しいですか、それとも完全に間違っていますか? :-) ありがとう。
c++ - USB RF レシーバー マウスのハッキング
ワイヤレス マウスは、技術的には、USB (PnP) 経由で接続する RF レシーバーと同様にどのように機能しますか? レシーバーのデータ セクションにアクセスして、OS ドライバーに情報を送信する実際のコードを確認する方法、または逆コンパイルに関与するドライバーを確認する方法を知りたいです。
usb - USBプログラミング
マイクロコントローラ (AVR) をプログラムして、USB 経由でいくつかの LED を制御したいと考えています。USB デバイスを構築してプログラムする方法に関心がありません。USB プロトコルをサポートする AVR マイクロコントローラーがいくつかあります。また、別のマイクロコントローラーで USB プロトコルを自分で実装することもできますが、コンピューターに独自のドライバーを書き込むには何を使用すればよいのでしょうか。
システム プログラミングの私のレベル: 完全初心者 (したがって、質問)
では、USB テクノロジと、独自のドライバを作成する方法などについて十分な知識を得るためにアドバイスする文献は何ですか?
PS: 私は知っています:
C (おそらくここで必要になるでしょう)
Java (おそらくここでは必要ありません)
Python(ここで使用できることを願っています)
アセンブラ (XD では必要ないことを願っています)。
...
PPS: ドライバーの開発は、OS ごとに異なります。私は Linux と Windows を使用しているので、これらのシステムの一方または両方に関連する資料は大歓迎です。
windows - Windows OS のドライバー スタックとは何ですか?
Windows OS のドライバー スタックとは何ですか?
私はNDISの資料を読んでいましたが、それが何であるかわかりません。
download - Belkin Router Manager はダウンロードする必要がありました
基本的に私はこれをしたい
http://en-us-support.belkin.com/app/answers/detail/a_id/3796
しかし、ベルキン ルーター マネージャーが見つかりません。
誰か持っていますか?
ありがとう
石工
memory-management - #pragma alloc_text(PAGE) コードがページ位置合わせされていません
WinXP 32 ビットの DDK (かなり古いバージョン: 3590) で (可能性のある) 問題に直面しています。私のドライバーには、初期化されていないいくつかの静的変数 (.bss セクションに割り当てられるべきだと思います) と、ページング可能なコード セクション (#pragma alloc_page(PAGE, func) でマークされている) 内のいくつかの関数が含まれています。ページング可能なコードは、別のオブジェクト ファイルに収集されます。リンカがスタティック コードとページング可能なコードをカーネル アドレス空間の同じページに割り当てているように見えることを発見しました (つまり、変数は 0xEFFCB0A0 にあり、関数は 0xEFFCB600 にあります - windbg で検証済み)。静的変数は割り込み環境で使用されるため、それらのページはメモリ内でロックする必要があります。しかし、同じページにスワップ可能なコードが含まれている場合、変数が突然消えるのではないかと心配しています。リンカー」
リンカー/ローダーにページング可能なコードに別のページを割り当てるように強制するにはどうすればよいですか? セクションの配置属性を強制する「#pragma」はありますか? 私は何か間違ったことをしていますか?
PS: ドライバー ローダーは、変数とコードの両方を含むページをページ プールから除外するのに十分スマートですが、ページには変数が含まれているため、書き込み可能である必要があります。実行可能コードが読み取り専用ページにあることを望みます。カーネル モードでの間違った配列アクセスは、デバッグが非常に困難です...
PPS: 関数の前後に 4096 の "nop" を追加しました... OK、動作します... 提案するより良いものはありませんか?
opengl - OpenGL 3、OpenGL4実装の既知のバグ
私たち全員が最終的に知るようになると、仕様は1つであり、実装は別のものです。ほとんどのバグは私たち自身が引き起こしますが、そうでない場合もあります。
以下の小さなリストを作成すると便利だと思います。
OpenGLおよびGLSLの最近のバージョンの実装に関連して、GPUドライバーで現在知られているバグは何ですか?
関連するグラフィックカードとドライバのバージョンを常に投稿することを忘れないでください。
windows - カーネル モードとドライバーの違い
カーネルへのパッチ適用とドライバーの作成の違いを理解しようとしています。
カーネル モード ドライバーは、カーネルが実行できることは何でも実行でき、ある意味で Linux モジュールに似ていると理解しています。
では、Microsoft が Windows カーネルへのパッチ適用を停止したとき、なぜ AV メーカーはこれほど動揺したのでしょうか?
ドライバーではできないことで、カーネルのパッチ適用ではどのようなことができますか?
mongodb - C# MongoDB ドライバートラブル(NORM)
本番環境で NORM ドライバーを使用しました。年末年始 - とても涼しいので、プロジェクトの負荷が高くなり、レプリケーション セットをセットアップしたいのですが、問題があります - Norm はレプリケーション セットをサポートしていません :( . 私がシャーディングを理解している限り?
助けてください:) replsetでmongodb csharpまたは公式の10genドライバーを使用したのは誰ですか? 制作上、問題はありませんか?別のドライバーを選択した場合、リポジトリを書き直す必要がありますが、無駄にはしたくありません。何か問題はありますか?