EN JA
INTRO(9)
INTRO(9) FreeBSD Kernel Developer's Manual INTRO(9)

名称

introシステムカーネルインタフェースの入門

解説

このセクションは、カーネル内のインタフェースとサブルーチンに関する情報を含んでいます。

ANSI-C などのプロトタイプ

はい、お願いします。

我々は、すべてのコードが完全にプロトタイプ化されていることを望みます。

利用者のコードが cc -Wall できれいにコンパイルするなら、我々は、そのことについて満足するでしょう。これは、 cc を単に黙らせる問題ではなく、それについてエラーを出すことがらを避けることに関する質問であることを理解することは重要です。率直に言えば、キャスト (cast) すること、と他の分かりにくい慣習によって問題を隠さず、問題を解決します。

インデントとスタイル

信じないかもしれませんが、インデントとスタイルのためのガイドが実際に存在します。しかしながら、それは、一般的に適用されません。

人々がそれに注意を払い、少なくとも、それをあからさまに違反しないなら、我々は、評価するでしょう。

我々は、利用者に独自のスタイルがあるなら、それをあまりひどく気にしませんが、私たちが、それを読むことができることを確かめてください。

詳細については、 style(9) を読む時間を取ってください。

命名の事項

次のような、いくつかの一般的な規則が存在します:
  1. 関数が DDB のデバッグ支援として意図されるなら、それは、次のもので囲まれるべきです:

    #ifdef DDB 
     
    #endif /* DDB */

    また、手続きの名前は、デバッガルーチンとして手続きを明白に識別するために、接頭辞 DDB_ で始まるべきです。

シンボルの範囲

カーネルのシンボルの範囲を注意深く考慮することは重要です。デフォルトは、ある理由で、反対のことを求めないなら、すべてを静的にすることです。

このポリシのためにいくつかの理由があり、主なものは、カーネルが単一の名前空間であり、汚染は、ここでは、好ましくないことのいずれかです。

新しい内部インタフェースをカーネルに追加しないデバイスドライバと他のモジュールについては、できたら、すべてのソースを 1 つのファイルにするべきです。そのように、すべてのシンボルを、静的とすることができます。

ある理由で、モジュールが複数のソースファイルに分かれているなら、ある主な境界線に沿ってモジュールを分割し、利用者のガイドとしてグローバルシンボルの数を使用することを考慮してください。より少ないものが、より良いでしょう。

関連項目

style(9)

歴史

intro セクションのマニュアルページは、 FreeBSD 2.2 で登場しました。
December 13, 1995 FreeBSD