OSを作ってみよう (534レス)
1-

130
(2): 03/03/05 23:58 AAS
感感動動
131: 03/03/06 12:59 AAS
>>129-130
3年前のバッタさん。
132
(1): ( ´ -`) 03/03/07 08:17 AAS
外部リンク[gz]:www.geocities.co.jp
そろそろデバイスドライバの実装でもしようかと思って、
トラ技のバックナンバーを読んでいるんだが全然理解出
来ん(;´д`)信号がどうとか動作波形がどうとか言われ
てもなぁ。たかがドライバを書くのにこんな知識がほん
とに必要なんでしょうか?出来たら楽したいなぁ。

>>130>>129
ありがとうございます。
133
(2): 03/03/07 14:36 AAS
NoName Mar 7 2003 14:31:47 (32768kb)
/init 13b000 13ca5c
/shell 13d000 13e8e8

これでおわっちゃうけど、問題ない?
grub0.92 under Bochs2.0.2 on Vine Linux 2.6で、
fd0をnoname.imgに切替えて、
root (fd0)
kernel /kernel
module /init
module /shell
省2
134
(1): 03/03/07 14:44 AAS
>132
少なくとも動作波形はあんまり関係ないような。
まあジッタとかには注意せにゃならんかも。
つーか、トラ技のバックナンバになんかいい情報ってあったっけか。
KBCとかUSBとかNICの情報とかならあったかな?
でもC級出版の本、特にトラ技については
細かい数値やらに致命的な間違いもあったりするからして、
参考程度に留めておいてデータシートなりなんなり落としてきた方が
よさげだと思われ。
英語圏のサイト探せば負けず劣らずな資料もイパーイあるし。
135: 03/03/07 14:49 AAS
外部リンク[html]:www.pink-angel.jp
★いらっしゃいませ!!ようこそココへ★
136
(2): 03/03/07 15:00 AAS
Shellってなまえだけで、実際にははたらかないのかよをーゐ。
137: 03/03/07 15:15 AAS
ソース読め >>136
138: ( ´ -`) 03/03/07 19:32 AAS
>>133
initやshellのパスはfd0にハードコーディングされてるので、
それ以外の場所に置く時はソースを修正する必要があります。
kernel/main.cとinit/main.cの該当部分を修正してください。
もっともinitとshellは起動メッセージを表示するだけなので
動かしたところであんまり面白くないですが。

>>134
データシートと英語・・・道は遠い。
デバドラ書ける人ってどうやって勉強したんだろ。
まぁ、いざとなれば他のOSからコピペすれば良い
省4
139: ( ´ -`) 03/03/07 23:06 AAS
今気付いたんだけど>>133みたいにGRUBでrootコマンドを使
えばソース中にデバイス名をハードコーディングしないで済
むんですね。もっとちゃんとマニュアル読んどくべきだった。
撃つ出汁脳。
140: ( ´ -`) 03/03/08 08:18 AAS
外部リンク[gz]:www.geocities.co.jp
偽signalを実装。実装の簡単のために仕様はかなり変えています。
シグナルのマスクは出来ない。ネストは出来ない。シグナルハン
ドラの終りで明示的にsigreturnを呼ぶ必要がある、などなど。
UNIXのsignalというより某BTRON3のメッセージハンドラに近い
仕様となっています。というか、BTRON3仕様書見て作りました(w
今後徐々にPOSIX準拠にしていく予定。
141: ◆g2j80BX5do 03/03/08 11:41 AAS
030308age
142: LightCone ◆sSJBc30S5w 03/03/08 19:43 AAS
 面白いなと思ったのは、signalハンドラに下りる時に、カーネルスタックを
積み重ねずに、前のスタックフレームの内容をTask構造体内部にコピーし、
sigreturn()で、復帰しているところです。

 私だったら、カーネルスタックに積み重ねてしまいそうですが(高速そう
なので)、この方法だと、スタック容量がパンクしないかチェックしなく
てもいいですし、TSSのESP0も固定のままでいけるので簡単になりますね。

 TSS-ESP0を変更するのは色々と煩雑になりますし。
143: LightCone ◆sSJBc30S5w 03/03/08 20:14 AAS
 0000 0000 - 7fff ffff あたりは、線形アドレス = 物理アドレスの
恒等写像にしてるのですか? そして、カーネルもそこに置いている?

 もしそうなら、面白い実装だと思いました。

 ああ、でもこれだと、V8086モードは複数独立して持つ事は出来ないかも
しれませんね。
144
(1): 03/03/08 22:21 AAS
がんばれ!>>1完成したら使用します!
145
(2): ( ´ -`) 03/03/08 22:53 AAS
> 面白いなと思ったのは、signalハンドラに下りる時に、カーネルスタックを
>積み重ねずに、前のスタックフレームの内容をTask構造体内部にコピーし、
>sigreturn()で、復帰しているところです。
単純さでは良い方法じゃないかなと思っています。
でも、これではハンドラのネストがやりにくく、UNIXとの互換
性が取れませんので、今日の作業でスタックフレームをユーザ
スタックに保存するように改め、sigreturnもハンドラからのリ
ターンで自動的に呼ばれるようにしました。個人的にはシグナル
ハンドラは時代遅れだと思うので、あんまり乗り気では無かった
ですけど。
省16
146
(1): ひげぽん 03/03/09 00:34 AAS
こんばんは、ひげぽんと申します。

1さんのOS大変参考にさせていただいておりますm(__)m

それにしても1さんはすごいです。
すべてにおいて、見習うところばかりです。
OSの知識、実際のコーディング等々。。。

これからも是非がんばってください。
147
(1): わたもち 03/03/09 00:38 AAS
わたもちです。
開発スピードも速いし、どんどん実装が進んでゆく...
ソースも拝借して、勉強しています。
MacOSX並みのビジュアルなGUIの作成期待しています!
私も、早くGUI実装までいけるように頑張っていきたいと思います。
148: ( ´ -`) 03/03/09 11:08 AAS
外部リンク[gz]:www.geocities.co.jp
>>145で述べた改良とexit&waitシステムコールの実装をしま
した。これでプロセス・メモリ関係のシステムコールはだい
たいそろったかな。今日はユーザアプリ用ライブラリの整備
をする予定です。

>>146
こんにちは。
カーネルのC++記述やFDD制御などMonaからは色々と学ば
せていただいております。カーネルをC++で書くなんて
カッコ良すぎです。
省4
149: わたもち 03/03/09 22:18 AAS
失礼しました。寝ぼけていたようです。これだけのソースを書ける方なら
以前作成されていたOSもかなり作りこまれてあったのだろうなと思います。
貴方のOSは驚くほどのスピードで製作が進まれているようで、うらやましい限りです。
日々忙しいと思いますが、OS製作頑張ってください。
1-
あと 385 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.007s