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

[ 点 我 解 锁 ]

加微信 tinylab 进本站 Linux 交流群。

搜索 泰晓科技 或扫码关注本站公众号。

Linux Lab 发布 v0.2 正式版,某线上课程全程采用

Wu Zhangjin 创作于 2019/11/12

By Falcon of TinyLab.org Oct 31, 2019

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

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

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

版本更新

继 6 月 29 日发布 v0.1 之后,Linux Lab 在过去数月连续发布了 3 个 v0.2 的候选版本,今日发布:v0.2 正式版,新增原生 Windows 支持、新增龙芯全系支持、新增8大平台外置交叉编译器支持、新增实时 RT 支持、新增 host 侧免 root 支持等,并首次被 某线上课程 全程采用。

该版本相比 v0.1 有 127 笔修改,主要如下:

v0.2-rc3 ~ v0.2

  • 首次有线上课程全程采用 Linux Lab 作为实验环境
  • 完善 bash/ssh 下使用 Linux Lab 的问题,禁用图形模式
  • 新增 arm 交叉编译 libc 库
  • 新增 elfutils
  • Cloud Lab 同步发布 v0.2
    • 新增 coredump 支持
    • 剔除对 sudo 的依赖,把模块加载放到 guest 端
    • 解决所有平台的外部模块自动装载问题
    • 为 macosx 新增 minix fs 模块独立加载功能,另有独立编译文档
    • 修复 macosx 不自动打开浏览器的问题

v0.2-rc2 ~ v0.2-rc3

  • 新增原生 Windows 支持,仅需 Docker,无需安装 Virtualbox 或 Vmware
  • 在镜像中新增数个 32 位代码库,修复 gcc 8.x 的 -m32 支持
  • 在镜像中新增 realpath 工具,Linux v5.2 用到该工具

v0.2-rc1 ~ v0.2-rc2

  • 新增实时 Linux v5.2 实验支持
  • 增加了一个 docker 镜像 tags 获取工具
  • 新增了板级配置工具
  • 龙芯插件新增龙芯教育开发板支持
  • 允许设置并行编译线程数
  • 在 docker 镜像中新增 gdb-multiarch 调试支持,避免为每个平台安装一个 gdb

v0.1 ~ v0.2-rc1

  • 携手龙芯实验室,以独立插件的方式新增龙芯全面支持
  • 携手码云,在国内新增 Qemu、U-boot 和 Buildroot 的每日镜像
  • 为所有 8 大平台(含32/64位)新增外部交叉编译器支持,每个平台有 2 个以上交叉编译器可选
  • 新增 nfsroot 对多网卡平台的支持
  • 新增 Qemu、Buildroot、U-boot 和 Linux 的板级独立子仓库支持,更方便做 porting 和 upstream

环境准备

在非 Ubuntu 平台,请提前自行安装好 docker,可参考 Docker for MacDocker for Windows

如果是老版本的 Windows,可以用 Docker Toolbox,也可以通过 Virtualbox 或 Vmware 自行安装 Ubuntu。

极速体验

该版本依赖最新的 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

关键特性

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。
  9. host & guest 双侧免 root 使用。

更多信息

  1. 项目首页
  2. 项目社群
    • 联系微信:tinylab
    • 联系公号:泰晓科技
    • Linux Lab 用户交流群
    • Linux Lab 开发者
  3. 项目仓库
  4. 项目插件
  5. 演示视频

该项目完全开源,以 GPL 2.0 协议发布,欢迎所有高校、企业、个人用户使用或者参与开发。可以通过微信号(tinylab)联系我们。

Read Related:

Read Latest: