ホームページ  >  記事  >  運用・保守  >  Linuxのhファイルとは何ですか

Linuxのhファイルとは何ですか

WBOY
WBOYオリジナル
2022-05-17 17:16:295692ブラウズ

Linux では、h ファイルはシステムのヘッダー ファイルです。通常、関数宣言、変数宣言、定数宣言、マクロ定義などの再利用コードを保存するために使用されます。ヘッダー ファイルテキストファイルをテキストエディタで編集後、拡張子「.h」を付けて保存します。

Linuxのhファイルとは何ですか

#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。

Linux の h ファイルとは

ヘッダー ファイルはテキスト ファイルなので、テキスト エディターでコードを記述した後、拡張子 .h を付けて保存するだけです。通常、ヘッダー ファイルには、関数宣言、変数宣言、定数定義、マクロ定義などの再利用されたコードが含まれています。

ヘッダー ファイル ディレクトリには、合計 32 の .h ヘッダー ファイルがあります。そのうち、メイン ディレクトリに 13 個、asm サブディレクトリに 4 個、Linux サブディレクトリに 10 個、sys サブディレクトリに 5 個あります。

  • : a.out ヘッダー ファイル。a.out 実行ファイル形式といくつかのマクロを定義します。

  • : 定数シンボル ヘッダー ファイル。現在、i ノードの i_mode フィールドのフラグ ビットのみを定義します。

  • : 文字種ヘッダファイル。文字種の判定と変換に関するいくつかのマクロを定義します。

  • : システム内のさまざまなエラー番号を含むエラー番号ヘッダー ファイル。 (minix の Linus によって紹介されました)。

  • : ファイル制御ヘッダー ファイル。ファイルの動作制御定数シンボルとその記述子の定義に使用されます。

  • : 信号シンボル定数、信号構造、信号操作関数プロトタイプを定義する信号ヘッダー ファイル。

  • : 標準パラメータ ヘッダー ファイル。マクロの形式で変数パラメータ リストを定義します。主に、vsprintf、vprintf、vfprintf 関数で使用される 1 種類 (va_list) と 3 つのマクロ (va_start、va_arg、va_end) について説明します。

  • : NULL、offsetof(TYPE, MEMBER) を定義する標準定義ヘッダー ファイル。

  • : 文字列ヘッダー ファイル。主に文字列操作に関連するいくつかの埋め込み関数を定義します。

  • : 端末入出力関数ヘッダー ファイル。主に非同期通信ポートを制御する端末インターフェイスを定義します。

  • : 時間タイプのヘッダー ファイル。主に tm 構造体といくつかの時間関連の関数プロトタイプを定義します。

  • : Linux 標準ヘッダー ファイル。さまざまな記号定数と型を定義し、さまざまな関数を宣言します。たとえば、__LIBRARY__ が定義されている場合、システム コール番号やインライン アセンブリ _syscall0() なども含まれます。

  • : ユーザー時間ヘッダー ファイル。アクセスと変更の時間構造と utime() プロトタイプを定義します。

アーキテクチャ関連ヘッダー ファイルのサブディレクトリ include/asm

これらのヘッダー ファイルは主に、CPU アーキテクチャに密接に関連するいくつかのデータ構造、マクロ関数、および変数を定義します。合計4ファイル。

  • : I/O ポートを操作するための関数をマクロ組み込みアセンブラ形式で定義する I/O ヘッダ ファイル。

  • : memcpy() 組み込みアセンブリ マクロ関数を含むメモリ コピー ヘッダー ファイル。

  • : セグメント レジスタ操作に関連する組み込みアセンブリ関数を定義するセグメント操作ヘッダー ファイル。

  • : 記述子/割り込みゲートなどを設定または変更するための組み込みアセンブリ マクロを定義するシステム ヘッダー ファイル。

Linux カーネル固有のヘッダー ファイル サブディレクトリ include/linux

  • : カーネルヘッダー ファイルを構成して、キーボード言語とハードディスクの種類 (HD_TYPE) オプションを定義します。

  • : フロッピー ディスク コントローラ パラメータの定義が含まれるフロッピー ドライブ ヘッダー ファイル。

  • : ファイル テーブル構造 (file、buffer_head、m_inode など) を定義するファイル システム ヘッダー ファイル。

  • : ハードディスク レジスタ ポート、ステータス コード、パーティション テーブル、その他の情報へのアクセスを定義するハードディスク パラメータ ヘッダー ファイル。

  • : head ヘッダー ファイルは、セグメント記述子の単純な構造といくつかのセレクター定数を定義します。

  • : カーネル ヘッダー ファイル。一般的に使用されるいくつかのカーネル関数のプロトタイプ定義が含まれます。

  • : ページ サイズ定義といくつかのページ解放関数プロトタイプを含むメモリ管理ヘッダー ファイル。

  • #: タスク構造 task_struct と初期タスク 0 のデータを定義するスケジューラ ヘッダー ファイル

記述子パラメーターの設定と取得に関連するいくつかの組み込みアセンブリ関数マクロ ステートメントと同様。

  • : システム コール ヘッダー ファイル。「sys_」で始まる 72 個のシステム コール C 関数ハンドラが含まれます。

  • : tty ヘッダー ファイルは、tty_io およびシリアル通信に関連するパラメータと定数を定義します。

システム固有のデータ構造サブディレクトリ include/sys

  • : ファイルまたはファイル システムのステータスを含むファイル ステータス ヘッダー ファイル構造体 stat{} と定数。

  • : プロセス内の実行時間構造体 tms および times() 関数プロトタイプを定義します。

  • : 基本的なシステム データ型を定義するタイプ ヘッダー ファイル。

  • : システム名構造ヘッダー ファイル。

  • : システム コール wait() および waitpid() および関連する定数シンボルを定義する待機呼び出しヘッダー ファイル。

Linux で一般的に使用されるヘッダー ファイル

POSIX 標準で定義されたヘッダー ファイル

  • < dirent.h> ディレクトリ エントリ

  • ファイル コントロール

  • ファイル名一致タイプ

  • パス名パターン マッチング タイプ

  • グループ ファイル

  • ネットワーク データベース操作
  • パスワード ファイル
  • ## 正規表現 数式
  • TAR アーカイブ値
  • ターミナル I/O
  • シンボリック定数
  • ファイル時間
  • INTERNET定義
  • ## ソケットローカルインターフェース

  • インターネット アドレス ファミリ

  • ## 伝送制御プロトコル定義

  • メモリ管理ステートメント

  • 関数の選択

  • ソケット インターフェイス

  • ファイル ステータス

  • 処理時間

  • 基本システム データ型

  • < sys/un.h> UNIX ドメインソケット定義

  • ## システム名
  • ## プロセス制御
  • #POSIX

  • g`" で定義された XSI 拡張ヘッダー ファイル ダイナミック リンク

# メッセージ表示構造

## ファイルツリーローミング
  • #

  • 言語情報定数

  • パターンマッチング関数定義

  • ## 通貨タイプ

  • ## データベース操作
  • < ;nl_types.h> メッセージ カテゴリ
  • ## ポーリング関数
  • ## 検索テーブル

  • ## 文字列操作

  • ## システム エラー ログ レコード
  • < ucontext.h> ユーザー コンテキスト
  • ## ユーザー制限
  • ユーザー アカウント データベース

  • IPC (名前付きパイプ)

  • # メッセージ キュー

  • ##リソース操作
  • ##セマフォ
  • 共有ストレージ
  • ## ファイル システム情報

  • ## 時間type

  • 追加日時 定義

  • ベクトル I/O操作

  • POSIX で定義されたオプションのヘッダー ファイル

  • ## 非同期 I/O

  • ## メッセージ キュー
  • スレッド
  • 実行スケジューリング
  • Semaphore
  • リアルタイムスポーンインターフェイス

## XSI STREAMS インターフェイス

  • イベント追跡

  • 推奨学習:

    Linux ビデオ チュートリアル

以上がLinuxのhファイルとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。