X



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

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

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

0102デフォルトの名無しさん
垢版 |
2006/07/30(日) 11:20:43
俺も液晶は172X使ってる。
17インチでちっちゃいけど、フレームが小さいからx4ディスプレイで仕様
CRTは塗り替えてるから型番がわからない。型落ちの25万くらいのものだったと思う。
172Xを一台4万ちょいで買ったから16万とアームで6万で22万。CRTのが高いな
液晶の利点って、小さくて安い事だと思ってる。
普通の事務処理だと発色とか反応速度はどうでもいいから、液晶で十分事足りるし
0105デフォルトの名無しさん
垢版 |
2006/07/30(日) 20:17:44
>>103
液晶でそれなりの解像度とある程度視認性を確保しようとすると
>>102みたく4ディスプレイとかにする必要があるから、電気代はかかると思う
そうなるとスペースの問題もCRTと同等になるし価格も同じくらい
17インチでもUXGAとかたまにあるけど、みれたもんじゃない
L797つかってやっと常用できないことはないレベル


板違いスマソ
0106デフォルトの名無しさん
垢版 |
2006/07/30(日) 23:58:30
CRTをけなすやつはCRTを常用した事ないやつだけ
液晶をけなすのは金持ちだけ

こんなかんじか?
0109デフォルトの名無しさん
垢版 |
2006/08/14(月) 02:56:36
マルチタスクいらないんです。
その代わり早く計算したい・・そんなOSがこの本読めばつくれますか?
(マルチタスクにしようが、シングルタスクにしようが、計算速度はそんなに違わないんですかね?最近のcpuは)
0110デフォルトの名無しさん
垢版 |
2006/08/14(月) 06:45:18
最近のCPUということでいえば、既にマルチチップorマルチコアが主流なのでマルチスレッドでないと話にならない。
#純粋な1コアCPU一個で勝負するなら、シングルスレッドの方が速いとは思うが。

それはいいとして、そのOSは事実上GUIもマルチメディアも捨てるということになるぞ。
0111デフォルトの名無しさん
垢版 |
2006/08/16(水) 18:58:13
>>109
速く計算させたいならMS-DOSで動く「応用ソフト」作ってその中でガンガレ。
計算させるだけなら基本ソフト作る必要性もないだろう。

ただし、16ビット演算にする必要性とファイルサイズを64KB以下にする必要性が生じるが。
0112デフォルトの名無しさん
垢版 |
2006/08/16(水) 19:22:08
>それはいいとして、そのOSは事実上GUIもマルチメディアも捨てるということになるぞ。
あほか
0113デフォルトの名無しさん
垢版 |
2006/08/16(水) 20:53:15
>>112
シングルタスクでそれらをどう実現するの?
少なくとも>110は完全否定していないようだけど、漏れには無理なように思えるんだ。
0115デフォルトの名無しさん
垢版 |
2006/08/16(水) 21:57:02
あと、初期のマッキントッシュもシングルタスク
古い絵描きソフトにもシングルタスクの名残でMDIじゃなくてウインドウがいっぱいに分かれてるやつあるだろ
ああいうのは全てシングルタスクで動いてた

てかよくマルチタスクとかいう言葉を出しといて、シングルタスクじゃGUIは出来ないとか抜かせるな
お前の技量が全く足りないだけだろ
0117デフォルトの名無しさん
垢版 |
2006/08/16(水) 23:31:14
>>116
俺はなにがはずかしいのかわからないんだが?
Windows 1シリーズはどういうものかしらないから、
そこは正しいかは知らないけど
0119113
垢版 |
2006/08/17(木) 01:20:16
なるほど判った。
元々の>>109は計算速度を優先させたいと言うことなのだからその演算タスクでGUIの面倒を見るのは論外なわけだ。
確かにマルチファインダーが出る前のMacは演算中にはGUIも止まってたもんな。
#それはわかったとして、Windows1の頃はタスクスイッチングしてたと思うのだがあれはマルチタスクとは言わないのかな?
0124109
垢版 |
2006/08/18(金) 00:55:39
えっと、たとえば200桁くらいの素数を探すのに利用したいんです。
最新のCPUをつんだPCが計算が速いのは当たり前。
でも、このシングルタスクOSを載せた1、2世代前のPCでも
最新機種と同等の計算速度が出るよ!みたいなOSがあればなぁ・・無ければ作りたいなぁ・・と。
なのでぶっちゃけCRTつながんなくてもいいです。RS−232Cかなにかで親PCに繋げてひたすら
見つけた素数を送り続けるような・・・

バカな考えでしょうか?もしかしてOSわざわざ作らなくてもいけますか?
0125デフォルトの名無しさん
垢版 |
2006/08/18(金) 02:18:09
OSを作ってさらにパフォーマンスを上げるのであれば、既存のOSを上回る
CPUドライバなどいろいろな面で、かなりの労力が必要。
本当に単一ならある程度は出来ると思うけど、これくらいもわからないと
ころから始めるのであれば、出来るころには今の最新マシンが10世代くら
い遅れてるかもしれないんで、今最新のマシンを使ってやればいいと思う
シリアルコンソール使うにもそれのドライバが必要。
この本読んでも、蒸気のことには何の役にも立たない
0131デフォルトの名無しさん
垢版 |
2006/08/19(土) 12:42:29
>>124
既存のマルチタスクOSでも不必要なサービスを止めたり、タスクの優先度を変更すれば
それほどシステムに処理能力を持って行かれることはないと思うが。

どうしてもシングルタスクがいい!って言うのならOS作るより MS-DOS + 32bit DOS Extender
辺りを使った方がいいだろう。
少なくとも自作OSよりはマシな開発環境が揃えられるだろうし。
0132デフォルトの名無しさん
垢版 |
2006/08/25(金) 19:08:20
> RS−232Cかなにかで親PCに繋げてひたすら
>見つけた素数を送り続けるような・・・

これで良いなら、計算プログラムにイニシャル部と通信部を付け加えるだけで、
OSなんて高級なもの要らないぞ。

memtest みたいにフロッピー1枚で収まるだろ。
0133Chia
垢版 |
2006/08/25(金) 21:21:17
おまえらまじですか…
定計算させるなら、FPGA以上に早いものはないと思うけど…
それ専用の計算装置を作るんだから、PCで専用OS作るのなんて比べ物似ないくらい早い

どれくらい高速かと言うと、作る人ののうみそにもよるけど自分が作ったのは
Zip2.0のパスワード解析で22.4MPass/sでた。
参考までにCPU: Athlon64 x2 4200+ soft:Advanced Archive Password Recovery
のマシンだと、17.8MPass/s。
クロックでいうとたった80MHzでこのスピードが出る。
俺でもこのスピードが出ると言うことは、本気でやるともっと出ると思うよ。
RS-232Cでデータをリンクさせるっていうのも、まさにそれだし。
0135デフォルトの名無しさん
垢版 |
2006/08/25(金) 23:48:04
ClearSpeedなら96並列演算できるが、ボードもSDKも定価は200万だった希ガス。
Xtrillionなら96並列orベクタ演算できるが、SDKは未だなかった希ガス。
FPGAボードもあるけどこれまた安くないし……
0137109
垢版 |
2006/08/26(土) 02:29:05
みなさんどうも。
低コストで早い演算を・・とおもいここに書き込んだんですけど、
なかなかそう都合のいいものはないんですね。
マルチタスク→割り込み頻発で速度遅い シングルタスク→割り込み少なくて速度はやい
っていうのは、昔の発想だったのかな?

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

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

色々どうもありがとうございました。(ぺこり)
0138デフォルトの名無しさん
垢版 |
2006/08/26(土) 04:04:31
>>137
>今のマシンで動くMS-DOSというのはあるのでしょうか?
つ FreeDOS

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

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


これで我慢しれよ。



0144デフォルトの名無しさん
垢版 |
2007/03/10(土) 13:48:25
安い本体買ってきて試してみようかな
エミュでもいいけど、実機で動いたほうが感動するし
0146デフォルトの名無しさん
垢版 |
2007/03/23(金) 20:57:09
>>145
古本屋に売り飛ばしたりしないんなら、この手の本はそうするのが正解かもしれんわな。
でも、図書館で借りた本でそーゆーことすんなよ。
0147デフォルトの名無しさん
垢版 |
2007/03/24(土) 00:06:03
裂き方にもよるな
文字とそれ以外に分けて裂いたり
拍子ビリビリとかにしても軽くならないし
0149デフォルトの名無しさん
垢版 |
2007/04/08(日) 10:09:38
つまり、付属CDにpdf版もインストールしとけ、ってことですか?
0150デフォルトの名無しさん
垢版 |
2007/04/08(日) 13:03:28
>>65
ICE使うとハード壊れない?

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

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

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

0152デフォルトの名無しさん
垢版 |
2007/04/08(日) 16:42:45
壊れるのは、
・単なるミス
 例->入力ポートに出力して過負荷になって壊れる

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

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

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

もちろん、自動車に関する知識がある人は無しで。
0165自作厨 ◆A1RaQAF1QY
垢版 |
2007/06/17(日) 10:54:31
OS自作入門を市立図書館で借りてきた。
30日以内に20日目(395ページ)までの目標を達成して
どっかのアプロダにそこまでのモノをあげてやんよ
べつにそれをDLしろって言ってるわけじゃないんだからな
0166デフォルトの名無しさん
垢版 |
2007/06/26(火) 13:19:33
>>165
図書館に置いてあるのかうらやましい
正直あの本にあるやつをただコンパイルするだけでできるからなそんなん
本で紹介してるもの以外に何か機能つけるくらいしないと評価してもらえんよ
0167デフォルトの名無しさん
垢版 |
2007/07/11(水) 01:01:46
最後までセグメント一辺倒でいくのかー。
ページングに関しては紙面を割けませんかそうですか。
世の中にはx86しかCPUは存(ry
0168デフォルトの名無しさん
垢版 |
2007/07/11(水) 12:48:48
そのむかし、ページ単位で管理するのは無駄が多いとかなんとか
言ってた気がする。
その影響でしょうな。
0169デフォルトの名無しさん
垢版 |
2007/07/16(月) 23:25:56
最近読みはじめたのだけど、使ってもいいメモリの位置とか結構適当なんだね。
FDに書き込まれるプログラムの位置もバイナリ直接みて判断してるけどこんな適当でいいの?
0170デフォルトの名無しさん
垢版 |
2007/07/17(火) 07:22:32
>>165
UPまだ?
0174デフォルトの名無しさん
垢版 |
2007/08/03(金) 10:38:30
>>168
>そのむかし、ページ単位で管理するのは無駄が多いとかなんとか

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

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

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

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

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

たぶん4G積んでるPCではかなりの確率でそうなるんでないかと。
0187デフォルトの名無しさん
垢版 |
2008/03/22(土) 12:55:11
OS作ろうと思って調べているけど、ATってBIOSだのリアルモードだの「過去」を引きずって汚いシステムなんだね・・・。
いっそ、まったく新しい現代的アークテクチャの64ビットマシン作りたくなってきた。
0191デフォルトの名無しさん
垢版 |
2008/03/27(木) 22:22:46
o
0192デフォルトの名無しさん
垢版 |
2008/03/28(金) 00:09:31
>>187
過去が全く無い64bitつうとAlpha位しか思いつかんが…

とりあえずx86を捨てれば幸せになれそうな気がする。
0194デフォルトの名無しさん
垢版 |
2008/03/28(金) 21:48:39
SFにToroOSっていうのがあって、FPCで書かれてるんだけど、

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

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

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

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

> あと、ネットワークでブートするようなOSにしたいんですが、
> なにを勉強すれば良いですか?
通信はNICのBIOSがやってくれるから
ブートするだけなら自分で通信コードを書く必要はない。
PXEサーバとBOOTPサーバを立ててIPLを送り込みなさい。
0197デフォルトの名無しさん
垢版 |
2008/03/29(土) 01:54:19
>>188
>ブート部分は、どのOSも似たようなもんだから、そう言うところは
>パクレばいいんじゃない。

一般的にはハードやブートの情報を取ってこないといけないし、
OSのカーネルのバイナリフォーマットも違ったりするし、
ある程度ブートローダには手を入れないといけないよね。
あ、それを「パクる」というのかw
0199デフォルトの名無しさん
垢版 |
2008/06/08(日) 01:41:20
>>198
たぶん、あなたが想像するようなOSは作れないだろうけど
組み込みに使えそうなシンプルな物を作った人はいるかもしれない。
■ このスレッドは過去ログ倉庫に格納されています

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