[b-free 656] Re: 景気良くうんと長い実身名だ

Takanori Hayashi (takanori@ohsaki.meidensha.co.jp)
Mon, 29 Sep 1997 08:21:36 +0900

林です。自己フォローの形にします。

In message <9709260806.AA19547@clare.ohsaki.meidensha.co.jp>
"[b-free 635] Re: 景気良くうんと長い実身名だ"
"Takanori Hayashi <takanori@ohsaki.meidensha.co.jp>" wrote:
takanori> In message <199709260418.NAA21283@hisoft.soft.hitachi.co.jp>
takanori> "[b-free 621] Re: 景気良くうんと長い実身名だ"
takanori> "Ryuichi Naitoh <naitoh_r@soft.hitachi.co.jp>" wrote:
takanori> naitoh_r> また、現在 BTRON で使えるファイル名の文字列は、TAD と矛盾しないので
takanori> naitoh_r> (たとえば、文字切替コードは TAD と共通)、TAD サポートというのは結局は
takanori> naitoh_r> TAD であるかどうかのチェックをしないだけのことです。
takanori> naitoh_r> (むしろ、TAD を使えないとした方が処理が大変でしょう?)
takanori>
takanori> ファイルシステムで実身名の内容(文字列かTADかそうでないか)を
takanori> チェックしないというのは異存ありません。しかしチェックしない
takanori> という実装技術上の問題と実身名は文字列とするという仕様の問題
takanori> はまた別です。「チェックしないからTADを許している」というなら
takanori> 「チェックしないからどんなバイト列でも良い」というのと同じに
takanori> なってしまいます。
takanori> またファイルシステムはともかく実身仮身マネージャやアプリケー
takanori> ションにとっては実身名が文字列か任意のTADかの差は大きいので
takanori> 気をつけないといけません。
takanori>
takanori> 個人的には任意のTADを許してしまえばもはや実身「名」ではない
takanori> と考えます。

これを書いた後で(休日中に)気づいたのですが、ファイルシステム
で、実身名の内容を無視することはできないのでした。
問題になるのはパス検索です。BTRON1ファイルシステムではパス名
からリンクを検索するシステムコール(get_lnk)があります。ここに
渡されるパス名は、パス区切りコードでつながれた実身名の列です。
ファイルシステムはこれを実身名に分割して実身/仮身ネットワーク
を辿らねばなりません。実身名が文字列(TRON多国語コード)ならば、
実身名中にパス区切りコードは出てこないので、パスの分割は単に
パス区切りコードの検索ですみます。しかし、実身名に任意のTADを
許してしまえば、実身名中にパス区切りコードが含まれる可能性が
あるので、TADセグメントを解釈する必要ができます。
# BTRON2のようにパス検索をファイルシステムの外に出す方法もあるけど。

# 休み中に書かれた内容へのコメントは、また。

---
    林(takanori@ohsaki.meidensha.co.jp)