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
150
PyCon2014China-Zhuhai-meta programming
zoomquiet
1
120
PyCon2014China-Zhuhai-bpm.py
zoomquiet
0
100
PyCon2014China-Zhuhai-luna kv db
zoomquiet
0
90
PyCon2014China-Zhuhai-seed studio
zoomquiet
0
90
PyCon2014China-Zhuhai-Docker Registry Build By Python
zoomquiet
0
110
PyCon2014China-Zhuhai-jeff
zoomquiet
0
80
PyCon2014China-Zhuhai-pythonic front-end
zoomquiet
0
110
DevFest2014-Zhuhai-Polymer
zoomquiet
0
410
Other Decks in Technology
See All in Technology
[TechNight #91] Oracle Database 最新パフォーマンス分析手法
oracle4engineer
PRO
3
140
CSPヘッダー導入で実現するWebサイトの多層防御:今すぐ試せる設定例と運用知見
llamakko
1
260
AIエージェントを支える設計
tkikuchi1002
11
2.2k
経理出身PdMがAIプロダクト開発を_ハンズオンで学んだ話.pdf
shunsukenarita
1
220
AI エンジニアの立場からみた、AI コーディング時代の開発の品質向上の取り組みと妄想
soh9834
8
570
MCPと認可まわりの話 / mcp_and_authorization
convto
2
290
Step Functions First - サーバーレスアーキテクチャの新しいパラダイム
taikis
1
280
robocopy の怖い話/scary-story-about-robocopy
emiki
0
400
増え続ける脆弱性に立ち向かう: 事前対策と優先度づけによる 持続可能な脆弱性管理 / Confronting the Rise of Vulnerabilities: Sustainable Management Through Proactive Measures and Prioritization
nttcom
1
210
Jitera Company Deck / JP
jitera
0
240
AIを使っていい感じにE2Eテストを書けるようになるまで / Trying to Write Good E2E Tests with AI
katawara
3
1.9k
クマ×共生 HACKATHON - 熊対策を『特別な行動」から「生活の一部」に -
pharaohkj
0
180
Featured
See All Featured
A Tale of Four Properties
chriscoyier
160
23k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
19k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
RailsConf 2023
tenderlove
30
1.2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
530
Documentation Writing (for coders)
carmenintech
72
4.9k
The Invisible Side of Design
smashingmag
301
51k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Transcript
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 - Android Linux RAS Practice - 吴章金 wuzhangjin@gmail.com http://www.tinylab.org 2013 年 3 月 27 日 吴章金 wuzhangjin@gmail.com - Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 概要 RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 吴章金 wuzhangjin@gmail.com - Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 MX2 Uptime: 1037 小时 = 43 天 吴章金 wuzhangjin@gmail.com - Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 RAS 应用目标(产品角度): Longer Uptime ▶ 用户体验 ▶ RAS 是产品的基本需求也是核心需求 ▶ 品牌价值 ▶ 提升用户口碑,扩大品牌价值 ▶ 降低成本 ▶ 降低返修率和维修费用 吴章金 wuzhangjin@gmail.com - Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 RAS 应用目标(技术角度): Longer Uptime ▶ Reliability: 可靠性高 = 死机次数 / 持有时间 ▶ 故障(死机、重启等)少 ▶ Availability: 高可用性 = Uptime / 持有时间 ▶ 持续可用时间长 ▶ 性能高、响应快 ▶ 系统内存泄露少 ▶ 待机功耗小 ▶ Serviceability: 高可维护性 = Uptime / 开发周期 ▶ 解决问题快 ▶ 手段多 ▶ 工具齐全 吴章金 wuzhangjin@gmail.com - Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 Android: Linux Inside Figure : Android/Linux 关系示意图 吴章金 wuzhangjin@gmail.com - Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 Android + Linux = Android Linux Figure : Android 对 Linux 做了大量改进 吴章金 wuzhangjin@gmail.com - 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 吴章金 wuzhangjin@gmail.com - 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 吴章金 wuzhangjin@gmail.com - Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 RAS 部署: 一个可靠性防护的系统性保障工程 吴章金 wuzhangjin@gmail.com - Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 RAS 三要害: Faults, Errors and Failure ▶ Faults/缺陷 ▶ 固有的不足和瑕疵 ▶ 例如:需求不明确、设计缺陷、算法漏洞、代码不规范 ▶ Errors/错误 ▶ 运行过程中,上述缺陷引起的的偏离正确状态的各种问题 ▶ 例如:因为延迟不够导致访问寄存器出错,因为锁操作设计 缺陷导致死锁等 ▶ Failures/故障 ▶ 使用时,上述错误导致的偏离客户需求的各种系统表现 ▶ 例如:需求不完整导致系统运行不符合客户需要,系统运行 过程中资源不够而崩溃,组件不兼容,文档描述错误 吴章金 wuzhangjin@gmail.com - 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 吴章金 wuzhangjin@gmail.com - Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 RAS 三要害防护措施 ▶ Serviceability: Fault Removal/修复缺陷 ▶ 分析和总结各种常见的故障模式 ▶ 在故障出现之后修复缺陷 ▶ 对应问题的解决过程/Debug 过程 ▶ 代价最大 ▶ Availability: Fault Tolerance/容错机制 ▶ 运行过程中即使出现错误,也能够继续提供服务 ▶ 对应软件本身的运行过程 ▶ 代价较小 ▶ Reliability: Fault Prevention/预防缺陷 ▶ 避免/检测缺陷的引入和发生 ▶ 对应产品发布之前的整个研发进程 ▶ 代价最小 吴章金 wuzhangjin@gmail.com - Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 RAS 防护之盾 吴章金 wuzhangjin@gmail.com - Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 RAS 防务图 吴章金 wuzhangjin@gmail.com - Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 Android RAS 防务图 吴章金 wuzhangjin@gmail.com - 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 吴章金 wuzhangjin@gmail.com - Android Linux RAS Practice -
. . . .. . . . .. . .
. .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . .. . . . .. . . . . .. . . . .. . . . . .. . . . .. . . . .. . RAS 应用目标 RAS Android 实践 RAS 系统化部署 参考资料 谢谢 吴章金 wuzhangjin@gmail.com - Android Linux RAS Practice -