【Linux】current clocksourceの設定確認~変更をする方法を解説

今回は、current clocksourceの設定確認~変更の方法までまとめて説明していきたいと思います。

そもそもclocksourceとは

アラーム, 時間, フラット, 起きてください, 睡眠, リンギング, 古い, レトロ, 目覚まし時計

clocksourceとは、ざっくり言うとOSが時刻を取得するためのソースのことを指し、current clocksourceとはその名の通り現在設定されているclocksourceのことを指します。

clocksourceにはXen、タイムスタンプカウンター (TSC)、高精度イベント タイマー (HPET)、アドバンスドコンフィグレーション・アンド・パワーインターフェイス (ACPI)などなど様々な種類があり、インスタンスによって推奨されるものが異なります。

推奨のものに設定していないと、パフォーマンス低下の恐れがあるみたいなので、チェックしておきたいパラメータの1つです。

clocksourceの例として、TSCとXenの説明を引用しました。

TSC clocksource :
ユーザーランドで特定の CPU レジスタから時刻を読み取る。Linux Kernel や Xen hypervisor の呼び出しを伴わないので速い

Xen clocksource (Amazon Linux デフォルト):
Kernel 経由で Xen の hypervisor から時刻を取得する。Kernel や hypervisor への切替を伴うので遅い。

【参考】
https://qiita.com/saiya_moebius/items/7169d4376e2710acbfe2

current clocksoureの設定を確認する方法

コマンドプロンプトから以下のコマンドを実行。現在設定されているclocksourceが表示される。

cat /sys/devices/system/clocksource/clocksource0/current_clocksource

また、利用可能なclocksourceは以下のコマンドを実行することで確認可能。

cat /sys/devices/system/clocksource/*/available_clocksource

【参考】
https://qiita.com/saiya_moebius/items/7169d4376e2710acbfe2https://qiita.com/saiya_moebius/items/7169d4376e2710acbfe2

current clocksoureの設定を変更する方法

設定変更には動的な変更と、永続的な変更の2パターンがあります。

current clocksourceの動的な変更方法

*動的な変更は、OSを再起動すると設定がリセットされてしまうので注意

スーパーユーザ権限でbashを実行。以下の例ではcurrent clocksourceを「tsc」に変更している。

sudo bash -c 'echo tsc > /sys/devices/system/clocksource/clocksource0/current_clocksource'

カーネルのメッセージを確認。

dmesg | less

成功すると以下のメッセージが表示される。

clocksource: Switched to clocksource tsc

current clocksourceの永続的な変更方法

grub2を使用する場合。
/etc/default/grub ファイルを編集。以下の記述を追加する。(tscに設定)

GRUB_CMDLINE_LINUX="console=tty0 crashkernel=auto console=ttyS0,115200 clocksource=tsc tsc=reliable"

その後、grub.cfgファイルを生成する。

grub2-mkconfig -o /boot/grub2/grub.cfg

【参考】
https://aws.amazon.com/jp/premiumsupport/knowledge-center/manage-ec2-linux-clock-source/

以上。

\\\\\Linuxを勉強するなら/////

Linuxについて勉強したい方はLinuCの資格取得がおすすめです。

LinuCとは、中立・公正にLinux技術者の技術力を証明する認定資格です。レベルは3段階あり、レベル1は全てのIT技術者の基礎となる知識が求められます。

私は、ベストセラーの上記書籍で勉強をしてLinuCレベル1合格までこぎつけることができました。(LPICは旧試験ですが、LinuCもこの本で受かります。)

体系的にLinuxについて学べるかつ資格取得もできるので、Linuxを今後触る方はぜひLinuCの資格取得を検討してみてください!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です