[kernel-ml 65] プロセスマネージャのメモリ要求

藤井 俊典 (TBE01041@niftyserve.or.jp)
Sat, 05 Aug 1995 22:11:00 +0900

Joy こと藤井俊典です。
いまメモリーマネージャへプロセスマネージャからメモリーをもらうためのイ
ンターフェイスを考えています。
ちょっと煮つまってしまったので、助言ください。

 方針としてはメモリーマネージャにタイプ(Code or stak or data)とサイズ
とプロセスIDを指定して割り当てをしてもらおうとしています。

 ここで BTRON ユーザタスク用のスタック(386の特権レベル3でのスタックで
す)はどう確保したら良いでしょうか?

方法1:ITRONを拡張して cre_tsk で特権レベル3のタスク(ITRON)を作る。
ユーザタスク用のスタックはアドレス/サイズ等を渡して中心核で
設定。
方法2:最初は特権レベル0でユーザタスクを cre_tsk でタスク(ITRON)を
作る。(現状)
ユーザタスクは最初OS内に用意したプログラムで TSS 等を設定し
IRET で特権レベル3に移る。

 という2個を考えています。私としては方法2をとりたいと思っています。
 そしてついでにユーザタスクがOSの一部として動作できるので、プログラム
のロードなどの処理もユーザタスクの初期処理で行います。(この時の初期処
理を LowLib の一部として考えて良いですよね?)

っで、問題なのは 386 の特権レベル移行方法はこのような方法(IRET使用)で
良いのでしょうか。