本文为洛奇看世界(guyongqiangx)原创,转载请注明出处。
原文链接:https://blog.youkuaiyun.com/guyongqiangx/article/details/132389438
0. 导读
说来惭愧,几年前,我把 Android 的 system/update_engine 目录下早期的代码翻了一遍,很多地方提到了并且使用了 extent 这个概念来处理数据,但我一直没有搞懂 extent 到底是个什么东西,只是知道一个 extent 由两个数据表示,一个表示起始位置,另一个表示长度。在制作升级包时,差分操作基于 extent 进行;在设备端升级时基于 extent 进行还原。仅致于此,并没有继续深究~
最近才了解到 extent 是现在常见的文件系统组织方式,突然一惊,真是 out 了,这打破了我一直以为文件系统都是基于 blockmap 进行处理的陈旧观念。
本文对 Android OTA 中对 Extent 的处理进行深入全面的分析。
核心代码《Android Update Engine 分析》系列,文