rawmixd [-d len] inkey1 inkey2 outkey shmsize [ logfile ]
rawmix は流れるデータのチャネル番号ごとに過去10秒分までの タイムスタンプの履歴を保存しており、同じチャネル番号で10秒分以内 (実時間での10秒以内ではありません)に同じタイムスタンプのデータ (この場合1チャネル×1秒分のブロックのことです)が来ると、 重複しているものとしてそのデータを廃棄します。 この重複データ廃棄機能は recvt(1W) での -d オプションと同等のもので、 設定のミスによって無限ループができてデータが増殖することを防ぐことや、 複数の伝送経路でわざと重複したデータを送信しておく冗長構成を可能にします。
入力側共有メモリ上の形式は、時間順整列の有無・書き込み時刻の有無・ ブロック末尾のブロック長の有無、のいずれも問いません。 共有メモリ上の形式については order(1W), recvt(1W) を 参照してください。キー inkey1 または inkey2 に 0 を指定すると、それはダミーとなって入力に使われません。 これは入力を1系統のみにして、単に共有メモリのコピーを 作ったり、重複データ廃棄機能のみを利用する場合に有効です。
キー outkey をもつ共有メモリ・セグメントが存在しない場合は、大きさ shmsize (KB) の共有メモリ・セグメントが作られます。すでに存在している場合は、 そのサイズが shmsize (KB) よりも小さいとエラーになります。 出力側共有メモリの形式は、書き込み時刻付き・ブロック末尾のブロック長付きです。 共有メモリ・キーは32ビットの整数値です。
rawmixd は daemon モードで起動します。
ログファイル名 logfile を指定すると、ここに動作ログがとられ、 指定しないとログ情報は標準出力に 送られます(ただし、daemon モードで動い ている時は syslogd(8) に送られます)。ログファイルは書き込みのたび毎に オープン/クローズされます。
rawmix は、引数なしで起動すると簡単な使用法を表示します。