ubunutu 怎么参与内核开发怎么参与内核开发 Eric Miao 大家交流下我的经验,主要是相互学习 :) 我先介绍下我的经验吧。原来我是做嵌入式开发的,主要是在 Intel/Marvell 做 PXA/Xscale 这一块的,广 泛用在 PDA 上。也许大家见过过气的 Palm 以及 CPU。 开发过程中发现总是跟随着 Kernel 升级,开发工作很被动。内核树 Kernel 升级到 2.6.14 了,而我们却 还在搞 2.6.9。那会儿我们还跟 MontaVista 有合作,所以曾经还搞过 2.4 的内核。PXA27x 上就有些客户在用 2.4,很是崩溃…… 后来我跟 boss 反应,这么开发是不行的,要把我们做的东西推到 mainline 里面去。那时开发组的反应 有两种: …… 唉,那都是很牛 B 的代码,很牛 B 的人在搞。(其实现在想想也不 都是牛人,我这样的庸枝俗粉一堆); 2.搞 mainline kernel 很非主流,伺候好客户就行了。 所以一开始的开发我很寂寞的,不过好在老板非常支持,有了加薪的动力,做事情就卖力了。最初的确 很难,对于 ARM 社区情况不熟,发点 patch 就被弹回,大致理由有如下: 1. 你回去仔细看下 Documentation/CodingStyle0 码力 | 3 页 | 271.06 KB | 1 年前3
从十到千,响应团队规模的敏捷与DevOps实践-冯斌从十到千,响应团队规模的敏捷与DevOps实践-冯斌0 码力 | 27 页 | 8.15 MB | 1 年前3
Zadig 面向开发者的云原生 DevOps 平台面向开发者的云原生 DevOps 平台 角色: 产品 / 架构 开发 测试 运维 运维 / 开发 技术支持 事件 需求设计 架构设计 拆任务、写代码 代码集成 xN 单元测试验证 xN 代码扫描 xN 自测、联调 xN 集成验证 xN 写测试用例 系统验证 xN 自动化测试 xN 性能测试 xN 安全测试 xN 数据变更 xN / 告警 xN 版本归档 xN 交付追踪 xN 数据度量 xN 服务、工单管理 事件、缺陷管理 想 法 用 户 运行阶段 需求阶段 研发阶段 现代软件交付挑战:开发 5 分钟,上线 2 小时 服务一:设计 | 代码编写 | 构建 | 测试 | 部署 | 发布 服务二:设计 | 代码编写 | 测试 | 发布 特点: ● 重复流程自动化 ● 边开发、边验证 ● 服务全生命周期而非只关注代码 ● 每天多次提交提早验证 Zadig 采用「云原生产品级交付」设计理念 数字化产研协同 • 环境 - 统一开发者协作平面 • 工作流 - 统一交付变更通道 • 异构支持 - 统一产研运管理平面 重视开发者体验,工程师不再做脏活累活 传统 DevOps 体系 Zadig0 码力 | 59 页 | 81.43 MB | 1 年前3
Zadig 面向开发者的云原生 DevOps 平台面向开发者的云原生 DevOps 平台 角色: 产品/架构 开发 测试 运维 运维/开发 技术支持 事件 需求设计 架构设计 拆任务、写代码 代码集成 xN 单元测试验证 xN 代码扫描 xN 自测、联调 xN 集成验证 xN 写测试用例 系统验证 xN 自动化测试 xN 性能测试 xN 安全测试 xN 数据变更 xN 代码变更 xN 配置变更 xN 部署测试环境 xN 部署预发环境 部署/灰度上线 xN 监控/告警 xN 版本归档 xN 交付追踪 xN 数据度量 xN 服务、工单管理 事件、缺陷管理 想 法 用 户 运行阶段 需求阶段 研发阶段 现代软件交付挑战:开发 5 分钟,上线 2 小时 服务一:设计 | 代码编写 | 构建 | 测试 | 部署 | 发布 服务二:设计 | 代码编写 | 构建 | 测试 | 部署 | 发布 服务三:设计 | 代码编写 | 部署 | 测试 | 发布 特点: ● 重复流程自动化 ● 边开发、边验证 ● 服务全生命周期而非只关注代码 ● 每天多次提交提早验证 Zadig 采用「云原生产品级交付」设计理念 数字化产研协同 • 环境 - 统一开发者协作平面 • 工作流 - 统一交付变更通道 • 异构支持 - 统一产研运管理平面 重视开发者体验,工程师不再做脏活累活 传统 DevOps 体系 Zadig0 码力 | 59 页 | 23.57 MB | 1 年前3
Zadig 产品使用手册写脚本」或运管类平台为主, Zadig 则是面向开发者视角,中立,云原生一体化价值链平台。 与现存 DevOps 方案对比: 现存方案 典型代表 方案特点分析 Zadig 优势 传统 Jenkins 方案 GitLab + Jenkins + 脚本化 运行效率低,管理维护成本高 方案局限性大,安全性风险高 无法支持敏捷交付模式 支持从需求到发布全流程敏捷交付。尤其面向 多服务并行部署发布,云原生构建环境和运行 环境,基础设施对接及企业级 SSO/ 权限管理 等 运维管理类平台 蓝鲸 Rainbond KubeSphere KubeVela 面向资源管理的运维工具集 面向开发者,需结合 CI/CD 工具额外 搭建全流程能力 专门面向开发者的生产力平台,涵盖需求到开 发,测试,运维的云原生一体化技术底座支撑 云厂商 DevOps 平台 华为云 DevCloud 阿里云效 腾讯 CODING 云厂商引流为主,锁定风险高 基于代码管理的 DevOps 方案 Gitee 平台 GitLab 平台 局限性大、全流程安全性低 维护成本高 支持多个服务并行构建部署、产品级发布,可 灵活安全接入多个代码仓及周边工具链 开发 Zadig 核心特性: 运维 真正意义的持续交付:以工程师体验为核心,价值交付为理念,完成需求到发布的全路径。 测试 发布 洞察 一堆复杂脚本、维护成本极高 员工手工操作费时费力易出错0 码力 | 52 页 | 22.95 MB | 1 年前3
Zadig 产品使用手册写脚本」或运管类平台为主,Zadig 则是面向开发者视角,中立,云原生一体化价值链平台。 与现存 DevOps 方案对比: 现存方案 典型代表 方案特点分析 Zadig 优势 传统 Jenkins 方案 GitLab + Jenkins + 脚本化 运行效率低,管理维护成本高 方案局限性大,安全性风险高 无法支持敏捷交付模式 支持从需求到发布全流程敏捷交付。尤其面向 多服务并行部署发布,云原生构建环境和运行 环境,基础设施对接及企业级 SSO/权限管理等 运维管理类平台 蓝鲸 Rainbond KubeSphere KubeVela 面向资源管理的运维工具集 面向开发者,需结合 CI/CD 工具额外 搭建全流程能力 专门面向开发者的生产力平台,涵盖需求到开 发,测试,运维的云原生一体化技术底座支撑 云厂商 DevOps 平台 华为云 DevCloud 阿里云效 腾讯 CODING 云厂商引流为主,锁定风险高 基于代码管理的 DevOps 方案 Gitee 平台 GitLab 平台 局限性大、全流程安全性低 维护成本高 支持多个服务并行构建部署、产品级发布,可 灵活安全接入多个代码仓及周边工具链 开发 Zadig 核心特性: 运维 真正意义的持续交付:以工程师体验为核心,价值交付为理念,完成需求到发布的全路径。 测试 发布 洞察 一堆复杂脚本、维护成本极高 员工手工操作费时费力易出错0 码力 | 52 页 | 16.27 MB | 1 年前3
openEuler 23.09 技术白皮书简称“欧拉”)从服务器操作系统正式升级为面向数字基础设施的操作系统,支持服 务器、云计算、边缘计算、嵌入式等应用场景,支持多样性计算,致力于提供安全、稳定、易用的操作系统。 欧拉开源社区通过开放的社区形式与全球的开发者共同构建一个开放、多元和架构包容的软件生态体系,孵化支持多 种处理器架构、覆盖数字基础设施全场景,推动企业数字基础设施软硬件、应用生态繁荣发展。 2019 年 12 月 31 日,面向多样性计算的操作系统开源社区 世界带来一个全新的具备独立技术演进能力的 Linux 发行版。 2020 年 9 月 30 日,首个 openEuler 20.09 创新版发布,该版本是 openEuler 社区中的多个企业、团队、独立开发者 协同开发的成果,在 openEuler 社区的发展进程中具有里程碑式的意义,也是中国开源历史上的标志性事件。 2021 年 3 月 31 日,发布 openEuler 21.03 内核创新版,该版本将内核升级到 内核提前进行技术探索,方便开发者进行硬件适配、基础技术创新及上层应用创新。 2023 年 6 月 30 日,发布 openEuler 22.03 LTS SP2 版本,场景化竞争力特性增强,性能持续领先。 2023 年 9 月 30 日,发布 openEuler 23.09 创新版本,是基于 6.4 内核的创新版本(参见版本生命周期),提供更多 新特性和功能,给开发者和用户带来全新的体验,服务更多的领域和更多的用户。0 码力 | 52 页 | 5.25 MB | 1 年前3
高效智能运维[云+社区技术沙龙第29期] - 蓝鲸研发运维技术PaaS体系实践-张敏支撑着半个腾讯的技术运营体系——蓝鲸PaaS 腾讯蓝鲸智云,简称蓝鲸,是腾讯互动娱乐事业群(Interactive Entertainment Group,简称IEG)自用的一套用于 构建企业研发运营一体化体系的PaaS开发框架,提供了aPaaS(DevOps流水线、运行环境托管、前后台框架)和 iPaaS(持续集成、CMDB、作业平台、容器管理、数据平台、AI等原子平台)等模块,帮助企业技术人员快速构建基 础运营PaaS。 营一体化,低成本 实现企业IT经营管理模式升级和自主化。 承载数百款 腾讯业务 管控数十万 台服务器 孵化700+ 应用系统 全球多云 管控 培养数百蓝鲸运 维开发 工具驱动运维:采用运维 开发的模式,实现所有运维任 务自动化、工具化、可视化。 数据驱动运维:基于大数据 的接入、存储、分析技术,对运 维数据进行全面挖掘和分析,实 现数据驱动自动化运维。 机器驱动运维:基于智能算法 有重客户端游戏,网页游戏,各类官网,移动终端游戏, 大型游戏平台; 平铺式架构,拓扑关系复杂,模块数量上百,服务器数量 几千…… 腾讯游戏300多款业务中,大多数是由世界各地开发商开发 出来。 所使用的开发语言、开发框架、操作系统、数据库等技术, 是没有直观规律的。 开发商很难为了运维体系而对架构或技术做大规模的修改。 有几乎所有的业务类型 有几乎所有的流行技术 300多款游戏相互之间是没有关系的。 发布变更、0 码力 | 26 页 | 8.25 MB | 1 年前3
高效智能运维[云+社区技术沙龙第29期] - 冲上云霄—腾讯海量业务上云实践云+社区技术沙龙 冲上云霄—腾讯海量业务上云实践 腾讯云高级工程师 黄宏东 自我介绍 ⚫ 业务开发出身的运维 ⚫ 先后在腾讯负责游戏、安全、医疗类业务运维 ⚫ 经历数年业务爆量、成本优化、业务上云、智能运维等重点项目 ⚫ 目前负责腾讯自研业务的运维与上云工作 01 腾讯业务为什么要上云 02 业务上云的价值 03 如何上云 目录 04 上云案例分享 腾讯业务为什么要上云 更加彰显了腾讯推动由消费 互联网,向产业互联网的升级的决心。 业务上云价值 • 开发效率更高 • 云上特性(VM热迁移等) • 丰富的标准化云服务 • 云原生TKE、研发CICD流程 • 计算资源重用 • 公共组件产品化 • 丰富的公有云海外资源 • 使用业界标准化的云原生服 务,离开封闭的开发环境和组 件 • 工程师输出优秀的组件到云上 成为标准服务,孵化成更好的 云服务 dispatch 上海云 深圳自研 广州云 云原生 开发方法 敏捷开发、DevOps 团队 协作式DevOps团队 交付周期 短且持续 应用架构 微服务,基于API的通信 基础架构 以容器为中心 部署可预测性 可预测 弹性能力 弹性调度 恢复能力 自动化运维,快速恢复 蓝盾/TencentHub…… 每天可交付数十次 运维开发&应用开发 TSF,Service Mesh K8S(TKE)0 码力 | 26 页 | 2.39 MB | 1 年前3
Curve质量监控与运维 - 网易数帆软件生命周期内更好地为用户服务: 质量——向用户交付稳定可靠的软件; 监控——直观地展示Curve运行状态; 运维——保障Curve始终稳定高效运行。 质量 ✓ 质量管理体系(设计、开发、review、CI) ✓ 测试方法论(单元测试、集成测试、系统测试) 监控 ✓ 监控架构 ✓ 指标采集、后端处理、可视化展示 运维 ✓ 运维特性 (易部署、易升级、自治) ✓ 运维工具(部署工具、管理工具) 为了确保最终交付的软件满足需求,必须将质量控制贯穿于设计、开发到测试的整个流程中。 设计 设计流程 文档规范 开发 编码规范与提交流程 版本管理 测试 测试方法论 CI与异常测试 6/33设计流程 Curve团队采用敏捷开发模式,负责人在制定迭代计划时,确认哪些任务需要设计 文档: 小需求(改动小)将实现思路记录到任务管理系统中(JIRA),即可进行开发; 大需求(新模块 大需求(新模块、复杂功能)需要输出独立设计文档,并进行评审;对于功能或 性能影响较大的功能,还需要进行POC验证;评审和验证通过后才能启动开发 工作。 小需求 实现思路 开发 大需求 设计文档 POC 开发 7/33设计文档规范 设计文档需要具备以下内容: 修订记录 审批记录 系统介绍 相关调研 架构 重要流程 关键算法 接口 数据库设计 非功能特性设计0 码力 | 33 页 | 2.64 MB | 6 月前3
共 109 条
- 1
- 2
- 3
- 4
- 5
- 6
- 11













