系统运行时

运行时,运行时,经常听到大家说这个术语,那这到底是指什么呢?
runtime 描述了程序运行时候执行的软件/指令,在每种语言有着不同的实现,可大可小。在C库中, runtime是库代码。等同于C runtime library。一系列C程序所需要的函数。在java中,runtime提供了Java 程序运行所需的虚拟机等。

总而言之,runtime是一个通用的抽象的术语,指的是计算机程序运行的时候所依赖的一切代码库,框架,平台等。

golang runtime

在go中,有runtime库,其实现了垃圾回收,并发控制,堆栈管理等一些go语言的关键特性。runtime库是每个go程序的一部分,也就是说编译go为机器代码的时候也会将runtime编译进来。所以go官方将其定位偏向于类似于C语言中的库。Go中的runtime不像Java runtime(JRE,java runtime enviroment) 一样,jre会回提供虚拟机,java程序还需要在JRE下才能运行。

总结起来,runtime是提供支持语言特性的库的名称,也就是Go程序执行的时候使用的库。runtime主要由C语言编写,并且是每个Go包的最顶级的包,你可以在目录$GOROOT/src/runtime 中找到相关内容。

参考

2.7. Go 运行时(runtime)
什么是运行时(runtime)