>>183
単純な話なんだから、分かってるのなら答えて欲しいんだけど。
・マルチユーザシステムであるUnixでは、ユーザ毎にLC_CTYPE設定が異なり得る。
 これが前提。
・何もしなければ(少なくとも昔のUnixでは)システムコールにchar*を渡せば
 それは「そのまま」kernelに素通しで渡るはず。つまり、一貫性の無い
 異なるエンコーディングの名前がkernelに渡されることになる。しかも
 kernelに渡ってしまった後はそのエンコーディングを判断するすべが無い。

 ユーザモードで呼ばれるシステムコールのCインタフェース(ラッパ)には
 呼び出し側プロセスの環境のLC_CTYPEが分かっているので、多分ロケールに
 従った変換をかけるならここがベストである、ように俺には見える。

で、
・↑のような変換を行うシステムコールラッパの仕掛けなんですか
・kernel内部はUTF-8で統一されているのですか
というのが質問。
間違っているのなら、どこがどう間違っているのか説明してほしい。