当前位置:首页 > 嵌入式软件
[导读]Linux Lab是一套用于学习、开发和测试Linux内核的实时实验室,它快速、强大且易于设置和使用。

 Linux Lab是一套用于学习、开发和测试Linux内核的实时实验室,它快速、强大且易于设置和使用。

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

linux-lab.jpg

Linux Lab Boot example

已经跃跃欲试了?!快来看看 Linux Lab:难以抗拒的十大理由,本次更新又增加了一大理由,快看下文!

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

版本更新

Linux Lab 先后于 6 月 29 日和 10 月 30 日发布了 v0.1 和 v0.2 正式版。

本次发布 v0.3 的第 3 个候选版本:v0.3 rc3, rc3 主要新增了中文文档,并通过函数模板进一步裁剪了代码,也修复了几处其他问题。

本次更新有 50 多笔提交,有三位贡献者提交了 PR。

$ git log --format='%aN' v0.3-rc2..HEAD | sort -u

LastRitter

unicornx

Wu Zhangjin

$ git log --oneline v0.3-rc2..HEAD | wc -l

54

重要变更如下:

新增中文文档 README_zh.md, gitee 项目首页会默认显示中文版文档

允许用户在 Linux Lab 根目录和板子目录(boards/)下配置 .labconfig,在其中可以设置变量,定义别名,语法为 Makefile

允许在 make boot 时自动编译 kernel, uboot, rootfs 等目标

例如:make boot kernel=1 uboot=1 root=1 BOOT_PREPARE=cleanstamp,cleanup

aarch64/virt 新增 2019.11.1 版本的 buildroot

支持显示板子的”动态“信息,打印各配置的变量值

make 默认输出直接显示当前板子最新信息,之前仅打印原始配置

make list 默认输出原始配置,加 INFO=dynamic 后列举变量值(较慢)

允许 env-dump 打印某个指定的变量 $ 例如:make env-dump VAR=LINUX

修复几处历史 Bugs

修复 loongson ls2k/ls3a7a 编译错误,之前引用的版本在仓库被删除了,用 commit 号代替

修复一处拼写错误:from LL_PATH to LLPATH

环境准备

在非 Ubuntu 平台,请提前自行安装好 docker,可参考 Docker for Mac、Docker 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

一键编译与启动(自动下载源码、检出版本、打补丁、配置、编译并启动):

$ make boot kernel=1

关键特性

Linux Lab 具备如下特性:

支持 3 大操作系统(Windows、MacOS、Linux),可以轻松在这三大操作系统下使用。

支持 7+ 大处理器架构(X86、ARM、MIPS、PPC、CSKY,RISC-V, LOONGSON),其中 LOONGSON 和 CSKY 为国产处理器。

支持 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)。

支持 5 种登陆方式(docker, 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会议幻灯片的演示。

换一批

延伸阅读

[通信技术] 风河Linux平台构建新型家庭自动化网关

Intel全资子公司风河系统公司(Wind River)日前宣布,比利时fifthplay公司选择Wind River Linux作为构建其新型家庭自动化网关。fifthplay最新推出的FG4000 Gateway网关平台可让用户通过手机...

关键字: Linux 风河 自动化

[通信技术] Wind River Linux支持Arkoon打造新一代网络安全设备

Intel全资子公司风河系统公司(Wind River)日前宣布,Arkoon Network Security已选用Wind River Linux平台进行其FAST 360系列网络安全设备的标准化开发。Arkoon的FAST 360系列...

关键字: Linux river wind arkoon

[充电吧] Windows、Linux、OS X 版 Opera 12.10 正式发布:支持 Windows 8 触控、Retina 屏幕、SPDY 协议

Windows、Linux、OS X 版 Opera 12.10 正式发布:支持 Windows 8 触控、Retina 屏幕、SPDY 协议

 Opera 日前正式在 Windows、Linux、OS X 三大平台上推出了 12.10 版本。作为 Opera 12 的后续版本,Opera 12.10 新加入了对 OS X 通知中心、Retina 屏幕、Window...

关键字: Windows Linux 真心话 retina 12.10

[通信技术] 在嵌入式Linux实现802.11b无线网关

    构成有线网络的传输媒介主要依赖铜缆或光缆;但有线网络在某些场合要受到布线的限制,特别是当要把相隔较远的节点连接起来时,敷设专用通信线路的布线施工难度大、费用高、耗时长,对正在迅速扩大的连网需求形成了瓶颈...

关键字: 802.11 Linux 嵌入式 无线网关

[开发板] N神教你远程访问LINUX桌面

N神教你远程访问LINUX桌面

什么是远程桌面?通俗的讲,就是将其它机器的桌面系统通过网络连接显示到本地,然后在本地操控远程机器。 这样说其实有点过于简单。远程桌面访问的实现,一般由三部分组成:远程机器开启相关的服务,使得客户端可以通过网络连接并提供相关服务;其次是需要...

关键字: Linux window 树莓派 技巧 远程桌面 x vnc

嵌入式软件

15447 篇文章

45 阅读

关注

0 人关注

发布文章

技术子站