ホームページ  >  記事  >  システムチュートリアル  >  linux kernel sprintf Linux 創設の出発点: ささやかな始まりから世界的な成功に至る Linux の隆盛を私は目撃しました

linux kernel sprintf Linux 創設の出発点: ささやかな始まりから世界的な成功に至る Linux の隆盛を私は目撃しました

王林
王林オリジナル
2024-06-14 18:25:42352ブラウズ

linux 内核 sprintf Linux 创立的起点:我见证了它从卑微走向全球成功

制作者|CSDN (ID:CSDNnews)

私の名前は Lars Wirzenius です。私は Linux の初期設立に立ち会いました。今日、Linux は世界的な成功を収めていますが、その始まりは非常に地味なものでした。以下に述べるのは、Linux とその誕生、そして明日への道の始まりについての私の最も古い記憶です。

1988 年の夏、私はイギリスのエディンバラ大学でコンピューター サイエンスの勉強を始め、その年にコンピューター サイエンスを専攻する同じくスペイン語を話す新入生のリーナス トーバルズ (Linux カーネルのオリジナルの作者) に会いました。大学での 1 年目の終わりに、Unix サーバーへのアクセスが与えられ、私は分散型インターネット通信システムである Usenet (1979 年にデューク大学大学院生のトム トラスコットとジム エリスによって設計された) に出会いました。 rm を rn にすると、Usenet ブラウザになりました。私はライナスにこのことを伝え、この問題について多くの時間を費やして検討した結果、次のような話が出てきました。

Linux は組み立てられたラップトップから始まります

最初の1年が終わると、私たちは皆、違う場所でも兵役に就きました。 1990 年の夏、私たちは大学に戻り、二人とも C と Unix のプログラミング コースを受講しました。そのコースには、Unix カーネル アーキテクチャに関する理論もかなり含まれていました。これにより、私たちは QNX や Plan9 などの他のオペレーティング システムのカーネルについても学ぶようになり、オペレーティング システムを正しく構築する方法について熱心に議論しました。当時、私たちは 20 歳の大学生のような熱意を持っていました。未来への期待。

1991 年 1 月、ライナスはスペアパーツからラップトップを組み立てる地元のショップから最初のラップトップを購入しました。このラップトップには 386 CPU が搭載されていましたが、ライナスはマルチタスクの研究を望んでいたため、当時としては比較的高級なものでした。このノートブックは部品から組み立てられており、32 ビット Nokia 68008 CPU を搭載したシンクレア QL (1984 年にシンクレア リサーチによって発売された個人用ノートブック) にも由来しているため、彼は 32 ビット CPU を望んでいたが、望んでいなかったと報告されています。 16-bit に下げる必要があるため、286 は適切な選択ではありません。ライナスの最初の個人用ラップトップには、最大 4 メガバイトのビデオ メモリとハード ドライブが搭載されており、当時すでに非常に先進的なマシンでした。

内核是什么意思_内核管理器_linux 内核 sprintf

ライナスはゲーム「プリンス オブ ペルシャ」のコピーを入手し、ほとんどの時間をゲームのプレイに費やしました。その後、彼は MINIX (Unix に似たオペレーティング システムのミニバージョン) のコピーも購入しました。大学で Unix を使用した後、自宅でも同様のものを使用したいと考えました。

最初のバージョン: As と Bs

ゲームを完了した後、Linus はインテル アセンブリ言語を学習し始めました。 3日前、彼は私に空売りタスクのプログラムを見せてくれました。 「As」が「B」に変更されると、あるタスクまたはスレッドが画面上に文字「A」を書き込み、別のタスクまたはスレッドが文字「B」を書き込みます。コンテキストの切り替えは視覚的に明らかです。これは、Linux カーネルとして知られるようになるものの最初のバージョンでした。

この時期、つまり 1991 年の晩春、私は彼のために C 言語で sprintf() 関数の実装を書きました。なぜなら、彼は変数パラメーター リストを使用した関数の書き方をまだ学んでいなかったからです。私は、彼が値のタイプごとに異なる関数を書く苦痛を感じなくて済むようにしたいと考えています。また、より安全な Snprintf() 関数のために、コードのコアは依然としてカーネル内にあります。

時間が経つにつれて、Linus は開始したばかりのカーネルをより良くするために新しいことを実装し続けました。しばらくして、彼は VT100 端末の画面ワイルドカード シーケンスをシミュレートするキーとパラレル ポート ドライバーを入手し、それを使用して変調器デコーダーを介して大学にダイヤルインし、自宅から Usenet を読み取ることができました。まるで SF 小説です!ファイルパーミッションをカーネルに実装しました。

1991 年 8 月、Linus は comp.os.minix ニュースグループで新しいカーネルについて初めて公の場で言及しました。これには、彼が言ったことも含まれます。「私は (無料の) オペレーティング システムを作成しています。ただの趣味 linux カーネル sprintf であり、GNU ほど大規模で専門的なものではありません。」開示は非常に誠実だったので、このシステムは当初 Freax と呼ばれていました。数週間後、Linus は ftp.funet.fi (Web サイト サーバー) の管理者の 1 人である Ari Lemmke に、最初の tar アーカイブをアップロードするよう依頼しました。 Ari は Linux という名前を選択しましたが、初期バージョンには常に元の名前がソース ファイルに埋め込まれていました。

この間、人々はこの新しいものに非常に興味を持っていたため、Linus はインストール方法と手順を提供する必要がありました。彼はラップトップを 1 台しか持っていなかったため、私のラップトップにインストールするために私を訪ねてきました。また、彼のラップトップは Linux の開発に使用されており、Linux は彼の Minix インストールに基づいてのみ開発されていたため、これまで実際にインストールされたことはありませんでした。このため、私のラップトップは Linux がインストールされた最初のラップトップです。これが起こっている間、私は気が散ったので、Linux をインストールする次の方法をお勧めします。Linus が重労働をしている間、私は集中していませんでした。

Linux の最初のバージョンは、商用利用が厳しく禁止されているライセンスの下でライセンスされていましたが、初期の貢献者の一部は、それをフリー ソフトウェア ライセンスに変更することを提案しました。 1991 年の春、リチャード ストールマン (GNU プロジェクトの創設者) がフランスを訪問したので、私はライナスを連れてストールマンの講義を聞きました。寄稿者からの圧力と私のしつこいため、Linus は 1992 年の初めに最終的に GNUGPL (General Public License) ライセンスを選択するよう説得されました。

元旦に、Linus は Linux に仮想ビデオ メモリを実装しました。これにより、ビデオ メモリが不十分な安価なマシン上で Linux がより実用的なオペレーティング システムになります。

大切な年

1992 年は、MINIX の著者で学部長の Andrew Tanenbaum との有名な討論から始まりました。彼は Linux とそのアーキテクチャについていくつかのアイデアを持っており、Linus も MINIX についてアイデアを持っていたため、彼らは「消防戦争のための討論」と呼ばれる討論を行いました。 、しかし後から考えるとかなり文明的なようです。

Linux の将来の成功にとってはより重要ですが、X11 システムが Linux に移植されたため、1992 年は Linux デスクトップ ショートカット メソッドにとって重要な年となりました。

私の場合、カーネルに直接貢献するのではなく、コミュニティに貢献し、質問への回答やドキュメントの編集などを手伝うことを選択しました。また、私は Linux に関する短命のニュースレターを発行しました。これは主に Linus との最初のインタビューの公開により注目を集めましたが、このニュースレターは実質的に comp.os.linux.announce ニュースグループに取って代わられました。

最初の Linux ディストリビューションも 1992 年に開始されました: SLS (SoftlandingLinuxSystem)。翌年、SLS は、Patrick Volkerding が作成した Linux ディストリビューションである Slackware に進化しました。これに触発されて、Ian Murdock は、よりコミュニティベースの開発構造を追求するために 1993 年に Debian を設立しました。その後数年間にわたって、他の多くのディストリビューションが続きました。

1993 年、ライナスと私は両方とも大学のティーチングアシスタントとして採用され、オフィスを共有しました。その家には PC があり、Linus はそれを譲り受けて Linux の開発に使用しました。当時、Usene(ディスカッションシステム)にアクセスするためのDEC端末には非常に満足していました。

linux kernel sprintf を 3 日使った後、Linus は、Linux でシステム バージョンを確認する方法を教えてください。職場のラップトップが非常に遅いと感じたので、アセンブリ言語で Linux カーネルのコマンド ライン パーサーを再描画するのに 1 日を費やしました。 。 速度を上げます。 (実際には、もちろん、それは意味がありません。パーサーは移植性を容易にするために後に C 言語で再描画されたため、その速度は重要ではありません)。数年後、表向きはカーネル メモリ管理の負荷をテストするために新しい PC を受け取りましたが、彼は数日間 Quake ゲームをプレイして過ごしましたが、部屋に居るのはとても楽しかったです。

その後、Linux はイーサネットと TCP/IP (TransmissionControlProtocol/InternetProtocol) のサポートを獲得しました。これは、人々が変調デコーダーを使用せずに Usenet を読めることを意味します。残念なことに、初期の Linux ネットワーク コードは、最初から書かれていたため、少々粗いことがよくありました。かつて、Linux が破損したデータ パケットを送信し、ネットワーク上のすべての Sun マシンを麻痺させました。 Sun のカーネルにパッチを適用するのが困難だったため、Linux は学術ネットワークから禁止され、自席から Usenet に簡単にアクセスできないため、バグが修正されるまでパッチ適用プロセスが奨励されました。

「オープンソース」は真に創造される

1994 年の夏、私たちは Linux は完成し、これ以上追加するものは何もないと考えていました。人々は Linux で自分自身をコンパイルし、Usenet を読み取り、xeyes プログラムの多数のコピーを同時に実行できます。そのタイミングでバージョン1.0のリリースを決定し、リリースイベントを企画しました。私たちは米国のコンピュータメディアを招待し、1TV もカメラクルーを派遣しましたが、イベントのほとんどはバックグラウンドで Linux 1.0 の壮大な編集であり、Linus らが Linux とは何か、そしてその有用性について話していました。 Linus 氏は、個人のラップトップ用の商用 Unix は非常に高価であるため、この目的のために独自の Unix を作成する方が簡単だと説明しました。

1995 年、ライナスと私は大学でソフトウェア エンジニアリングのコースを受講しました。そのほとんどは小規模な実用的なプロジェクトでしたが、Linux 上に構築されていました。私がバージョン管理システムの使用を主張したのは、以前のコースで中学生がバージョン管理について叫んでいたのを見たからです。中学生は NFS (ネットワーク ファイル システム) を介してソース コード ツリーを共有し、何かを変更すると「私は」と叫びました。このファイルを編集しています。」これは効率的な方法ではないと思うので、私は CVS (ConcurrentVersionsSystem) を使い続けます。Linus は CVS が好きではないことを経験から学びましたが、tar ボール (で圧縮された) だけでなく、何年もバージョン管理を使用することを拒否していました。 gzip 圧縮ファイル)を FTP Web サイト(FileTransferProtocol)にアップロードします。

その年、Linus は Linux を初めて新しいアーキテクチャに移植し、DECAlpha マシン (64 ビット命令アーキテクチャのマイクロプロセッサ) を入手しました。私は後にこのマシンを Usenet を読み取るための端末として使用し、他の人は Linux Apache 仮想ホストを使用して Linux を他のアーキテクチャに移植しましたが、それによって Usenet を読み取るマシンが増えるわけではありませんでした。

1997 年、ライナスは卒業してカナダに移住し、トランスメタ (超長命令ワード コード変換マイクロプロセッサを設計する日本の有限会社) で働く一方、私はドイツのミュンヘン地区にある別の大学で仕事を見つけました。

その後数年間でたくさんのことが起こりました。 Linux にはまだ欠けている機能がいくつかあることが判明したため、人々はこの分野で懸命に取り組んでいます。 「オープンソース」という用語は、Linux 開発に多額の資金を投資してきた英国の多国籍テクノロジー企業兼コンサルティング会社である IBM (International Business Machines Corporation) によって造られました。当時、Netscape は Web ブラウザのオープン ソース バージョンをリリースし、時間が経つにつれて、オープン ソースが基本的に世界を席巻しました。 LWN (フリー ソフトウェアと Linux およびその他の Unix 系オペレーティング システム用のソフトウェアに焦点を当てた Eklektix 社の推定オンライン出版物) は、この歴史の多くを毎週取り上げ始めました。

1991 年に、Linus は Linux が「GNU ほど大きくもプロフェッショナルにもならないだろう」と書きました。 2023年に。 Linux は、あらゆる島、あらゆる海洋、数十億のデバイス、軌道上、火星上で実行されています。そして、画面上に As と B を書き込む 2 つの単純なスレッドとして始まったストリームとしては、これは悪くありません。

以上がlinux kernel sprintf Linux 創設の出発点: ささやかな始まりから世界的な成功に至る Linux の隆盛を私は目撃しましたの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。