代码是否被视为可移植可执行文件格式中的初始化数据,初始化数据和单元化数据之间的确切区别是什么

Is code seen as initialized data in the Portable Executable format, and what exactly are the difference between initialized and unitialized data?

本文关键字:数据 初始化 单元 之间 是什么 区别 是否 可执行文件 可移植 格式 代码      更新时间:2023-10-16

代码是否被视为可移植可执行文件(PE(格式中的初始化数据,初始化数据和单元化数据之间的区别究竟是什么?

根据以前的经验,我认为初始化的数据是字符串或整数,但可执行代码在PE上下文中也被称为初始化的数据吗?

此外,初始化数据和单元化数据之间究竟有什么区别?

文件上写着:

截面数据

节的初始化数据由简单块组成字节。但是,对于包含全零的节不需要包括数据。

每个进程基本上由4部分地址空间组成进程可访问,其中之一是。数据部分,分为:

1( 初始化的只读数据:它包含数据元素由程序初始化,并且在过程的执行。

2( 初始化的读写数据:它包含数据元素由程序初始化,并将在流程执行。

3( 未卫生化的数据:这包含的元素不是由程序初始化,并在进程执行之前设置为0。这些也可以被修改并被称为BSS(块启动符号(。这个这些元素的优点是,系统不必在该区域的程序文件,b'Cz在进程开始执行。

代码是否被视为可移植可执行文件(PE(格式中的初始化数据

任何程序的代码都可以在.文本部分找到,它包含要执行的实际指令。在许多操作系统上,它被设置为只读,类似于初始化的只读数据。

初始化数据和单元化数据之间究竟有什么区别?

因此,它们之间的区别在于它们的值,初始化的数据在进程开始前由程序设置了一个唯一的值,可以是读写或只读数据,另一方面,未初始化的数据值由操作系统设置为0,你可以在这里看一看。

Amrane Abdelkader。