- ベストアンサー
OSって作れるんですか!?
こんにちは、高1で最近何かやりたいと思っていて、ふと思ったのがWindowsってどうやってできているのだろうでした。プログラミングなどはやったこともなく初心者なのですが、自分で作れるのならやってみたいと思いました。前置きが長くなりましたけど、OSって作れるんですか?また、どうやって作るのですか?ゲームなどと作り方は似ているのですか?どのプログラミング言語を使えば良いのですか?OSを作る関係の書籍やサイトなどあったら教えてください。長くなってごめんなさい
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
いい視点だと思いますよ! いくつか日本発のOSプロジェクトが存在しますが、その中でも一番有名(独断と偏見よりw)なのは、「Mona」という2ちゃんねるから開発がスタートしたOSだと思います。 まだまだ開発途中ですが、中身が理解できなくても、い赤の本を読んでみて損はないかと思います。 ちなみに、言語を勉強するなら、C言語かアセンブリがいいとおもいます。
その他の回答 (5)
- ultraCS
- ベストアンサー率44% (3956/8947)
フルセットのは、とても一人では無理でしょうが、モニタに毛の生えた程度のものなら、ちょっと知識があれば作れます。 大学出て最初に入った会社の実習でチームを組んでやらされました。 ターゲットは、シャープのX1で、すべてザイログのニーモニックを直接書きました。クリーンコンピュータなので、ブートをトラップしてロードする仕組みも割と簡単に作れました。 これに、ブートローダーを作り、デバイスドライバを追加すれば、一応OSです(簡単すぎる言い方ですが)。このときはドライバはHuBasicのもの(Hudson製)を流用しました。 このあと、Forthのインタープリタを作って遊びました。今は馬力不足でとても出来ないでしょうね。 現在のPC用でも、シンプルなのであれば、作れないことはないと思いますが、デバイスが多いのと、CPUのモードを管理しなくてはならない(RealモードOnlyと言う手もあるけど)、BIOSの詳細が書かれた資料が入手困難など、ハードルは高いでしょう。 なお、OSの記述言語は、カーネルの記述ではリアルモードのアセンブラ、カーネルから上はCやマクロアセンブラで書かれると思いますが、ALGOL(Buggoughs)やOccam(Inmos)などを使った例もあるようです。 勉強であれば、リアルタイムOS(iTRONなど)の書籍を読んでみると良いと思いますよ。
- Pesuko
- ベストアンサー率30% (2017/6702)
アプリレベルとOSレベルでは格段にスキルが違います。 適当なアプリ作れる人間でもOSは別格。 まずアプリ製作から入る事をお勧めします。 世界的なOSのカーネル(核部分)は極一握りの天才と呼ばれる人が作っています。 http://www.ascii.co.jp/100satsu/yomimono/yomi_001.htm
- ymmasayan
- ベストアンサー率30% (2593/8599)
コンピュータの初期にはOSというものはありませんでした。 8kバイトくらいのメモリーのハードを与えられてその中にスイッチで 命令やデータを2進数で書き込んでいました。 そのうち、ドライバーが出来て小さなOSが出来て・・・。 今ではOSも巨大になり、おそらく数千人が協力して開発していると思います。 OSはアセンブラ、C言語で書くのが普通です。 OSに興味が有るのなら、手始めにコンパイラを作ってみてはいかがですか。 言語仕様は自分で勝手に決めて、言語名も自分の名前をつけて。 あと、今のPCはOS以前にマザーボードやBIOSなどで複雑なので、 作るならマイコンのOSがいいと思います。
- Selfishness
- ベストアンサー率29% (29/99)
今、皆が使っているOSはどこからきたのでしょう? 誰かが作ったんだとしたら、OSは作れるってことですよ。 誰かが作れたなら、disney24さんにも作れるかもしれないということです。 どうやって作るか、どの言語を使うかはdisney24さんの発想力と努力が物を言います。 どの言語を使っていいかわからなければ、disney24さんが作ってしまえばいいのです。 書籍、サイト等は目に付くもの全て読み尽くして吸収してやる!くらいの勢いで勉強してみたらいいと思うよ。 たまに息抜きも忘れずにね。
プログラミング未経験で作るのは無理ですね。 ちなみに2ちゃんねるで独自OSを作っている人がいるはずです(本出版済) ちなみにLinuxの元はフィンランドの大学生が作ったモノで、それを世界中でよってたかって組み立てていったモノですね