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
210
吴章金-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
160
PyCon2014China-Zhuhai-meta programming
zoomquiet
1
130
PyCon2014China-Zhuhai-bpm.py
zoomquiet
0
110
PyCon2014China-Zhuhai-luna kv db
zoomquiet
0
92
PyCon2014China-Zhuhai-seed studio
zoomquiet
0
96
PyCon2014China-Zhuhai-Docker Registry Build By Python
zoomquiet
0
110
PyCon2014China-Zhuhai-jeff
zoomquiet
0
86
PyCon2014China-Zhuhai-pythonic front-end
zoomquiet
0
120
DevFest2014-Zhuhai-Polymer
zoomquiet
0
410
Other Decks in Technology
See All in Technology
ブロックテーマ時代における、テーマの CSS について考える Toro_Unit / 2025.09.13 @ Shinshu WordPress Meetup
torounit
0
130
CDK CLIで使ってたあの機能、CDK Toolkit Libraryではどうやるの?
smt7174
4
190
LLM時代のパフォーマンスチューニング:MongoDB運用で試したコンテキスト活用の工夫
ishikawa_pro
0
170
S3アクセス制御の設計ポイント
tommy0124
3
210
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
270
Claude Code でアプリ開発をオートパイロットにするためのTips集 Zennの場合 / Claude Code Tips in Zenn
wadayusuke
5
1.8k
LLMを搭載したプロダクトの品質保証の模索と学び
qa
0
1.1k
サラリーマンの小遣いで作るtoCサービス - Cloudflare Workersでスケールする開発戦略
shinaps
2
470
新規プロダクトでプロトタイプから正式リリースまでNext.jsで開発したリアル
kawanoriku0
1
220
要件定義・デザインフェーズでもAIを活用して、コミュニケーションの密度を高める
kazukihayase
0
120
TS-S205_昨年対比2倍以上の機能追加を実現するデータ基盤プロジェクトでのAI活用について
kaz3284
1
230
Terraformで構築する セルフサービス型データプラットフォーム / terraform-self-service-data-platform
pei0804
1
200
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Speed Design
sergeychernyshev
32
1.1k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
A designer walks into a library…
pauljervisheath
207
24k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
4 Signs Your Business is Dying
shpigford
184
22k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
How to Ace a Technical Interview
jacobian
279
23k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
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 -