[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[OSASK 00053] Re: 簡易質問
- From: Hidemi KAWAI <kawai !Atmark! osask.jp>
- Date: Thu, 19 Oct 2006 17:53:31 +0900
- Cc:
- References: <20061018154207.22226.qmail !Atmark! s10.xrea.com>
こんばんは、川合です。
FORM-Akkie さんは 2006/10/19 00:42:07 の「[OSASK 00052] Re: 簡易
質問」で書きました:
>> ソフトウェアを複数の関数で記述することができるわ
>> けですが、そのいくつかの関数について、「もし動作環境が○○CPUだ
>> ったら、khabaで書かれた汎用コードを変換したものを使わずに、この
>> 最適化コードを使え」ということを記述可能なのです。
>
>私が最適化をすることに意味があると言ったのは、OS側の話です。
>分かりにくかったでしょうか。
いえいえ、それはよく分かっておりますよ。僕があえて上記で「ソフ
トウェア」と書いたのは、アプリだけではないからです(アプリだけな
らアプリと書きます)。OS(と書いたときは、カーネルやシェルやドラ
イバなどすべてが対象)も当然ながら複数の関数で記述されますが(ま
さかOSを1関数だけで書くなどというすごいことは僕もやりません・・・
笑)、それらの関数の中で性能に大きく影響しそうなものについては386
コードやARMコードも準備するでしょう。
>以前、「ソフトウェアが、SSEやMMXがある、なしで使うコード(マシン語)
>を変えるのはおかしく、エミュレーションによって対応されるべきだ」
>との意見を述べられていたように思ったのですが、記憶違いでしょうか。
>ハード側の環境を教えるべきではない、ということでした。
これはOSASKにとっては重要な仮想化の考え方です。大筋ではそのと
おりですが、細かい点では正しくありません。
おそらく1015名無しさんは http://osask.jp/boyaki.html の
2003/08/20号のことを言われているんだと思います。
「・徹底したネイティブAPIの仮想化」のところをもう一度よく読んで
ください。
どこが正しくないのか分かりにくいかもしれないので、列挙しておき
ます。
仮想化されるべきはアプリケーションであって、ソフトウェア全体で
はない(今はOSASKをkhabaで書こうとするなど、OSにも仮想化の概念を
取り入れつつあるともいえるが、しかし僕はOSがハードウェアの状況を
知ってはいけないとはみじんも思っていない)。
エミュレーションのみによって対応されるべきだとは言っていない。
しかしエミュレーションは仮想化を実現するための一つの方法ではある
。
以上のことは http://osask.jp/boyaki.html をきちんと読んでもら
えれば確認できるでしょう。
>前述の態度は多少変わったのでしょうか。
>○○CPUとは386やARMという意味で、CPUそのものではなく、
>以前と態度は変わっていないのでしょうか。
[OSASK:00051]における「○○CPU」というのは、386やARMという意味
のときもありますし、MMXの有無やSSEの有無の場合もありえます。・・
・しかしそれでも、僕は上記で示したように前からコードの混在を許す
べきだと思っていますので、態度の変更はないと思っています。
それでは。
--
川合 秀実(KAWAI Hidemi)
OSASK計画代表 / システム設計開発担当
E-mail:kawai !Atmark! osask.jp
Homepage http://osask.jp/