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
リセットとフリーズで解析する電子辞書リバエン記 / reverse-engineer-e-di...
Search
Takumi Sueda
November 20, 2021
Technology
2
6.6k
リセットとフリーズで解析する電子辞書リバエン記 / reverse-engineer-e-dictionaries-with-reset-and-freeze
Kernel/VM 探検隊 online part4 LT
小説版:
https://www.zopfco.de/entry/reset_freeze_re
Takumi Sueda
November 20, 2021
Tweet
Share
More Decks by Takumi Sueda
See All by Takumi Sueda
組み込みLinuxの時系列
puhitaku
4
1.5k
電子辞書にステータスバーを実装する
puhitaku
0
220
知育おもちゃの遊び方 Lv. 999
puhitaku
5
2.9k
ルーターでプレゼンする
puhitaku
1
5.1k
AST as Black Magic
puhitaku
0
120
次世代の足下を舗装するコミュニティ
puhitaku
5
1.8k
電子辞書で学ぶ Linux のサスペンド
puhitaku
0
630
USB PD で迎える AC アダプター大統一時代
puhitaku
2
2.6k
電子辞書のアイデンティティを消す方法
puhitaku
3
3.9k
Other Decks in Technology
See All in Technology
EMConf JP の楽しみ方 / How to enjoy EMConf JP
pauli
2
150
DMMブックスへのTipKit導入
ttyi2
1
110
AWS Community Builderのススメ - みんなもCommunity Builderに応募しよう! -
smt7174
0
170
AWS re:Invent 2024 recap in 20min / JAWSUG 千葉 2025.1.14
shimy
1
100
デジタルアイデンティティ人材育成推進ワーキンググループ 翻訳サブワーキンググループ 活動報告 / 20250114-OIDF-J-EduWG-TranslationSWG
oidfj
0
530
The future we create with our own MVV
matsukurou
0
2k
なぜfreeeはハブ・アンド・スポーク型の データメッシュアーキテクチャにチャレンジするのか?
shinichiro_joya
2
450
生成AI × 旅行 LLMを活用した旅行プラン生成・チャットボット
kominet_ava
0
160
ドメイン駆動設計の実践により事業の成長スピードと保守性を両立するショッピングクーポン
lycorptech_jp
PRO
12
1.8k
商品レコメンドでのexplicit negative feedbackの活用
alpicola
1
350
dbtを中心にして組織のアジリティとガバナンスのトレードオンを考えてみた
gappy50
0
240
2024AWSで個人的にアツかったアップデート
nagisa53
1
110
Featured
See All Featured
Faster Mobile Websites
deanohume
305
30k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
960
Designing Dashboards & Data Visualisations in Web Apps
destraynor
230
52k
GraphQLとの向き合い方2022年版
quramy
44
13k
Why Our Code Smells
bkeepers
PRO
335
57k
Bash Introduction
62gerente
610
210k
How to train your dragon (web standard)
notwaldorf
89
5.8k
Measuring & Analyzing Core Web Vitals
bluesmoon
5
210
Rails Girls Zürich Keynote
gr2m
94
13k
Scaling GitHub
holman
459
140k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
500
GitHub's CSS Performance
jonrohan
1030
460k
Transcript
Kernel/VM online part 4 LT @puhitaku
Takumi Sueda @puhitaku NICT HOMMA Inc. Twitter
SHARP Brain SHARP Windows CE CE exe (PE) 2011
TOSHIBA TMPA 9 10 CRAXBG (armv 5 tej) + 64 MiB DRAM Windows CE 2012 2020 NXP i.MX 2 83 (armv 5 tej) + 12 8 MiB DRAM Windows CE 2021 ??? SHARP Brain 3 https://jp.sharp/edictionary/products/pwsh 1 _overviiew.html
SHARP Brain 2019 2020 SHARP Brain PW-SH 1 Linux +
i.MX 283 Raspberry Pi Brain Linux SD Brain Linux 4 https://jp.sharp/edictionary/products/pwsh 1 _overviiew.html
2021 1 Brain
Brain https://jp.sharp/edictionary/topics/ 6
Brain https://brain-library.com/ 7
Brain OS SoC i.MX 283 8
Brain 9
Brain 10
Brain 11
Brain SoC NXP i.MX 7 ULP i.MX 7 ULP =
Cortex-A 7 + Cortex-M 4 12
Brain (Windows CE PE) OS 13
None
objdump 0 Arm 15
as ELF .text 16
17
resource hog 18
_start return 19
20
0x 00 0000 00 21
return 0 x 0 00000 0 0 22
U-Boot
U-Boot 1 . MMU 2 . MMU U-Boot U-Boot 24
U-Boot & OS API JTAG UART TX UART I/O
25
U-Boot 1bit 26
U-Boot 1 MMU
U-Boot MMU MMU mrc SCTSR MMU mcr MMU 28 SCTSR
U-Boot MMU mrc 29
U-Boot MMU 30
U-Boot MMU mrc SCTSR return 31
U-Boot 2 U-Boot
U-Boot U-Boot U-Boot MMU U-Boot 3 : 1 .
Brain 2 . DRAM 1. 1. 3 . 2. 64 KiB (large page) 1. U-Boot 33
U-Boot 2 U-Boot 1
U-Boot U-Boot 1 35 Brain 1 MiB NOP mov pc,
lr NOP = mov r0, r0
U-Boot U-Boot 1 36 1 5 MiB Brain 15 MiB
1 ( 4 Bytes) 1 5 MiB DRAM 128 MiB 11.7%
U-Boot 2 U-Boot 2
U-Boot U-Boot 38 NOP MMU NOP 1 NOP 6 4
KiB NOP NOP ……… 2 1
U-Boot U-Boot 2 39 Virtual Memory 1 5 MiB
1 MMU Physical Memory MMU
U-Boot U-Boot 2 40 1 Physical Memory 0 x
6000 000 0 0 x 6800 000 0 1 !"#$ %&'( !"#$ 1
U-Boot U-Boot 2 41 1 Physical Memory 0 x
6 78000 0 0 DRAM 15 MiB %&'( 0 x 6000 000 0 0 x 6800 000 0
U-Boot 2 U-Boot 3
U-Boot U-Boot 43 2 MMU NOP NOP 6 4
KiB NOP 3 1 NOP NOP NOP NOP
U-Boot U-Boot 44 112 64 KiB NOP NOP 6 4
KiB 3 1 NOP NOP NOP NOP 112 …
U-Boot U-Boot 1 . ✅ U-Boot 2 . ✅ MMU
3 . ✅ MMU U-Boot 1 5 MiB 0x 7 0 0 0 0 0 u-boot.bin 0x 67 800000 U-Boot U-Boot 45
U-Boot
U-Boot i.MX 7 ULP con fi g 47
U-Boot 48
U-Boot U-Boot shell 49
Linux
Linux U-Boot Image printk UART Linux 51
Linux @pepepper_cpp Mailbox Unit Linux MU NXP upstream MU merge
52
Linux Linux Linux 53
None
μITRON RTOS I/O I/O 55
& Speakerdeck 56