X



OSを作りたいわけだが。
■ このスレッドは過去ログ倉庫に格納されています
0006Be名無しさん
垢版 |
NGNG
とりあえず、いきなりそんな野望に燃えてスレ
立てる前に本買った方がいいと思うが?
0007Be名無しさん age
垢版 |
NGNG
os
OSを作ろうと考えたきっかけは?
0008Be名無しさん
垢版 |
NGNG
ttp://www.tuat.ac.jp/~yoshiza/ylabo/results/graduate/undergrd/1996/contents/suzuki/index.html
0011Be名無しさん
垢版 |
NGNG
4、50年前は人間がOSをやっていたそうだよ。昔人間OSやっていた
日本人のおじいさんが教育TVに出演して実演してた。
0012Be名無しさん
垢版 |
NGNG
>>1

 「OS作ろう!」ってのは、OSASKとかあるけどね。志はとも
かく、実際にやるとなると、途方もなく大変だろう。

 「ゲームが作りたい!」ってヤツは、プログラミング言語をたとえ
習得できたとしても、基本のテーマなり、シナリオなりが貧弱でダメ
ダメというのが多々あるが…。
0014Be名無しさん
垢版 |
NGNG
ブートローダーにアセンブラを使うのはわかった!
しかし、厨房にアセンブラは難しすぎないか?
0015Be名無しさん
垢版 |
NGNG
そんな厨房さんたち向けにレゴブロックのように簡単なOSキットも
あるよ。
0016Be名無しさん
垢版 |
NGNG
やっぱり自分の手で一から作るのが良いんだ!
でも、アセンブラでちょっと間違えただけでCPUやメモリが壊れたりするんでしょ?
メモリっていっても100円程度で買えるならいくらでも失敗できるけど
安くて5000円ぐらいなわけでしょ?
そういうこと考えるとかなり怖いです。
0017Be名無しさん
垢版 |
NGNG
>>16

> でも、アセンブラでちょっと間違えただけでCPUやメモリが壊れたりするんでしょ?

感動した!
0020Be名無しさん
垢版 |
NGNG
> でも、アセンブラでちょっと間違えただけでCPUやメモリが壊れたりするんでしょ?

厨房最高
00211
垢版 |
NGNG
アセンブラでOSを起動させるにはどういった流れで処理をするのか。
00221
垢版 |
NGNG
メモリにOSを突っ込むのか?
0024Be名無しさん
垢版 |
NGNG
ここの1は、まだ勉強が必要で、そのレベルまでいかないけど、そうでない人でも、
OSを作るっていって、ブートローダから始める(そして挫折する)ひとが散見される
のは残念だな。ブートローダは既にいっぱいあるし、PCのブートローダは特に意味
もなく面倒なので、そこは既存のつかって、OSから作り出してほしいんだけど....
0026Be名無しさん
垢版 |
NGNG
厨房だからアセンブリ使えんって、そんなわきゃないだろ。
ホントにやる気があるなら勉強汁。
チョト昔は厨房だろうがなんだろうがアセンブリ使えたぞ。
そういう本は少なくなったがネットさえあれば何とかなる。
まあ初めて学ぶのがx86ってのはチト何かが違う気もするけど。


>>24
っていうか、いろいろ面倒だからなあ。
Bochs使ってもデバッグ面倒だし、ブートローダから先作るにしても
ある程度作りこまないと単に起動するだけだし。
0027Be名無しさん
垢版 |
NGNG
むしろ厨房ぐらいからアセンブラやり始めないと後で覚える方が大変だと思われ
0028Be名無しさん
垢版 |
NGNG
ちょっと質問。
アセンブラって主にメモリを操作するんだよね?
で、そのメモリの中にプログラムを突っ込んだりするんだよね?
0029Be名無しさん
垢版 |
NGNG
>28
厨房なら寝ろといいたいところだがともかく、
それは間違えてはいないだろうが、何か間違えてるぞ。
基本的にアセンブラは他のプログラミング言語と変わらん。
CにしろBASICにしろ主にメモリを操作するし、
メモリの中にプログラムを突っ込んだりするとは言える。
0030Be名無しさん
垢版 |
NGNG

体操部教員1名女子高生らの証言によりsaitama県警にタイーホ許せん!


[FLASH]【女子高生】体操部夏季合宿での悲惨な体罰【宙吊り動画】
http://pc4.2ch.net/test/read.cgi/swf/1059571701/

埼玉県某女子高等学校の体操部員ら(7名)が軽井沢夏季合宿にて
壮絶な体罰が行われた事件が発覚

これに関わった顧問の教員にてビデオ撮影された女子高生宙吊り動画が
インターネット上にうpされた。

行き過ぎた指導・体罰ではすまされない問題として教育委員会・PTAら
世間の大きな波紋を呼んでいる

一部始終を納めた16分の動画が現在フラッシュ板にて・・
0031Be名無しさん
垢版 |
NGNG
アセンブリ(アッセンブリ)言語を「アセンブラ(ー)」ってほざくヤツは
Cんでいいよ。ってかCね!
>>28 アセンブリ言語が直接操作の対象とするのは、3つあって、それはメモリー
IOポート(これも一種のメモリー)、CPUのレジスタ。
0035Be名無しさん
垢版 |
NGNG
削除してもいいカキコは最初からするなよ
この秋房がっ
0036Be名無しさん
垢版 |
NGNG
>>28
メモリの中にプログラムを突っ込むのは一般には「ローダー」っていうOSの一部
のプログラム。 では「OSというプログラム」をメモリに突っ込むプログラムは、はて?

これは「ブートローダー」とか「IPL」とか言うプログラムで工場であらかじめ
ROMに突っ込んである(こいつらの呼び名はPCの種類によって異なる)

と言うのが素朴な疑問に対する大まかな説明(ホントはもっと複雑)
あとは「ブートプロセス」とかぐぐって調べてみなはれ
0037Be名無しさん
垢版 |
NGNG
>>36
ありがとうございます!
かなりの疑問が消え去ったような感じです。
0038Be名無しさん
垢版 |
NGNG
ブートストラップってなんだった?
003936
垢版 |
NGNG
>>38
調子に乗るな、糞厨 それぐらい調べろ
0041Be名無しさん
垢版 |
NGNG
ブーツの後ろについてる、指でつかむ部分のことだろ。それって。
ちっこい部分をつかんで、おっきい靴本体を引っ張る機能をもってる
訳だから、OS本体をメモリに置く機能を持つ起動時に自動的に実行される
ちっこいマシン語列の事をそう呼ぶんだよw。
00421
垢版 |
NGNG
またまた質問です。
BIOS→FD,CD-ROM,HDDの読み込み→マスターブートレコードの内容の読み込み
→ブートローダーをメモリに転送→ブートローダーを起動
→OSローダーをメモリに転送→OSローダーを起動→OSを起動
がOS起動の手順ということはわかりました。
BIOSは普通市販されているパソコンには入っているから多分問題無し
ブートローダーの前にマスターブートレコーダーの内容ってあるけど
パスしてもOK?
それとブートローダーの活動はOSローダーを
メモリに突っ込んで起動するだけでOK?
名前に1を入れ忘れることが多々ありました。
スマン。
00441 ◆0iOLAADDw.
垢版 |
NGNG
でも>>36でブートローダーは元から入ってるようなこといってるしなぁ
そしたらOSローダーを先に作ればいいのかな?
でまたまた質問。
OSローダーはアセンブリ言語で作るべきなのかそれとも他の言語で作るべきなのか?
OSローダーの名前はどうでも良いのか?
この2点についてお願いします。
004536
垢版 |
NGNG
>>36で「ブートローダ−とかIPL」ってのはマシン、OSによってイロイロ呼び方がある
と言った。>>42で マスターブートレコードに書かれてる内容(プログラム) としてる
のが>>42でいうブートローダのこと。

だから作るのは「マスターブートレコードに書き込むブートローダ」ということになるが、
アセンブラやシステムプログラム初トライ(>>1の知識量から解る)
でいきなりつくるのは敷居が高すぎるプログラムだと言うのが親切な>>24の主張。

「はじめて読む486」買って読む。他にはLiloとかGRUBとかFreeBSDの起動とかぐぐる
>>13のアドバイスに従う。とかして1ヶ月ぐらいやってみてからもいちどスレ続けられそうなら
続けてみ。

0047Be名無しさん
垢版 |
NGNG
最近初めて読む486読んでわかりやすさに感動したが、
あれってintelのpdfとか読んでないと応用がほとんど利かんことないか?
あとアセンブリと互換機の昔の知識ないとさらにワケワカラン状態になりそうな。
0049Be名無しさん
垢版 |
NGNG
CPUに依存しない言語を作るところから始めないと
ブートローダ一つ組めばどれからでも起動できるやつ
0050Be名無しさん
垢版 |
NGNG
>>49
>CPUに依存しない言語を作るところから始めないと
CPUに依存しない言語を作ったところで結局は、コンパイラがCPUに依存する。
どんな言語でも実行するときはみんな機械語になる。
0051Be名無しさん
垢版 |
NGNG
それじゃあ、コンパイラも対応すれば良いわけでしょ?
0053Be名無しさん
垢版 |
NGNG
>>52
そう思う。けっこう親切な回答があるにもかかわらず、一向に調べようとしない

>>49
現在主流の言語(ex. C,C++,Java,Perl)は大抵CPUに依存しませんが?
現在主流のPCでCPU非依存のプートローダ作ることはほぼ不可能ですが?
0055Be名無しさん
垢版 |
NGNG
>>54
どの辺が?
005653
垢版 |
NGNG
>>54
言語の「どの部分が」依存するかが抜けてることに対する、揚げ足鳥?

標準の言語仕様に関してはCPU依存はない。
だが処理系(コンパイラ等)は勿論依存しまくり。 ライブラリも依存部は勿論ある。
(インラインアセンブラとかベンダーユニーク仕様等の重箱の隅は却下)
JavaもVMは各CPU依存。

これで良いか?
0057Be名無しさん
垢版 |
NGNG
>>53
ルーク。forthをつかえ。
49が意図したものは、ファーム(PCでのBIOS)を、機種非依存にするのではなく、
ブートローダ(PCでのMBRの中身以降)を、機種非依存にする話しではないのか?
実際問題としてファームはハードのベンダがハードとともに提供するもので、
ユーザが作ることを考える必要はない。多くのシステムでは、情報が開示され
てないことと、ROMなこととで、作成して書き換えるのは困難だ。
てことでopenfirmwareは、既に提案/実装された後者の実例として充分だとおもう。
ならば、全てのベンダに、perlをファームとして採用させることができれば、
ブートローダをperlで書くことも可能だ。
それでもopenfirmwareもperlファームも主流にならないのは、政治力がたらんからさ。
005853
垢版 |
NGNG
>>57
確かに>>49の「ブートローダ一つ組めばどれからでも起動できるやつ」と
いうのを折れは「ブートローダ-を一種類だけ作れば」と読んだが
「ブートローダ-自体は各機種用を作る、そうすれば後は」とも読めるし
折れの読み違いかもだな。

それをアンタは>>49のブートローダはローダーじゃなく「PCでのMBRの中身以降」と
読んでMBRにforthインタプリタを入れて云々とか深いねぇw
でもopenfirmwareは単なるブートローダじゃないくてBIOSと同じく
周辺機器も含めた文字通りfirmwareじゃなかった?
0059Be名無しさん
垢版 |
NGNG
こうすると、MBRにforthやVTL(なら入る?)を入れてN88-(ROM)BASICみたいな
ものを作るってのなら、意外と入門的OS作りになる?

どうせならブートローダ-はGRUBを使ってスタンド亜ローンBASICインタプリタを
読み込む方法の方が手軽そう。
0060Be名無しさん
垢版 |
NGNG
OS板にこんなスレ立てても批判厨しか寄り付かないから育たないよ(マジレス
00611 ◆0iOLAADDw.
垢版 |
NGNG
>>36
>>ブートローダ云々
勘違いしてました。

いろいろ参考にして勉強がんばります。

>>52>>53
教えて君ですみません。
00621 ◆0iOLAADDw.
垢版 |
NGNG
あと>>46さん
サンクスです。
参考にさせていただきます。

まとめると、OSを起動するには「MBRのブートローダ」をアセンブリ言語で作る。
でも、>>49-59の話を聞くと
「アセンブリ言語(のコンパイラかな?)はCPUに依存する」
かも知れないという話。
00631 ◆0iOLAADDw.
垢版 |
NGNG
ttp://ha3.seikyou.ne.jp/home/Joyit/asm/asm1.html#syntax
にアセンブラはIntelのとAT&Tのとあると書いてあるけど
この2つだけなのですか?
0065Be名無しさん
垢版 |
NGNG
>>63
いや、アセンブラは色々あるけど、
表記はその二つに大別されると。

ってちゃんと書いてあるじゃねーか。
006659
垢版 |
NGNG
>>62
>  まとめると、OSを起動するには「MBRのブートローダ」をアセンブリ言語で作る。

も少し正確にかけば、MBRに書き込むブートローダかな。
アセンブリ言語で作ったプログラムはアセンブルされて最終的には機械語というか
バイナリコードになる。 このバイナリコードを作る。

> 「アセンブリ言語(のコンパイラかな?)はCPUに依存する」

アセンブリ言語はCPUのバイナリコードとほぼ一対一に対応させた言語
だからアセンブリ言語はまず必ずCPUに依存する。

コンパイラ言語は、例えばCなら
コンパイラに食わせるソースコードは殆んどの部分がCPU非依存だが
ソースをコンパイルした結果はCPU依存。
だからAT互換機用OSを作るのならAT互換機用コンパイラ(大抵IA-32用)を使う

いきなり>>49-59 CPU非依存などと言う高度なことは考えず、AT互換機上で
つくるならIA-32依存、AT互換機アーキテクチャ依存ですすめた方が良いと思う
0067Be名無しさん
垢版 |
NGNG
>>63
リンク先にあるのはアセンブリ言語の構文(ニモニック)のハナシ。
AT&T系は、gccというコンパイラ(驚くほど多くのCPUに対応できる)
の都合に合わせて作られているので、やや解りにくいと言われる。

初アセンブラならなおさら、Intel系ニモニックを使うアセンブラ
そのページにあるNASMぐらいが無難。
0068Be名無しさん
垢版 |
NGNG
>>62

> 「アセンブリ言語(のコンパイラかな?)はCPUに依存する」

そのコンパイラみたいなモノをアセンブラと言う。
0070Be名無しさん
垢版 |
NGNG
> まとめると、OSを起動するには「MBRのブートローダ」をアセンブリ言語で作る。
目的がOSなら、作らないで既存のものを使うのが正しいと思うよ。
007167
垢版 |
NGNG
>>69
ごめんなさい。 じゃ、あと>>1の面倒よろしくお願いいたします。
0072Be名無しさん
垢版 |
NGNG
>>20
K6(2だったかは忘れタン)ならあるよ。自爆命令
2度と動かなくなる
0073Be名無しさん
垢版 |
NGNG
>>1はまず既存のOSを研究してみるべきだと思うが。
MinixとかFreeDOSとか。
0074Be名無しさん
垢版 |
NGNG
>>73
あえてLinuxは進めないんだね
0077Be名無しさん
垢版 |
NGNG
>72
何それ?
一部の自作野郎のK7とか、
拡張命令使い続けると焼き鳥になりかねないそうだけど(w
0078Be名無しさん
垢版 |
NGNG
厨は「おおえす」を妄想してればよいが

本気で作りたいならまずモニタを制作汁。
AT互換機にはモニタがないからイイモンできれば浸かってやる。

Linuxだて初めはモニタ+アプリの集合体だった。
0079Be名無しさん
垢版 |
NGNG
>>78

> AT互換機にはモニタがないからイイモンできれば浸かってやる。

って、エラソウに言っておいて実はクレクレ君かよ!
モニタの在るべき具体的姿や機能ぐらい挙げる
008179
垢版 |
NGNG
>>80
ご名答 モニタの正確な定義は知らない

実例、8bit時代 RMSとかなら少しお世話になったことがある。カンタンな構成の
ローダー、TSSコンソール、マシン語レベルデバッガ等を含んだものと理解してる。
    ↑
しかしこうした構成にまでなるとこのスレの第一目標となりそうなOSと大して変わらん

>>80はよ〜くご存知のようなので、OS前段階のモニタについて詳しく解説してもらおう
0082Be名無しさん
垢版 |
NGNG
あ、TSSコンソールじゃねえ、シリアルコンソールのサポートだ
0083Be名無しさん
垢版 |
NGNG
まそんなとこでねーの。

つかローダー、コンソール、デバッガ程度でOSを主張されても
かなり寒いが。


そうだのう
とりあえずこれからモニタを作ろうとするヤシは、
「プログラムを実行後、モニタに戻ってこれるか」を課題と下前。
ROMにモニタを持たないPCではちょいと頭使いますぞ
(TPAを用意したり…)
0086Be名無しさん
垢版 |
NGNG
>>84
メインフレームのTSSシステムに繋がれたシリアル接続コンソールをTSS端末と言ってたんだよ
そういうののエミュレータを使ってRMSなんかにつないでた。

言っとくが、TSSてのはIntelCPUの機能のことじゃなくTime Shearing System。

RMSはRealtime Monitoring System--どっかが後で商標かなんか取ったかしらんが
沢山種類があった。
0087Be名無しさん
垢版 |
NGNG
Time Sharing Systemね。typoだと思うけど
今のUNIXやWinNT系列もTSSの一種。

世界で初めて?実用TSSを動かしたダートマス大学のGE機に
乗っていた教育用言語がBASICだというのは
知ってても自慢にならんですが
(ゲイツに汚染される前のBASICはPascalよりきれいで強力だ)

RMSつーと時代的にはVMSかTOPSのデータベースが有名かね(モニタではないか)
00881 ◆0iOLAADDw.
垢版 |
NGNG
札幌の小地震(?)怖かったです。
やっと、「はじめて読む486」入手いたしました!
早速読んでみましたが、長いですね〜
00891 ◆0iOLAADDw.
垢版 |
NGNG
札幌の小地震(?)怖かったです。
やっと、「はじめて読む486」入手いたしました!
早速読んでみましたが、長いですね〜
0090ag
垢版 |
NGNG
>>89
Intelのデベロッパーズマニュアルをきちんと読んどけ
MBRは0x7c00に読みこまれるから(セグメント0)覚えとけ

んで、開発環境はどうするの?
0092Be名無しさん
垢版 |
NGNG
>>1
馬鹿野郎
こっちは震度5弱着たんだよ
アセンブラだけに焦った
0094Be名無しさん
垢版 |
NGNG
>>16
CPU自爆命令があるということですか?
0095Be名無しさん
垢版 |
NGNG
最近OS作っちゃうぞ板が多いですね
流行でつか?どうなんでつか?
0096Be名無しさん
垢版 |
NGNG
>>95
まぁ、2chができる以前からをたどっても、作りたいと言った人の中では、
OSASK以外動いた形跡は無いわけだが。
00971 ◆0iOLAADDw.
垢版 |
NGNG
>>95
僕は、オリジナルのOSを作りたいと思って立てました。
流行なんでしょうかね?
0098Be名無しさん
垢版 |
NGNG
>>95.
流行なのだろうが、この手のスレができたからと何が変わったわけでもない。
今まではスレなどなくても作りたい人は地道に何かをしていた。
この手のにわかOS作成スレができたけど、特に何かが論じられるわけでもなし、
そもそもOSを2ちゃんで作ること自体がちょいと無理な気がしないでもない。
誰かが捨てHNでサイトでも作って作成する場を提供するのならわからないけど、
スレの上だけでOSを作ろうとするのは、かなり大変な気が…。
まぁ、情報のあるURLサイトを載せるだけでもスレとしては良いんだけどね。
0099Be名無しさん
垢版 |
NGNG
>>96
OSASKの成立は2chとかとは関係無いだろー。
2chと関係無くならEOTAとかそれの元になった奴もあるし。
0100Be名無しさん
垢版 |
NGNG
>>99
2chでの提案では形になったものがまったく無い上に、
それ以前からの流れでもOSASKくらいしか無いねと言っているのでは?
OS作る前に日本語を勉強すべきかと。
0103Be名無しさん
垢版 |
NGNG
>>97
とりあえずこのスレ含めこの板には6つほどOS作ろう系のスレがあるわけだが
■ このスレッドは過去ログ倉庫に格納されています

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