John Lions Distinguished Lecture是由UNSW CSE年度活动,每年会请学术大牛做汇报

John Lions Distinguished Lecture

今年(2024)请到的是上海交通大学的陈海波老师,HarmonyOS NEXT的主要设计者,OpenHarmony 技术指导委员会主席及华为基础软件首席科学家,国内高校第一篇 SOSP 的论文作者(!)

image-20241013084431724

看知乎上的评论应该是2017年进入的华为,从事系统研发方向(知乎相关的帖子已经被水军的垃圾信息占了)

十分有幸在2024.10.1听到了现场的演讲

IMG_20241001_173707

会场很大,快乐水和橙汁不限量供应,会后提供小点心(味道还行)😏

IMG_20241001_201040

视频回放

YouTube: John Lions Distinguished Lecture 2024

B站搬运:让系统研究更有意义: HarmonyOS NEXT 的教训和经验

时间线如下:

11:52 陈海波老师开始演讲

13:39 入题

19:02 OS Trend

32:28 HormonyOS NEXT与OpenHarmony介绍

41:06 Industry/Academia(产学协同)

1:03:40 Lessons&Experiences

1:07:50 QA环节

演讲内容

入题

image-20241013090317217

海波老师提出了一个看法:操作系统研究并非由工业界主导,而应该是产学协同的形式

image-20241013091356753

OS Trends(系统发展趋势)

回顾了下操作系统的发展历程

image-20241013093018512

现代的操作系统远比之前要复杂

image-20241013093155011

而通过层层的抽象,就算是10岁小孩都能编写出应用(比如Scratch)

趋势1:从软件上优化性能

作为后摩尔时代的一个解决方案,从软件,算法,硬件价格上进行性能优化

image-20241013093702937

趋势2:解决不同设备的系统碎片化

让所有设备用上统一内核(鸿蒙微内核是个好建议)

image-20241013094149170

趋势3:AI的引入可以改变人们使用手机的方式

AI增强了手机输入输出的能力

image-20241013094345296

HormonyOS NEXT与OpenHarmony介绍

HormonyOS NEXT与Open Harmony的关系如图所示

image-20241013094713485

Micro Kernel(微内核)

在能实现和Linux一样的功能的同时,还要保证性能,然后是安全

image-20241013095523071

一个统一架构意味着生态上的良好移植性,将不同的设备组合成为一个更大的系统

image-20241013101016444

Industry/Academia Synergy(产学协同)

Example 1: Verification and Optimization of Synchronozation Primitives(同步原语的验证与优化)

形式化验证解决多线程处理的研究,检查多线程情况下内存模型是否正确

涉及到我知识盲区了,这一块我理解不一定对

image-20241013102719721

开源的LibVsync是一个高性能的,用于验证数据并发结构的验证库

并且已应用于OpenHarmony

image-20241013103619774

Example 2: Verifying Concurrent File Systems(并发文件系统验证)

崩溃带来的错误很难被消除

image-20241013103855617

设计了一种Concurrent Relational Logic(CRL)来解决这个问题

在此基础上提出了AtomFSRefFS

image-20241013104426570

Example 3: Rendering Architecture Optimization(渲染架构优化)

“大部分帧可以在短时间内渲染出来,但有些帧需要大量时间才能渲染,这是从企业当中获得的经验”

image-20241013104641335

为此提出了D-Vsync,可以确定需要处理帧的数量,节省处理复杂帧的时间

image-20241013104946297

数据结果看起来很Nice😍可以减少70%的卡顿

image-20241013105416263

Example 4: File Sytem Optimization(文件系统优化)

背景:Read-Only的分区占用的空间正在快速增长,SquashFS实现了占用空间压缩,但也让系统卡顿,文件在解压缩时也可能是内存膨胀,导致应用崩溃

image-20241013105755633

为此提出了EROFS,提供固定大小的压缩

image-20241013110212929

已经入Linux 4.19内核https://docs.kernel.org/filesystems/erofs.html

Lessons&Experiences

  1. 生态系统很重要。某个应用很强并不能解决问题,需要形成生态才能可用
  2. 分而治之,逐步提升项目可用性,而非一开始就做到完美

image-20241013110922907

QA环节

这里就选我感兴趣的进行总结,完整内容请看回放

  1. 澳洲的PhD和澳洲本地的产业是脱节的
  2. Open Haromony肯定是POSIX Compatible,甚至可以支持些Linux的API

线下QA环节

很荣幸线下和陈海波老师聊了下鸿蒙操作系统的细节,这里说几个我觉得有意思的点

  1. 鸿蒙系统不会存在一个类似Linux Root这样的一个角色,所有的权限都是分散管理的
  2. HarmonyOS NEXT出于生态治理的原因,应该不会支持应用侧载
  3. HarmonyOS NEXT目前大多为ARM架构
  4. 分布式系统意味着存在很多攻击切入点,除了分级权限控制(信任链)外,还可以让运算能力强的设备(电脑/云端)检测运算能力弱的设备(手表/耳机)的安全情况(星盾架构)
  5. 目前仓颉语言(对标Swift)的IR和ArkTS(TypeScript方言)的IR并不互通
  6. HarmonyOS Next的软件分析与代码审计目前还在起步阶段,华为有内部工具,但在研究领域上还可以进一步探索
  7. 10月或11月会有一本关于OpenHarmony编程的书会出版

结语

海波老师人很好😁下至鸿蒙系统有无可能大范围普及,如何入职华为工程师,上至鸿蒙系统运行细节,都能有问必答

聊着聊着就和我们一块去蹭主办方给的Snack😂就是文章开头Show的那个

线下问答直接给了微信二维码,不管本科生还是PhD直接,只要人在现场都能加上微信

Btw,他用的是Mate X5,最新的三折叠MateXT需要优先供给市场😂

最后还去CSE的楼下合了个影(照片就不贴了)

题外话

搜索陈海波老师资料的时候,Bing搜索引擎推荐的都是什么东西😾看着就倒胃口

这种“xx之父”就和“我是你爹”有什么两样,看的人只要被恶心到就行,营销号考虑的就多了🤣

image-20241013100046090