Go(又称Golang)语言诞生于2009年, 是一种静态强类型、编译型、并发型并具有垃圾回收功能的编程语言,被称为“21世纪的C语言”, 具有“部署简单、并发性好、语言设计优雅、执行性能好”等诸多的优点。目前的Go语言在国内外的社区都非常热门,很多著名的开源项目如Kubernetes、etcd、docker 和 Prometheus 等都使用Go语言开发。
此次LoongArch架构得到golang开源社区原生支持意味着LoongArch64架构Go会随着社区同步发展, 为各种云原生项目、微服务架构、DevOps平台等迁移到LoongArch架构奠定了基础, LoongArch生态建设再次迈出坚实一步,为国际开源软件发展注入中国创造新动力。
2021年5月龙芯中科向golang社区提交了LoongArch架构支持计划, 2021年8月龙芯中科向社区正式提交了完整的LoongArch架构源码,之后龙芯中科与golang社区保持密切沟通, 联合社区开发者对LoongArch64架构支持源码进行了详细检视、深入讨论和多轮修改迭代, 2022年5月代码全部通过社区技术评审进入主干开发分支,LoongArch成为golang社区原生支持的全新指令架构。
除golang编译器外,golang社区的重要的子项目net、sys、tool也加入了LoongArch架构的支持(下图),为Go开发的项目从其他架构平滑迁移到LoongArch架构打好了基础。
- github.com/golang/net/tree/master/ipv4
- github.com/golang/net/tree/master/cpu