Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
電子辞書で学ぶ Linux のサスペンド
Search
Takumi Sueda
March 11, 2023
Technology
910
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
電子辞書で学ぶ Linux のサスペンド
情報科学若手の会 春の陣 2023 #wakate2023s
Takumi Sueda
March 11, 2023
Transcript
24 slides
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
More Decks by Takumi Sueda
See All by Takumi Sueda
自作バイナリを動かす「入口」8選
puhitaku
2
1.3k
三人寄ればチューリング完全
puhitaku
6
4.1k
これまでのハード遊びまとめ ノンストップ40分スペシャル
puhitaku
1
400
令和最新版 OpenWrt を 22 年前のルーターで動かす
puhitaku
0
7.4k
組み込みLinuxの時系列
puhitaku
4
2k
電子辞書にステータスバーを実装する
puhitaku
0
470
知育おもちゃの遊び方 Lv. 999
puhitaku
5
3.8k
ルーターでプレゼンする
puhitaku
1
8.7k
AST as Black Magic
puhitaku
0
240
Other Decks in Technology
See All in Technology
Kiro 入門 (1 つのエージェントを、どの画面からでも) | 目指せ Kiro マスター 01
inariku
PRO
6
1.7k
令和の今、あらためて IAM を考える。アクセスキーを「無くせない現実」との向き合い方
kazzpapa3
0
680
並列度を下げたら速くなった — go build の重複コンパイルを実測で見る
tomoaki25
2
1.2k
うちなーぐちが認識できるなら、秋田弁もいけるはず!? Amazon Transcribe方言チューニング検証
ryouto715
1
170
Frontier Teams — Amazon は AI で「開発のやり方」をどう変えたのか
kmotohas
0
220
JAWSコミュニティに 参加して1年経った結果
ssakita
0
130
Sizing, Benchmarking and Performance Tuning Apache Flink Clusters
rmetzger
0
160
「AIチャットからもできないの?」と言われたら ~業務アプリをMCP対応するときの認証・認可の勘所
oidfj
0
320
ぼくのClaude Codeの使い方
falken
PRO
1
4.5k
田んぼの見回りをIoTで減らしたい!水位監視から電池駆動カメラまでの試行錯誤
itosoft
1
120
2026 Apache Flink Community Checkpoint
rmetzger
0
250
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
17
120k
Featured
See All Featured
Test your architecture with Archunit
thirion
2
2.5k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Building Better People: How to give real-time feedback that sticks.
wjessup
371
20k
Code Reviewing Like a Champion
maltzj
529
40k
Testing 201, or: Great Expectations
jmmastey
46
8.4k
Practical Orchestrator
shlominoach
192
12k
We Are The Robots
honzajavorek
0
440
Crafting Experiences
bethany
1
440
What the history of the web can teach us about the future of AI
inesmontani
PRO
3
810
A designer walks into a library…
pauljervisheath
211
25k
Highjacked: Video Game Concept Design
rkendrick25
PRO
2
560
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
300