本月19日在北京举办的 LC3 大会 (LinuxCon + ContainerCon + CloudOpen)应该是全球最顶级的开源大会了,而这一为期两天的开源盛会过去几年在北美、欧洲和日本都举办过,而此次是其首次来到中国。就在同一天,Linux 发布了 4.12-rc6 的 release,而Linux 基金会在这次大会上也透露了一些未来 Linux 内核开发的新特性。

Linux 基金会的执行董事 Jim Zemblin 是本次大会的主持人,他同时也出席了本次大会的发布会,接受了中国媒体的专访,在19日上午 Linux Story 记者的访问中,Jim 透露,未来 Linux 内核可能会引入形式验证(维基百科链接: https://en.wikipedia.org/wiki/Formal_verification),以获得更好的安全性,如果完成形式验证的话,将大大增加 Linux 在内核安全上的可信赖度,也有利于 Linux 对更多新特性的支持和未来长远发展。但是形式验证是一项艰巨的任务,我们估计 Linux 应该首先对某些相对独立的核心模块完成形式验证。

据悉,形式验证(Formal Verification)含义是根据某个或某些形式规范或属性,使用数学的方法证明其正确性或非正确性。同时逻辑形式验证是一个系统性的验证过程,它使用数学方法来验证设计在实现中是否得以贯彻。目前主要常用的形式验证软件包括 Coq / Isabelle / Metamath / TLA+ 等。

形式验证过程可以证明一个系统不存在某个 bug 或符合某些规范。而传统软件测试无法证明系统不存在 bug,也不能证明它符合一定的属性。系统无法被证明或测试为无 bug,这是因为不可能在形式上定义什么是“没有bug”。在这种基础上所有可以做的,就是证明一个系统没有任何可以想到的 bug,并且满足所有的使系统符合功能要求的有用的属性。

这个新特性跟操作系统内核和区块链都有些关系,除了 Linux ,已经有 seL4 操作系统内核的设计和实现经过了形式逻辑验证工具 Isabelle 的证明,证明其安全性。由于是数学上的严格证明,所以 seL4 几乎没有bug,尤其是安全上的bug,经过若干年的发展,sel4已经从学术研究项目发展为在军方有实际应用的项目了。

如果 Jim 透露的消息属实的话,未来可以预料的是,Docker之类的轻量级隔离将可以跟传统虚拟化几乎一样安全,这对 Linux 未来在云计算和容器方面的发展大有裨益,而 Docker 也将从 Linux 内核安全性的加强中获益,这也可能是 Linux 未来的发展方向的一部分。不过 Jim 同时也说,这不会很容易,是一个很困难的过程,目前还不能保证发布这项新特性的具体时间。