「OS自作入門」

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2006/07/07(金) 00:40:20
・著者:川合秀実
・定価:3,990円(税込)
・B5変型判 722ページ
・ISBN4-8399-1984-4
・発売日:2006年02月28日

■内容紹介
プログラミングの基礎からはじめて、
30日後にはウィンドウシステムを有する32bitマルチタスクOSを
フルスクラッチで作り上げるという入門書。

ビギナーでも無理なく作成できるよう
PCの仕組み・アセンブラ・Cの解説から始まり、
試行錯誤を繰り返しながらアルゴリズムを学びつつ、
たのしく自由な雰囲気でOSをゼロから構築していくという、
他に類を見ない手法による、趣味と実用と学習を兼ね備えた
OS作成の入門書です。

2006/08/25(金) 22:04:36
>>133
ヒント:コスト
2006/08/25(金) 23:48:04
ClearSpeedなら96並列演算できるが、ボードもSDKも定価は200万だった希ガス。
Xtrillionなら96並列orベクタ演算できるが、SDKは未だなかった希ガス。
FPGAボードもあるけどこれまた安くないし……
2006/08/25(金) 23:55:47
大学の実習でFPGAに触って、興奮してるんでしょ。
137109
垢版 |
2006/08/26(土) 02:29:05
みなさんどうも。
低コストで早い演算を・・とおもいここに書き込んだんですけど、
なかなかそう都合のいいものはないんですね。
マルチタスク→割り込み頻発で速度遅い シングルタスク→割り込み少なくて速度はやい
っていうのは、昔の発想だったのかな?

MS-DOS + 32bit DOS Extenderというのも確かにありかと思いますが、
今のマシンで動くMS-DOSというのはあるのでしょうか?(動作保障外だったと思うのですけど、動くことは動くのかな?)
DR-DOSなんてのも昔あったような記憶が。。探してみようかな?

PS3に個人向け開発環境がでたら、それも選択肢かと思うんですけど、PS2の時の二の舞開発環境ならダメですしw
そもそもPS3に個人向け開発環境が出るのかもまだ分かりませんし。

色々どうもありがとうございました。(ぺこり)
2006/08/26(土) 04:04:31
>>137
>今のマシンで動くMS-DOSというのはあるのでしょうか?
つ FreeDOS

DOSを起動させるだけでいいのなら、WinXPで「MS-DOSの起動ディスクを作成する」に
チェックを入れてFDをフォーマットするだけでおk
2006/08/26(土) 18:11:20
FPGAのスタータなんて3万も出せば買えるが…。
80MHzって言ってる時点で、スタータだろ‥。
俺はそこにお前らまじか‥。
2006/08/30(水) 16:07:38
BIOS画面で、余計なIRQ全部カット
DOSのディスク作って余計なデバドラ全部削除。

それにさ、プログラムの質でも速度はずいぶん違うんだから、
ネイティブコード見ながら改良の繰り返し。


これで我慢しれよ。



2006/08/30(水) 19:21:56
>>139
レス見ててもわかるけど、レスした奴にFPGA使ったことがある奴はいないと思う
2006/11/16(木) 12:38:35
保守
2006/12/02(土) 11:38:32
>>142
>>2
144デフォルトの名無しさん
垢版 |
2007/03/10(土) 13:48:25
安い本体買ってきて試してみようかな
エミュでもいいけど、実機で動いたほうが感動するし
2007/03/23(金) 17:35:15
この本3つに裂いて読んでるところです。
軽くなってイイ!!
2007/03/23(金) 20:57:09
>>145
古本屋に売り飛ばしたりしないんなら、この手の本はそうするのが正解かもしれんわな。
でも、図書館で借りた本でそーゆーことすんなよ。
2007/03/24(土) 00:06:03
裂き方にもよるな
文字とそれ以外に分けて裂いたり
拍子ビリビリとかにしても軽くならないし
2007/04/01(日) 11:00:24
たしかに、正直重いよこの本…
149デフォルトの名無しさん
垢版 |
2007/04/08(日) 10:09:38
つまり、付属CDにpdf版もインストールしとけ、ってことですか?
150デフォルトの名無しさん
垢版 |
2007/04/08(日) 13:03:28
>>65
ICE使うとハード壊れない?

いま、SlingShotっての使って作業してんだけど、
ハード壊れたら怖いなーと思ってる。。
気にすることないのかな?

破壊を防ぐには実行前のレビューをして責任を分散
することでしょうか?w

つか、レビューもろくにしてくれないチームなんだよな・・。

2007/04/08(日) 16:06:42
>>150
ICE使っても壊れるときは壊れるよ。
2007/04/08(日) 16:42:45
壊れるのは、
・単なるミス
 例->入力ポートに出力して過負荷になって壊れる

・他の要因
 例-> LEDのダイナミック点灯のように、止めてしまうと定格を越えてしまう場合に
  他の奴が割り込み禁止期間をそれ以上かけてしまった

とかであって、単なるミスはICEでステップ実行でもすれば防ぎやすいのかもしれないが
ICEを使ったら防げるというようなものじゃない。

逆にダイナミック点灯の停止のような問題があるとICE入れてもブレークポイント仕掛けられないしね
2007/04/10(火) 07:05:41
ブログ読んだ。
名前もメールもhariboteosだけど、
hariboteosって名前がでてくんの三日目からじゃない?
2007/04/10(火) 23:38:58
>>150
まて、そもそも >>65 はやり方に従わなかったか教えなかったのが悪いんであって
ICE使う使わないは関係無いんじゃ…
2007/05/03(木) 23:33:02
電子工作入門
2007/05/04(金) 16:03:27
この本つまんねぇww
図書館でパラ見してみたけど、「こうやってください」、「こういうものです」、「ここはこうやります」的なことしか書いてないじゃんw
「自作入門」じゃなくて、「こうやってください」じゃねぇかw
2007/05/04(金) 16:25:58
最近そういう本多いね
マニュアルやヘルプ見れば分かる内容を
なんでわざわざ劣化コピーしてまで出版するのか
売れるからなんだろうけど買う方にしてみたら騙された気分
2007/05/04(金) 16:43:12
>>156
入門書とはそういうものです。
2007/05/04(金) 21:03:36
>>157
さすがにマニュアルとヘルプから「OS自作入門」の内容を自前で書ける
人間はいないだろ。理科年表があれば自動車くらい作れるはずという位に
かけ離れている。
2007/05/04(金) 21:09:57
>>159
理科年表があっても自動車作れないの? お前、馬鹿?
2007/05/04(金) 21:51:35
むしろ理科年表見ただけで自動車作れる人間を見てみたいな。

もちろん、自動車に関する知識がある人は無しで。
2007/05/04(金) 22:30:58
疲れたから説明は後回しって、おいw
2007/05/04(金) 22:34:18
>>161
俺は、むしろ理科年表だけを材料に自動車を作れる人間を見てみたい。
2007/05/26(土) 14:28:41
俺も>>160が言うような奴を見てみたいw
もちろん>>160は作れるんだよな?
2007/06/17(日) 10:54:31
OS自作入門を市立図書館で借りてきた。
30日以内に20日目(395ページ)までの目標を達成して
どっかのアプロダにそこまでのモノをあげてやんよ
べつにそれをDLしろって言ってるわけじゃないんだからな
2007/06/26(火) 13:19:33
>>165
図書館に置いてあるのかうらやましい
正直あの本にあるやつをただコンパイルするだけでできるからなそんなん
本で紹介してるもの以外に何か機能つけるくらいしないと評価してもらえんよ
2007/07/11(水) 01:01:46
最後までセグメント一辺倒でいくのかー。
ページングに関しては紙面を割けませんかそうですか。
世の中にはx86しかCPUは存(ry
2007/07/11(水) 12:48:48
そのむかし、ページ単位で管理するのは無駄が多いとかなんとか
言ってた気がする。
その影響でしょうな。
169デフォルトの名無しさん
垢版 |
2007/07/16(月) 23:25:56
最近読みはじめたのだけど、使ってもいいメモリの位置とか結構適当なんだね。
FDに書き込まれるプログラムの位置もバイナリ直接みて判断してるけどこんな適当でいいの?
170デフォルトの名無しさん
垢版 |
2007/07/17(火) 07:22:32
>>165
UPまだ?
2007/07/17(火) 12:55:58
>>165
図書館だと一週間で返却すんじゃねの?
2007/07/18(水) 00:10:29
図書館によるでしょ
運営市区町村によって貸し出し期間は案外違う
2007/07/30(月) 22:59:12
そうだそうだ!!
おれんとこだと2週間だ
2007/08/03(金) 10:38:30
>>168
>そのむかし、ページ単位で管理するのは無駄が多いとかなんとか

昔のメモリの少ないマシンを想定しているということだろうか。
さすがにOSASKはページングなんでしょ?

著者の態度として、技術的な事は、たぶん初心者のためと思ってかなりミニマリズム
に徹している感がある反面、変なおしゃべりみたいなのがやたらあると言う...
まあ好きずきだけどな。
2007/08/03(金) 11:23:25
>>174
普通にセグメントになってます。
2007/08/03(金) 23:27:12
>>175
え、そうなんだ。
OSASKの解説をwebでちら見すると... 確かに、メモリ保護の観点では
セグメントはいいのかもしれない。
ただ、いまどきのOSには大抵ある仮想記憶の各種最適化方法はページングなくして
は使えないような... セグメントなりのやり方があるのかな?
2007/08/14(火) 16:29:24
夏休みだから、久しぶりに読んでみようかな。
去年の秋に、自室が狭いんで、ベランダにビニール袋に包んで放置したままだったから。

時々無性に読みたくなる時もあったけど、面倒臭さには勝てなかった。
2007/08/18(土) 15:01:50
これアセンブラが独自じゃなかったら最高だったのに
2008/01/11(金) 23:30:33
立ち読みしてて、もれなく付いてきますとか書いてある所まで読んだ。
読んでて嫌気がする文が所々にあった。
2008/03/04(火) 02:42:29
低年齢向けだもの
2008/03/04(火) 02:59:04
>>178
ML見てたら、「規格は重要だと思わない。守る必要はない。」とか言ってるか
ら、独自技術症候群の方なんじゃないの。
2008/03/04(火) 08:40:37
gasはx86アセンブラとしては使い難い。
せめてnasmを使いたいところだし、
アセンブラぐらい自作でもたいしたことはない。
2008/03/20(木) 18:19:46
メモリの上限調べるの、あんなやり方でいいのだろうか?

実装範囲を越えたらリピートイメージが読み出されたり
バスエラー起きたりしないのかPCAT互換アーキテクチャは…
2008/03/20(木) 18:56:19
2GBか4GBか超えるとそうなるよ
2008/03/21(金) 12:19:11
Kは仕様とか規格なんてどうでもいいって言ってるやつだから仕方ないよ。
その言葉を見て、OSASKから手を引いたし。
2008/03/21(金) 23:26:45
>>183
PC/ATはメモリのない所は拡張バスの方を見にいくので、
イメージが見えたりはしない。
68kみたいなバスエラーなんてものはx86には存在しない。

まああのやり方だとメモリじゃないものをメモリと誤認識する
事があるので、エラいことになるかもしれないわけですが。

たぶん4G積んでるPCではかなりの確率でそうなるんでないかと。
2008/03/22(土) 12:55:11
OS作ろうと思って調べているけど、ATってBIOSだのリアルモードだの「過去」を引きずって汚いシステムなんだね・・・。
いっそ、まったく新しい現代的アークテクチャの64ビットマシン作りたくなってきた。
2008/03/22(土) 13:34:57
>>187
ブート部分は、どのOSも似たようなもんだから、そう言うところは
パクレばいいんじゃない。
2008/03/27(木) 16:55:48
OS作るならブートローダーだけは作っちゃいけねぇ・・・
2008/03/27(木) 19:23:28
ブート部分は既存のをぱくって、その先を作るとかいう本があればいいのに。
191デフォルトの名無しさん
垢版 |
2008/03/27(木) 22:22:46
o
2008/03/28(金) 00:09:31
>>187
過去が全く無い64bitつうとAlpha位しか思いつかんが…

とりあえずx86を捨てれば幸せになれそうな気がする。
2008/03/28(金) 07:18:33
>>192
AlphaマシンがBIOSでx86をエミュっててx86用のVGA BIOSを使って初期化したりしてたの知ってる?
2008/03/28(金) 21:48:39
SFにToroOSっていうのがあって、FPCで書かれてるんだけど、

えらいソースは短くて読みやすいので、それで勉強してます。

いいとこまで出来ているような気がするのですが、
しかし、もったいないことに、放置されてます。

これ、仮想マシン上でブートできるけど、実マシンで
ブートできないのは、ナゼですか?

あと、ネットワークでブートするようなOSにしたいんですが、
なにを勉強すれば良いですか?
2008/03/28(金) 22:34:54
>>194
> これ、仮想マシン上でブートできるけど、実マシンで
> ブートできないのは、ナゼですか?
ソースを改造してint 10hとか埋め込みまくって自分で調べなさい。
そうやって自分の手を動かすのが勉強というものだ。

> あと、ネットワークでブートするようなOSにしたいんですが、
> なにを勉強すれば良いですか?
通信はNICのBIOSがやってくれるから
ブートするだけなら自分で通信コードを書く必要はない。
PXEサーバとBOOTPサーバを立ててIPLを送り込みなさい。
2008/03/28(金) 23:02:44
>>193
AlphaならケチくさいこといわんでTGAを使うべきでないかと。
2008/03/29(土) 01:54:19
>>188
>ブート部分は、どのOSも似たようなもんだから、そう言うところは
>パクレばいいんじゃない。

一般的にはハードやブートの情報を取ってこないといけないし、
OSのカーネルのバイナリフォーマットも違ったりするし、
ある程度ブートローダには手を入れないといけないよね。
あ、それを「パクる」というのかw
2008/06/08(日) 01:31:23
誰かこれでOS作れるようになった?
2008/06/08(日) 01:41:20
>>198
たぶん、あなたが想像するようなOSは作れないだろうけど
組み込みに使えそうなシンプルな物を作った人はいるかもしれない。
2008/06/09(月) 10:38:07
>>199
そういう方面に要求されるような事にはまったく触れていないので、
多分いない。
2008/06/11(水) 20:54:43
正直、この本はOS開発に少し興味がある人がその好奇心を満たすだけの本だと思う
2008/06/12(木) 14:07:03
>>201
それでいいような気が・・・・
2008/06/13(金) 19:26:38
OSが作れるとか言うのはともかく(おい)、
こういう、ハードに近い部分のコードを一行一行いい意味でチマチマ説明していく
タイプの本は、かえって新鮮だなと思った。

ちなみに、一見詳細に説明してあるように見えて、よく読むと新しい概念を説明なしに
どんどん登場させているので、本当に知らない人が読みやすいのかという疑問はある。

でも、読む側もよくわからないことはとりあえず放置して進むことも大事なのかな。
プログラミングを長年やってると「定義は、それが参照されるまでに行わねばならない」
とか思っちゃうけどw この手の本で真面目にそれをやると、前半部分が超重くなりそうだし。
2008/07/01(火) 20:21:38
http://etc7.2ch.net/test/read.cgi/siberia/1214904062/
2008/07/02(水) 21:53:23
OS作るのに必要なファイル類はどんなのでしょうか?
2008/07/02(水) 22:18:50
ファイルの概念のないOSも有るまする
2008/07/02(水) 23:24:41
ソースファイルとヘッダファイルとメイクファイルぐらいじゃね。
2008/07/03(木) 02:58:34
メイクファイルなんて根性があれば要らないじゃん
2008/07/03(木) 05:21:52
>>208
そう思っていた時期が俺にもありました。

ヘッダを更新した時に、依存してる奴のコンパイルを忘れて
謎の現象に悩むことになるんですな。
で、原因に気がついたときにものすごい疲労感に襲われると。

常に全ソースリビルドすればいいとか言わんように。
2008/07/03(木) 10:33:57
>>206
そういう意味じゃないだろ。
2008/07/03(木) 16:05:57
モトローラSレコードかインテルHEXでいいんじゃね?
2008/07/04(金) 23:48:00
>>208
根性があればソースファイルもいらんだろ。

バイナリエディタで機械語直打ちとか。

ほとんど神の領域だと思うが。(w
2008/07/05(土) 00:57:57
>>209
メモリモデル(死語)を混在させてしまっていたことに気づかなかった私はどうなるのでしょうか?
2008/07/15(火) 02:12:00
さらに発展させると根性があれば、それこそOSすら要らないな
2008/07/15(火) 11:47:30
しかし、いつのまにかOSを作っていた、というのはありそう。
2008/07/15(火) 20:14:03
・・・なんか格好いいな
2009/04/26(日) 21:06:12
3日目から再開
218デフォルトの名無しさん
垢版 |
2009/05/26(火) 20:36:42
そろそろ再開
219217
垢版 |
2009/09/28(月) 20:48:49
本日二十日目ニ到達
2009/10/23(金) 03:00:42
3日目ぐらいでずっと放置してたんだけど
久しぶりに4日目から読み始めたらCが出てきてスルスル読めるようになった。
2010/01/07(木) 01:28:20
この本の前半戦、16bit modeで動くのに何でCでかけるの?
cc1.exeで32bitコードを16bitコードに変換してる?
2010/01/07(木) 01:43:26
ソース見たことないけど.code16gccとか使ってるんでないの?
223デフォルトの名無しさん
垢版 |
2010/04/27(火) 23:17:21
age
224デフォルトの名無しさん
垢版 |
2010/05/23(日) 11:02:37
この本を買わずに、どこかのサイトで親切にOSの作り方を
教えているサイトありませんか。
2010/05/23(日) 11:15:39
あるよ。
インターネット、っていうサイト。
2010/05/23(日) 11:50:31
馬鹿は無理にレスしてくれなくていいです。
2010/05/23(日) 14:03:03
>>224
ここは「OS自作入門」という本のサイトなので、貴方の質問はスレ違いです。
他の該当スレで質問なさって下さい。
228デフォルトの名無しさん
垢版 |
2010/05/23(日) 16:02:31
分かりました。一応、ググってみたんですけど、無かったので、
このOS自作入門を買う事にしました。
C言語で画面に文字を表示するぐらいしか、知識を持っていませんが、
こんな僕でも作れますかね?
2010/05/23(日) 16:03:38
アセンブラや他の言語を知ってるなら
230デフォルトの名無しさん
垢版 |
2010/05/23(日) 16:42:10
すごいな。OS自作かあ〜。
ハード面の知識がないので><
そういうのはホントにすごいと思う。

OSを自作するってことは、
周辺機器のデバイスドライバも自作するってことでしょ?

>>228

本当に作りたいという想いがあれば
231デフォルトの名無しさん
垢版 |
2010/05/23(日) 16:52:52
もう、想いがないんだよな〜・・・。
コンピューターへの。

プログラミングは情熱でするものですよね。
232デフォルトの名無しさん
垢版 |
2010/05/23(日) 18:04:44
>>230
ドライバの自作<OSを作る
だ(w
2010/05/23(日) 22:37:34
ドライバ作る方がめんどい
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況