Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
電子辞書で学ぶ Linux のサスペンド
Search
Takumi Sueda
March 11, 2023
Technology
0
730
電子辞書で学ぶ Linux のサスペンド
情報科学若手の会 春の陣 2023 #wakate2023s
Takumi Sueda
March 11, 2023
Tweet
Share
More Decks by Takumi Sueda
See All by Takumi Sueda
これまでのハード遊びまとめ ノンストップ40分スペシャル
puhitaku
1
140
令和最新版 OpenWrt を 22 年前のルーターで動かす
puhitaku
0
1.2k
組み込みLinuxの時系列
puhitaku
4
1.8k
電子辞書にステータスバーを実装する
puhitaku
0
310
知育おもちゃの遊び方 Lv. 999
puhitaku
5
3.1k
ルーターでプレゼンする
puhitaku
1
6.5k
AST as Black Magic
puhitaku
0
150
次世代の足下を舗装するコミュニティ
puhitaku
5
1.8k
USB PD で迎える AC アダプター大統一時代
puhitaku
2
2.7k
Other Decks in Technology
See All in Technology
ハノーファーメッセ2025で見た生成AI活用ユースケース.pdf
hamadakoji
1
470
Biz職でもDifyでできる! 「触らないAIワークフロー」を実現する方法
igarashikana
7
3.4k
入院医療費算定業務をAIで支援する:包括医療費支払い制度とDPCコーディング (公開版)
hagino3000
0
110
SOTA競争から人間を超える画像認識へ
shinya7y
0
480
AIエージェントによる業務効率化への飽くなき挑戦-AWS上の実開発事例から学んだ効果、現実そしてギャップ-
nasuvitz
5
1.2k
webpack依存からの脱却!快適フロントエンド開発をViteで実現する #vuefes
bengo4com
4
3.4k
20251027_findyさん_音声エージェントLT
almondo_event
2
430
アウトプットから始めるOSSコントリビューション 〜eslint-plugin-vueの場合〜 #vuefes
bengo4com
3
1.8k
[VPoE Global Summit] サービスレベル目標による信頼性への投資最適化
satos
0
250
GraphRAG グラフDBを使ったLLM生成(自作漫画DBを用いた具体例を用いて)
seaturt1e
1
150
HonoとJSXを使って管理画面をサクッと型安全に作ろう
diggymo
0
180
ViteとTypeScriptのProject Referencesで 大規模モノレポのUIカタログのリリースサイクルを高速化する
shuta13
3
200
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
10
890
Scaling GitHub
holman
463
140k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
How to Think Like a Performance Engineer
csswizardry
27
2.1k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
How to train your dragon (web standard)
notwaldorf
97
6.3k
The Illustrated Children's Guide to Kubernetes
chrisshort
49
51k
Code Reviewing Like a Champion
maltzj
526
40k
Building Better People: How to give real-time feedback that sticks.
wjessup
369
20k
Fireside Chat
paigeccino
41
3.7k
Transcript
2023 #wakate 2023 s Linux aka @puhitaku
2 Takumi Sueda @puhitaku HOMMA Inc. OSS etc. 3 D
2014
Linux Linux 3 5 3
SHARP Brain SHARP Brain 4
SHARP Brain SHARP Brain PW-SH 1 SHARP 2008 Windows CE
2020 CE exe Brain 2ch Brain Windows CE Wikipedia matplotlib 5
SHARP Brain 6 DRAM: LPDDR 128 MB eMMC: 8 GB
SD Raspberry Pi LCD CPU: NXP i.MX 2 83 ARM 926 EJ-S, armv 5 tej 4 54 MHz LCD: 8 00 x 48 0 SD: SDXC :
SHARP Brain SHARP Brain PW-SH 1 U-Boot Linux 2020 Brain
U-Boot Linux Raspberry Pi SD Linux LCD SD / eMMC etc ... 7
SHARP Brain SHARP Brain PW-SH 1 cpufreq CPU 8 🤔
SHARP Brain SHARP Brain PW-SH 1 cpufreq CPU 9 🤔
None
Suspend-to-Idle Standby Suspend-to-RAM Hibernation Linux 11 "sleep", "system-wide sleep"
1 . Suspend-to-Idle 2 . Standby 😴 Userspace 😴 Timekeeping
tick, 😴 I/O CPU CPU 😴 Suspend-to-Idle 😴 Non-boot CPU 3 . Suspend-to-RAM 😴 Standby 😴 CPU DRAM DRAM 4 . Hibernation 😴 CPU
1 . Suspend-to-Idle 2 . Standby 😴 Userspace 😴 Timekeeping
😴 I/O CPU CPU 😴 Suspend-to-Idle 😴 Non-boot CPU 3 . Suspend-to-RAM 😴 Standby 😴 CPU DRAM DRAM 4 . Hibernation 😴 CPU Suspend-to-RAM
Suspend-to-RAM
Suspend-to-RAM 1 . 2 . 3 . & 4 .
Non-boot CPU CPU IRQ Boot CPU 5 . tick 6 . RAM 7 . Suspend-to-RAM 15
Suspend-to-RAM 1 . 2 . CPU 3 . 4 .
tick 5 . Non-boot CPU 6 . IRQ 7 . (thaw = ) 8 . Suspend-to-RAM 16
Suspend-to-RAM
Suspend-to-RAM Suspend-to-RAM 2 18 Brain SoC MOSFET GPIO SPI, I²C
graceful dev_pm_ops Device Tree Power Management Subsystem ISR Brain GPIO
Suspend-to-RAM /sys/power/state write 19 i.MX 28 Device Tree LCD Suspend-to-RAM
Device Tree
Suspend-to-RAM 20 Suspend-to-RAM 1. pm_wakeup_event PM subsystem 2 . suspend_enter
CPU PC CPU /drivers/input/keyboard/gpio_keys.c L 44 3 (Linux 5 . 4 . 2 3 4 ) /kernel/power/suspend.c L 5 02 (Linux 5 . 4 . 2 34 )
Brain
Brain ✅ Suspend-to-RAM ✅ GPIO ⬜ MCU I²C I²C ISR
Windows ⬜ LCD FET ENABLE GPIO regulator Device Tree ⬜ ⬜ OS Suspend-to-RAM 22
suspend_prepare suspend_freeze_processes [1] userspace [ 1 ] https://elixir.bootlin.com/linux/v 5 .
4 . 23 4 /source/kernel/power/power.h#L 250 Q. kthread userspace 23 Q. 4 SoC Suspend-to-Idle Brain SoC 115mA 86 mA [1] Brain Standby Suspend-to-Idle Suspend-to-RAM LCD [ 1 ] https://twitter.com/puhitaku/status/ 1 62 984 98 629 24 6484 55
Bootlin Elixir: https://elixir.bootlin.com/linux/v 5 . 4 . 2 34 /
Mainline Linux /Documentation/admin-guide/pm/suspend- fl ows.rst /Documentation/admin-guide/pm/sleep-states.rst 24