泰晓科技 -- 聚焦 Linux - 追本溯源,见微知著!
网站地址:https://tinylab.org

泰晓Linux实验盘,即刻上手内核与嵌入式开发
请稍侯

Linux Lab 发布 v0.2 rc2,支持实时 Linux v5.2 开发

Wu Zhangjin 创作于 2019/08/16

By Falcon of TinyLab.org Aug 16, 2019

Linux Lab 是一套用于 Linux 内核学习、开发和测试的即时实验室,可以极速搭建和使用,功能强大,用法简单!

可以用它来高效地学习处理器架构、Linux 内核、嵌入式 Linux 系统、C 语言编程、Linux 汇编、Shell 编程等。

如果您想学习 Linux 0.11 内核和 Linux X86 汇编语言,也可以访问另外两套 Lab,即 Linux 0.11 LabCS630 Qemu Lab

版本更新

继 7 月 23 日发布 v0.2 rc1 之后,Linux Lab 今日发布:v0.2-rc2,该版本除了修复部分功能、完善文档外,新增了实时 Linux v5.2 实验支持,增加了一个 docker 镜像 tags 获取工具,新增了板级配置工具和龙芯教育开发板 ls232 支持,并允许设置并行编译线程数。

该版本相比 v0.2 rc1 只有 14 笔修改,其中主要更新如下:

  • 新增实时 Linux v5.2 实验支持
    • 新增 feature/linux/rt/v5.2/,可以跟其他特性一样,一条命令即可开启该特性:make f f=rt,该命令会打上 patch 并完成内核配置。目前仅在 i386/pc 上验证可以正常启动。
    • 可参照添加其他版本的 rt patch。
  • 增加了一个 docker 镜像 tags 获取工具
    • tools/docker/tags.sh,主要用于后续 Linux Lab 所提供的实验环境升级。
  • 新增了板级配置工具
    • tools/board/config.sh,允许简单更新板子配置,而无需手动修改配置文件:make board-config LINUX=v5.2
  • 龙芯插件新增龙芯教育开发板支持
  • 允许设置并行编译线程数
    • 可通过 make JOBS=n 指定并行编译的线程个数,默认设置为处理器个数
  • 修复部分功能并完善使用文档
    • 新增 noVNC 桌面偶尔不响应的处理办法
    • 新增龙芯插件支持信息
  • 其他小调整
    • examples/c/hello,新增 -Wall -Werror 强制静态检查。
    • 在 docker 镜像中新增 gdb-multiarch 调试支持,避免为每个平台安装一个 gdb
    • 修复引入板级定制仓库后引入的源码路径错误问题
    • 所有内核一律使用新版本 scripts/config,修复老版本中的问题

极速体验

在非 Ubuntu 平台,请提前自行安装好 docker:

$ git clone https://gitee.com/tinylab/cloud-lab.git
$ cd cloud-lab
$ tools/docker/run linux-lab

如本地已经下载过 Linux Lab,建议回到 cloud-lab 目录升级 docker 镜像并重启 Linux Lab:

$ tools/docker/pull linux-lab
$ tools/docker/rerun linux-lab

进去以后,打开控制台,敲入如下命令即可启动一个板子:

$ make boot

极速体验 Qemu + RealTime Linux v5.2:

$ make BOARD=i386/pc
$ make kernel-download
$ make kernel-patch
$ make kernel-defconfig

// Add real time linux patch and enable it
$ make f f=rt
$ make kernel-olddefconfig

$ make kernel
$ make boot

关键特性

Linux Lab 具备如下特性:

  1. 支持 3 大操作系统(Windows、MacOS、Linux),可以轻松在这三大操作系统下使用。
  2. 支持 7+ 大处理器架构(X86、ARM、MIPS、PPC、Csky,Risc-V, Loongson),其中 Loongson 和 Csky 为国产处理器。
  3. 支持 15+ 款开发板(i386/pc, x86_64/pc, arm/versatilepb, arm/vexpress-a9, ppc/g3beige, mips/malta, aarch64/virt, aarch64/raspi3, riscv32/virt, riscv64/virt, csky/virt, loongson/ls1b, loongson/ls2k, loongson/ls232, loongson/ls3a7a)。
  4. 支持 5 种登陆方式(docker, ssh, vnc,webssh, webvnc),可以本地访问,也可以远程访问。
  5. 集成了 5 大组件(Qemu、U-boot、Buildroot、Linux、Toolchain),都有预编译版本。
  6. 内置了 5 大平台,32 位和 64 位共 10 个 Hello World 汇编语言例程,见 examples/assembly
  7. 可以学习处理器指令集、Qemu、Shell、汇编、C、Linux 内核、嵌入式 Linux。
  8. 支持 Debugging 和 Testing。

更多信息

  1. 项目首页
  2. 项目仓库
  3. 项目插件
  4. 演示视频

该项目完全开源,以 GPL 2.0 协议发布,欢迎所有高校、企业、个人用户使用或者参与开发。



Read Album:

Read Related:

Read Latest: