問題タブ [linux-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.
c - u-Boot/カーネル ブート シーケンスのプロファイリング
電源 PC ボードの起動プロセスをプロファイリングしていますが、起動シーケンスをプロファイリングする最も簡単な方法は何ですか?
私の最初のアイデアは、u-boot/kernel コードを変更して printf/printk (リアルタイム デバイスを参照として使用) を追加し、それらをコンソールに出力することです。ただし、コンソールに表示するだけで時間に影響する場合があります。
何かご意見は?
よろしく、ロバート。
linux - 構造体「skbuff」からsaddressを取得するにはどうすればよいですか
構造体「skbuff」からソースアドレスを取得する必要があるプログラムがあります。以前のカーネルバージョンでは、次の行を使用して「saddr」を取得できます。
以下はエラーメッセージです。
誰が正しいコードを教えてくれますか? ありがとう!
linux - 非カーネル ヘッダーを含む Linux カーネル (2.6) モジュールをコンパイルします。
非カーネル インクルードによって定義された機能を含む Linux カーネル (2.6) モジュールをコンパイルすることは可能ですか?
例えば:
カーネルモジュール.h
メイクファイル
私が作成してコンパイルしようとしているカーネル モジュールには、いくつかの openssl インクルード ファイルにある機能が含まれています。
上記の標準の makefile では、Linux ヘッダーの外側にインクルードすることはできません。この機能を含めることは可能ですか? もしそうなら、正しい方向に向けてください.
ありがとう、マイク
linux - Linux ソケット プログラミング デバッグ?
私はこのような機能を持っています:
これは、netlink を使用してカーネル空間からメッセージを受信するために使用されます。しかし、実行すると、ソースコードから「カーネルからの応答を受信中にタイムアウトしました」というメッセージが常に表示されます。これは、「選択」メソッドが常に「0」を返すためです。理由がわかりません。どなたかアドバイスをいただければ幸いです。
linux - ペイロードに特定のサブストリングを含むパケットをドロップするiptableルール
TCPまたはUDPペイロードに特定のサブ文字列が含まれているパケットが発信、着信、または転送されているかどうかに関係なく、パケットをドロップするルールを作成しようとしています。
どのように私はそれをすることになっていますか?
linux-kernel - iptables を使用して一致する文字列を持つパケットをドロップすると、一致しない後続のすべてのパケットがドロップされます
アプリケーション層でワーム フィルタリング ユーティリティを作成しようとしています。
特定の部分文字列を含む tcp パケットをドロップするルールに従ってセットアップしました。
iptables -A INPUT -p tcp -m string --string "test" -j DROP --algo kmp
ただし、一致する文字列を持つパケットが見つかると、一致しない文字列があっても、iptable からルールをフラッシュするまで、後続のすべてのパケットが破棄されます。
なぜこれが起こっているのか、それに対する解決策は何かを知りたいです。
ありがとう
linux-kernel - iptablesとlibpcap
文字列が一致するudp/tcpパケットをドロップするようにルールを設定しました。ただし、libpcapを使用してパケットをキャプチャする私のプログラムは、引き続きこのパケットを見ることができます。
なぜこれ/、libpcapによって見られる前にパケットをドロップするためのiptableルールは何である必要がありますか?
とにかく、おそらくiptablesルール以外に、libpcap / tcpdumpによって認識される前にこのパケットをドロップすることはありますか?
linux - Linux カーネルをシャットダウンして、リアル モードで再開することはできますか?
通常のオペレーティング システムが起動する前に、小さな Linux ディストリビューションを起動したいとします。
- BIOS は MBR をロードし、MBR を実行します。
- MBR は、私の Linux パーティションであるアクティブなパーティションを見つけます。
- Linux が起動し、必要なことを実行します。
- Linux がシャットダウンし、再びリアル モードに切り替えます。
- 元のパーティションのブート セクタが読み込まれ、通常の OS が起動します。
私の知る限り、ステップ 4 は難しい作業です。Linux より前のすべてのデバイスの状態を復元します。INT13h は機能しますか? 割り込みベクタ テーブルを復元する必要がありますか? いくつか言及します。
これはおそらく既存のプロジェクトで行われましたか?
c - 最新の netlink プログラミング サンプルは誰が提供してくれますか?
ユーザー空間とカーネル空間の間で通信するために netlink を使用して Linux ドライバーを作成しています。しかし、ネットリンクが Linux カーネル >=2.6.24 から変更されたため、役立つ資料が見つかりません。netlink ソケットの作成方法について提案してくれる人はいますか? 前もって感謝します!
build-process - Linuxカーネルを構築するときにコンパイルするファイルを知る
カーネルが構成されたら、どのファイルがどの順序でコンパイルされるかを知ることができるかどうか知りたいです。
アーキテクチャによるビルドプロセスのバリエーションに興味があり、アーキテクチャほど多くのツールチェーンを持ちたくないので、それを知りたいです...
ありがとう