GNU/Linux >> Linux の 問題 >  >> Linux

Linuxカーネル識別子の先頭と末尾のアンダースコアの意味は何ですか?

いくつかのケースがあります:

  • 一般に公開されているヘッダー (つまり、libc が引き継いで /usr/include/linux の下に置くもの) 、標準はどの記号を定義する必要があるかを指定し、システムに固有のその他の記号はアンダースコアと大文字または2つのアンダースコアで始まる必要があります。それが __KERNEL__ の理由です 特に、カーネルと libc の両方に含まれるヘッダーで使用され、一部の宣言が異なるためです。
  • 内部コードでは、規則は通常その記号 __something です something の主力製品です 一部の管理を除き、多くの場合ロックします。それが __d_lookup のような理由です .システム コールの同様の規則は、sys_something です。 カーネルとの間のコンテキスト スイッチを処理し、do_something を呼び出すシステム コール エントリ ポイントです。 実際の仕事をする
  • _t suffix は、typedef の標準ライブラリ規則です。例えば。 size_tptrdiff_tfoff_t など。カーネル コードは、内部型についてもこの規則に従います。

Linux
  1. Linuxシステムの現在のランレベルはどれくらいですか?

  2. Linux カーネルの可能性が高い/可能性が低いマクロはどのように機能し、その利点は何ですか?

  3. Linuxカーネルモジュールのmodule_initとinit_moduleの違いは何ですか?

  1. 現在の Linux カーネル ソースは何ですか?

  2. Linux での fork() と grep の意味は何ですか?

  3. Linux での「検索」と「検索」の違いは何ですか?

  1. Linuxカーネルとは何ですか?最新のカーネルにアップグレードする必要がありますか?

  2. Linux のハイ メモリとロー メモリとは何ですか?

  3. Linux コンテナーおよび Linux ハイパーバイザーとは何ですか?