Raspberry PiでIoTなシステム開発:リアルタイムタスクと非リアルタイムタスクとの違い:波形生成

Posted on Posted in 趣味的なIT・ネットの話題

リアルタイムタスクと非リアルタイムタスクの性能差を確認すべく、Raspbbery Piに矩形波を生成させ、ストレスをかけてみました。使用したコードは以下の通り。

公式のサンプルにWiringPiでのピンのアップダウンを加えただけです。これがhigh_priorityの方。

low_priorityはhigh_priorityの上記の優先度設定部分をコメントアウトしたものです。

ストレスはstressコマンドでかけました。low_priorityは起動直後は良いのですが、stressで負荷をかけた途端ぐちゃぐちゃになります。一方high_priorityはそのまま。よく見るとstressをかけない状態でもhigh_priorityの方が波形が安定している様に見えます。

デフォルトカーネルもconfig_preemptは入っているので、それとの比較をすべきなのですが、手元に環境が無いのでそれはまたいつか。

 

 


Facebooktwittergoogle_pluspinterestlinkedinmail
納得したらすぐにシェア!