![]() |
1
2
我见过两种主要的方法。许多程序由许多较小的部件组成,这些部件在运行时动态加载,通常这些文件只被较新版本替换。由于更新通常只影响这些文件中的一小部分,所以补丁程序可能是整个应用程序的一小部分。另一种方法,我已经看到用于更大的单片应用程序的方法,实际上是使用一种“二进制diff”来更改可执行代码。这种方法的缺点之一是,在不需要执行每次增量更新的情况下,更难支持从一个版本升级到一个新版本—几个版本之前。 |
![]() |
2
0
我怀疑大多数时候,“补丁”只是一些替换文件。 但是,可以比较两个二进制文件,确定它们之间的差异,并创建一组将一个文件更改为另一个文件的编辑命令。例如,UNIX实用程序“diff”可以对文本文件执行此操作。 |
![]() |
Ilya Loskutov · 无法将单词加载到寄存器中 2 年前 |
![]() |
Ari157 · x86_64 Linux程序集中的逻辑与实现 2 年前 |
![]() |
Arya · 汇编语言中的“标签”——操作码 3 年前 |
![]() |
S1mple · 通过gcc生成64位共享库时的“未定义的主引用” 3 年前 |
![]() |
R0M2 · 为什么“GCC”忽略汇编代码的-fno pic 3 年前 |
![]() |
Akagi Akira · 如何在gnu汇编程序中组装MIPS cpu 3 年前 |