我使用“封送处理”一词来表示“以某种形式将数据/参数传递给它们,使其可以通过仅接受特定形式的接口”,而“序列化”则特别意味着“以字节流表示数据”。也就是说,序列化是封送处理的一种方法,但是在我称为封送处理的域之外也有使用。
一些没有序列化的封送处理示例:
- 在内核syscall入口点接受的寄存器中将参数放入syscall。 (我之所以不称其为序列化,是因为寄存器之间没有抽象顺序,并且因为某些数据可能位于实际寄存器之外,而由它们指向。)
- 从JSON或XML源构建树结构,以传递到需要树的接口。 (这不是序列化,因为表单是语言级对象,它们之间具有引用,而不是字节流。)
- 在主机应用程序和嵌入式语言(例如Lua)之间来回传递数据。