INTRO(9)

명칭
intro - 시스템 커널 인터페이스의 소개

해설
이 섹션은 커널내의 인터페이스와 써브루틴에 대한 정보를 포함하고 있습니다.

ANSI-C 등의 prototype
부탁합니다.

우리는 모든 코드가 완전하게 prototype 되고 있는 것을 바랍니다.

당신의 코드가 cc -Wall (으)로 했을 때에 예쁘게 컴파일 할 수 있으면, 우리는 기쁘다고 생각합니다. 이것은 cc (을)를 입다물게 하는 것이 문제가 아니고, 불평의 원인 사상을 피하는 것이 문제이다고 하는 것을 이해하는 것이 중요합니다. 사양없이 말하면(자), 캐스트나 다른 불명료화하는 수법으로 문제를 숨기는 것이 아니라, 문제를 해결해 주세요.

인덴트와 스타일
그것을 신용할지 어떨지는 별개로, 인덴트와 스타일에 대한 가이드가 실제로 존재합니다. 그러나 넓지는 적용되고 있지 않습니다.

사람들이 거기에 주위를 기울여, 적어도 노골적으로 위반하지 않는다면, 우리는 그것을 인정하겠지요.

우리는 너무 심하지 않는 한, 당신의 독자적인 스타일을 신경쓰지 않습니다만, 반드시 우리에게도 읽을 수 있도록 해 주세요.

더욱 정보를 얻기 위해서(때문에) style(9) (을)를 읽는 시간이 걸려 주세요.

명명 규칙
몇개의 일반적인 규칙이 있습니다.

1.  어느 함수가 DDB 에서의 디버그 지원을 의도한 것이다면, 그것은 아래와 같이 둘러싸여야 합니다.

        #ifdef DDB
        #endif /* DDB */

    더해, 함수의 이름은, 그것이 디버거 routine인 것이 명확하게 알도록(듯이), DDB_ (을)를 접두사로서 시작해야 합니다.

심볼의 스코프
커널내의 심볼의 스코프는 주의 깊게 고려하는 것이 중요합니다. 어떠한 이유로 그렇게 할 수 없는 경우 이외는, 디폴트에서는 모두를 static 로 합니다.

이 방침에는 몇개의 이유가 있습니다. 주된 이유는, 커널은 단일의 이름 공간인 것으로, 여기에서는 이름 공간의 오염도 그다지 명안은 아니라고 하는 것입니다.

디바이스 드라이버와 커널에 새로운 내부의 인터페이스를 추가하지 않는 모듈에서는, 가능하다면 모든 원시 코드가 하나의 파일이어야 합니다. 그것은 모든 심볼을 static 로 할 수 있는 방법이기 때문입니다.

어떠한 이유에 의해 모듈이 복수의 파일에 분할되는 경우에는, 큰 경계선을 따라 그 모듈을 분할하도록(듯이) 노력해, 글로벌인 심볼의 수를 안내로 해 숙고해 주세요. 적은 것이 바람직합니다.

관련 항목
style(9)

역사
intro 섹션의 메뉴얼 페이지는 FreeBSD 2.2 그리고 등장했습니다.