diff codedb.ind @ 0:977222ed78ab

first commit
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Fri, 14 Apr 2023 20:27:47 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/codedb.ind	Fri Apr 14 20:27:47 2023 +0900
@@ -0,0 +1,69 @@
+-title: Gears OS の Code Database
+
+--従来のOS
+
+a.out  にいろいろ入ってる
+
+shared library 
+
+同じものがそこら中に
+
+関数は実行前に linker が接続する
+
+--Smalltalk / Lisp machine
+
+byte code method が meory 上にある
+
+同じものが重複しても良い
+
+oblist に名前と関数の対応が入ってる
+
+--code Gear
+
+context から番号で参照される
+
+引数は context から stub 経由で取り込まれる
+
+--code gear database
+
+番号で参照される codeGear を入れる database
+
+--code set
+
+context に入れて動かす code Gear を決める
+
+実行時に変更されるかも知れない
+
+番号と関数のアドレスの対応を用意する必要がある 
+
+  これが a.out に対応する
+
+対応表は構造をもっていても良い
+
+--Linker / Loader が不要
+
+かなり簡単になる
+
+context の表を設定するものを書けば良い -- もちろん codeGear / dataGear
+
+--現在の Gears OS
+
+context の表はコンパイル時に構成されて最適化されている
+
+実行時に構築すると最適化されない 
+
+   JIT変換する方が望ましい
+
+context の実行時再構成が必要になる
+
+--code gear databas の検索
+
+どうやって検索する?
+
+   interface name は ad-hoc
+
+中身で検索する? code 自体と型自体
+
+code 自体の記述は?
+
+とりあえずは ad-hoc でよいが...