1. modprobe load kernel module
a)/etc/module.confでエイリアスを検索します。
b)lib /modules /でversion /module.depでは、事前にロードする必要がある依存モジュールがあるかどうかを判断します(ファイルはdepmod-aで作成されます)
2. 2.4カーネルはinit_moduleやcleanup_moduleを使って関数の起動や終了をする必要はありませんがmodule_initと
module_exitで宣言する必要があります。
3.マクロ__initと__exitは、実行後に自動的にメモリを再利用することができます(モジュールに限る)、変数用の__initdata、
例:
#インクルード//ヘッダファイルをインクルードする必要があります。
static int ntest __initdata = 3;
static int __init test_init(void){...}
static void __exit test_exit() Void){...}
module_init(test_init); //実装関数の後に宣言する
module_exit(test_exit);
マクロは、objdumpを使って関連情報を見ることができます。
MODULE_LICENSE()説明コードライセンスタイプ
MODULE_DESCRIPTION()モジュールの説明
MODULE_AUTHOR()作者
MODULE_SUPPORTED_DEVICE()モジュールサポートされているデバイス
5.パラメータの受け渡しには、マクロMODULE_PARM(変数名、タイプ)を使います。
サポートされている型は "b"、 "bit"、 "short"、 "i"、 "integer"、 "l"、 "long"、 "string"です。
static int myint = 9;
static char * mystr =" test"; //パラメータのデフォルト値を渡す必要があることに注意してください。
MODULE_PARM(myint、" i");
MODULE_PARM(mystr) 、&" s");
6.複数のファイルを1つのカーネルモジュールにコンパイルする:
a)ソースプログラムに追加する必要があります
#define __NO_VERSION __
#include
b)通常のシングルカーネルファイルでコンパイルします。
c)接続:ld -m elf_i386 -r -o< 1st src file.o>< 2nd Src file.o>
7. straceプログラムが使用するシステムコールを確認します。
8. file_operations構造体についてはlinux /fs.hファイルに定義されています。
使用法:
struct file_operations fops = {読み取り:device_read、書き込み:device_write、オープン:device_open、リリース:device_release} C99使用法:struct file_operations fops = {.read = device_read 、.write = device_write、.open = device_open、.release = device_release}
さまざまなLinux さて、赤い帽子Enterprise Editionは、比較的安全問題です。平均的なLinuxのバージョンについては、どのように我々は、システムの安全性を確保します。あるいは、ど
初心者にとって、Linuxコマンドの習得はそれほど単純ではありませんが、初心者の多くはコマンドを使用したりコマンドの使用方法を知らなかったりするため、Linuxコマンドは非常に重要です。 Linuxシステムのコマンド操作を学ぶ方法。
Linuxシステムのコマンド操作スキルを習得する初心者
まず、毎日のヒント
Linuxコマンドを習得するための漸進的な方法は、毎回ターミナルを開くことで
all) Shuf -n 1) この行を追加するだけでいいです!もっと楽しくしたい場合は、cowsayをインストールすることができます。 Ubuntu /Debianの下にcowsayをインストール
Linuxの起動プロセスは何ですか? grubブートを使ってシステムの起動を完了する方法は?私が二重システムをインストールする前にこれらの問題は徹底的に研究されていません。 grubを介したLinuxの起動を理解し、Linux オペレーティングシステム
を理解するのを助け、また基本的な知識を普及させることができます^ _ ^。
図に示すように、これはハードディスクのLinuxパーティションの概略図です。 boot、root
Od -Ax -tx1z -vはMBR構造を導入します。GRUB(Grand Unified Bootloader)について話しましょう。現在のほとんどのLinuxシステムはこのブートローダを使って
リポジトリファイルはFedoraのyumソース(ソフトウェアリポジトリ)の設定ファイルです。通常リポジトリファイルは1つ以上のソフトウェアリポジトリの詳細を定義します、例えばどこにインストールやアップ