Linux応答時間の実力

Linux コーナ
ハードを隠ぺいしたお任せ OS を組み込みで使う可能性を探る
実験リサーチ!
カーネル内部
とことん可視化計画
Linux応答時間 の 実力
第
11 回 アイドル時の低消費電力化機能の効き目
海老原 祐太郎
ベース・ボードEB724
CAT724ボード
USB
電圧/
電流計
SH-4Aマイコン
USB
SH7724
SDカード
CAT724ボード
①アイドル時の
タイマ割り込み
設定をコンフィグ
で変えてビルドした
Debian Linuxを格納
Debian Linuxを格納
SH-4Aマイコン
SH7724
SDカード
GPIO Port A
RAM
USBの
電流値
を測る
コネクタ
オシロスコープ
サスペンド・コマンドで
情報をRAMに待避して
RAM以外の電流をオフ
②タイマ割り込み中“H”
, スリープ直前に“L”
を出力するプログラムを作っておく
(a)実験1…アイドル時のタイマ割り込み設定を変えてみる
(b)実験2…サスペンド・コマンドを試す
図 1 こんな実験…ビルド設定や専用コマンドを使ったときの低消費電力化の効果を調べる
● バッテリ駆動 Linux 機器に求められること…
低消費電力化
バッテリで駆動するLinux 組み込み機器では,瞬発
力(=高クロックでの演算能力)だけではなく,アイド
ル時(待機時)の消費電力を下げることが求められます.
消費電力を減らすような処理は,具体的には,
・待機状態からのすばやい立ち上がり
・イベント発生のすばやい検知
・処理そのものの短時間化(=省ステップ化)
です.例えば,パソコンやスマートフォンでは,
・キーボード,マウス操作や画面のタップといった
人間からの入力
・ネットワーク送受信
・音声入出力,動画のコマ再生(タイマ処理)
といったイベント発生時に,すばやく短時間で処理を
終えることが求められます.
● 今回やること…節約しながら Linux を動かして
みる
そこで,今回は消費電力を下げる実験をしてみます.
プログラミングではなく Linux のしくみを使うだけで
どこまで消費電力を下げられるか確認してみます.
2015 年 2 月号
(1)Linux の「コンフィグ」を使って,アイドル時の
タイマ割り込み周期を変えたり,タイマ割り込みを
省略したりする
(2)RAM にレジスタの情報を退避して RAM 以外の
電源を切るサスペンド機能を使ってみる
こんな実験
今回行う実験を図 1 に示します.
・実験 1-1…コンフィグでアイドル時のタイマ割り込
み周期を変えてみる
・実験 1-2…コンフィグでアイドル時のタイマ割り込
みを省略する
・
実験 2…サスペンド機能(CPU 休止機能)を専用コ
マンドで試す
実験 1 では,コンフィグで省電力機能を設定したあ
と再ビルドを行い,オシロスコープで消費電流を測定
します.写真 1 は実験 2 のようすです.
▶ハードウェア
実験に使用するボードは 500MHz 動作の SH-4A マイ
コン SH7724(ルネサス エレクトロニクス)を搭載する
CPU ボード CAT724 +ベース・ボード EB724(シリコ
第 1 回 電源投入からカーネルが起動するまでの動作(2013 年 11 月号)
第 2 回 ハード制御で需要! 割り込み処理を時間で終わらせる三つのしくみ(2013 年 12 月号)
第 3 回 マルチタスク OS のキモ! タスク切り替えの基本動作(2014 年 1 月号)
159