Linux Lab 项目启动 6 年后,终于发布了 v1.0 正式版

简介

自 Linux Lab v0.9 发布以后,又经过了 5 个月的漫长迭代,Linux Lab 终于迎来了 v1.0 正式版,同时也迎来了 Cloud Lab v0.80-rc1 版本,两者需同步升级配合使用。

更新情况

Linux Lab v1.0 升级了部分内核版本到 v5.17,修复了多处内存编译 Bug,优化了 make 命令自动补全功能,并重点完善和新增了 examples,同时更新文档对齐到最新的功能。

  • v1.0 rc3

    • 全面整理 Assembly 实验案例

    • 删除多余的 do target,由其他更简洁的用法替代

    • 允许更简单编译内核目标文件,例如:make kernel arch/riscv/kernel/sbi.o

    • 修复 make 自动命令补全,允许通过 tab 按键快速补全常用命令

    • 完善 make patch 命令

    • 更新文档和 License 信息

  • v1.0 rc2

    • 升级 RISC-V 支持,qemu 升级到 v6.0.0,内核升级到 v5.17

    • 升级 arm/vexpress-a9 的默认内核到 v5.17

    • 规范 build 输出路径,跟 boards/ 下的路径保持一致,方便更快找到目标文件

    • 完善 docker 文件系统运行和导出支持

    • 新增 Python 实验案例

    • 完善 Assembly 和 Shell 实验案例

  • v1.0 rc1

    • 增强 test 功能,允许在 testcase 中执行多个命令

    • 修复 test 中的内核参数传递问题,确保兼容 uboot 和 kernel

    • 允许灵活增加 app 的子 make 目标,例如 make root busybox-menuconfig

    • 修复两笔内存编译的问题

项目感想

历史回顾

Linux Lab v1.0 是一个很重要的里程碑,不仅意味着其核心功能已经非常稳定和完善,也意味着我们的工作重心将发生调整。在 v1.0 之后,我们将把重点调整到 examples 的开发上,将通过 examples 帮助更多的同学更高效地学习、研究和开发操作系统以及周边的技术。

刚刚查看了第一笔提交记录:

Author: Wu Zhangjin [email protected]
Date: Mon Jul 11 09:06:04 2016 +0800

Init linux-lab

Aims to build a Qemu-based Linux Lab to easier the Linux Learning and new features development.

Signed-off-by: Wu Zhangjin [email protected]

非常令人感慨,六年前肯定想不到,今天的 Linux Lab v1.0 已经支持了市面上所有的主流处理器架构,支持了 20 多款开发板,支持了从 v0.11 到 v5.x 的几乎所有 Linux 内核版本,加 Cloud Lab 在内,一共有 3294 笔变更,每一笔背后都是煞费苦心的设计和思考以及大量繁琐的验证和测试。

$ cd cloud-lab/labs/linux-lab
$ git log --oneline --root | wc -l
2152

$ cd ../../
$ git log --oneline --root | wc -l
1142

我想说,这份努力是值得的,作为计算机软件中偏底层最接近硬件最复杂的操作系统,向来是相对比较难上手的,最大的门槛是重复又依赖繁多的环境构建,但是有了 Linux Lab,继而有了 Linux Lab Disk,我们可以在 1 分钟内进入实验环境,在 10 分钟内编译并启动 Linux 内核,Linux 内核与嵌入式 Linux 开发从未像今天这般简单。

期待我们的工作对操作系统的人才培养、技术孵化、开发效率等方面都有所助力!

感谢致谢

感谢六年来,所有参与、支持和鼓励过这个项目的同学们!没有你们的支持,这个项目也许早就夭折了;没有你们的支持,我们不会有动力不厌其烦地去完善和迭代,那些 Bug Report,Patch,赞誉背后的支持让所有的开发不再孤立无援,而是温暖充盈。

也要特别感谢这个项目用到的所有开源项目,包括但是不限于:Ubuntu, Linux, Docker, Qemu, Buildroot, U-Boot, Busybox, Make, webvnc 等等,没有这些工作,就不可能有 Linux Lab。

同时感谢项目的托管平台:Github 和 Gitee,也要感谢曾经赞助过这个项目的企业、研究所和个人,包括购买过 Linux Lab Disk 以及社区所有其他付费服务的所有同学们!

另外,这六年来,家里的夫人和小伙伴也给了莫大的支持,这个项目牺牲了很多本应该陪伴他们的时间。随着 v1.0 版本的发布,希望后面能够有更多的时间陪伴他们。

商业化尝试

过去数年来,包括社区和项目在内,所有的开发和答疑都是公益性质的,是个人投入资金和时间在运营,虽然有获得了一些赞助,但是杯水车薪。

为了项目的持续健康发展,在经过艰难的考虑后,我们做了一些商业化尝试,希望大家能够多多支持。

  • Cloud Lab 和 Linux Lab 项目都采用双 Licenses,非商业用户采用 GPL v2 协议,商业用户需要获得商业授权。

  • 之前维护的开发板和内核版本数量巨大,答疑和维护已经令人精疲力尽,所以开发板部分,后续仅默认开放 arm/vexpress-a9,其他开发板将暂停开放并可根据需要付费购买服务。也欢迎其他企业、机构或个人联系赞助某个开发板或处理器架构,获得相应的资源后,社区将考虑重新开放对应的开发板或处理器架构。

  • 社区也研发了免安装即插即跑的 Linux Lab Disk,也叫泰晓 Linux 实验盘,插上即可开展 Linux 内核与嵌入式 Linux 开发,容量覆盖 32G-2T,支持智能启动、透明压缩、时区兼容、出厂恢复等新创特性,用户可根据需要选购。欢迎高校、企业和机构联系团购,泰晓 Linux 实验盘可用于高校计算机实验室、企业内部培训等。

更多资料

猜你喜欢

转载自www.oschina.net/news/199822/linux-lab-1-0-released