在很多不同的朋友的一起努力下,SRS测试和适配了信创的多个芯片和操作系统,不仅解决了CPU的适配,还解决了各种依赖项目的编译问题,这大概就是开源和生态的重要意义之一。
SRS的目标,是适配我们国家的所有主要芯片和系统。
Note: 木兰开源社区依托科技部和工信部双重支持,同时工信部电子四院又是国家信息技术及国际ISO标准和测评的第三方中立机构,SRS也很荣幸得到国家相关部委的认可,成为木兰开源社区的孵化项目。因此,SRS能够参与到国家信息化国产化的贡献中,是无比光荣的任务。
为何很重要
关于信创有很多官方的资料,分析了我们要做芯片和操作系统等基础设施的重要性,我从我个人片面的理解中汇报下个人的体会。
芯片和操作系统,并不是某个流行的芯片和操作系统,比如X86、ARM或Linux,实际上就算国外也有多如牛毛的芯片和操作系统。不仅仅是做出来很有挑战,关键是那庞大的IaaS、PaaS和SaaS层的软件和硬件,要做成一个成熟体系更难。
我们国家的芯片和系统,也有很多不同的路线。有自主程度比较高的,也有和现有生态结合比较紧的。优势也意味着挑战,自主程度高就意味着要建立自主的庞大生态。
比如SRS在适配中,我们去年适配完loongarch64芯片,完全自主的CPU,就需要对底层逻辑做适配,难度和工作量相对比较大一些,但是只要适配完后,后续的收获也会更大。
到底何为生态?中国的饮食文化就是非常好的生态,各地都有非常特色的小吃,比如湖南长沙的麻辣小龙虾,我们作为消费者(使用者),是不用学会怎么制作麻辣小龙虾,就可以参与到这个生态中消费。
在庞大的芯片和操作系统生态中,就算是专业的计算机技术人员,也不可能了解所有的技术细节,大部分我们都是麻辣小龙虾的消费者,从这个角度说,生态就是每个人把自己特色的小吃做好。
SRS只是整个软件宇宙生态中一粒沙,做好自己这粒沙,适配我们国家信创的所有主要芯片和系统,就是最重要的事情。
现在的状态
在很多不同的朋友的一起努力下,SRS测试和适配了信创的多个芯片和操作系统,最新名单和状态可以点阅读原文
查收,下面是目前为止确认适配过的系统和芯片的组合。
SRS适配过的芯片,以C的检测宏为准:
- Loongarch:
__loongarch64
- ARM:
__arm__
,__aarch64__
- MIPS:
__mips__
,__mips64
- RISC:
__riscv
- X86:
__i386__
,__x86_64__
,__amd64__
Note: 新的芯片适配,主要需要修改汇编适配轻量线程,特别感谢肖志宏、刘歧、殷时友等同学做出的努力。一个完全新的芯片的适配,大概在1到7天,所以目前相关工具链已经非常完善,相对几年前难度降低了不少。
SRS适配过的操作系统,按适配的顺序排序:
- 龙芯
- 麒麟
- 中科方德
- UOS:有朋友反馈可以编译和运行SRS,但我没确认过。
Note: 其他基于Linux的系统,一般也是可以支持的,若遇到问题,可以反馈给我。
未来要做的事
适配芯片和操作系统,其实不一定是需要改代码,更多时候是不同环境的差异,需要解决各种在专业技术人员看起来相对比较简单的一些编译问题。
适配基本上不是高大上的创新,而是典型的脏活累活。但生态不仅仅是高大威猛的乔木,森林中的小虫子也是生态的基础构成。
适配不能一蹴而就,如果你遇到新的信创的环境需要适配,或者现有环境有新的问题,欢迎反馈给我们。
欢迎提交Patch,做好SRS这一粒沙。