EOTAについて話そう
EOTAについて話そう
作者ページ
http://www.rbt.his.fukui-u.ac.jp/~naniwa/comp/OS/
>142
64bitのBTRON仕様がないわけだが。
君達が望んでいるのは次のどれ?
1. EOTAの開発継続
2. フリーのBTRON
3. 日本人が作ったOS
どんな実装がいいの?
1. フルスクラッチ
2. カーネルAPIがTRON(既存OSベースでも可)
3. BTRONライクなアプリ(OS自体は問わない) Cadets are required to take a swimming course. , A: Not sure what this means, exactly. , これのPOSIXってlibレベルなのかな?
カーネル的にはどんな風にunixなの? B-freeがベースだから、基本的にはITRONマイクロカーネルの上の
パーソナリティとかマイクロカーネルの用語で言う奴だと思う。
んで、POSIXはライブラリコールとしてじゃなくてシステムコールとして実装されてる。
どんな風に、というのは具体的にどんな? XNUみたいな感じ?
eT-Kernel/POSIX とかとの違いはどの辺が大きいの? eT-Kernel/POSIXとかはライブラリのレイヤだと思う。
Androidが乗っかるぐらいだからかなり作り込まれてるが。
あと、B-freeと同じような構造と仮定して、だけど、システムコールには、ITRONの
ランデブポートというのを使ってて、直接だと使いにくいから、ポートマネジャという
のを使うんじゃないかと思うんだけど、ソース見てないから違ってるかもしれない。 FUSEとか乗らないんだろうか?
なんか生き残ってるサイトの説明読むとなにやらstartfsというツールで
アーカイバのように読み書きしてるけど、これなんかavfs化しちゃえば便利な気がする。 >>158
ランデブポートって、名前からするとソケット的なもの?
Xサーバーにコマンド送る感覚でシステムコールも可能って話なんだろうか?
まあWindowプログラミングでソケットを意識することは普通ないけど、
そういう話で合ってる? たぶんかなり違うものを想像してると思う
μITRON3.0か4.0の仕様書見て 「使いにくいから」って話は仕様書見たってわからないよ。 http://eodevtools.sourceforge.jp/doc/source.html
ここにある、
> eota/kernel/ITRON/servers
> メッセージポートを管理している port manager のソースコードが置いてあります.
これのことかな。 >>160
皮をむけば全部ITRONタスクだからITRONを習得しないとわけワカメだよ。
UNIXソケットとは似てるけどやっぱり別物だから。 んじゃPOSIX部分を他のitronにも載せようと思えば載るってこと? 難度は高めだろうね。ガッチリくっついてるのを引きはがして
移植するのは。 EOTAにランデブは無い。
非同期メッセージバッファのIDを名前で検索できるようにしてあるだけ。
システムコールはcallじゃなくて、send→receiveする必要がある。
(ライブラリで吸収しているけど、内部的にはそうなっている)
∧_∧
( ・∀・) | | ガッ
と ) | |
Y /ノ 人
/ ) < >__Λ∩
_/し' //. V`Д´)/ ←>>86
(_フ彡 / メンテされてるかは分からないけど、手に入ることは手に入るんじゃない? 最終更新日から10年以上経っているけど、入手自体は可能。
古いコードなので、あちこち直さないと最近のgccではコンパイルできないかも。
特にvolatile属性が足りないのでうまくブートしないかも。
OS開発の歴史という意味であれば、参考にはなると思う。 すごーく久し振りにEOTA公式サイトが更新された模様。 >>175
もちろん作れるよ。BTRON仕様の「全部」を実装できる人ならね。
ちなみにEOTAには中心核(ITRON風)とOSサーバ(POSIX風)しか含まれていません。 >>177
BTRON仕様全部実装するのは大変そう >>178
BTRON1仕様は「BTRON1プログラミング標準ハンドブック」だと思うけど、1408ページある。
BTRON3仕様はPDFで公開されていて、842ページ。
ウインドウシステムやTADはもちろんTCP/IPまで含まれているので、それなりに大変。
それより問題なのは、仕様通りに実装して得られるメリットが不明瞭なこと。
オープンソースのBTRONアプリ(=過去の資産)ってどれくらい存在するの?
一般ユーザにとってBTRONは標準アプリケーションとマイクロスクリプトでしょ。
それらも1から作る気なのであれば、BTRON OSの仕様にこだわらず
現代の開発者が魅力を感じるような設計でやり直す方が良いと思うけど。 >>179
そうなんだ やっぱり…
実身仮身ファイルシステムとTADと準TAD→Windowsで一般的になってるファイル形式
が扱えればどうでもいいかなと思ってる。
文字コードはUnicode アプリケーションは文章と画像と音声と動画と表計算を作って
あとから追加していく感じ そういえばウインドウシステムも独特だったかもしれない
仮身で開けるんだからでも元のままだとちょっとさみしいかも
MACLikeにしたいところ >>180
なるほどOpenDoc的なアプリを作りたいんだね。
まず既存のOS上でフレームワークとユーザモードサーバを自作してみたらどう?
そうすれば本当に必要なAPIやカーネルでサポートして欲しい機能が分かるはず。
それをBTRONの仕様書と突き合わせてみる。
遠回りだけど、いきなりB-Free/EOTAのソースを読むより有益だと思うよ。 真面目な話をすると、
第一世代のマイクロカーネル(Machとその子供達)に興味を持った人なら
B-Free/EOTAは面白い題材だと思う。
対応するデバイスが20年前なので実用まで持っていくのは厳しいけど
仮想マシンの中で良いと割り切れば結構遊べる。
GUIアプリケーションを(本当の)0から作りたいという変人にも有益。
30年前のDOS/BASIC水準から引き上げるにはどうすれば良いか
Microsoftが10年かけた苦行を追体験できる。
君もやってみないか? >>185
今はURLがちょっと違う。ググればすぐ分かるけど
http://www.rbt.his.u-fukui.ac.jp/~naniwa/comp/OS/ >>183
いろいろアドバイスありがとう
BTRONの機能を抜き出したものをつくりたい
OpenDOCって名前はしってるけどどういうものかまではよくわかってない
BTRONを独自拡張して現代のPCに合わせられたらいいな
遠回りだけど地道にやっていくよ >>184
仮想マシンに中で動くB-FREE
超漢字みたいにくっついてるんじゃなくて
OSと仮想環境を切り離してならありかも
Microsoftの苦行やってみるのもいいかもね 誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。
グーグル検索⇒『半藤のブブイウイウレレ』
L77D7L9RQB http://www.rbt.his.u-fukui.ac.jp/~naniwa/comp/OS/bin/eota.vdi
これが落とせない