Linuxの/ usrおよび/ tmpディレクトリでスペルの母音が欠落しているのはなぜですか?


34

私はこれについてよく考え始めましたが、良い答えは見つかりませんでした。なぜ、これらの二つのUnixのディレクトリはありません/userし、/temp代わりに?

下の他のすべてのディレクトリroot1のようにそれらを推測正確に何のように見えるが、これらの二つは奇妙に思えるが、私はいつものようにそれらを推測しているだろうusertemp

スペルの歴史的な理由はありますか?


2
何かがそれがUnixからの持ち越しだと教えてくれます。その仮定に基づいて、ほとんどのそのような切り捨ては顕著な音節に基づいていると思います。
ケン

17
かつて、ケントンプソンは、Unixを再設計する場合、何か別のことをするかどうかを尋ねられ、「私はcreat with
a

3
「ルートの下にある他のすべてのディレクトリは、自分が推測するとまったく同じように見えます」->それは私には真実ではないようです。除きboothomemediaおよびroot他のすべてが短縮されます。mnt母音もありません。
プネヘヘ

7
私は「u」は母音だと思った...
Mr. Shickadance

1
@氏。シッカダンス:そうです。
0xC0000022L

回答:


49

うん、理由がありました。それらは、ユーザーおよび臨時発音されます。passwdは、resolv.confと同様です。Unixは、ユーザーフレンドリーなエキスパートフレンドリーなオペレーティングシステムです。

300ボーモデムが標準であったとき、私は学生でした。私が働いていたControl DataのSilent 700ターミナルがあったので、私は仲間の学生のen望の的でした。各文字を入力し、エコーが返されるのを待つことで遅延が発生する場合があります。すべての文字がカウントされます。私はまた、それがリート・スピークの始まりを促進していると考えています。

viのhjklには、ほとんど知られていない歴史があります。viは、同じ年にUCBの大学院生だったビルジョイによって開発されました。Cory HallのADM 3a端末には、これらの文字の上に矢印キーがありました


22
それが設計されたとき、「専門家にやさしく、ユーザーに敵対的である」という考えが目標の一部であったとは思いません。むしろ、すべてのユーザー専門家であったため、意味のある区別はありませんでした。
mattdm

7
LOL「Expertyフレンドリー、ユーザーアンタゴニスト」。良い一日にしてくれた。+1!
ニコ

5
ほんの小さなメモ(決して修正ではありません)。「ユーザー」と発音されることもありますが、/ usrは「ユニバーサルシステムリソース」または「unixシステムリソース」を表します。いずれに
せよ

20
/ usrが作成された時点では、その意味はユーザーであり、ホームディレクトリはそこにありました。unix / universalシステムリソースは、実際には略称です。
jlliagre

2
Unixが登場したとき、300 bpsは青々としていました。そこには75 bpsのリンクがあり、扱いにくく、遅く、電気機械的なテレタイプライター(多くの場合、Teletype®ASR-33)によって処理されていました。
アレクシオス

20

それらはUnixからの持ち越しです。メモリとディスク容量が不足していました。いくつかの母音やその他の略語をハックすると、本当に節約できました。いくつかのディスクブロックまたは数バイトは、プログラムを実行できるかどうかの違いを意味する可能性があります。(プログラムを実行する前に、24バイトずつトリミングする必要がありました。)

また、トムは端末の速度が遅いと述べたように。1200ボーが高速として導入されました。私は、コンソールとしてハーフスピードテレタイプ(55ボーまたは5 cps)を使用する1つのシステムを使用しました。

グラフィカルインターフェイスを実行しているシステムでは、平均的なユーザーがシステムをいじくり回すことはほとんどないので、通常はそれほど重要ではありません。通常、ディレクトリはhierマニュアルページに詳しく記載されています。

長い名前に変更すると、既存のプログラムで多くの問題が発生します。また、スクリプトの移植性も制限されます。同じディレクトリに複数の名前をリンクすると、役立つよりも混乱する可能性があります。

編集:Unixが開発されたPDP-7の基本構成は、メモリ4KW、最大32KWでした。18ビット幅の単語。入力はテレタイプであったため、速度はおそらく110ボーまたは10cpsでしたが、おおよそ100ワードであり、音声よりもかなり低速です。


8
mmory nd dsk spcは購入しませんが、tltypsは遅いです。あなたがdcphr thの頭字語をcnしている限り-なぜですか?
ユーザー不明

@user unknown:あなたは若いので、メモリやディスク容量を心配する必要はありません。私の最初のコンピューターは現在30歳です-仕様に驚嘆してください。

1
ファイルシステムを詳細に記述したり調べたりしたことはありませんが、ファイルシステム内のファイル/ディレクトリの名前は、1文字に応じて多少のスペースを占有しますか?ファイル自体は常にあるサイズの倍数を占めています-今日では4kです。そのため、/ usrまたは/ tmpへのパスを含むほとんどのファイルは、単一のに応じて効果的に小さくも大きくもなりませんe。まあ-時々彼らはそうなり、その後、彼らは全体のブロックサイズのために成長しますが、めったにありません。そしてRAMに?知りません。
ユーザー不明

1
また、入力するのが面倒でした。「temporary vs tmp」ugh ...なぜもっと長くしたいのですか?
xenoterracide

4
現代のUnixディレクトリには可変長のエントリがあります。Research Unixに戻ると、ディレクトリエントリは固定の16バイトでした。ファイル名は14、inode番号は2です。また、/ usrなどが正規化されたときは、より小さくなった可能性があります。
ギーコサウルス

5

誰も/userまだコメントしていないことに驚いています。これは明らかです。「ユーザー」ではないため、「ユニバーサルシステムリソース」です。

については/tmp、単に短く、入力しやすいです。Cプログラマは、プログラムで何度も入力することになるため、可能な場合は短い名前を使用する習慣があります。同じ理由で、「temp」ではなく「tmp」という名前の一時変数が非常に一般的です。forループでは、「index」または「counter」の代わりに「i」iを使用します。


22
/ usrが作成された時点では、その意味はユーザーであり、ホームディレクトリはそこにありました。unix / universalシステムリソースは、実際には略称です。
jlliagre

3
@jlliagre素晴らしい。実際にその信頼できるソースを持っている別のスレッドを見つけました。us.generation-nt.com/answer/...
ショーンJ.ゴフ

2
初期のCプログラマーのほとんどは、最初のFORTRANプログラマーでした。Fortran IVで整数を入力する方法は、識別子を「i」から「n」までの文字で開始することで、それ以外はすべて実数でした。したがって、ループインデックスは通常i、j、またはkでした。科学プログラマーが当時マングリングしていたマトリックスにはこれで十分でした。
トムマーフィー

@ TomMurphy、Cで始めたほとんどの人は、おそらくアセンブリ言語プログラマーか、おそらくBCPLまたはBユーザーでした。RATFORは、きちんとした言語を持っていない貧しい人々のために考案されました。KernighanとPlaugherの本「ソフトウェアツール」はRATFORで書かれています(そして、完全なプリプロセッサをリストしています)。まだ読む価値があります。
フォンブランド

1
/usr「Universal System Resources」ではなく、実際にはuserでした。Youtube:AT&T Archives:The UNIX Operating System(1982年頃に作成)を参照してください約13分35秒で/usr/bwk「user-bwk」と明確に発音さ/usrれ、Brian W. Kernighanによって「slash-user」と発音されます。/ usrは、図の13分30秒のホームディレクトリを含む場所であることも明確に示されています。私はあなたがそれよりはるかに権威を得られるとは思わない。
CVn

4

誰も言及していない要因は、当時のキーボード技術を考えると、入力しやすい短い名前を使用することには大きな利点があったということです。印刷user対をusr、さえ110-BPSのテレタイプで、おそらく大きな問題ではなかったです。その余分な文字を入力する必要があるのは、おそらくもっと重要だった。


1

ルートの下にある他のすべてのディレクトリは、推測されるとおりのものであるように見えますが、

/ var、/ mnt、および/ optもあります;)

しかし、これら2つは奇妙に思えますが、私は常にそれらをユーザーおよび一時として推測していました。

ほぼそこに。ショーンが言ったように、「ユーザー」は「ユニバーサルシステムリソース」の略です(Googleによると他のリソースは「Unixシステムリソース」の略です)。

スペルの歴史的な理由はありますか?

ショートカット、略語。どのオペレーティングシステムのコマンドも、インタラクティブおよびプログラムの両方にアクセスするためのものであることに注意してください。特に、高速スクリプトが主な関心事の1つであるシステム管理の場合、略語、ニーモニックは、完全なスペルの単語/コマンドよりも優れています(さらに優れています)。

また、昔のように、糖蜜のように遅いモデムを介してリモートで接続し、ここで母音をいくつか剃ると、生活が楽になります(または、システム管理者が地獄のことを調べようとしていた場合、悲惨さは減ります)リモートボックスでは間違っています。)

前述のとおり、これは/ usrおよび/ tmpに固有のものではありません(/ var、/ mnt、および/ optを参照)。

また、Unixに固有のものではありません。DOSを例にとります(例:chkdsk)。母音を剃るニーモニックは強力で便利な概念です。

自然言語(セム語など)でも、概念が存在します(単語のルートは、3子音グループによって普遍的かつほぼ明確に識別されます)。これは、情報を管理するための人間の生来のメカニズムです。


/ var、/ mnt、および/ optは後で登場しました。ただし、/ bin、/ dev、および/ etcは非常に初期のUNIXにあり、同じ理由で、ttyが低速であり、すべてがCRTとディスクスペースではなかったためです。紙テープ、小さな(スペース的に)高価なドライブとさえ8"フロッピーを使用してそこにUNIXのブートシステムがありましたそれらのためのスペースが限られた。。
Arcege

1
記号言語は実際に子音を使用するのではなく、不定母音の音節を使用すると主張することができます。そのため、特定の母音は文法的な意味を追加しますが、ルート音節は意味的な意味を提供します。
ninjalj
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.