我听说过“C运行时”、“Visual c++ 2008运行时”等。NET通用语言运行时等。
在Linux上编写汇编语言时,我可以使用INT指令进行系统调用。那么,运行时只是一堆将低级函数包装成更抽象和高级函数的预制函数吗?但这看起来更像是库的定义,而不是运行时的定义吗?
是“runtime"和“# EYZ0"两种不同的东西?
这些天,我在想也许运行时与所谓的虚拟机有一些共同之处,比如JVM。下面这句话引出了这样的想法:
这个编译过程非常复杂,很难破解 有几个抽象层,这些抽象层通常包括三个 翻译器:编译器、虚拟机实现和 汇编程序。——计算系统的要素(介绍, 通往硬件之地的道路)
这本书专家C编程:C语言的深层秘密。第6章运行时数据结构是对这个问题的有用参考。
以下是我对处理器设计有所了解后的一些看法。整个计算机只是抽象的多个层次。它从基本的晶体管一直到运行的程序。对于任何level N
抽象,它的运行时是直接的level N-1
抽象,在它下面。是上帝给了我们抽象的0级。