Atmel AT91SAM9260EK ボード上で実行されている組み込み Linux システムがあり、リアルタイム優先度で実行されている 2 つのプロセスがあります。マネージャー プロセスは、POSIX メッセージ キューを使用して定期的にワーカー プロセスに "ping" を実行し、ワーカー プロセスの正常性をチェックします。通常、往復の ping には約 1 ミリ秒かかりますが、非常にまれにそれよりも長く (約 800 ミリ秒) かかります。より高い優先度で実行される他のプロセスはありません。
ストールはロギング (syslog) に関連している可能性があります。ロギングを停止すると、問題は解決するようです。ただし、ログ ファイルが JFFS2 にあるか NFS にあるかは違いはありません。他のプロセスは「ディスク」に書き込みません-syslogだけです。
これらのストールが発生している理由を追跡するのに役立つツールは何ですか? 私は latencytop を認識しており、それを使用します。他に便利なツールはありますか?
いくつかの詳細:
- カーネル バージョン: 2.6.32.8
- libc (syslog 関数): uClibc 0.9.30.1
- syslog: ビジーボックス 1.15.2
- スワップスペースが構成されていません[編集で追加]
- ルートファイルシステムはtmpfs上にあります(initramfsからロードされます)[編集で追加]