1.go 的汇编部分:汇编引导、参数整理、核数确定、运行环境初始化(runtime.args、runtime.osinit)
2.运行环境初始化包括:环境变量设置、内存分配器初始化、调度器初始化、垃圾回收器初始化(runtime.schedinit)(最大携程数10000,执行栈64位1G,32位250M)
3.执行函数初始化:设置执行栈最大数量、启动后台并发调度、启动后台垃圾回收、执行runtime包内init()、执行用户包内init()、执行用户main_main() (runtime.main)
4.所有 init 函数都在同一个goroutine内执。
所有 init 函数结束后才会执行main.main函数。