Index / Reload

Comment on 2007-04-09

2007-04-09 について、コメントがあればどうぞ!
E-mail アドレスは公開されません。URL は公開されます。
なお、管理者の判断により予告なくコメントを削除することがあります。 ご了承下さい。

パスワードを入力すると後からコメントの修正が可能です。

確認:下の Check の項目に IXhLvR1i をコピーして入力してね。

お名前:
E-mail or URL:
Check: ← 上の方にある確認文字列を入力してね。
Password:
コメント:
* soda 2007-04-29 22:12:06 [Edit]

そちらでしたか。
なるほど、確かにページフォルトに関する状態保存は不要そうですね。

* furukawa 2007-04-29 18:42:46 [Edit]

はしょりすぎて失礼しました。
360のTR命令の変換テーブルと変換対象領域は、それぞれ高々2ページにまたがりますので、必要なら命令実行開始時にページフォールトを起しておけば、ループ実行中にはそれ以上の例外は起きないと思いますので、O(L)の状態は不要ではありませんか。

TRONchipについては、おっしゃる通りだと思います。

* soda 2007-04-28 04:20:34 [Edit]

もちろん有無は分かると思います。
フォールトが起きたページをページインしたあと命令を再実行する方式の場合、
その命令でアクセスするページ数が主記憶のサイズを越えるように細工してや
ると、永遠に次の命令に進めなくて楽しい(?)ですよね…って意味でした。
これが、命令を途中で中断して、ページイン後は中断したところから再開する
方式ならば、全部のページが主記憶に納まらなくても、先に進めるでしょうが…
確か TRON chip は (m68k のように) 再開型ではなく、再実行型だったと思います。
分かりづらくてすいません。

* furukawa 2007-04-28 03:08:52 [Edit]

えっと、あの、命令の実行開始時にページフォールトの有無はわかると思いますよ。
TRONの多段間接アドレッシングについては、嘆いていた人が...

* soda 2007-04-14 08:38:16 [Edit]

はい、確かに。
TR 命令の場合、機能の複雑さよりも、それが割り込みを許さず、ページフォールト
時に巻き戻されるというあたりが超ヤバイですよね。なんでまたそういう仕様にする
必要があったんでしょう。他のプロセッサで同時に動いているスレッドと共有して
いるメモリに対して実行した場合、他のプロセッサからはどう見えるんでしょうね。
無限段間接の方は、定数サイズの状態だけプロセッサ内部に保持すれば実装でき
るでしょうから、O(L)の状態が必要な TR 命令よりは簡単なんだと思います。

無限段命令の方は、もし実装されていたら、たった一命令でスラッシングを
起こし、永遠に次の命令を実行できないプログラムとかで遊べたんじゃないか
と思うと残念(?)です。

* nminoru 2007-04-14 03:13:57 [Edit]

sodaさん:
TRON chip も十分にやばいですね。
でも多段のアドレッシングでもメモリ読み込みだけを繰り返している分には、何とか割り込みを実装できそうな気がします。今の AMD64 アーキテクチャだって、TLB が外れた場合のページテーブル検索は通常 4 段ですし、仮想化機能の Nested Paging が有効な場合は 4 + 4 = 8段のページテーブルを行いますから (^_^;

名無しさん:
どう使うのかは私も良く知らないのですが、ASCII ⇔ EBCDIC の文字コードの変換などに使うらしいです。D2(B2) の位置に256バイトの変換テーブルをおいて、D1(L,B1) の先にある文字列(バイト列)を変換するみたいですね。

* 名無しさん 2007-04-13 23:54:49 [Edit]

不思議な命令ですね・・・どんな用途に使うんでしょうか・・・?

* soda 2007-04-12 12:14:50 [Edit]

> ページフォルトが起きた場合はメモリに何もなかった状態に巻き戻されます (あるいは命令が完了してはじめてメモリに書き込まれます)

あわわわ、そうなんですか。それはヤバい。
TRON chip も 命令フォーマット上は、無限段間接アドレッシングみたいなとんでもない機能があったようですが、実装上は2段だか3段だかに制限されていたようですね。気合いがたりません。(ぉ
(TRON chip は fault 後、68k 系のように命令を中途から再開するのではなく、よくある再実行タイプだったはずなんですが、ページフォールト時にどうするつもりで、そういう命令フォーマットにしたのか、昔から疑問でした。)

Powered by くっつき BBS