.bss仅用于保存零初始化的数据,不会在可执行文件中占用空间,但会占用内存。 .data(以及与之相关的节,例如.rodata)实际上会占用可执行文件中的空间,并通常保存字符串、整数甚至整个对象。典型程序中有很多零初始化数据,因此不会使其在输出文件中占用额外空间是一个重要的优点。至于多个*data节... .rodata/.data可用作内存保护的提示(禁止覆盖.rodata,允许读/写.data)。