[b-free: 161] Re: Driver.

青木 義彦 (PBC03033@niftyserve.or.jp)
Mon, 20 Mar 1995 12:00:00 +0900

> dev_define デバイスドライバの登録
> dev_remove デバイスドライバの削除
> dev_find デバイスドライバの検索
>
>これらは、基本的にはポートマネージャと同様の処理になります。
>(つまり、デバイスドライバマネージャはデータベース的な動作をすることに
>なります)。
>あとは、デバイスドライバをロードする機能でしょうか。これについては、ファ
>イルマネージャができないことには難しいと思います。

ファイルマネージャを使って、HDドライバをロードすることは不可能ですから、
システム立上後に、動的にデバイスドライバをロード/アンロード機能だと理解し
ます。しかし、後述のように、デバイスドライバ自身が、デバイスドライバとして
登録/削除を行うのであれば、BTRONのシステムコール[ cre_prc()]を使っ
て普通にプロセスを生成すれば事足りるのでは無いでしょうか?
普通のアプリケーションから起動できないような仕組みは必要かもしれませんが..

>これらのインタフェースのうち、dev_define (登録)/dev_remove (削除)は、
>デバイスドライバ自身が初期化時に実行することになります。

これに関しては、全然勘違いしていました。
DOSのconfig.sysの様なファイルの中に、デバイス(ユニット名)とタスクの関係が
記述して有り、デバイスドライバの外部(ブート、あるいはデバイスマネージャ等)
プログラムで、タスクとデバイスを関係付ける物だとばかり思っていました。

青木義彦