LinuxがLFを改行文字として使用するのはなぜですか?

LinuxがLFを改行文字として使用するのはなぜですか?

私が知っている限り、すべてのオペレーティングシステムはEOL(行末)文字を表示する方法が異なります。商用オペレーティングシステムでは、EOLにキャリッジリターンを使用します(Windowsではキャリッジリターンと改行、Macでのみキャリッジリターン)。一方、LinuxはEOLを実装するために改行文字のみを使用します。

LinuxがEOLでキャリッジリターン(ラインフィードのみ)を使用しないのはなぜですか?

ベストアンサー1

CRLFWindowsはMS-DOSから継承されているため、これを使用します。

MS-DOSはCRLFすでに使用中であるため使用しますCRLF

CP / Mと80年代以前の多くのオペレーティングシステムは、テレタイプライターCRLFに印刷された行を終了する方法でした(通常のタイプライターのように行の先頭に戻り、次の行にジャンプ)。これは、前処理があまり必要ないし全く必要ないので、ファイルの印刷を簡素化する。個々の文字の使用を防ぐ機械的要件もあります。一定期間必要になるかもしれないキャリッジリターンとプラテンの回転を許可します。

Gnu/Linux はLFUnix なので使用します。クローン1

LFUnixはスペースを節約し、正規行末に正規化するために最初から単一の文字を使用しました。両方の文字を使用することは非効率的であいまいです。このオプションは、1964年初めに使用されたMulticsから継承されました。メモリ、ストレージ、CPUのパフォーマンス、帯域幅はすべて非常に希薄なので、1行あたり1バイトを節約することはそれほど価値があります。ファイルを印刷すると、ドライバは改行文字(改行文字)をターゲットデバイスに必要な制御文字に変換します。

LFCR後者は依然として特定の用途に使用されるので好ましい。すでに入力した文字は、印刷された文字を同じ行の先頭に再配置することで上書きできます。

Appleはもともと単一の文字も使用することにしましたが、何らかの理由で別の文字を選択しましたCR。 BSDインターフェイスに切り替えながらLF

これらの選択は、オペレーティングシステムが商用であるかどうかには関係ありません。

1あなたの質問に対する答えです。

おすすめ記事