Linux Lab 是一套用于 Linux 内核学习、开发和测试的即时实验室,可以极速搭建和使用,功能强大,用法简单!
可以用它来高效地学习处理器架构、Linux 内核、嵌入式 Linux 系统、C 语言编程、Linux 汇编、Shell 编程等。
Linux Lab Boot example
已经跃跃欲试了?!快来看看:
Linux Lab v0.4-rc3 中文手册
Linux Lab v0.4-rc3 英文手册
Linux Lab:难以抗拒的十大理由 v1.0
Linux Lab:难以抗拒的十大理由 v2.0
如果您想学习 Linux 0.11 内核和 Linux X86 汇编语言,也可以访问另外两套 Lab,即 Linux 0.11 Lab 和 CS630 Qemu Lab。这两套实验代码也可以直接下载到 Linux Lab 中开展实验。
项目动态
Linux Lab 已经报名参加 “暑期2020” 开源软件活动,欢迎大家踊跃参与,参与方式有:
提交项目功能和特性需求
直接在 Gitee Issue 提交需求
领取某个需求并完成开发,现有项目需求见:“暑期2020”项目提案
请先参考 中文手册 安装并运行 Linux Lab
有 Linux 使用经验优先
担任某个需求的 Mentor
需要有嵌入式 Linux 和 Linux 内核开发背景
使用 Linux Lab 不少于 1 个月,从现在开始用起来也不迟哦
有提交 PR 优先
详情请咨询 Linux Lab 项目接口人的联系微信:tinylab。
版本更新
Linux Lab 于 5 月 1 日发布了 v0.4 rc2,本次发布 v0.4 的第 3 个候选版本:v0.4-rc3,一同发布的还有 Cloud Lab 的 v0.2。
本次合计 79 笔变更:
// cloud lab $ git log --oneline v0.2-rc3..v0.2 | wc -l 38 // linux lab $ git log --oneline v0.4-rc2..v0.4-rc3 | wc -l 41
本次关键更新如下:
完善 Uboot 支持
首次新增 aarch64/virt Uboot 支持:v2019.10,由 LastRitter 贡献
升级 arm/vexpress-a9 Uboot 到当前最新版本 v2020.04
完善本地配置功能
完善 .labconfig 配置功能,允许在主机家目录,项目根目录以及板子目录下按需配置
本地配置命令仅更新 .labconfig,避免更新时冲突
临时修复一处上游 Linux 新版本内核与 Docker 兼容性问题
Linux v5.3 及以上内核,在 Docker 容器内插入 nfsd 模块导致 sync 卡死
已往上游 Docker 社区报告 Bug 并继续同步分析
该问题由 RXD 等十多位同学协同分析
完善 Linux Lab 运行环境统计工具
新增 Windows 和 Mac OS X 支持,需同步更新 Cloud Lab
欢迎查阅或提交成功运行过 Linux Lab 的软硬件配置信息
当前成功运行过 Linux Lab 的系统:Windows 10 PRO, WSL2, Mac OS X, Ubuntu (16.04, 18.04, 20.04), CentOS, Deepin,
完善登陆工具
新增 tools/docker/login,运行完不再默认启动 webvnc,而是允许用户自行选择
tools/docker/login
新增 tools/docker/vnc,允许本地直接使用 vnc 登陆
tools/docker/vnc
本地推荐 bash 和 vnc,远程推荐 webssh 和 webvnc
环境准备
在非 Ubuntu 平台,请提前自行安装好 docker,可参考 Docker for Mac、Docker for Windows。
如果是 Windows 系统,由于 Windows 对 Docker 的支持限制还很多,建议直接通过 Virtualbox 或 Vmware 自行安装 Ubuntu。
国内的同学请务必使用国内的 Docker 镜像服务,否则无法正常下载镜像,推荐参考 阿里云镜像配置文档。
极速体验
该版本依赖最新的 Cloud Lab 和 docker 镜像:
$ git clone https://gitee.com/tinylab/cloud-lab.git $ cd cloud-lab $ tools/docker/pull linux-lab # 确保更新 docker 镜像 $ tools/docker/run linux-lab
已经下载过的,请更新到最新版本并重启 Linux Lab:
$ cd cloud-lab && git pull $ tools/docker/update linux-lab $ tools/docker/rerun linux-lab
进去以后,打开控制台,敲入如下命令即可启动一个板子(自动下载预编译的版本):
$ make boot
一键编译和启动(自动下载源码、检出版本、打补丁、配置、编译):
$ make boot BUILD=kernel
关键特性
Linux Lab 具备如下特性:
支持 3 大操作系统(Windows、MacOS、Linux),可以轻松在这三大操作系统下使用。
支持 7+ 大处理器架构(X86、ARM、MIPS、PPC、CSKY,RISC-V, LOONGSON),其中 LOONGSON 和 CSKY 为国产处理器。
支持 16+ 款开发板(i386/pc, x86_64/pc, arm/versatilepb, arm/vexpress-a9, arm/mcimx6ul, ppc/g3beige, mips/malta, aarch64/virt, aarch64/raspi3, riscv32/virt, riscv64/virt, csky/virt, loongson/ls1b, loongson/ls2k, loongson/ls232, loongson/ls3a7a)。
支持 5 种登陆方式(bash, ssh, vnc,webssh, webvnc),可以本地访问,也可以远程访问。
集成了 5 大组件(Qemu、U-boot、Buildroot、Linux、Toolchain),都有预编译版本。
内置了 5 大平台,32 位和 64 位共 10 个 Hello World 汇编语言例程,见 examples/assembly。
examples/assembly
可以学习处理器指令集、Qemu、Shell、汇编、C、Linux 内核、嵌入式 Linux。
支持 Debugging 和 Testing。
host & guest 双侧免 root 使用。
更多信息:
项目首页
Homepage: http://tinylab.org/linux-lab
项目社群
联系微信:tinylab
联系公号:泰晓科技
Linux Lab 用户交流群
Linux Lab 开发者
项目仓库
Gitee: https://gitee.com/tinylab/linux-lab
Github: https://github.com/tinyclub/linux-lab
项目插件
CSKY(中天微):https://gitee.com/tinylab/csky
LOONGSON(龙芯):https://gitee.com/loongsonlab/loongson
演示视频
基本用法:Linux 快速上手
学习汇编:AT&T 汇编上手
学习Uboot:Uboot 快速上手
ARM 开发:在 arm/vexpress-a9 上运行 Ubuntu 18.04 LTS
RISC-V开发:使用 riscv32/virt 和 riscv64/virt 开发板
龙芯开发:在 Linux Lab 上使用龙芯 ls2k 平台
特性开发:一条命令测试和体验某个内核特性
模块开发:一条命令配置、编译和测试内核模块
内核调试:所有板子的调试功能自测视频
内核测试:所有当前预置板子的启动过程自测视频
该项目完全开源,以 GPL 2.0 协议发布,欢迎所有高校、企业、个人用户使用或者参与开发。
欢迎通过微信号(tinylab)联系我们,联系后可以获邀进 Linux Lab 用户交流群 和 Linux Lab 开发者群,还将获赠 Linux Lab 安装文档和 Linux Lab 大会演讲幻灯片。
评论删除后,数据将无法恢复
Linux Lab 发布 v0.4 rc3,新增 ARM64 Uboot 支持
Linux Lab 是一套用于 Linux 内核学习、开发和测试的即时实验室,可以极速搭建和使用,功能强大,用法简单!
可以用它来高效地学习处理器架构、Linux 内核、嵌入式 Linux 系统、C 语言编程、Linux 汇编、Shell 编程等。
Linux Lab Boot example
已经跃跃欲试了?!快来看看:
Linux Lab v0.4-rc3 中文手册
Linux Lab v0.4-rc3 英文手册
Linux Lab:难以抗拒的十大理由 v1.0
Linux Lab:难以抗拒的十大理由 v2.0
如果您想学习 Linux 0.11 内核和 Linux X86 汇编语言,也可以访问另外两套 Lab,即 Linux 0.11 Lab 和 CS630 Qemu Lab。这两套实验代码也可以直接下载到 Linux Lab 中开展实验。
项目动态
Linux Lab 已经报名参加 “暑期2020” 开源软件活动,欢迎大家踊跃参与,参与方式有:
提交项目功能和特性需求
直接在 Gitee Issue 提交需求
领取某个需求并完成开发,现有项目需求见:“暑期2020”项目提案
请先参考 中文手册 安装并运行 Linux Lab
有 Linux 使用经验优先
担任某个需求的 Mentor
需要有嵌入式 Linux 和 Linux 内核开发背景
使用 Linux Lab 不少于 1 个月,从现在开始用起来也不迟哦
有提交 PR 优先
详情请咨询 Linux Lab 项目接口人的联系微信:tinylab。
版本更新
Linux Lab 于 5 月 1 日发布了 v0.4 rc2,本次发布 v0.4 的第 3 个候选版本:v0.4-rc3,一同发布的还有 Cloud Lab 的 v0.2。
本次合计 79 笔变更:
本次关键更新如下:
完善 Uboot 支持
首次新增 aarch64/virt Uboot 支持:v2019.10,由 LastRitter 贡献
升级 arm/vexpress-a9 Uboot 到当前最新版本 v2020.04
完善本地配置功能
完善 .labconfig 配置功能,允许在主机家目录,项目根目录以及板子目录下按需配置
本地配置命令仅更新 .labconfig,避免更新时冲突
临时修复一处上游 Linux 新版本内核与 Docker 兼容性问题
Linux v5.3 及以上内核,在 Docker 容器内插入 nfsd 模块导致 sync 卡死
已往上游 Docker 社区报告 Bug 并继续同步分析
该问题由 RXD 等十多位同学协同分析
完善 Linux Lab 运行环境统计工具
新增 Windows 和 Mac OS X 支持,需同步更新 Cloud Lab
欢迎查阅或提交成功运行过 Linux Lab 的软硬件配置信息
当前成功运行过 Linux Lab 的系统:Windows 10 PRO, WSL2, Mac OS X, Ubuntu (16.04, 18.04, 20.04), CentOS, Deepin,
完善登陆工具
新增
tools/docker/login,运行完不再默认启动 webvnc,而是允许用户自行选择新增
tools/docker/vnc,允许本地直接使用 vnc 登陆本地推荐 bash 和 vnc,远程推荐 webssh 和 webvnc
环境准备
在非 Ubuntu 平台,请提前自行安装好 docker,可参考 Docker for Mac、Docker for Windows。
如果是 Windows 系统,由于 Windows 对 Docker 的支持限制还很多,建议直接通过 Virtualbox 或 Vmware 自行安装 Ubuntu。
国内的同学请务必使用国内的 Docker 镜像服务,否则无法正常下载镜像,推荐参考 阿里云镜像配置文档。
极速体验
该版本依赖最新的 Cloud Lab 和 docker 镜像:
已经下载过的,请更新到最新版本并重启 Linux Lab:
进去以后,打开控制台,敲入如下命令即可启动一个板子(自动下载预编译的版本):
一键编译和启动(自动下载源码、检出版本、打补丁、配置、编译):
关键特性
Linux Lab 具备如下特性:
支持 3 大操作系统(Windows、MacOS、Linux),可以轻松在这三大操作系统下使用。
支持 7+ 大处理器架构(X86、ARM、MIPS、PPC、CSKY,RISC-V, LOONGSON),其中 LOONGSON 和 CSKY 为国产处理器。
支持 16+ 款开发板(i386/pc, x86_64/pc, arm/versatilepb, arm/vexpress-a9, arm/mcimx6ul, ppc/g3beige, mips/malta, aarch64/virt, aarch64/raspi3, riscv32/virt, riscv64/virt, csky/virt, loongson/ls1b, loongson/ls2k, loongson/ls232, loongson/ls3a7a)。
支持 5 种登陆方式(bash, ssh, vnc,webssh, webvnc),可以本地访问,也可以远程访问。
集成了 5 大组件(Qemu、U-boot、Buildroot、Linux、Toolchain),都有预编译版本。
内置了 5 大平台,32 位和 64 位共 10 个 Hello World 汇编语言例程,见
examples/assembly。可以学习处理器指令集、Qemu、Shell、汇编、C、Linux 内核、嵌入式 Linux。
支持 Debugging 和 Testing。
host & guest 双侧免 root 使用。
更多信息:
项目首页
Homepage: http://tinylab.org/linux-lab
项目社群
联系微信:tinylab
联系公号:泰晓科技
Linux Lab 用户交流群
Linux Lab 开发者
项目仓库
Gitee: https://gitee.com/tinylab/linux-lab
Github: https://github.com/tinyclub/linux-lab
项目插件
CSKY(中天微):https://gitee.com/tinylab/csky
LOONGSON(龙芯):https://gitee.com/loongsonlab/loongson
演示视频
基本用法:Linux 快速上手
学习汇编:AT&T 汇编上手
学习Uboot:Uboot 快速上手
ARM 开发:在 arm/vexpress-a9 上运行 Ubuntu 18.04 LTS
RISC-V开发:使用 riscv32/virt 和 riscv64/virt 开发板
龙芯开发:在 Linux Lab 上使用龙芯 ls2k 平台
特性开发:一条命令测试和体验某个内核特性
模块开发:一条命令配置、编译和测试内核模块
内核调试:所有板子的调试功能自测视频
内核测试:所有当前预置板子的启动过程自测视频
该项目完全开源,以 GPL 2.0 协议发布,欢迎所有高校、企业、个人用户使用或者参与开发。
欢迎通过微信号(tinylab)联系我们,联系后可以获邀进 Linux Lab 用户交流群 和 Linux Lab 开发者群,还将获赠 Linux Lab 安装文档和 Linux Lab 大会演讲幻灯片。