写点什么

Verve 已经发布——一种类型安全的操作系统

  • 2010-12-20
  • 本文字数:935 字

    阅读完需:约 3 分钟

最近微软研究院发布了一篇通告,声明 Verve 的发布,它是来自于 Singularity 项目的一种操作系统,基本前提是要使用类型化汇编语言(Typed Assembly Language,TAL)和 Hoare 逻辑达到高级的保密性(security)和安全性(safety)。Verve 操作系统由内核(nucleus)、核心(kernel)和一个或多个应用程序组成。

尽管为了便于自动编译成 TAL,Verve 是由 C#编写的,但它还是执行了二次检查来验证类型安全性。内核本身是用汇编语言编写的,并用断言加上了手工的注解。它还使用 Boogie 根据规范来验证汇编语言,并确保它可以与 TAL 代码和硬件安全地交互。

Verve 的成功之处

  • 它是第一个能够从机制上验证以保证安全性的操作系统,其中包括的所有汇编语言指令都在启动时经过了静态验证,然后才会运行。
  • 它可以运行在一般的硬件上,从而支持真正的语言特性,像类、虚拟方法、数组和先发线程(pre-emptive threads)等等。
  • 高效,这是通过使用 Bartok 的对象、方法表和数组的本地布局达到的。
  • 它演示了自动化技术、TAL 和自动化定理证明,从而验证了操作系统中和运行时复杂的低级代码的安全性。
  • 它演示了少量带有自动化定理证明功能,经过验证的代码它能够支持任意数量的 TAL 代码。

有了类型安全验证的代码,如果想要访问内存,只能通过对象引用和关联的特性——像字段和属性——达到。通过定义好的路径——在当前情况下是运行时——访问内存,核心可以验证代码并没有访问不该访问的内存位置。本质上,类型安全性意味着,除非程序的操作对于类型是合法的,否则就无法在对象上执行操作。类型安全性为高级编程语言(像 Java 和 C#)中的保密性提供了最基本的要素,并且当扩展到操作系统级别时,会得到效率,并转化为性能。

Verve 的局限

  • 缺少对很多 C#特性的支持,像异常处理等
  • 不支持标准的.NET 类库,因为它包含了不安全的代码
  • 缺少对代码的动态载入
  • 只能在单处理器上运行
  • 缺少全面的隔离机制,像 Singularity SIPS、Java Isolates 和 C# AppDomains
  • Verve 使用经过验证的垃圾回收器,它会在回收的过程中把一切操作停止,并禁用中断。

尽管 Verve 还有很多局限性,但它的创建者觉得只有对多处理器的支持是明显的障碍,因为那可能需要对当前的结构进行本质上的修改。

查看英文原文: Announcing Verve – A Type-Safe Operating System

2010-12-20 07:272211
用户头像

发布了 340 篇内容, 共 145.2 次阅读, 收获喜欢 13 次。

关注

评论

发布
暂无评论
发现更多内容

鸿蒙车联文档实战:Car Kit实现车载场景智能办公

huafushutong

鸿蒙全连接实战:Connectivity Kit实现文档跨设备协同

huafushutong

沉浸式天气互动与专业气象地图数据,全面提升你的天气体验

最新动态

鸿蒙加密架构实战:Crypto Architecture Kit实现文档金融级防护

huafushutong

鸿蒙数据防护实战:Data Protection Kit实现文档全生命周期安全

huafushutong

1688商品详情接口抓取指南

tbapi

1688商品详情接口 1688API接口 1688商品数据采集

线上活动丨主动式语音 AI:全双工、对话轮次管理、VAD 技术交流会丨RTE Meetup

声网

虚拟币钱包开发,开发一套钱包app开发费用 做一款类似tp钱包

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

鸿蒙开发笔记:Input Kit实现文档编辑器的智能输入体验

huafushutong

HarmonyOS开发实战:Device Certificate Kit实现办公文档安全认证

huafushutong

HarmonyOS开发实战:Distributed Service Kit实现跨设备文档协作

huafushutong

鸿蒙开发实战:Driver Development Kit实现外接设备文档打印功能

huafushutong

4 大论坛+28 位专家,2025 IoTDB 用户大会议程全公开!(限时有礼)

Apache IoTDB

【KWDB 2025 创作者计划】_KWDB应用之实战案例

KaiwuDB

“边缘化”的机顶盒,被华为云CloudDevice拉回了客厅C位

Alter

ElevenLabs 推出语音 AI 日程助理 11ai;AI 客服初创 Decagon 新一轮融资,估值 15 亿美金丨日报

声网

AWS S3 可观测性最佳实践

观测云

亚马逊云科技

鸿蒙天气服务实战:Weather Service Kit实现文档工作流智能优化

huafushutong

开发一个交易所大概需要多少成本

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

鸿蒙开发笔记:Enterprise Data Guard Kit实现企业文档安全管控

huafushutong

HarmonyOS开发实战:Function Flow Runtime Kit实现文档处理自动化

huafushutong

商品中心—商品B端搜索系统的实现文档

不在线第一只蜗牛

架构 运维

用户行为分析:从概念到实践的全面指南

镜舟科技

OLAP 数据驱动 用户行为分析 数据清洗 StarRocks

重磅推出 🔥 HarmonyOS AI 助手 CodeGenie V6 的使用教程

万少

HarymonyOS

鸿蒙数字凭证实战:Wallet Kit实现文档电子凭证管理

huafushutong

鸿蒙开发笔记:Device Security Kit保障办公文档安全存储

huafushutong

鸿蒙资产数字化实战:Asset Store Kit实现文档资源智能管理

huafushutong

鸿蒙基础服务实战:Basic Services Kit实现文档系统核心功能

huafushutong

Web前端入门:JavaScript 事件循环机制中的微任务与宏任务

量贩潮汐·WholesaleTide

JavaScript 前端 Web

3个小时,从学到做,我用低代码平台搭了一套管理系统

优秀

低代码 低代码平台 项目管理系统

DApp开发:下一代互联网应用的底层逻辑与技术实践

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

Verve已经发布——一种类型安全的操作系统_.NET_James Vastbinder_InfoQ精选文章