7.4 デバッグ
分散計算においては, 一般にデバッグが困難となる. ‘ox_asir’ に
おいては, デバッグのためのいくつかの機能を提供している. 
7.4.1 エラーオブジェクト
OpenXM server が実行中にエラーを起こした場合, 結果のかわりに
CMO エラーオブジェクトをスタックに積む. エラーオブジェクトは, 対応する
SM コマンドのシリアル番号と, エラーメッセージからなり, それによって
どの SM コマンドがどのようなエラーを起こしたがある程度判明する. 
[340] ox_launch();
0
[341] ox_rpc(0,"fctr",1.2*x);
0
[342] ox_pop_cmo(0);
error([8,fctrp : invalid argument])
 
7.4.2 リセット
ox_reset() は現在実行中の server をリセットして, コマンド受け付け
状態に戻す. この機能は, 通常の Asir セッションにおけるキーボード割り込み
とほぼ同様に, OpenXM server をリセットできる. また, 何らかの原因で, 
通信路のデータが載ったままの状態で ox_rpc() などを実行すると, 
ox_pop_cmo() など, スタックからの取り出しと, 実際に読まれるデータ
の対応が不正になる. そのような場合にも有効である. 
7.4.3 デバッグ用ポップアップウィンドウ
server には, client におけるキーボードに相当する入力機能がないため,
server 側で動作しているユーザ言語プログラムのデバッグが困難になる. この
ため, server 側でのユーザ言語プログラム実行中のエラーおよび, client から
の ox_rpc(id,"debug") 実行により, server にデバッグコマンド
を入力するための小さなウィンドウがポップアップする. このウィンドウからの
入力に対する出力は, log 用の ‘xterm’ に表示される. このウィンドウを
閉じるには, quit を入力すればよい. 
 
  この文書は11月 1, 2025にtexi2html 5.0を用いて生成されました。