[H8-ML(111)] Re: 特権モードの話
From: Noboru Aoki <ji1nzl@xxxxxxxxxxxxxxx>
Date: 1999年05月03日(月)19時48分34秒
SkyGazer ですぅ^^;

From: Akihiro Uehara <u-akihir@xxxxxxxxxxxxxxxxxx>さん
Subject: [H8-ML(106)] Re: 特権モードの話
Date: Sun,  2 May 1999 05:54:16 +0900 への返信です。

>  intel系CPUの特権レベルは 0,1,2,3 とありますが、そのうちFreeBSDは 0,3の2つの特権
> レベルしか使いません。
>  特権レベル0でしかIO叩けないから、カーネル/デバイスは特権レベル0で、あとのプロセ
> スはレベル3で動作します。
>  でないと、プログラムがややこしいから ^^; 

う〜む。Windows95/98/NT4.0 OS でも、2階層。これらのOSでの問題は、デバイス
ドライバがおかしな動きをすると、同階層のカーネルも影響を受けてお亡くなり
になる。これが、新しい周辺装置を買ってきてつないだりすると良く起こる。

特権レベル0でしか IO 命令が出せないとすると、IO命令を使用するデバイスドラ
イバを階層1に置きたくても置けない。これでは、デバイスドライバの不正動作
からカーネル守ることができない。
あれ、ゲートだったか、何か、保護階層を越えてプログラムをCALLできるしかけ
が保護モードにあったような記憶あり。何だったかな?... アルツ出てるなぁ^^;

NT4.0 からは、良く死ぬようになったけど、NT3.51はなかなか死なない。
デバイスドライバの階層が応用ソフト階層からカーネル階層へ移って不安定になる
要因を作ったというのをパソコン通信で書いた人がいた。真偽のほどは未確認。

確認している実体験は、
NT4.0は、NT3.51より、Version UPで、速度がずっと遅くなった。
NT4.0は、よく失速現象を起こす。最悪 画面が固まり動かない。
MSーIE4.0/4.01は,くせものである。
ハングアップは、Win95よりNT4.0が少なく、NT3.51は、さらに少ない。
Win98は、Win95より遅くなった。また、安定さもWin98は悪くなった。
USBをサポートしたことになっているが、必ずしも動作しない。

>  余談ですけど、Linuxでは当り前な動的デバイスドライバ組み込み、FreeBSDではなかな
> か普及しませんね。やはりこれも"サーバー"用だからかな ??

FreeBSDは、プログラミングの美しさを重視するような印象あり。慎重に見えるが、
最終的には勝者になるか?
AIX(IBM RS-6000 Work Station等用のUNIX OS)では、STATIC リンクとDYNAMIC リンクが
指定でき、外見の動作は、全く同じに見えます。メモリ管理の難しさを考えると、
STATIC は、長時間の安定動作には有利かな?
ちなみに AIX には、CDE というWindow Manager が乗っていて、画面も美しく、クライ
アントとしても、とても使いやすい。 CDE は、Linux でも使えるかもしれないけど
高いかも。HP-9000もちらっとみたが、CDE Window Managerかな。

Windows のDLLは、アイディアの発想は優れているが、プログラム品質が悪いのがあるの
と、Version 管理がおかしく、OS概念の階層にあるべきだが、応用ソフトが同じ名前
の異なるコードのDLLをインストールするという、応用ソフトの概念の階層にあるとも
考えられ、設計思想の一貫性が崩れている。このため、次第に応用ソフトとDLLの相互
関係がうまくいかなくなり、再インストールになるが、またしばらくすると、相互関
係がおかしくなってきてしまう。困っているが、これは構造的なもので、整理して見
直さないといけないように思っている。その直せる立場にないが、それだけに困って
いる。
えっ、 儲かれば、そんなこと構わないってがっ ^^;

SkyGazer
Linux based GNU Operating System
Kernel/Linux 2.0.33, X-Window/XFREE86 3.1.2





スレッド概略
[表示中](起点)


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]