* APの素案
-(by [[K]], 2020.12.16)
** (1)
-APは、aclにおける標準的なポインタ(にするかもしれないもの)

-32bitの場合:
|上位4bit||
|0xxx|ALL_OK相当|
|10xx|オフセット24bit(16MB), rebirth-count:2bit, セレクタ:4bit|
|110x|オフセット16bit(64KB), rebirth-count:2bit, セレクタ:11bit|
|1110|オフセット8bit(256B), rebirth-count:2bit, セレクタ:18bit|
|1111|オフセット2bit(4B), rebirth-count:2bit, セレクタ:24bit|

-64bitの場合:
|上位4bit||
|0xxx|ALL_OK相当|
|10xx|オフセット48bit(256TB), rebirth-count:4bit, セレクタ:10bit|
|110x|オフセット32bit(4GB), rebirth-count:4bit, セレクタ:25bit|
|1110|オフセット16bit(256B), rebirth-count:4bit, セレクタ:40bit|
|1111|オフセット8bit(4B), rebirth-count:4bit, セレクタ:48bit|

** (2)
-AP_0(a, sizTyp):
--aのデフォルト設定を読み込む
-AP_1(a, sizTyp):
--AP_0()と基本的には同じだけど、設定が見つからないときにはエラーにする。
--設定よってあえてALL_OK相当にしている場合は、エラーにならない。
-AP_CStr("hello")
--文字列定数(過剰に作らないように、AP_0を内部で併用する、しかも設定は別建てである)
-AP_set0(p, base, limit, flgRWX)
--なければ作る、あれば更新する
-AP_set1(p, base, limit, flgRWX)
--なければ作るが、あればエラーにする

-同じアドレスでも、違う粒度がありうる。だからアドレスからだけでは適切なセレクタが得られないのでは?
--いっしょに型を渡すのはどうか?その型で連続アクセス可能なサイズとする。
--1個だけにしてほしい時は、どうしたらいいだろうか?
--AP_0sとかAP_1sとかにしたらいい?


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS