限定しりとり

umountというコマンドがありますが、
処理の内容はアンマウントなのになぜ名前がunmountではなくてumountなんでしょうか。
単にnを省略しただけなんでしょうか。
それともそもそもunmountという意味では無いんでしょうか。

A 回答 (4件)

> 名前がunmountではなくてumountなんでしょうか。


多くの人がそう思うようですね。
下記のところでも、「passwd」が「password」でないのか、
UNIXの古くからあるようなコマンドは、6文字未満のようです。
「history」あたりから7文字があります。
間違えやすいのは、すべてエイリアス「alias」で、短くして
使うようにしております。その中の一つに入っております。

http://www.ipe.tsukuba.ac.jp/~muto/uxcmd.html
>> 8. パスワードの変更:passwd
>> 以前は、コマンドは6文字までとの制約があったのかも知れない。
    • good
    • 0
この回答へのお礼

ありがとうございます。
passwdは明らかにpasswordの省略形だなという感じですよね。
コマンドに限らず、結構ソースコードとかではよく使う語を省略したりしているのを見かけます。
ただ、unmountをumountのような省略の仕方はあんまり見ないので違和感がありました。
確かに6文字で制限されていたとしてnmountとumountのどちらかを選ぶなら私もumountを支持してしまいます。

お礼日時:2008/02/03 22:32

正確には知らないんですが、No.2 さんのご回答に「6文字制限」があったのではないか、という部分についてです。



昔々、DEC 社の PDP シリーズ(Vax の前)で最初の Unix が生まれたと聞いたことがあります(参照 URL)。当時、メモリは数十キロバイト程度と今に比べれば、携帯よりもはるかに少ないメモリで頑張っていました。

で、DEC 社の PDP シリーズ用の OS では、ファイル名は6文字以下という制限がありました。これは何故かというと、英数字と数個の特殊文字(例えば "$" など)併せて40文字(大文字、小文字は区別なし)を40進数に変換していました。何故かって?こうすると16bit で3文字、32bit に6文字入るからです。

今の ASCII では 32bit には4文字しか入りませんよね?さすがに4文字では当時でさえも足りないと思ったんでしょう。かといって、64bit にして8文字入れるなんて事をすると、貴重なメモリを食うし、処理も遅くなってしまいます。

同じ理由から、当時の Fortran やアセンブラでさえも、名前は6文字まで、という制限があったと記憶しています。ちなみにファイル名の拡張子(abc.txt の txt の部分)が3文字なのは、16bit で表現できたからです。

参考URL:http://ja.wikipedia.org/wiki/Unix
    • good
    • 0
この回答へのお礼

ありがとうございます。
最近は一般のパソコンが積んでいるメモリも凄い容量になっていてなかなか想像し辛い世界ですが、そう考えると納得です。

お礼日時:2008/02/03 22:35

全くその通りだと思います。



命名権は、作成者にあるのでしょう。

わたしは、「ユーマウント」とも呼んでいます。

(打ち間違わないように)

----------------------------- たか
    • good
    • 0
この回答へのお礼

ありがとうございます。
命名権が作成者にあるということで、
本当のところは作成者にしかわからないのでしょうね。
ユーマウントと呼ぶのはわかりやすくていいですね。

お礼日時:2008/02/03 22:37

>それともそもそもunmountという意味では無いんでしょうか。


そういう意味です。

そのような「不自然に」名前がつづまっているのは、
むかーしのファイルシステムのファイル名の長さの制限が短かかったとか、
システムコールの関数名の長さの制限が短かかったとか、
下らない理由によるものだと思います。

creat(2) とかそんな理由だったような記憶が。
    • good
    • 0
この回答へのお礼

ありがとうございます。
やっぱりunmountであってるんですね。
というのも、unmountなのにumountだというのは不思議なのに、検索してもこれに関する記述が特に無かったので。
creatを調べてみましたが、こちらは開発者がミスタイプに気付かなかったという説もあるみたいですね。

お礼日時:2008/02/03 22:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!