[ << ] [ < ] [] [ > ] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

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 を入力すればよい.


[ << ] [ < ] [] [ > ] [ >> ]

この文書は12月 30, 2024texi2html 5.0を用いて生成されました。