xdelta 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
xdelta 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
xdelta 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
xdelta 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
xdelta 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 Apache
开发语言 C/C++
操作系统 跨平台
软件类型 开源软件
所属分类 应用工具文件管理器
开源组织
地区 不详
投 递 者 红薯
适用人群 未知
收录时间 2019-08-07

软件简介

Xdelta3是一种优秀的、被广泛使用的差量更新算法,它在操作上既有对新文件(targetfile)和旧文件(sourcefile)的差分(differencing)又有对产生的patch包进行压缩(compression),我们将产生patch包的过程统称为加密(encoding),而将合成新文件的过程统称为解密(decoding)。Xdelta3和经典的压缩算法LZ’77一样,也是将source file划分成一个个不相交而又连续的window,然后进行encoding和decoding。

设target file的大小为n,source file的大小为m,window的大小为w。由于Xdelta3在合成target file所消耗的时间为O(n),所消耗的内存大小为O(w),所以该压缩算法很适合被移植到手机中。

Xdelta3在产生patch包的时候,主要依靠三个方面:

  1. 采用Vcdiff格式编码,节省patch包字节;
  2. 从target file和source file的内容上做差分;
  3. 压缩patch包。
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (0)

加载中
更多评论
暂无内容
发表了博客
2016/11/07 15:49

[差量更新系列2]Xdelta3原理学习笔记

Xdelta3是一种优秀的、被广泛使用的差量更新算法,它在操作上既有对新文件(targetfile)和旧文件(sourcefile)的差分(differencing)又有对产生的patch包进行压缩(compression),我们将产生patch包的过程统称为加密(encoding),而将合成新文件的过程统称为解密(decoding)。Xdelta3和经典的压缩算法LZ’77一样,也是将source file划分成一个个不相交而又连续的window,然后进行encoding和decoding。 设target file的大小...

0
0
发表了博客
2013/04/24 16:27

C语言常规优化策略--赋值语句优化

C语言常规优化策略 从理论上讲,程序的优化一般分为局部优化、循环优化和全局优化三个层次。所谓局部优化,重点在于删除程序中的无用赋值,利用语言的特性对基本赋值语句优化,局部优化一般不宜过多采用,但如果程序中总是有一些无效赋值或没有引用的变量,这可能给别人造成幼稚的印象;循环优化和全局优化往往能大幅提升程序效率,因此有关的技术对于高质量的程序设计是至关重要的。 本文讨论C语言程序常规优化策略,其重点在于...

0
0
发表于大前端专区
2016/06/17 18:22

原生JavaScript学习之 window对象(ES5标准)

1 window对象的定义? window 对象表示一个包含DOM文档的窗口,其 document 属性指向窗口中载入的 DOM文档 。使用document.defaultView 属性可以获取指定文档所在窗口。(来自 MDN) 所有浏览器都支持 window 对象,它表示浏览器窗口。所有 JavaScript 全局对象、函数以及变量均自动成为 window 对象的成员。全局变量是 window 对象的属性。全局函数是 window 对象的方法。(来自 W3School) 简单地理解成,window就是指当前的浏...

12
139
发表了博客
2012/09/27 17:45

tslib机制分析

tslib,其实从他的名字就可以看出它的,它是touchscreen的lib,其实这样还不够具体,其实它开始确实是为了touchscreen的鼠标驱动而发展起来的,且只是一个中间处理库,即将原始数据进行调整,比如触摸屏定位。只不过后来不知道什么原因,它火了,其他图形都支持这种方式,像高级版本的minigui,qt等成熟嵌入式图形系统。正因为如此,它也就不再局限于touchsrceen,只要是输入设备,只需在tslib里实现,标准的图形系统只需调用tsl...

0
2
发表于DevOps专区
2016/01/04 10:08

命令行的艺术

熟练使用命令行是一种常常被忽视,或被认为难以掌握的技能,但实际上,它会提高你作为工程师的灵活性以及生产力。本文是一份我在 Linux 上工作时,发现的一些命令行使用技巧的摘要。有些技巧非常基础,而另一些则相当复杂,甚至晦涩难懂。这篇文章并不长,但当你能够熟练掌握这里列出的所有技 巧时,你就学会了很多关于命令行的东西了。 这篇文章是许多作者和译者共同的成果。这里的大部分内容 首次 出现 于 Quora, 但考虑到这...

1
7
发表了博客
2020/07/09 14:30

OpenStack制作CentOS7.2.1511镜像

1.下载镜像 直接访问官方镜像地址下载,注意选择中国的镜像源,相对国外镜像下载速率比较快,进入后选择版本为7.2.1511,在isos目录下下载x86_64的Minimal镜像. 2.创建虚拟机 首先需要创建一个qcow2格式镜像文件,用于作为虚拟机的磁盘,大小20G. root@UKVM-IMG:/var/lib/libvirt/p_w_picpaths# qemu-img create -f qcow2centos7.2.1511-L.qcow2 20G Formatting 'centos7.2.1511-L.qcow2', fmt=qcow2 size=21474836480encryptio...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
0 评论
4 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部