写点什么

vivo 猛练操作系统“内功”,用 Rust 完成全栈自研

  • 2024-10-11
    北京
  • 本文字数:4304 字

    阅读完需:约 14 分钟

大小:2.10M时长:12:15
vivo 猛练操作系统“内功”,用 Rust 完成全栈自研

九月,Sam Altman 发布长文称,超级智能将在数千天内实现,而每个人都将有一个属于自己的 AI 团队。


这一判断呈现出几个关键信息:当下的 AI 能力仍然不是最终形态,但支撑未来 AI 的“内功”,要在未来几年内练好,以迎接超级智能落地。而这套“内功”需要在交互层面做出革新,因为届时将有数个 AI Agent 接入,形式不同于传统的人机交互。


考虑到生成式 AI 的快速发展,安全性也须多加注意,用 Sam Altman 的话说,是“最小化其危害”。

这一判断,实际上与 vivo 最近一年多在操作系统层面的动作不谋而合——vivo 关注“内功层面”的修炼很久了。蓝河内核及蓝河操作系统 2 的发布,在内存安全、智慧交互等方面做足了文章。



安全这事儿,没啥捷径


对于 2024 VDC 的发布而言,用 Rust 语言完成蓝河内核自研,最为吸引眼球。C/C++ 在内存安全方面的设计,长期以来饱受诟病,而近几年与之相关的安全事件频发,实在是有些骇人。


7 月,CrowdStrike 作为全球最负盛名的安全公司之一,却引发了一场全球性的安全事故——未通过基本 DevOps 流程的代码,被人为地进行全量发布。


此前的 WannaCry、NotPetya 等事件,都是以内存为攻击对象。因为 C 语言不支持原生垃圾回收机制,所以尽管经过了多年的锤炼,还是留下了很多隐患。


反观 Rust,在堆栈保护上更加完善,且不支持操作原始指针,从根儿上绝了许多网络攻击的路。

但是否要因此用 Rust 编写完整的操作系统内核呢?对于 vivo 来说,是的。



一方面,手机厂商自研操作系统,几乎成为大势所趋,使用 Rust 来自研,并没有战略上的分歧,只是具体的技术路线抉择。蓝河操作系统完成全栈自研,几乎是一个信号——没有自研操作系统,也就无法围绕 AI 深度定制智能体验,等于放弃了去往 AI 时代的“船票”。


另一方面,vivo 几乎是最看重 Rust 语言的手机厂商。2023 年年底,vivo 就在开发者大会上官宣成为行业首家用 Rust 编写系统框架的企业,但还没有发布自研操作系统内核。因此在实际的代码中,少不了带着“unsafe”关键字的 Rust 函数(unsafe:绕过 Rust 安全机制禁止的操作)。某种程度上,这更像个研发进度问题——继续使用 Rust 完成内核自研,几乎是必然的。


此外,Rust 在技术社区内,几乎是默认的 C/C++ 上位替代语言。据 InfoQ 此前报道,软件工程师 Alex Gaynor 在社区内强调,“数据已经一再证明,当项目使用内存不安全语言(例如 C 和 C++)时,就会受到大量安全漏洞的困扰。”


而微软 Azure 首席技术官 Mark Russinovich 则直接呼吁开发人员弃用 C 和 C++,转投 Rust 的怀抱。

总结下来,用 Rust 编写底层代码,是在规避现有内核天然的安全隐患时,最为彻底且有效的方式。尽管考虑到资源投入,这事看起来不太轻松。


如果单纯的是开发成本受限,拥抱 Rust 这事儿还没那么难以接受。最让 CTO 们叹气的是,Rust 的人才缺口太大了。


Rust 是新晋的热门语言,本身生态还处于发展早期。此外,Rust 以学习难度高而著称,比如其“享誉”开发者圈的“所有权系统”。望而却步的程序员太多,社区的整体活跃度就较低,参考资料也少,对新人更加不友好。受此影响,一份来自 Rust 中文社区的职位调查报告显示,海外 Rust 招聘,以高级、中级岗位为主,面向初级岗位的招聘相当少见。


vivo 的策略是,重点投入开源。


VDC 发布会上,vivo 副总裁周围正式宣布,vivo 将对基于 Rust 语言编写的蓝河实时内核进行开源。这意味着国内开发者社区,自此多了一个可参考性更强、更完整的 Rust 项目,是难得学习机会。


vivo 和开放原子开源基金会的合作也很深入,尤其是在赛事上的合作——vivo 自 2023 年起,已经连续两届参加开放原子大赛。


开放原子大赛是由开放原子开源基金会组织举办的开源技术领域专业赛事,2024 年的第二届开放原子大赛,在 2024 开放原子开源生态大会上,由工业和信息化部总经济师、办公厅主任高东升,中国工程院院士倪光南,开放原子开源基金会理事长程晓明,中国石油股份有限公司副总地质师兼勘探开发研究院党委书记李国欣,重庆市经济和信息化委员会党组成员、副主任吴涛,中国科学院软件研究所副所长武延军,以及来自 vivo、华为、腾讯、浪潮、软通动力等共建方代表,共同揭幕。


第二届开放原子大赛特别设置了奖金最高、难度最大的巅峰挑战赛,仅包含两道赛题,而其中之一就是 vivo 发起的《vivo 蓝河操作系统创新赛-C/C++与 Rust 生态互通工具自动化解决方案》,奖金池高达一百万元。同时,vivo 还在 2024 VDC 大会上宣布了将携手开放原子开源基金会,致力于把蓝河操作系统创新赛打造成为行业内最具含金量和影响力的 Rust 顶尖赛事(感兴趣的开发者可在文末了解)。



交互能力,是个重点


vivo 内功的第二个“修炼重点”,在于智慧交互。


自生成式 AI 爆发,将近两年时间件过去了,像 perplexity 般的应用仍然很稀有,且和现有的智能硬件融合困难,基本谈不上有什么化学反应。


其中一个根本在于,生成式 AI 的能力目前仅在 Web 或 App 端有所体现,极少得到系统级的集成。因此受限于交互形式,没有对产品体验做出根本性变化。


当下市场的大部分产品,尚处于与 AI 智能体交互的早期阶段,需要根据不同的应用场景,唤起不同的终端应用。vivo 在交互上的理念是,保证 AI 的启动享有最高优先级,能够全界面一步调起智能体助手,使之享有全域零层级。在输入实现多层级输入方式,在最终的反馈上,给与用户清晰的所见即所得。


为此,vivo 十分关注基于蓝河操作系统提供服务时,大模型的推理的连续性,也就是所谓模型的记忆力。vivo 在蓝河操作系统中,为此构建了一个独立进程的数据管理服务,集中管理用户各类数据,为感知服务和搜索功能提供数据来源。


这也意味着蓝河操作系统 2 实现了所谓的“全域智能”。



全域智能是个大话题,最早起源于物联网领域,核心是全场景、全平台的实时智能连接。而放到移动设备上,尤其是手机、手表、pad 等设备,还要对 AI 的主动调起和被动调起做区分。


智能终端设备,长期以来,一直向“个人助理”的角色靠拢,比如手机是通信和资讯助理,手环是个人健康助理。但这种靠拢的价值十分有限——人的需求很多时候是藏在水面下的。传统设备没有认知智能,所以无法先用户一步,发现其需求,全部的体验都依赖用户的主动调起,几乎不存在被动调起。


真正意义上的被动调起,在生成式 AI 崛起后成为可能,按时下流行的说法,叫做“意图框架”。“意图框架”的设计目标是先用户一步,发现需求,调起 AI 和一些快应用,服务用户的便捷生活。


可以看出,vivo 的意图框架,关键在于数据输入和多端协同。


蓝河操作系统支持的数据输入是多模态的,包含常见的文字、语音、图片。以及移动设备独有的拖曳、长按等物理操作。输入入口则把智能助手、负一屏、搜索、桌面等模块都包括在内,基本适配了 vivo 目前旗下终端设备的全部场景。


应该说,这套方案未来的想象空间很大,如果能横跨各厂商形成统一的行业标准,可能会井喷式的爆发“Killer APP”。


至于 vivo 自己,则是在手表这一产品上,做了大胆的尝试。


vivo 造手表,核心是 AI


前面无论是安全问题,还是连接问题,回归到本源,实际都是为未来的交互变革做好铺垫。


而率先在手表上发力,多少有些“秀肌肉”的成分在里面。


首先手表的算力弱于手机,对蓝河大模型的预训练质量、模型蒸馏情况,都提出了比较高的要求;此外手表覆盖的场景其实更加丰富,除了日常 APP 的使用,还需要考虑各类运动场景。



本次 vivo 推出了首款搭载蓝河操作系统的手表 vivo WATCH 3 ,在此基础上又推出全新 vivo WATCH GT 系列手表。主打功能就是蓝心小 V 语音助手,以及与 AIGC 相关的各类便携式功能。


蓝心小 V 语音助手可以提供个性化的垂类问答、本地技能、健康百科知识以及智能教练的问答能力。其目的是让用户可以随时随地获取健康方面的知识,也可以对自身的健康数据进行查询和获得更有针对性的健康建议,让智能手表不仅局限于时间和通讯,也兼备了健康管理功能。


在健康管理方面,vivo WATCH 3 集成的 AI 运动教练与手机内集成的版本是联通的,给用户提供私教式的使用体验。它可以监测用户的运动状态,并进行运动计划的个性化定制和指导,使得用户能够更科学、更有效地进行健身锻炼。


AI 运动教练能够为用户量身定制专业的运动计划,根据用户个人的身体情况和健身目标,提供相应的运动课程,并允许用户根据需要创建、调整、查询或退出运动计划。


在运动中,AI 运动教练可以感知用户的身体情况,向用户提供实时的语音指导,并播报专业的运动建议,帮助用户更好地进行运动锻炼。同时,AI 运动教练还可以进行动作要点的讲解,使用户能够更深入地理解如何正确进行运动动作。


如果 AI 运动教练和手表的硬件功能结合度够好,对于几年前流行的健身魔镜类产品,甚至会成为“降维打击”。


至于 AIGC 类的功能,主要是 AI 表盘编辑、AI 速记等。比如用户对说蓝心小 V 说,生成长城表盘,蓝心小 V 就会直接跳转到 AI 表盘工坊,并进行生成。


生成后的 AI 表盘支持编辑能力,保留支持布局调整,更换表盘颜色,增加部件等选项。


而 AI 速记,对于文字类工作者,或经常参加会议的同学而言非常友好。记录后的内容,会自动同步到 OriginOS 的原子笔记中,进行 AI 处理,如润色,简化,总结,或者生成格式化的文案。


头部厂商的历史任务,是生态


无论是内存安全、智慧交互,还是在智能手表上的实践,都意味着 vivo 的护城河之一是落在生态上。英伟达过去 20 余年的成功,给了国内企业太多的启发。


这里的生态,不仅包括以蓝河为基础的国产操作系统开发生态,也包括企业间合作。



对于前者,蓝河操作系统开放了 12 大模块的系统能力,并以两套 API 开放给开发者。此外还提供了蓝河开发套件,包含蓝河 Studio、设计师工具、蓝河 SDK、开发者网站等开发工具。这其中也包含开放智能体平台——让人人可自定义专属智能体应用,系统分发将三方应用、三方服务、快应用和智能体连接在一起,实现服务快速分发和流量变现。尤其是对个人开发者来说,这是个重大利好。


至于后者,蓝河操作系统开放了 Native 开发框架,并从 0 到 1 搭建了基于 canvas 的渲染引擎,实现地图瓦片渲染能力。同时提供了完整的底层系统能力接口,和百度地图一起接入 Native 开发框架,在手表端升级了在线地图导航能力。


在汽车出行方向,蓝河操作系统和多家车企达成合作,包括零跑汽车、比亚迪汽车、宝马汽车、特斯拉汽车等车企都已接入蓝河生态。车企可以基于蓝河操作系统开放的 BlueXlink 互联技术的支持,构建智能控车方案,包含 NFC 控车、蓝牙控车、云控车等方案,更适应未来的购车需求。


随着时间的推移,类似的合作只会越来越多,从前国产操作系统在办公软件、设备驱动等兼容性方面的尴尬,已经成为历史。


对于国内的开发者而言,我们只需耐心等待头部厂商的生态圈,开花结果。



2024-10-11 18:241

评论

发布
暂无评论

基于ResNet50实现宫颈细胞病变分类

逝缘~

分类神经网络 7月月更

小程序遇上Flutter 3.0

Geek_99967b

flutter 小程序

React Table 表格组件使用教程 排序、分页、搜索过滤筛选功能实战开发

蒋川

排序 React 表格 组件库

设计稳定的微服务系统时不得不考虑的场景

阿里巴巴云原生

阿里云 微服务 云原生 OpenSergo

Istio整体架构解析

阿泽🧸

istio 7月月更

一款代替Typora的软件---MarkText

IT蜗壳-Tango

7月月更

瑞云与宜宾职院开展校企合作,同深圳VR联合会共建元宇宙产业学院

3DCAT实时渲染

职业教育 虚拟现实 虚拟仿真 元宇宙

长安链研究笔记-证书生成工具

长安链

「阿里云 RocketMQ 系列公开课」重磅来袭!

阿里巴巴云原生

Apache 阿里云 RocketMQ 云原生 直播

使用 doscify 将文章写成文档一般丝滑

宁在春

GitHub Pages docsify 7月月更

hive on spark 和 spark on hive

飞哥

大数据 spark hive

聊聊 API 管理-开源版 Yapi 到 SaaS 版 Apifox

Liam

WebRTC 音频抗弱网技术(下)

融云 RongCloud

阿里云架构师马继雨:云超算解决方案全面助力生命科学行业普惠增效

阿里云弹性计算

高性能计算 生命科学 EHPC

mac 本地安装spark

飞哥

大数据 spark 数据仓库

mac 本地hive2 安装

飞哥

大数据 hadoop hive

深度揭秘阿里云函数计算异步任务能力

阿里巴巴云原生

阿里云 Serverless 云原生 异步 函数计算

云原生(四) | Docker篇之网络和存储原理

Lansonli

Docker 云原生

什么是hpaPaaS平台?低代码和hpaPaaS是什么关系?

优秀

低代码

3DCAT投屏功能升级,助力企业营销与培训

3DCAT实时渲染

虚拟仿真 实时云渲染 3DCAT 企业营销 实时渲染云

机器学习-西瓜书小记

AIWeker

机器学习 7月月更

【刷题记录】8. 字符串转换整数 (atoi)

WangNing

7月月更

普通二本院校如何从所谓的从寒冬破冰?

KEY.L

7月月更

6. 对象存储

MASA技术团队

C# .net 对象存储 框架 Framework

一位 sealer maintainer 的心路历程

阿里巴巴云原生

阿里云 开源 云原生 sealer

Flutter 实现小姐姐渐现动画效果

岛上码农

flutter ios 前端 安卓开发 7月月更

编译器优化那些事儿(4):归纳变量

openEuler

openEuler 毕昇 JDK 开源操作系统 编译器 加速器 编程语言

微服务与Kubernetes容器云的边界

穿过生命散发芬芳

微服务 7月月更

大数据15周作业

Asha

避坑:@Around与@Transactional混用导致事务不回滚

Paul

Spring Boot 2 事务失效 spring aop Java’

几种跨平台方案的对比

Geek_99967b

小程序 跨平台

vivo 猛练操作系统“内功”,用 Rust 完成全栈自研_操作系统_王一鹏_InfoQ精选文章