信创这个概念对于大家来说并不陌生,至少我们在海量的新闻中会时不时的听到这个概念,特别是在西方国家对中国进行技术封锁加剧时,证券市场中它还会时不时成为一个风口板块。
其实“信创”理解起来也并不困难,就像它的字面意思:信息技术应用创新产业,旨在实现信息技术领域的自主可控,保障国家信息安全。
但是从字面上很难看出到底有哪些技术创新是国家所引导和重点建设的,今天就准备从这里开始说下信创产业到底包含哪些。
信创产业的发展
我们国家的整个信创产业可以分为4个阶段,早在80年代就已经开始关注到自主可控,从操作系统到服务器都有一些水花,但随着“棱镜门”、“技术封锁”等黑天鹅事件的发生,信创的步伐逐渐开始加快,在2018年国家将整个信创产业上升到战略级别,而根据计划在2027年国央企需要完成信息化系统的全部信创改造,可见至少在国家层面信创产业和技术都是值得留意的。
信创产业类别
从下面这张图可以直观的看出来,整个信创产业包含的范围还是比较广泛的,包括基础硬件(服务器、电脑、CPU、GPU)、云等基础设施、基础软件、应用软件、网络安全等IT产业链核心技术产品。
抛开和我们开发者关系远一点的基础硬件,云基础设施在国内也已经比较成熟了,这里也不展开讲,主要想看看作为一名普通的开发者,应该如何关注信创技术向的一些趋势和变化。
重点关注的技术趋势
这个我认为关系比较密切的应该当属基础软件,而基础软件中又包括操作系统、数据库、中间件和桌面云。
操作系统
首先再具体讲下基础软件中的操作系统,最核心的基础软件,其向下衔接硬件层的物理设备,向上为应用软件提供运行环境,并提供必需的人机交互机制。不管是 Windows、macOS、Android 目前都属于外国巨头掌控,一旦封锁影响也是最大的一块。
当前麒麟、统信、中科方德、欧拉等一众的操作系统也开始浮出水面,与主流操作系统相比,我认为信创系统在软硬件适配仍有巨大差距,限制了系统可用性,但从个人另一个实际的感受来讲,信创操作系统的生态发展任重道远,很多应用场景都确实相应的软件。但是如果信创操作系统在应用兼容性方面继续改进,说不准开发者对于相关应用的开发和兼容会更加积极一些。
这里用一组数据来看看实际的差距:
• 麒麟:软件适配140万种,硬件适配60万种(2023年)
• 统信:软件适配85万种,硬件适配32万种(2023年)
• Windows:应用数量3500万,硬件/驱动组合1600万(2018年)
数据库
其实我国的数据库产业发展的还非常不错,特别是 NoSQL、NewSQL、分布式、HTAP、云原生、AI原生等新型数据库给予了国内数据库厂商“换道超车”的机会,部分产品已具备国际竞争力,例如几大云厂商陆陆续续推出的云原生等自研数据库产品,放在世界级的评测中都不落后。
但是说回到信创产业下的数据库,产品之外,生态与服务配套不足是严重阻碍信创数据库的一个大石头,特别是相关机制及生态伙伴的发展完善需要统筹下重力建设。
另外一点,我个人认为向下适配各类硬件及操作系统,向上支持各类应用是比较急迫需要解决的,不然信创数据库在做数据库迁移时需解决大量兼容性问题,更具体来讲我认为是这两点: • 数据迁移层面,迁移时间紧迫,且迁移规则不够全面清晰。 • 应用迁移层面,迁移改造的专业能力要求高,前期较难高效全面评估出所有不兼容的问题,后期适配改造的工作量也很大。
如果数据库能够持续增强合作伙伴激励机制,或许能够加速吸纳外部开发者的参与,至少从协同角度能够降低数据库迁移的成本。
中间件
中间件,顾名思义是一个位于操作系统、数据库和应用软件之间的基础软件。它通常具备共性和复用的价值,使应用软件可以与不同的计算机和网络进行交互,而不必考虑底层技术细节。
基于应用场景不同,中间件可分为基础中间件和广义中间件两类:
举个例子,目前比较热火的小程序容器,就属于中间件的一类,例如 FinClip 它是通过在客户端中集成一个小程序容器,来运行小程序的一种技术方案。小程序容器技术可以提供一个独立运行环境和安全沙箱环境,从而使得小程序可以在不同的平台和设备上运行,同时也提高了小程序的安全性和稳定性。
小程序容器作为软件中间件具有很大的价值,主要表现在以下几个方面:
1、提供了应用程序的运行环境:小程序容器提供了一个独立的运行环境,使得开发者可以在不同的平台和设备上开发和部署应用程序,不需要关注具体的硬件和操作系统环境。
2、提高了应用程序的安全性:小程序容器为应用程序提供了安全的沙箱环境,使得应用程序的运行不会影响到系统的其他部分。同时,小程序容器还提供了一些安全机制,如权限控制、数据加密等,保障应用程序的安全性。
3、降低了应用程序的开发成本:小程序容器提供了许多常用的功能和组件,如UI组件、网络请求、本地存储等,使得开发者可以快速构建应用程序,并且不需要编写复杂的底层代码。
4、提高了应用程序的用户体验:小程序容器提供了快速启动、无需下载、即用即走等特点,使得应用程序可以快速地被用户接受和使用。