これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド crashme です。
プログラム:
NAME
crashme - オペレーティング環境ソフトウェアの堅牢性をテストします
SYNOPSIS
クラッシュミー [NBYTES] [SRAND] [NRYS] [NSUB] [詳細]
DESCRIPTION
クラッシュミー は、動作環境の堅牢性をテストする非常に単純なプログラムです。
ランダム データをプロシージャであるかのように呼び出します。 標準信号をキャッチし、
setjmp で処理され、ループに戻り、次の実行によってフォールトの生成が再試行されます。
ランダムなデータ。 これをストレステストと呼ぶ人もいます。
COMMAND LINE OPTIONS
[Nバイト]
この [Nバイト] ランダムなデータ文字列のサイズを指定する整数である必要があります
バイト単位で。 負の値が与えられた場合、バイトは実行されずに出力されます。
明示的なプラス記号を指定した場合、バイトのストレージは新しく作成されます。
毎回mallocされます。 これは、I と D が別々のマシンに影響を与える可能性があります。
キャッシュメカニズム。 引数にはドット XY を含めることもできます。この場合、Y は
ランダム データへのポインターの増分。 バッファは再計算されるだけです
ポインタがデータの終わりに近づいたとき。
は XNUMX つの魔法の値です。 [Nバイト] : 値 81920 は malloc を回避し、戻り値を返します。
静的データへのポインタ。 これにより、crashme の操作がより再現可能になります。
malloc が予測できない場所を返すように設計されているアーキテクチャ。 価値
1025 の値は、データの保護を READ+WRITE+EXEC に設定する呼び出しを回避します。
【スランド】 この 【スランド】 乱数生成器への入力シードであり、srand に渡されます。
[トライズ]
この [トライズ] プログラムを正常に終了するまでにループする回数です。
[NSUB] この [NSUB] はオプションで、一度に実行する vfork サブプロセスの数です。 もしも
マイナスランが続出。 時刻として指定した場合、hrs:mns:scs (時、分、
秒)、XNUMX つのサブプロセスが完了するまで実行され、続いて別のサブプロセスが完了するまで実行されます。
制限時間に達しました。 この引数が空の文字列として指定された場合、または
。 その場合は無視されます。
順次サブプロセス モードの場合、各サブプロセスには 30 秒の時間制限があります。
サブプロセス。 これは、命令セット空間のランダム ウォークを継続できるようにするためです。
プロセスが無限ループに陥ったとき。 たとえば、エントリは次のようになります。
nbytes はゼロにバッシュされ、非常に大きな数にバッシュされます。 (10秒制限
Windows NT)。
SRAND 引数は、サブプロセスごとに XNUMX ずつ増加します。
[冗長]
この [冗長] arg はオプションです。 0 は最も冗長性が低く、5 は最も冗長性が高くなります。
ENVIRONMENT 変数
クラッシュログ
この クラッシュログ 親プロセスが書き込みモードで開くファイルの名前です
すべての子プロセスは追加モードで開きます。 頻繁にフラッシングが起こる
ファイルには含まれますが、ロックがないため、出力がインターリーブされる可能性があります。 オペレーティング システムの場合
クラッシュした場合、このファイルはさらに再送信される乱数へのショートカットを提供する可能性があります。
シード シーケンスを使用すると、原因となった特殊なケースをより迅速に見つけることができます。
クラッシュ。
クラッシュプン
この クラッシュプン システム提供の rand 関数または MT を使用するには、RAND に設定できます。
西村拓司氏と誠氏がコード化したメルセンヌ ツイスター (デフォルト) を使用します。
まつもと、あるいはVNSQがフォン・ノイマンの著者の下手な解釈を使用する
中四角法。
実施例
これは推奨されるテストであり、少なくとも XNUMX 時間実行します。
クラッシュミー +2000 666 100 1:00:00
onworks.net サービスを使用してオンラインで crashme を使用する