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
吴章金-Android_Linux_RAS_Practice
Search
Zoom.Quiet
May 27, 2013
Technology
0
180
吴章金-Android_Linux_RAS_Practice
[5.15]2013I/O大会珠海GDG直播之夜——吉大分场纪实
http://www.chinagdg.com/thread-1815-1-1.html
Zoom.Quiet
May 27, 2013
Tweet
Share
More Decks by Zoom.Quiet
See All by Zoom.Quiet
PyCon2014China-Zhuhai-high performance
zoomquiet
0
130
PyCon2014China-Zhuhai-meta programming
zoomquiet
1
99
PyCon2014China-Zhuhai-bpm.py
zoomquiet
0
78
PyCon2014China-Zhuhai-luna kv db
zoomquiet
0
84
PyCon2014China-Zhuhai-seed studio
zoomquiet
0
60
PyCon2014China-Zhuhai-Docker Registry Build By Python
zoomquiet
0
75
PyCon2014China-Zhuhai-jeff
zoomquiet
0
56
PyCon2014China-Zhuhai-pythonic front-end
zoomquiet
0
84
DevFest2014-Zhuhai-Polymer
zoomquiet
0
360
Other Decks in Technology
See All in Technology
TypeScript、上達の瞬間
sadnessojisan
46
13k
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
720
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
750
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
290
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
220
フルカイテン株式会社 採用資料
fullkaiten
0
40k
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
インフラとバックエンドとフロントエンドをくまなく調べて遅いアプリを早くした件
tubone24
1
430
複雑なState管理からの脱却
sansantech
PRO
1
140
Taming you application's environments
salaboy
0
180
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.6k
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
52
13k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
GraphQLとの向き合い方2022年版
quramy
43
13k
Unsuck your backbone
ammeep
668
57k
A better future with KSS
kneath
238
17k
How to Ace a Technical Interview
jacobian
276
23k
How to Think Like a Performance Engineer
csswizardry
20
1.1k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Music & Morning Musume
bryan
46
6.2k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Happy Clients
brianwarren
98
6.7k
Transcript
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 - Android Linux RAS Practice - 吴章金
[email protected]
http://www.tinylab.org 2013 年 3 月 27 日 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 概要 RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 MX2 Uptime: 1037 小时 = 43 天 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 RAS 应用目标(产品角度): Longer Uptime ▶ 用户体验 ▶ RAS 是产品的基本需求也是核心需求 ▶ 品牌价值 ▶ 提升用户口碑,扩大品牌价值 ▶ 降低成本 ▶ 降低返修率和维修费用 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 RAS 应用目标(技术角度): Longer Uptime ▶ Reliability: 可靠性高 = 死机次数 / 持有时间 ▶ 故障(死机、重启等)少 ▶ Availability: 高可用性 = Uptime / 持有时间 ▶ 持续可用时间长 ▶ 性能高、响应快 ▶ 系统内存泄露少 ▶ 待机功耗小 ▶ Serviceability: 高可维护性 = Uptime / 开发周期 ▶ 解决问题快 ▶ 手段多 ▶ 工具齐全 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 Android: Linux Inside Figure : Android/Linux 关系示意图 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 Android + Linux = Android Linux Figure : Android 对 Linux 做了大量改进 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 Android RAS Practice: RAS Revolution ▶ Error Reporting ▶ Ram Console: Panic to DRam ▶ Apanic: Panic to Flash ▶ Panic Timeout ▶ Logger + Logcat ▶ Debugger ▶ IRQ/FIQ Debugger ▶ Android Debug Bridge(adb) ▶ Ledtrig-Sleep ▶ Autotest ▶ CTS ▶ Fastboot ▶ Monkeyrunner 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 Android RAS Practice: RAS Revolution(Cont.) ▶ Improve Performance ▶ OOM –> LowMemoryKiller ▶ Ashmem/Pmem + Binder ▶ Yaffs2 ▶ Power Management ▶ Early suspend ▶ Autosleep + Wakelocks ▶ Alarm Timer ▶ Security ▶ Paranoid network 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 RAS 部署: 一个可靠性防护的系统性保障工程 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 RAS 三要害: Faults, Errors and Failure ▶ Faults/缺陷 ▶ 固有的不足和瑕疵 ▶ 例如:需求不明确、设计缺陷、算法漏洞、代码不规范 ▶ Errors/错误 ▶ 运行过程中,上述缺陷引起的的偏离正确状态的各种问题 ▶ 例如:因为延迟不够导致访问寄存器出错,因为锁操作设计 缺陷导致死锁等 ▶ Failures/故障 ▶ 使用时,上述错误导致的偏离客户需求的各种系统表现 ▶ 例如:需求不完整导致系统运行不符合客户需要,系统运行 过程中资源不够而崩溃,组件不兼容,文档描述错误 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 RAS 三要害关系(实例分析) :逐步恶化 ▶ 需求: 当余额不足 100 或者刚好为 100 时,不允许提款 ▶ 实现 if (Balance < 100) return false; else WithDrawal(); ▶ 缺陷、错误和故障 ▶ 缺陷 ▶ Bug: if (Balance < 100) ▶ 错误 ▶ 不正确的条件: when Balance = 100 ▶ 故障 ▶ 偏离需求: withDrawal() called when Balance = 100 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 RAS 三要害防护措施 ▶ Serviceability: Fault Removal/修复缺陷 ▶ 分析和总结各种常见的故障模式 ▶ 在故障出现之后修复缺陷 ▶ 对应问题的解决过程/Debug 过程 ▶ 代价最大 ▶ Availability: Fault Tolerance/容错机制 ▶ 运行过程中即使出现错误,也能够继续提供服务 ▶ 对应软件本身的运行过程 ▶ 代价较小 ▶ Reliability: Fault Prevention/预防缺陷 ▶ 避免/检测缺陷的引入和发生 ▶ 对应产品发布之前的整个研发进程 ▶ 代价最小 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 RAS 防护之盾 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 RAS 防务图 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 Android RAS 防务图 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 参考资料 ▶ 一张图证明这手机不错、有招! (招已给完) ▶ http://bbs.meizu.cn/viewthread.php?tid=4360801&highlight= ▶ Android OS for Servers? ▶ http://elinux.org/images/8/89/Elc2011_stultz.pdf ▶ Andriod - A case study of an Embedded Linux Project ▶ http://elinux.org/images/c/ca/Gregkh-android-presentation-kernel.pdf ▶ Linux Inside Android Picture ▶ http://devsbuild.it/resources/type/presentation/inside-androids-ui ▶ Android Linux Picture ▶ http://www.androidpit.com/Ice-Cream-Sandwich-Top-15-Rumors-About-Android-4-0-Part-2 吴章金
[email protected]
- Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 谢谢 吴章金
[email protected]
- Android Linux RAS Practice -