随着中国香水市场的迅速崛起,香水已逐渐从小众品类转变为大众化消费品。数据显示,2023年中国香水市场规模已突破百亿元大关...
喜欢就 关注我们吧!
出品 | OSCHINA
文 | 局长
谷歌发布博客称 AOSP (Android Open Source Project) 现已支持使用 Rust 开发 Android 操作系统。
谷歌表示,Android 大约 70% 的高危安全漏洞由内存安全问题造成。顺便一提,微软和 Chrome 宣布采用 Rust 解决内存问题时也提到了「70% 的安全漏洞是内存安全问题」这个说法(分别查看微软 、Chrome 的公告)。这是什么定律?
对于这些内存安全问题,谷歌表示除了优化内存错误检测机制外,最有效的解决办法是采用内存安全语言。虽然 Kotlin 和 Java 也属于内存安全语言,同样是为易用性、可移植性和安全性而设计,它们是开发 Android 应用的最佳选择,但对于操作系统的底层而言,不能选择 Kotlin 和 Java。
操作系统底层开发需要使用系统级编程语言,例如 C、C++ 和 Rust,这类语言支持访问底层系统资源和硬件。对于 C 和 C++ 来说,开发者负责管理内存生命周期,但管理内存时因多线程代码库的复杂性很容易导致他们犯错。
Rust 则可以利用编译时检查(确保对象的生命周期和所有权)和运行时检查(确保内存访问有效)来保证内存安全,并且 Rust 在实现这种安全性的同时,还提供了与 C 和 C++ 相当的性能。
谷歌表示,引入新的编程语言并不能解决现有 C/C++ 代码中的错误。即便重新调动 Android 团队中每个软件工程师参与开发,重写几千万行代码并不可行。因此,Rust 主要用于新的开发而不是重写成熟的 C/C++ 代码。
更具体的原因是,谷歌对内存安全错误存在的时长进行了分析,发现大多数内存安全错误都发生在新的或最近修改的代码中,其中大约 50% 只出现了不到一年,这些错误后面会逐渐修复,也就意味着旧代码并不是迫切需要改进的地方。
无论如何,向 Android 平台添加新的开发语言支持是一项大工程。比如需要维护工具链和依赖关系、更新测试基础设施和工具、以及对开发者进行培训等。谷歌表示,在过去的 18 个月里,他们一直在为 AOSP 添加 Rust 支持,并计划在接下来的几个月内共享部分早期使用 Rust 开发的项目。此外,谷歌还计划将 Rust 扩展到更多系统,这将是一个长期计划。
14.8K Star,一款网友高赞的深度学习框架,体验超好,相见恨晚! 2021-04-08
IntelliJ IDEA 2021.1发布,启动界面亮眼 2021-04-08
微软终于对JDK下手了! 2021-04-07
觉得不错,请点个在看呀
想查看更多微信群的小伙伴, 可以点击上面导航栏的微信群 或者下面按钮!
点我查看更多微信群
分享
随着中国香水市场的迅速崛起,香水已逐渐从小众品类转变为大众化消费品。数据显示,2023年中国香水市场规模已突破百亿元大关...
年初的Motobaby全球母婴生活馆,95后的朱雪晨正在挑选一双合适的婴儿鞋,送给即将生产的好朋友,“一般新生儿刚出生的...
“Cool!”一个月前,外交部发言人林剑在国外社交媒体发文,对杭州企业“云深处”出品的机器人“绝影X30”在新加坡电力隧...
2024年12月31日,《北京市自动驾驶汽车条例》表决通过,将于2025年4月1日施行。《条例》重点在自动驾驶技术创新、...
1月8日,开思与全球领先的轮胎制造商德国马牌在深圳举行了“驰骋万里链动未来”深度战略合作签约仪式,并宣布双方将继续深化战...
快科技1月9日消息,今日,《胜利女神:新的希望》宣布开启预约,目前已经在App Store等渠道上线。虽然官方并未公布具...