「30日間の自家製オペレーティングシステム」(Shi Shikawa)リーディングノート
この本は、わずか80kbのOsaskと呼ばれる単純なオペレーティングシステムを実装しています。レンダリングは次のとおりです

最初は、まず「1つのパワーオンで実行できるプログラム」の書き方を検討する必要があります。この部分はC言語で書くのが少し難しいため、主にアセンブリ言語で書かれています。このステップが完了した後、次のステップは、ディスクからオペレーティングシステムを読み取るプログラムを作成することです。現時点では、コンピューターがオンになっていても、すべてのオペレーティングシステムを自動的に読み取ることはありません。ディスク上の最初の512バイトのコンテンツのみを読み取ることができるため、ローダーの残りの部分を記述する必要があります。このプログラムは、アセンブリ言語でも記述する必要があります。このステップが完了すると、将来のプログラムはC言語で記述できます。できるだけ早くC言語を使用して、画面を表示するプログラムを学習および開発します。同時に、私たちは徐々にC言語文法に精通することができます。現時点では、私たちはやりたいことをしているようですが、実際、私たちはまだC言語を自由に操作することはできません。次に、「モバイルマウス」の野望を実現するには、CPUで詳細な設定を作成し、割り込みハンドラーを書き込む方法を習得する必要があります。全体として、この部分は非常に高いレベルの部分であり、著者はまたここに置くのは不適切だと考えていますが、本の観点からは、これらの内容はここに置かなければならないので、私は皆に我慢するように頼まなければなりません。ここでは、CPU仕様と複雑なコンピューター仕様があらゆる種類のトラブルをもたらします。さらに、開発言語にはCとアセンブリ言語の両方が含まれているため、さらに大きな混乱が生じています。現時点では、やりたいことをまったくやっているとは思わない。私たちがそれをどのように見ても、私たちは「他の人の慈悲にいる」ようです。この痛みを伴う期間の後、最初の週は終わりました。
一週間のハードバトルはまだ非常に意味があります。振り返ってみると、私たちは多くを達成したことがわかります。現時点では、基本的にCの文法を習得しており、アセンブリ言語のレベルでさえこの本の要件を満たすことができます。そのため、まともなオペレーティングシステムの開発を開始できます。しかし、今回はアルゴリズムについて再び頭痛がします。プログラミング言語の構文を習得したとしても、良いアルゴリズムがわからない場合でも、必要なオペレーティングシステムを開発することはできません。そのため、今週はアルゴリズムを学習しながらオペレーティングシステムをゆっくりと開発します。ただし、この段階では、基本的に技術的な問題によって制限されなくなると感じることができます。
現在、私たちのテクノロジーはすでに非常に強力であり、私たちが好きなように独自のオペレーティングシステムを開発することができます。まず、マルチタスクをサポートし、コマンドラインウィンドウを作成してから、アプリケーションの開発を開始する必要があります。今週の終わりまでに、たとえそれが十分に完了していなくても、オペレーティングシステムと呼ばれるソフトウェアを思いつくことができます。
この段階では、オペレーティングシステムにさまざまな機能を最大限に追加でき、同時に多数の適切なアプリケーションを開発できます。私たちはこの段階で良い仕事をすることができました、そして、これは私たちにとって最も幸せな時期かもしれません。この部分で説明するコンテンツはほとんどないので、それらの言葉を書いて説明するために骨の折れる努力をする必要はありません。すべてのエネルギーをプログラミングに集中できます(笑)。ちなみに、テキストについて話すとき、オペレーティングシステムがテキストを表示できるのはこの期間中であることを覚えています。