龙蜥开发者说 :戮力同心,砥砺前行,为国产操作系统发展出一份力 | 第 23 期

「龙蜥开发者说」第 23 期来了!开发者与开源社区相辅相成,相互成就,这些个人在龙蜥社区的使用心得、实践总结和技术成长经历都是宝贵的,我们希望在这里让更多人看见技术的力量。本期故事,我们邀请了龙蜥社区开发者李崇(Aubrey Li)来分享「戮力同心,砥砺前行,为国产操作系统发展出一份力」。

欢迎阅读上期故事《是挑战也是契机!我见证了国产操作系统的雄起》。开发者说系长期活动,对于积极投稿、多次分享的童鞋,我们还有神秘大礼鼓励!诚邀开发者们分享真实体验,以文会友、共同学习、一起进步。

图片

本期故事主角:李崇(Aubrey Li),龙蜥技术委员会委员、龙蜥 Intel Arch SIG Maintainer、英特尔软件和先进技术事业部云软件架构师,“龙蜥社区 2022 年度最佳研发团队-Intel 中国研发团队”成员,拥有二十年操作系统领域开发和架构经验,对 OpenSolaris 和 Linux 内核多个子系统均有贡献。

我和操作系统的渊源很深,从学校里做 uC/OS-II 开始,到 Vxworks、uClinux、OpenSolaris,再到 Linux,我的整个职业生涯,今年刚好二十年,一直都工作在操作系统第一线。这期间,我用过很多操作系统的发行版,但这里面绝大部分都是国际社区和国外企业的版本,很少用到国产操作系统。2020 年 12 月 8 日,Red Hat 宣布策略变更,终止了对 CentOS 的服务支持,这是系统软件界的一件大事,因为 CentOS 兼具 RHEL 的稳定性并且完全免费,在服务器操作系统领域占据了较大的使用份额,在政务和互联网行业也占有优势地位。CentOS 的停服,对国内操作系统的使用者影响是巨大的,这意味着系统漏洞更新的停止,企业业务的运行缺少了安全保障。在我看来,这也给了中国开源 OS 生态一次巨大的机会,国产操作系统的趋势已定,势在必行。

初识龙蜥社区是因为一通电话,一位老友向我介绍了国产操作系统新秀——龙蜥操作系统,Anolis is not only Linux.我对这个历经“双 11”大规模验证的系统颇有兴趣,跟他聊完后,我自己也初步去了解了一下龙蜥的开源版本,我认为完全兼容 CentOS 生态是龙蜥操作系统一个很好的切入点,这意味着用户的应用程序可以顺滑地迁移到龙蜥操作系统上。从那以后,身边越来越多我认为“靠谱”的人加入龙蜥社区,也进入了国产操作系统的大浪潮,我觉得这是一件“赶时髦”的事情,但心中更多的,是对国产操作系统的期待。所以,2021 年 6 月,我从上游社区的开发组转到做国内 OSV 和 CSP enabling 组,打算为国产操作系统尽一点自己的绵薄之力。

我当时在上游社区主要做 Intel 至强平台上的 performance 和 scalability 的优化工作,主要涉及内核调度器的部分,包括社区近期开发的 core scheduling 特性,我也曾经深度参与,并且有 patch 贡献。我在分析龙蜥源代码的时候,发现我们在上游社区所作的优化和新特性使能的工作并没有被包含在内,这个现象是上游社区和龙蜥操作系统内核版本的差异所造成的。那么在龙蜥的工作中,如何选择上游社区的优化和新特性来回合到龙蜥操作系统内核里去,是我面临的第一个问题,我需要在稳定性、性能和新特性之间做出权衡和取舍,来让操作系统更好地服务于客户的业务。

2021 年 10 月,龙蜥社区正式成立 Intel Arch SIG 组,我出任组长(Maintainer)一职,和阿里云操作系统团队的同事一起建立了 Intel Arch SIG 的门户网站,在 gitee 上创建了 Intel Arch SIG 的代码仓库。当时,我拿了一个上游社区内核 idxd 设备枚举的 patch,打通了代码从 Intel 内部到开源龙蜥操作系统的整个贡献流程,这期间,我也为打造 OpenAnolis Cloud kernel(ANCK)门禁小龙机器人提供了多项反馈意见。自此,我们对 OSV 和 CSP 的支持,完成了从点对点模式到社区模式的转变。

2022 年是我们支持第四代可扩展至强处理器(Sapphire Rapids)的大年,我们在龙蜥操作系统里面完整地支持了 Sapphire Rapids 平台的特性列表。这一年我印象最深的是对 Scalable I/O virtualization 项目的开发和支持工作。我在接手这个项目的时候,对这个领域的知识储备并不多,这个项目的软件栈对当时的我来说非常复杂,里面的概念、功能和子模块比较多,各个功能和模块之间具有高度的耦合性。另外,这个项目是有硬性的截至时间的,这是和上游社区项目很不一样的地方,因为 Sapphire Rapids 平台和 Anolis OS 发布的时间是确定的,所以我当时感觉压力非常大。幸运的是,Intel 团队和阿里云团队的小伙伴都非常给力,没有人犹疑,大家都在一步一步地往前推进,项目进度表上的方块每天都有新增的绿色块,最后我准备的一个 20K+ 行兜底的大 patch 也没用上。最终,我们成功地完成了这次挑战。这部分工作有 470+ patches,70K+ 代码,最后都被合入进了 Anolis OS 8.8 里面。在 I/O 虚拟化功能方面,Anolis OS 8.8 对于同行业的操作系统来讲,是具有领先性的

图片

(图/Intel 获“龙蜥社区 2022 年度最佳研发团队”奖)

我所在的团队隶属于 Intel 软件和先进技术事业部,前身是 Intel 开源技术中心(OTC),是英特尔开源开发工作的核心团队,从 Linux 内核到虚拟化,从嵌入式到桌面到云等各个领域都有着深厚的专业知识和经验,在全球为各种大型开源项目和社区都做出过很多贡献。今天,我们也深度参与龙蜥社区,在理事会,技术委员会和运营委员会推动龙蜥社区的规范标准化和生态共建,我们在 Intel Arch SIG、virtualization SIG、云原生 SIG、机密计算 SIG 等多个 SIG 贡献 Intel 技术,活动上,我们也组织了多场龙蜥走进理事系列之走进 Intel MeetUp,做技术和生态的推广。

图片

(图/龙蜥走进 Intel MeetUp 现场合照)

 展望未来,操作系统领域仍然面临着许多机会和挑战。举两个我看得到的例子,在算力多样性的今天,如何平滑地使用算力资源,减小不同类型的算力间通信带来的 overhead,让业务更顺畅的运行,是下一代操作系统需要解决的一个问题。在人工智能领域节节突破的背景下,如何让 AI 和 OS 深度结合,在数据中心里面更聪明地进行资源调配,更高效地进行能耗管理,也是下一代操作系统的一个机会。我希望下一代操作系统里面,能看到龙蜥,看到我们国产操作系统的身影。

对 Intel 来讲,我们会坚持打造好底座,以 Intel 体系为核心,继续为龙蜥社区发行版在 Intel 新平台上的适配工作赋能。我们会坚持技术创新,以业务需求为核心,为客户提供更佳合理的解决方案和最佳实践。我们也会和社区各合作伙伴一起,戮力同心,砥砺前行,推动国内操作系统开源社区生态的繁荣发展。

相关链接地址:

Intel Arch SIG 主页:https://openanolis.cn/sig/Intel-Kernel

—— 完 ——

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/62118.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【DEVOPS】Jenkins使用问题 - 控制台输出乱码

0. 目录 1. 问题描述2. 解决方案3. 最终效果4. 总结 1. 问题描述 部门内部对于Jenkins的使用采取的是Master Slave Work Node的方式,即作为Master节点的Jenkins只负责任务调度,具体的操作由对应的Slave Work Node去执行。 最近团队成员反馈一个问题&a…

cs231n assignmen3 Extra Credit: Image Captioning with LSTMs

文章目录 嫌墨迹直接看代码Extra Credit: Image Captioning with LSTMslstm_step_forward题面解析代码输出 lstm_step_backward题面解析代码输出 lstm_forward题面解析代码输出 lstm_backward题面解析代码输出 CaptioningRNN.loss解析代码输出 最后输出结语 嫌墨迹直接看代码 …

【Dart】学习使用(二):基本类型

前言 基本类型是语言的基础。 Dart 语言支持以下基础类型:Numbers(int、double), 整形Strings(String), 字符串Booleans(bool) , 布尔型Records((value1,value2)) 记录Lists(List ) 数组Sets(Set) 集合Maps(Map) 映射Runes(Runes,通常由 characters AP…

【STM32】学习笔记(串口通信)-江科大

串口通信 通信接口硬件电路电平标准USARTUSART框图 通信接口 串口是一种应用十分广泛的通讯接口,串口成本低、容易使用、通信线路简单,可实现两个设备的互相通信 单片机的串口可以使单片机与单片机、单片机与电脑、单片机与各式各样的模块互相通信&#…

2023京东酒类市场数据分析(京东数据开放平台)

根据鲸参谋平台的数据统计,今年7月份京东平台酒类环比集体下滑,接下来我们一起来看白酒、啤酒、葡萄酒的详情数据。 首先来看白酒市场。 鲸参谋数据显示,7月份京东平台白酒的销量为210万,环比下滑约49%;销售额将近19…

mfc140u.dll丢失如何修复?解析mfc140u.dll是什么文件跟修复方法分享

大家好!今天,我将和大家分享一下关于计算机中mfc140u.dll丢失的6种解决方法。希望我的分享能对大家在计算机使用过程中遇到问题时提供一些帮助。 首先,我想请大家了解一下什么是mfc140u.dll文件。mfc140u.dll是一个动态链接库文件&#xff0…

Unity碰撞检测(3D和2D)

Unity碰撞检测3D和2D 前言准备材料3D2D 代码3D使用OnCollisionEnter()进行碰撞Collider状态代码 使用OnTriggerEnter()进行碰撞Collider状态代码 2D使用OnCollisionEnter2D()进行碰撞Collider2D状态代码 使用OnTriggerEnter2D()进行碰撞Collider2D状态代码 区别3D代码OnCollisi…

对于uts namespace共享的测试

前言 单单以下列命令运行虽然是root,还不行,我们需要加--privileged,不然会报 hostname: you must be root to change the host name docker run -it --utshost ubuntu:latest /bin/bash 如果加上--privileged后 docker run -it --priv…

Watermark 是怎么生成和传递的?

分析&回答 Watermark 介绍 Watermark 本质是时间戳,与业务数据一样无差别地传递下去,目的是衡量事件时间的进度(通知 Flink 触发事件时间相关的操作,例如窗口)。 Watermark 是一个时间戳, 它表示小于该时间戳的…

nodepad++ 插件的安装

nodepad 插件的安装 一、插件安装二、安装插件:Json Viewer nodepad 有 插件管理功能,其中有格式化json以及可以将json作为树查看的插件: Json Viewer 一、插件安装 1、首先下载最新的notepad 64位【https://notepad-plus.en.softonic.com…

frida动态调试入门01——定位关键代码

说明 frida是一款Python工具可以方便对内存进行hook修改代码逻辑在移动端安全和逆向过程中常用到。 实战 嘟嘟牛登录页面hook 使用到的工具 1,jadx-gui 2,frida 定位关键代码 使用jadx-gui 进行模糊搜索,例如搜索encyrpt之类的加密关键…

语言基础篇1——Python概述,Python是什么?Python能干什么?

概述 简介 Python,计算机高级语言,读作/ˈpaɪθən/(英音)、/ˈpaɪθɑːn/(美音),意为蟒蛇,Python的logo为两条缠绕的蟒蛇 特点 Python以开发效率高而运行效率低著称 应用领域…

CASAIM与北京协和医院达成合作,通过CT重建和3D打印技术为医学实验提供技术辅助和研究样本

近期,CASAIM与北京协和医院达成合作,通过CT重建和3D打印技术为医学实验提供技术辅助和研究样本,在实验样本的一致性和实验研究的严谨性原则下设计方案,推动产学研一体化发展。 北京协和医院是集医疗、教学、科研于一体的现代化综合…

WPF工控机textbox获得焦点自动打开软键盘

1.通过nuget安装 osklib.wpf 2.在textbox getFoucs中敲入如下代码即可实现获得焦点弹出软键盘 private void txtPLC_IP_GotFocus(object sender, RoutedEventArgs e){try{// Osklib.OnScreenKeyboard.Close();Osklib.OnScreenKeyboard.Show();}catch (Exception ex){MessageB…

奥维转债上市价格预测

奥维转债 基本信息 转债名称:奥维转债,评级:AA-,发行规模:11.4亿元。 正股名称:奥特维,今日收盘价:168.31元,转股价格:180.9元。 当前转股价值 转债面值 / 转…

css中文本阴影特效

文字颜色渐变 .text-clip{color:transparent;font-size: 40px;font-weight: bold;background: linear-gradient(45deg, rgba(0,173,181,1) 0%, rgba(0,173,181,.4) 100%);-webkit-background-clip: text; } 文字模糊 .text-blurry{text-align: center;color: transparent;text-…

国产操作系统开放麒麟安装

国产操作系统 开放麒麟 银河麒麟 中科方德 统信UOS 红旗Linux 深度系统 优麒麟系统 开放麒麟操作系统 “开放麒麟1.0”是通过开放操作系统源代码的方式、由众多开发者共同参与研发的国产开源操作系统,系统的发布将有助于推动面向全场景的国产操作系统迭代更新&…

【LeetCode】剑指 Offer <二刷>(1)

目录 前言: 题目:剑指 Offer 03. 数组中重复的数字 - 力扣(LeetCode) 题目的接口: 解题思路: 代码: 过啦!!! 写在最后: 前言: …

【GAN】pix2pix算法的数据集制作

一、A、B合并代码(此代码由官方提供) import os import numpy as np import cv2 import argparseparser argparse.ArgumentParser(create image pairs) parser.add_argument(--fold_A, destfold_A, helpinput directory for image A, typestr, default…

Android-关于页面卡顿的排查工具与监测方案

作者:一碗清汤面 前言 关于卡顿这件事已经是老生常谈了,卡顿对于用户来说是敏感的,容易被用户直接感受到的。那么究其原因,卡顿该如何定义,对于卡顿的发生该如何排查问题,当线上用户卡顿时,在线…