我听说过类似“C运行时”,“Visual c++ 2008运行时”,“。NET公共语言运行时”等。
什么是“运行时”?
它是用什么做的?
它如何与我的代码交互?或者更准确地说,我的代码是如何被它控制的?
在Linux上编写汇编语言时,我可以使用INT指令进行系统调用。那么,运行时只是一堆将低级函数包装成更抽象和高级函数的预制函数吗?但这看起来更像是库的定义,而不是运行时的定义吗?
“运行时”和“运行时库”是两个不同的东西吗?
加1
这些天,我在想也许运行时与所谓的虚拟机(如JVM)有一些共同之处。下面这句话引出了这样的想法:
这个编译过程非常复杂,很难分解
有几个抽象层,这些抽象层通常包括三个
翻译器:编译器、虚拟机实现和
汇编程序。——《计算系统的要素》(导论,
通往硬件领域的道路)
加上2
《专家C编程:深层C语言秘密》一书。第6章运行时数据结构是对这个问题的有用参考。
加3 - 2021年2月28日上午7:31
以下是我对处理器设计有所了解后的一些看法。整个计算机就是多个层次的抽象。它从基本的晶体管一直到运行的程序。对于任何抽象级别N,它的运行时间是直接的抽象级别N-1,在它下面。是上帝给了我们抽象的0级。
根据维基百科:运行时库/运行时系统。
在计算机编程中,运行时库是编译器使用的特殊程序库,用于在计算机程序运行时(执行)实现编程语言中的函数。这通常包括用于输入和输出,或用于内存管理的函数。
A run-time system (also called runtime system or just runtime) is software designed to support the execution of computer programs written in some computer language. The run-time system contains implementations of basic low-level commands and may also implement higher-level commands and may support type checking, debugging, and even code generation and optimization.
Some services of the run-time system are accessible to the programmer through an application programming interface, but other services (such as task scheduling and resource management) may be inaccessible.
回复:你的编辑,“运行时”和“运行时库”是同一件事的两个不同的名字。