发布网友 发布时间:2022-03-31 05:26
共2个回答
热心网友 时间:2022-03-31 06:56
这涉及到操作系统对EXE文件的装入问题。以DOS为例,它的装入过程要经过以下几个步骤:1. 首先从磁盘取EXE文件,取EXE文件之前,通过判断EXE文件结构而识别之;2. 在可用内存储器的一个小段边界上,构造一个256字节(100h)的程序段前缀(PSP);3. 紧随PSP的下一个地址,也就是PSP起始地址的偏移257字节处,把EXE装入存储器中;4. 把PSP的地址装入DS与ES寄存器;5. 初始化CS,并把IP寄存器设置成代码段中第一条指令的偏移值(通常是0);6. 初始化SS,并把SP设置成栈大小;7. 把机器的控制权交给EXE文件,使其指向EXE代码段的第一条指令;8. CPU根据程序员设定的代码,执行程序,最后将控制权限返回给DOS。热心网友 时间:2022-03-31 08:14
就是个加载的过程,看看windows internals应该有讲。