オペレーティングシステムの作成は(特に自分で)耐えられないほど複雑であることを私は知っているので、これは無駄かもしれません。
次のLinuxやWindowsを構築するつもりはありません。
私はそれが恐ろしくてバグがあり、うまくいかないことを知っていますが、それは問題ありません。
私はすべてを自分で、 Assembly、C、および(一部の)C++で記述したいと思います。
今は忙しくてすぐに時間がないので、これは将来のプロジェクトですが、今すぐ聞いてみようと思ったので、たくさんの答えが得られるかもしれません。構築し、この種のアプローチに役立つリソースになります(minixからの構築、既存のブートローダーの使用、仮想ブートプログラムでの構築など、これまでに見たすべてのこと)。
古いデスクトップの1つにモニター、キーボード、マウスをセットアップして、空のハードドライブで作業を開始したいと思います。
自分のブートローダー(これについてはたくさんのリソースを見つけましたが、完全を期すために、まだいくつかの良いものを追加してください)、自分のUSBドライバー(必要な場合)、CDドライバー(必要な場合)の書き方を学びたいです。 )など。すべて、ゼロから。
コードをコンピューターに配置するにはどうすればよいですか?フロッピーディスクでそれを行うのが最善ですか?ほとんどのコンピューターはUSBスティックからそれを行うことができますか?
どのドライバーが必要ですか。それらを構築するための参照を提案できますか?
起動シーケンスの後-それでは何ですか?プロテクトモードなどに入るにはどうすればよいですか。
オペレーティングシステムを使用せずにメモリを管理するにはどうすればよいですか?好きなアドレスを使うだけですか?初期化は必要ありませんか?
私は間違いなく私を混乱させるものに遭遇しますか?
コマンドラインO/SとグラフィカルなO/Sのどちらかにするにはどうすればよいですか?
グラフィカルなO/Sは何に基づいていますか?たとえば、コマンドライン、フォント、画像を上部に表示するにはどうすればよいでしょうか。
マルチタスク環境の設定についてどこで読むことができますか?(つまり、2つのグラフィカルなコマンドラインを並べて実行します)。
ある種のウィンドウシステムをどのように設定しますか?単純なマルチタスクを設定した後、画面にグラフィックを表示するにはどうすればよいですか?
私を信じてください、私はこれが非常に複雑なプロジェクトであることを理解しています、そして私はおそらくそれを完成させたり、どんな用途でもそれに何かを書いたりすることは決してないでしょう。
これには、私が言及していない他の多くの部分があります。何か考えられる場合は、それらも自由に追加してください。
回答ごとに1つの「トピック」を入力してください。たとえば、USBドライバーを入力してから、リソースのリスト、注意事項などを入力してください。
また、別のO/Sまたは既存のコードから構築することを提案しないでください。私は多くの既存のコード(Linuxカーネル、サンプルリソース、既存のドライバーなど)を読むことを知っていますが、最終的にはすべて自分で書きたいと思っています。私は何か他のものから構築する必要があることを知っています、そして私が気が変わってそのルートに行くならば私が読むことができることについてSOについて他の多くの質問があります。しかし、これはすべてゼロからすべてを行うことです。
グラフィカルにする方法について何か提案はありますか?さまざまなビデオモードとそれらの操作方法など?