ページへ戻る

− Links

 印刷 

GUIGUI01​/memo02 のバックアップソース(No.3) :: OSASK計画

osaskwiki:GUIGUI01/memo02 のバックアップソース(No.3)

« Prev[4]  Next »[5]
* ぐいぐい01に関するメモ-02
-(by [[K]], 2008.04.27)
-メモのうち重要な部分をそのうちまとめてまともなページを作る
*** (9) no-relocation仕様について
-本来の.g01形式にはリロケーション情報というものが存在する。これはアプリケーションプログラム内のプログラムやデータがどのアドレスにロードされるか分からないので(「ぐいぐい00」や「はりぼてOS」のアプリでは0番地にロードされると前もって分かっていた)、.objのような情報を持っているという意味である(プログラムとしては未完成でもある)。efg01やOSがアプリケーションを実行する直前にメモリ上でリンカのような処理をして、通常の状態になる。
-nr仕様というのは、このリロケーション情報をもたない.g01アプリのことである。これはefg01やOSにとっては処理が減るので楽だが、その分アプリが自前でリンクに相当する処理を行わなければならない。
-nr仕様はefg01のリロケーションルーチンを書き上げるのを待ちきれないで、適当に考えた仕様であり、過渡期の仕様とも言えるが、しかしこの仕様で書かれたプログラムが将来サポートされなくなって動かなくなるということはない。単に少々効率が悪いだけで、nr仕様のアプリも立派な「ぐいぐい01」アプリであることに変わりはなく、したがって通常の「ぐいぐい01」アプリと同様に、さまざまなOSの上で動作し、タスクセーブなども可能である(予定)。
--nr仕様だからという理由で問題がおきることはないものの、他の「ぐいぐい01」アプリと同様に互換性が維持できないくらいの仕様変更をした場合は、nr仕様ではないアプリともども見捨てられる可能性はある([[OSASK-HB]]系のAPIとして出発しているので、この手のリスクは避けられない)。

*** (10) efg01はもしかしてOS?
-(ここだけ口調変更)
-Windows上で超小さいアプリたちがせっせと動いて、ひとりでわくわくしています。僕から見るとWindowsはやたらと大きくてムダの多いアプリしかない印象なので、もはや別のOSのようです。・・・とそんなことを思っていたら、もしかしてefg01はOSであると言い張れば、そうかもしれない気がしてきました(まあOSだと言い張るにはもうちょっと規模が大きくならないと説得力不足ですが)。
-たとえばWindows3.1はMS-DOSのアプリでもあったけれど、やっぱりOSなわけです。TownsOSもMS-DOSのRUN386.EXEというアプリの上に構築されたものでしたが、やっぱりOSなわけです。だからもしefg01上で動作するシェルもどきができたりしたら、efg01もOSといえなくはない日が来るかもしれません。
-もちろんOSASK-HBやOSASK ver.4.9以降を使えば「ぐいぐい01」アプリは問題なく動くわけですが、これらはハードウェア向けに実装されたefg01だということもできます。いっぽうabcdwはwin32という仮想マシン(環境?)用に実装されたefg01だということもできると思うんです。つまりefg01をOSだと見る視点では、Windowsはドライバマネージャーくらいの存在でしかないわけです。そしてこの視点では、事実上ドライバ不足もアプリ不足も解消していて(だってWindowsのドライバやアプリが全部使えるわけだから)、しいて欠点を挙げれば起動時間が長すぎることくらいです(あと電力も食いすぎる・・・)。
-今のところabcdwは標準関数ばかり使って実装されているので、Linux版も簡単に作れそうです。そのうちやってみたいです。Linux上でもこんな小さいアプリが動くようになったら感激です。

* こめんと欄
- efg01でgoogle検索したらトップになってたー。意外にユニーク? -- [[K]] &new{2008-04-27 (日) 23:33:44};

#comment

« Prev[4]  Next »[5]