[置顶] 泰晓 RISC-V 实验箱,配套 30+ 讲嵌入式 Linux 系统开发公开课
通过数张表格展示 Linux Lab 主要功能和最新状态
By Falcon of TinyLab.org Jan 18, 2021
概述
Linux Lab 开源项目经过 5 年的开发和 22 个小版本的迭代,其功能和接口逐渐完善和统一。
为了方便大家查阅,本文通过数张表格列举了其最新的功能清单,主要包括几部分:
- 支持的主要软件列表
- 支持的处理器架构和开发板
- 支持的 Linux 版本和存储设备
- 支持的 Uboot 版本和启动设备
- 支持的系统类型
- 支持的核心命令
Packages 支持
Packages | 说明 |
---|---|
Linux | 操作系统内核 |
Uboot | Bootloader |
Qemu | 模拟器 |
Buildroot | 文件系统构建 |
当前仅支持 4 个 Package,未来计划扩充对更多 Packages 开发的支持。相关模块化开发工作已经做了大量准备。
架构与板子支持
ARCH | BOARD |
---|---|
i386 | pc |
x86_64 | pc |
arm | versatilepb |
arm | vexpress-a9 |
arm | mcimx6ul-evk |
arm | ebf-imx6ull (真板) |
aarch64 | virt |
aarch64 | raspi3 |
mipsel | malta |
loongson | ls1b |
loongson | ls232 |
loongson | ls2k |
loongson | ls3a7a |
ppc | g3beige |
riscvi32 | virt |
riscvi64 | virt |
csky | virt |
目前已经支持所有主流的处理器架构和两家知名国产处理器架构,未来规划优先支持更多国产处理器和开发板,并加强对真实开发板的支持。
arm/ebf-imx6ull
是 Linux Lab 支持的第一块真实开发板,用法基本兼容原有虚拟开发板,欢迎到 社区小店 (某宝内检索“泰晓科技”关键字即可)选购支持我们。选购后可联系微信 tinylab 申请进入 “Linux Lab 真板用户群”,和软硬件大佬们一起学习和研究嵌入式 Linux 硬件开发板。
也欢迎各大开发板厂商联系我们合作添加对更多真实硬件开发板的支持。
Linux 支持
ARCH | BOARD | Linux | ROOTDEV |
---|---|---|---|
i386 | pc | v0.11 v2.6.10 v2.6.11.12 v2.6.21.5 v4.6.7 v5.1 | ram0 nfs hda |
x86_64 | pc | v2.6.12.6 v3.2 v5.0.10 v5.1 | ram0 nfs sda |
arm | versatilepb | v2.6.36 v4.6.7 v5.0.13 v5.1 | ram0 nfs sda |
arm | vexpress-a9 | v3.16.80 v3.18.39 v4.0.9 v4.12 v4.6.7 v5.0.10 v5.1 | ram0 nfs mmcblk0 |
arm | mcimx6ul-evk | v5.4 | ram0 nfs mmcblk0 |
arm | ebf-imx6ull | v4.19.35 | mmc sd nand |
aarch64 | virt | v4.12 v4.5.5 v5.0.10 v5.1 | ram0 nfs sda vda |
aarch64 | raspi3 | v5.1 | ram0 mmcblk0 |
mipsel | malta | v2.6.35 v2.6.36 v4.6.7 v5.0.13 v5.1 | ram0 nfs hda |
loongson | ls1b | v5.2 | ram0 nfs |
loongson | ls232 | v2.6.32-r190726 | ram0 nfs |
loongson | ls2k | loongnix-release-1903 | ram0 nfs sda |
loongson | ls3a7a | loongnix-release-1903 v5.7 | ram0 nfs sda |
ppc | g3beige | v2.6.36 v2.6.37 v4.6.7 v5.0.13 v5.1 | ram0 nfs hda |
riscvi32 | virt | v5.0.13 | ram0 nfs vda |
riscvi64 | virt | v5.1 | ram0 nfs vda |
csky | virt | v4.9.56 | nfs |
当前支持的内核版本范围非常大,从上古时代的 v0.11,v2.6.10 到较新的 v5.1, v5.2,计划在下一个版本升级到 v5.10,未来尽量及时同步支持官方内核的 LTS 版本。这些版本基本覆盖市面上所有的 Linux 图书,买完图书,非常适合立即下载 Linux Lab 开展实验。
当前大部分板子几乎都同时支持从 ram0,nfs 和磁盘加载文件系统。另外,有多块板子支持 LCD,方便做更复杂的图形系统实验。
Uboot 支持
ARCH | BOARD | Uboot | BOOTDEV |
---|---|---|---|
arm | versatilepb | v2015.07 v2020.04 | tftp flash |
arm | vexpress-a9 | v2015.07 v2020.04 | tftp flash sd mmc |
aarch64 | virt | v2019.10 | tftp flash ram |
当前 arm 和 aarch64 都有板子支持 Uboot,而且引导设备支持的范围也比较广,已经满足日常学习的需要。未来会新增对真实开发板的 Uboot 开发支持。
系统支持
系统类型 | 说明 |
---|---|
Buildroot | 当前主要使用 Buildroot 制作了 mini rootfs |
其它 | 当前为 arm/aarch64 制作了 Debian 和 Ubuntu 镜像 |
考虑到下载和实验效率,目前主要使用的是 Buildroot 制作的 mini 文件系统,都为大家提前编译好了,可以直接使用。未来计划依托 docker 构建更多架构的 Debian 和 Ubuntu 镜像,方便开展更复杂的操作系统实验。
命令支持
make 命令 | 作用 |
---|---|
download | 下载 |
checkout | 检出某个版本 |
patch | 打补丁 |
defconfig | 使能默认配置文件 |
olddefconfig | 启用老的配置 |
menuconfig | 打开图形配置界面 |
build | 编译与构建 |
save | 保存配置和镜像 |
clean | 清理构建记录 |
upload | 上传到板子 |
boot | 启动板子到新内核或通过 Qemu 引导 |
login | 登陆到板子或者通过 Qemu 启动 |
debug | 通过 Qemu 调试 |
test | 通过 Qemu 测试 |
list | 列出目标变量和信息 |
help | 打印目前 package 帮助手册 |
当前的命令范围已经基本覆盖虚拟和真实开发板,基本支持所有 Packages,未来会进一步完善和统一相关支持。
另外,上述很多命令能自动处理依赖,也就是说一条后续的 boot 命令可以自动触发前面的 download, checkout, patch …,更省心省力。
主机与系统支持
操作系统 | 系统版本 | Docker 版本 | 内核版本 |
---|---|---|---|
Ubuntu | 16.04, 18.04, 20.04 | 18.09.4 | Linux 4.15, 5.0, 5.3, 5.4 |
Debian | bullseye | 19.03.7 | Linux 5.4.42 |
Arch Linux | 19.03.11 | Linux 5.4.50, 5.7.4 | |
CentOS | 7.6, 7.7 | 19.03.8 | Linux 3.10, 5.2.9 |
Deepin | 15.11 | 18.09.6 | Linux 4.15 |
Mac OS X | 10.15.5 | 19.03.8 | Darwin 19.5.0 |
Windows | 10 PRO, WSL2 | 19.03.8 | MINGW64_NT-10.0-17134 |
Linux Lab 已经友好地支持了三大桌面主流操作系统,已经有数十位同学登记了 成功运行过 Linux Lab 的系统信息。
也欢迎大家及时登记并提报自己使用过程中遇到的问题,我们将不断迭代和完善。
快速上手
看了这么久,担心不好上手,5 条命令用起来:
安装 Linux Lab:
$ git clone https://gitee.com/tinylab/cloud-lab.git
$ cd cloud-lab
$ tools/docker/run linux-lab
登陆 Linux Lab 并启动开发板:
$ tools/docker/bash linux-lab
$ make boot
更多用法请直接阅读 README_zh.md
或者下述 PDF 文档:
- Linux Lab v0.6-rc2 中文手册
- Linux Lab v0.6-rc2 英文手册
- Linux Lab:难以抗拒的十大理由 v1.0
- Linux Lab:难以抗拒的十大理由 v2.0
- Linux Lab 龙芯实验手册
小结
以上介绍了 Linux Lab 最新的功能状态和后续的大体开发计划,欢迎大家留言分享使用心得,提出功能需求和相关建议。
也欢迎更多同学参与到项目的开发中来,为了感谢大家的贡献,所有历史贡献者都已经人手送了一枚 Linux 定制企鹅杯:
等不及的同学,也可以自行在 社区小店 购买一枚赞助我们。
快来加入 Linux Lab 用户和开发者群组吧,加微信号 tinylab 即可,加之前布置个小任务,到 项目首页 给我们来一枚 Star 鼓励吧。
猜你喜欢:
- 我要投稿:发表原创技术文章,收获福利、挚友与行业影响力
- 知识星球:独家 Linux 实战经验与技巧,订阅「Linux知识星球」
- 视频频道:泰晓学院,B 站,发布各类 Linux 视频课
- 开源小店:欢迎光临泰晓科技自营店,购物支持泰晓原创
- 技术交流:Linux 用户技术交流微信群,联系微信号:tinylab
支付宝打赏 ¥9.68元 | 微信打赏 ¥9.68元 | |
请作者喝杯咖啡吧 |
Read Album:
- Linux Lab 发布 v0.7 正式版,新增 Linux Lab 实验盘,一分钟内即可开展内核实验
- Linux Lab 真盘开发日志(6):体验内存编译的用法和好处
- Linux Lab 真盘开发日志(5):体验透明压缩带来的可用容量翻倍效果
- Linux Lab 真盘开发日志(4):在台式机、笔记本和 macBook 上即插即用
- Linux Lab 真盘开发日志(3):在 Linux 下直接启动 Linux Lab Disk,当双系统使用
Read Related:
Read Latest:
- Buildroot 6
- Qemu 13
- Linux 677
- Uboot 10
- RISC-V 315
- loongson 1
- csky 2
- aarch64 4
- raspi3 5
- imx6ull 4
- vexpress-a9 2
- versatilepb 2