软件执行
计算机或虚拟机执行计算机程序指令的过程
计算机和软件工程中的执行是计算机或虚拟机执行计算机程序指令的过程。 程序中的指令触发执行机器上的简单操作序列。 这些动作根据程序中的指令的语义产生效果。
执行的背景
执行的上下文至关重要。很少有程序在裸机上执行。程序通常包含关于执行时可用资源的隐式和显式假设。大多数程序在操作系统和特定于源语言的运行时库的支持下执行,这些库提供不是由计算机本身直接提供的关键服务。例如,这种支持性环境通常将程序与计算机外围设备的直接操作分离,而是提供更通用的抽象服务。
过程
在执行之前,必须首先编写程序。这通常在源代码中完成,然后在编译时(在链接时静态链接)将其编译为可执行文件。然后,通常由操作系统调用此可执行文件,操作系统将程序加载到存储器(加载时间),可能执行动态链接,然后通过将控制移动到程序的入口点来开始执行。所有这些步骤都取决于操作系统的应用程序二进制接口。此时执行开始,程序进入运行时。程序然后运行直到它结束,正常终止或崩溃。
翻译器
执行程序的系统称为程序的解释器。简而言之,口译员实际上做了该计划所要做的事情。这与将程序从一种语言转换为另一种语言的语言翻译形成对比。最常见的语言翻译是编译器。翻译人员通常将其源代码从高级人类可读语言转换为较低级别的语言(有时与本机机器代码一样低),使处理器直接执行更简单,更快捷。这个想法是执行与程序翻译的比例会很大;也就是说,程序只需要编译一次,并且可以运行任意次。这可以为翻译与源语言的直接解释提供很大的好处。由于编译,一个权衡是开发时间增加。在某些情况下,只需重新编译已更改的文件。然后需要重新链接可执行文件。对于某些更改,必须从头开始重建可执行文件。随着计算机和编译器变得更快,这一事实变得不那么成为障碍。而且,最终产品的速度对于用户而言通常比开发时间更重要。
翻译人员通常会产生一个完全无法执行的抽象结果。通常,操作系统会在程序开始执行之前将转换程序的目标代码转换为最终的可执行形式。
最新修订时间:2022-08-25 18:39
目录
概述
执行的背景
过程
参考资料