题目
程序从用户源程序变为内存中可执行程序,需经历的核心步骤包括()。A. 编译B. 连接C. 装入D. 调度
程序从用户源程序变为内存中可执行程序,需经历的核心步骤包括()。
A. 编译
B. 连接
C. 装入
D. 调度
题目解答
答案
ABC
A. 编译
B. 连接
C. 装入
A. 编译
B. 连接
C. 装入
解析
本题考查程序从用户源程序变为内存中可执行程序所经历的核心步骤的相关知识。解题思路是依次分析每个选项是否为该过程的核心步骤。
- 选项A:编译
编译是将高级语言编写的源程序翻译成目标机器语言的过程。源程序是程序员用高级语言编写的代码,计算机不能直接理解和执行高级语言,所以需要通过编译器将其转换为目标代码。例如,使用C语言编写的源程序,经过编译器编译后会生成对应的目标文件(通常扩展名为.obj 或.o)。因此,编译是程序从源程序变为可执行程序的重要步骤。 - 选项B:连接
编译生成的目标文件通常不能直接运行,因为它可能引用了其他目标文件或库中的代码和数据。连接的作用就是将多个目标文件以及所需的库文件组合成一个完整的可执行文件。在连接过程中,会解决目标文件之间的符号引用问题,将各个部分正确地链接在一起。例如,一个程序可能使用了标准库中的函数,连接时就会将标准库中的相关代码链接到可执行文件中。所以,连接也是必不可少的步骤。 - 选项C:装入
连接生成的可执行文件存储在磁盘上,计算机要执行该程序,需要将其从磁盘装入到内存中。装入程序会将可执行文件的代码和数据加载到内存的合适位置,并为程序分配必要的内存空间,使得程序可以在内存中运行。因此,装入是程序能够在内存中执行的关键步骤。 - 选项D:调度
调度是操作系统中用于管理和分配CPU时间的机制,它决定了哪个进程可以在CPU上运行以及运行多长时间。调度是在程序已经装入内存并处于就绪状态后,操作系统对多个进程进行资源分配的操作,并不是程序从源程序变为内存中可执行程序的核心步骤。