自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(170)
  • 资源 (3)
  • 收藏
  • 关注

原创 Linux驱动入门-设备树DTS

然后内核可以识别这棵树,并根据它展开出Linux内核中的platform_device、i2c_client、spi_device等设备,而这些设备用到的内存、IRQ等资源,也被传递给了内核,内核会将这些资源绑定给展开的相应的设备。,而关于设备的具体信息存放到设备树文件中,这样,如果只是硬件接口信息的变化而没有驱动逻辑的变化,开发者只需要修改设备树文件信息,不需要改写驱动代码。ARM 本地总线上的内存映射区域分布有。版本之后开始支持使用设备树,这样做的意义重大,可以实现驱动代码与设备的硬件信息相互的。

2026-04-20 15:21:45 514

原创 Linux驱动-IMX6ULL开发板qemu环境搭建

加深对内核的认知,深入理解自己正在调试的模块,这才是快速解决问题的“王道”。可以替换下载的ubuntu-18.04_imx6ul_qemu_system/imx6ull-system-image文件夹下的文件,之后运行就可以生效了。[root@qemu_imx6ul:~]# i2c_usr_test /dev/i2c-0 0x50 w 1 0x58 // 写地址1,写入0x58。$ ./qemu-imx6ull-gui_test.sh // 使用测试版的QEMU,启动后登录名是root,无需密码。

2026-04-20 15:18:59 500

原创 工具使用-Markdown入门

工具,其他工具自己百度,有一些是收费的。个人文章汇总:https://thatway1989.github.io。[菜鸟教程](https://www.runoob.com)链接。“那路谈OS与SoC嵌入式软件”,欢迎关注!

2026-04-17 18:01:12 34

原创 工具技巧-github上开源软件搜索技巧

关键字 in 可以搜索出 GitHub 上的资源名称 name、说明 description 和 readme 文件中的内容。举个例子:python filename:bbb size:>100 extension:py。比如:os language:rust 表示搜索 rust语言中关于 os的项目。发现有652个,太多了,也不知道默认怎么排序的,第一页的一些软件还可以。体现了这个代码是否有价值,有价值会有人fork后修改的,不是看看就完了。按文件大小搜索:关键字 size:>=大小。

2026-04-17 18:00:26 123

原创 编程知识:GPL、BSD等开源协议简介

(GNU General Public License):GNU通用公共许可协议。个人文章汇总:https://thatway1989.github.io。:“那路谈OS与SoC嵌入式软件”,欢迎关注!和MIT一样宽松,多了一条“不能用开源代码的。和原来产品的名字做市场推广”。

2026-04-17 17:59:40 47

原创 编程杂谈-代码review

一个人的怎么去衡量?特别是在面试中,怎么避免“”、“”、“”,我们在工作中又是需要什么样的编程技术和能力,这个问题其实很值得。在很早以前的时候,面试会问你有多少,就是写过多少行代码,这个标准非常的好,基本可以衡量代码水平,但是啊,项目经验也是口说无凭,既然能力考不成,那就考吧。

2026-04-17 17:58:40 313

原创 编程入门-Hello算法网站

首先是插图,我们以二叉树章节为例:然后就是编码的多语言支持:对于算法的分析:后记:https://www.hello-algo.com/ 这个网站的算法内容也比较多,高深一些的也有,可以学习完去牛客或者leetCode上做题试试。学习算法的过程很艰辛,在学校还好,毕业后大多数人都丢了,适合对自己要求高的人,可以搞搞。“啥都懂一点,啥都不精通,干啥都能干,干啥啥不是,专业入门劝退,堪称程序员杂家”。后续会继续更新,纯干货分析,欢迎分享给朋友,欢迎评论交流!

2026-04-17 17:57:38 880

原创 编程技巧:怎样快速学习一门新编程语言

语言历史介绍-》环境搭建-》hello world-》基本数据类型-》函数分支循环语句等,再找个时间把剩下的10页也看了,基本两天就入门一个新编程语言了。回到问题:学习一门语言需要多久就可以看懂语法代码了?个人文章汇总:https://thatway1989.github.io。“那路谈OS与SoC嵌入式软件”,欢迎关注!就可以看懂语法撸代码了?

2026-04-17 17:56:49 31

原创 OS前沿-vivo BlueOS技术分析

总体来说,目前从一些媒体的现场视频演示和体验来看,系统的动画效果挺不错,流畅度也很可,不过现场能体验到的新特性并不多,期待后续蓝厂持续发力吧。标准的开源实现,是基于智能硬件平台的轻型应用形态,由多智能硬件厂商组成的快应用联盟联合制定标准共同驱动。不管是前段时间Baidu World上的产品发布,还是雷军刚官宣的Xiaomi HpyerOS,包括这次vivo发布的BlueOS,无一例外都在内部接入了这方面的技术。原生应用体验流畅,却需要从应用商店下载安装,难以一步直达用户;快应用的出现,就是希望能够。

2026-04-17 17:54:50 387

原创 KataOS入门-简介和代码编译

已着手通过构建一个可证明的安全平台来解决这个问题,就是上面说的KataOS。这是一个正在进行的项目,还有很多事情要做,但我们很高兴能分享一些早期的细节并邀请其他人在平台上进行协作,这样我们就可以构建默认内置安全性的智能环境系统。自动补充功能,虽然编程语言的发展很难,例如Rust十几年了才更被大家所知,但是这是趋势。的语言,当代码很容易堆砌,成本比较低的时候,会更加注重。,一方面内核缩小,一方面各个应用间彼此隔离。,而不是靠经验的测试和编码,从数学上就是。,但是证明工作量巨大,不过也是趋势。

2026-04-17 17:53:02 391

原创 zCore入门-面向对象的Rust微内核

zCore 是用 Rust 语言重新实现的。

2026-04-16 09:26:29 277

原创 rCore入门-来自清华的OS前沿教程

从某种角度上看,新出现的 Rust 语言的核心目标是解决 C 的短板,取代 C。,难以让感兴趣探索硬件的学生了解硬件细节,在某种程度上让CPU成为了一个黑盒子,并使得操作系统与硬件的交互变得不那么透明,增加了学习操作系统的负担。(面向未来),而是希望用一种简洁的方式来代替难以使用的汇编语言抽象出计算机的行为,便于编写控制计算机硬件的操作系统(符合当时实际情况)。,有的是因为要适应硬件,有的是要适应人类的需求,涌现出了大批的技术,最常见的是我们的桌面OS,还有很多桌面应用,这些大多是。

2026-04-16 09:25:11 329

原创 HarmonyOS入门-简介和代码编译

系统基本能力子系统集:为分布式应用在多设备上的运行、调度、迁移等操作提供了基础能力,由分布式软总线、分布式数据管理、分布式任务调度、公共基础库、多模输入、图形、安全、AI等子系统组成。是轻量化服务的新物种,它提供了全新的服务和交互方式,可分可合,可流转,支持免安装等特性,能够让应用化繁为简,让服务触手可及。,弹性部署 一套操作系统,满足大大小小所有设备的需求,小到耳机,大到车机,智慧屏,手机等,让不同设备使用同一语言无缝沟通。了,特别是能工程应用。,无屏变有屏,操作可视化,一键直达原厂服务等全新功能。

2026-04-16 09:23:46 371

原创 Fuchsia入门-zircon微内核启动代码分析

Fuchsia入门-zircon微内核启动代码分析中介绍了Fuchsia的,架构以及zircon内核基本组件,官网代码下载运行。中介绍了一份可以的zircon内核,更容易去学习zircon内核,我们可以直接修改代码运行打印出来,并分析了编译过程和kernel入口的汇编代码。那么接下来本篇文章就从zircon启动的lk_main()开始来介绍下剩下的一部分。最近更新的比较少,也是有点忙,但是网红语录战神哈弟那句:“刀不锋利马太瘦,你拿什么跟我斗,梦想不失,一路追随,开直播,必须开直播”。

2026-04-16 09:22:04 42

原创 Fuchsia入门-zircon微内核单独编译启动

legacy-image-x64.zbi可见kernel的格式是zbi(Zircon Boot Image),参考:https://fuchsia.dev/fuchsia-src/concepts/process/everything_between_power_on_and_your_component。这两个结构体的定义见system/public/zircon/boot/image.h,这个文件也是ZBI格式定义的核心文件。再来看_start,在kernel/arch/x86/start.S中。

2026-04-16 09:20:59 134

原创 Fuchsia入门-简介和代码介绍

是Travis Geiselbrecht 写的一个针对 ARM的嵌入式开源操作系统,https://github.com/littlekernel/lk。src:操作系统的基础代码模块,应该来说很多属于garnet层,这里有camera,网络connectivity,graphics,media,security, storage。zircon: 操作系统内核主体代码,bootloader, 内核的进程,内存管理,内核对象,arch相关代码;tools本地pc机上运行的工具,比如fidl的工具。

2026-04-16 09:19:48 346

原创 MINIX3入门-简介及代码编译运行

我遇到了一个环境变量的问题,执行export ARCH=evbearm-el就好了。https://pan.baidu.com/s/1fs1xVOtGkOSEJFtR7ShEFw提取码: akwc。有一个中文的资料:https://tech.zealscott.com/os/1)直接找一个,可以尝试下面的,下载后复制到你的ubuntu里面看支持不。总结为:Multics->UNIX->MINX->Linux。上,qemu可以模拟这个开发板,且是arm的,更有学习价值。到这里qemu工具搞定后,就可以。

2026-04-16 09:17:39 145

原创 QNX入门-简介、开源代码、框架文档

一些重要的东西先放这里:1)QNX的2)QNX的。

2026-04-16 09:16:39 395

原创 seL4微内核入门-微内核介绍

一个操作系统的理念是利用硬件的特点,并且把他们隐藏在一层层的高级调用中。(2)Linux采用宏内核架构过时了,那是一些老的操作系统采用的方法,譬如UNIX, MS-DOS, VMS, MVS, OS/360, MULTICS。,但现在有足够的证据表明微内核系统也能够和宏内核系统跑得一样快(比如Rick Rashid 发表的对 Mach 3.0 和宏内核系统对比的论文)。确定了四种 ASIL — A、B、C 和 D表示汽车的安全等级,从A到D安全等级越来越高,对于内核也需要更高的安全等级认证,

2026-04-16 09:14:04 358

原创 seL4微内核入门-代码下载运行及资料

一般编译器,比如gcc编译器编译一个比如hello world这样的一个代码的时候,会指定该程序的入口地址是 _start, 就是会找寻源码,把 _start开始的代码放在该程序代码段的最开始位置,hello_world.c源码中并没有 _start这个函数或者标号,所以这个标号是其他地方的,且是会被hello_world.c链接进来的源码,在sel4 tutorial工程里,我们用sel4runtime(里面是源码)和lshello_world.c一起编译,链接。),安装虚拟机,具体不再描述。

2026-04-16 09:12:39 158

原创 小米澎湃OS-白皮书介绍

雷军作为一个程序员是懂技术的,但是又想挣快钱,不愿意像华为一样埋头搞难啃的底层骨头,例如芯片和OS内核。但是小米内部还是有很多优秀的程序员,毕竟有北京大量程序员的支撑还有资本发工资,如果说华为是搅屎棍高质量+遥遥领先),那小米也来了个掀桌子开源华为虽然优秀但是开源做的差,小米本来技术没华为强,那我开源总行了吧,本来就是抄了又改的,我都公开,你华为黑科技就捂着吧。当然华为和小米都是很好的公司,只是各有优缺****点罢了,纯属个人胡扯。Nuttx RTOS入门-简介及开源代码运行。从程序员的角度看,当今手机。

2026-04-14 10:42:04 464

原创 闲聊-小米首席架构师崔宝秋的开源故事

自己正在使用的软件交互体验,配置自己想要的各种炫酷功能的时候,这种感觉是非常奇妙的。”在崔宝秋的介绍中,因为自己身边厉害的人都在用 Emacs、GNU、Linux、FreeBSD 等开源软件开发个性化的交互,并且配置自己想要的任意产品功能,这让他产生了某种“被传教”般的兴奋。我在学校的几个老师也在开源上对我有很大的启发作用。之后我的四年研究成果,五年博士四年我都在做XSB,简单来讲就是增强版的Prolog语言。当时我基于GPL把它开源,再到后来很多工业界也在用这个编程语言。

2026-04-14 10:40:44 55

原创 Nuttx RTOS入门-简介及开源代码运行

官网:https://nuttx.apache.org/文档:https://nuttx.apache.org/docs/latest/NuttX是一个成熟的实时操作系统,于07年由Gregory Nutt先生正式开源,2016年被三星选为TizenRT操作系统的内核,2019年在小米的推动下正式进入Apache基金会,经过开源社区多年的不懈努力,NuttX功能丰富,性能稳定,商业化成熟度高,Fitbit最近两代的手环产品和索尼多款消费级产品都是基于NuttX开发的。

2026-04-14 10:39:13 484

原创 Zephyr RTOS入门-简介及代码下载编译运行

Zephyr最初是由Wind River公司开发的一个微内核,在2016年的时候成为Linux基金会维护的一个项目,发展至今,已经成为了一个功能齐全的嵌入式OS。平台现在支持ARM、RISC-V、X86、Xtensa等等处理器平台,拥有原生的BLE协议栈、完整的Net协议栈,包括TCP/IP与应用层协议,为嵌入式应用的开发提供了有力的支持。Zephyr它不仅仅维护了一个RTOS内核,还维护一些编译链、libc、 IDE插件、HEL层驱动等,几乎每一个模块都有相关的文档。正是因为拥有详细的文档。

2026-04-14 10:38:21 288

原创 FreeRTOS入门-qemu运行及资料

关闭当前终端,重新打开一个或者执行source ~/.bashrc立即生效.个人文章汇总:https://thatway1989.github.io。以上运行的模拟树莓派3 Xilinx Cortex-A53平台。thatway,公众号:OS与AUTOSAR研究。AUTOSAR入门-SoAd模块和TcpIp模块。thatway,公众号:OS与AUTOSAR研究。然后添加环境变量,在~/.bashrc中添加。“那路谈OS与SoC嵌入式软件”,欢迎关注!代码目录执行:make run。代码目录执行:make。

2026-04-14 10:37:07 78

原创 FreeRTOS入门-概念介绍

在AUTOSAR OS中,中断的优先级始终高于任务的优先级,即最低优先级的中断都可以打断最高优先级的任务,即使该任务不可抢占也不例外。:此类中断服务程序不能够使用OS提供的系统服务,当中断执行完成之后则会重新跳转至产生中断的地方继续执行,不会影响到任务的执行,因此占用系统资源较少。把计算机网络中的各台计算机有机地结合起来,提供一种统一、经济而有效的使用各台计算机的方法,实现各个计算机之间的互相传送数据。如下图所示,则较为清晰的表现了Counter,Schedule Table以及Alarm三者之间的关系。

2026-04-14 10:36:14 327

原创 os内核入门-linux0.11运行环境搭建

个人文章汇总:https://thatway1989.github.io。运行了我们编译出来的内核。具体bochs的用法,调试的时候再进行说明。首先要安装编译工具,确保ubuntu可以连上网。“那路谈OS与SoC嵌入式软件”,欢迎关注!下面我们来修改下代码,验证下是否可以生效。搜索找到Free的打印,在后面加上。源码-》编译-》运行的顺序进行。安装成功后,下面就是编译。

2026-04-14 10:35:00 36

原创 os内核入门-linux0.11诞生的故事和源码初探

本文介绍了Linux操作系统的诞生历史与技术演进,从Multics到UNIX再到Linux的发展脉络。重点讲述了Ken Thompson开发UNIX原型、Dennis Ritchie发明C语言重写UNIX的关键贡献,以及Andrew Tanenbaum开发MINIX教学系统对Linux的启发。文章详细描述了Linus Torvalds如何结合80386硬件特性和GNU工具开发出Linux内核的过程,并对比了Windows DOS和Mac系统的商业发展史。最后通过实例解析了Linux 0.11源码结构,包括文

2026-04-14 10:33:37 407

原创 os内核入门-3 linux0.11编译介绍

本文详细解析了Linux 0.11内核编译过程与目标文件生成机制。通过分析Makefile执行流程,揭示了Image目标文件如何由bootsect、setup和kernel三个组件经build工具合并而成,并阐述了ELF可执行文件与raw binary格式的区别。文章深入探讨了从预处理、编译、汇编到链接的完整编译过程,同时介绍了静态库与动态库的链接方式,以及readelf和objdump等工具的使用方法。最后指出Image作为可在电路板直接运行的二进制文件,其生成过程体现了开源系统"自主可控&qu

2026-04-14 10:32:24 254

原创 secureboot入门-8硬件杂谈和汇总

安全启动安全升级安全调试ROT信任根:efuse或者OTP里面存储COT信任链验证模块:加解密,镜像解析,附带硬件等签名和证书管理启动时的硬件需求,例如DDR、SRAM、UART、电源等固件更新:可以从QSPI Flash、UFS、SRAM、USB、SD、Eth、Uart等介质进行固件更新系统固件损坏时,在恢复模式可以进行替换支持AB分区,固件损坏时可以恢复支持OTA升级支持防回滚设置安全调试:结合设备的生命周期,来管理权限,通过JTAG、Uart、USB、Eth等来进行调试。

2026-04-14 10:27:21 341

原创 secureboot入门-7安卓AVB校验代码分析

摘要: 本文从Uboot角度分析Android Verified Boot (AVB) 2.0的安全启动流程,重点介绍其验证机制和代码实现。AVB通过vbmeta.img验证启动镜像,阻止未经授权的程序运行。文章详细解析了Uboot中的AVB开关配置、相关命令(如init/verify)以及验证流程,包括A/B插槽选择、回滚索引检查等核心机制。同时推荐了《android AVB2.0学习总结》作为参考资料,并概述了avbtool工具和libavb库的功能,为开发者理解Android安全启动提供技术参考。

2026-04-13 15:08:04 206

原创 secureboot入门-6安卓AVB安全启动基础

摘要 本文介绍了Android系统的安全启动机制,重点分析了AVB(Android Verified Boot)的工作原理。文章首先概述了Android镜像的分区结构,包括boot.img、system.img、vbmeta.img等核心镜像的作用。随后详细讲解了Android的启动流程,从BootLoader阶段到内核加载再到用户空间初始化。针对安全验证,文章阐述了AVB 2.0的两级验证机制:首先由BootLoader使用OEM key验证vbmeta.img,再由vbmeta中的公钥验证其他分区(如b

2026-04-13 15:06:22 192

原创 secureboot入门-5镜像加密/签名/打包

本文介绍了ARM Trusted Firmware(ATF)中安全启动(Secure Boot)的证书生成与打包流程。主要内容包括: 证书生成工具链: cert_create工具生成各类证书(如BL2/BL31/BL33的密钥和内容证书) 加密镜像使用enctool工具添加加密头 fiptool工具将所有证书和镜像打包成fip.bin文件 安全启动编译选项: 需设置TRUSTED_BOARD_BOOT=1启用安全启动 GENERATE_COT=1自动生成证书链 使用mbedTLS提供加密算法支持 证书体系:

2026-04-13 15:05:05 149

原创 Secure boot入门-4镜像验签代码分析

本文摘要: 文章深入分析了ARM Trusted Firmware(ATF)中BL2镜像加载与验签的初始化流程,重点解读了crypto_mod_init()和auth_mod_init()两个关键函数。通过代码分析展示了加密库mbed TLS的初始化过程,以及镜像解析库的注册与初始化机制。文章强调通过直接阅读doc文档和源代码来掌握技术本质,提供了BL1到BL2启动过程中安全验证的具体实现细节,包括信任链建立、证书验证等安全启动核心机制。作者主张通过代码分析培养"内功",实现完全掌握和自

2026-04-13 14:39:09 567

原创 Secure boot入门-3镜像验签基础及代码初探

本文介绍了基于QEMU搭建ATF+Linux运行环境的方法,详细讲解了ARM安全引导(Secure Boot)的实现原理。主要内容包括:1) ATF冷启动的5个步骤(BL1-BL33)及链式验签流程;2) 使用OTP/efuse存储RSA公钥或哈希值的安全机制;3) 消息摘要算法和数字签名的工作原理;4) 数字证书的层级结构和验证机制;5) ATF验签架构中的关键模块(CM、AM、IPM等)。文章提供了实操性强的技术细节,适合开发者深入学习ARM安全启动技术。

2026-04-13 11:27:57 330

原创 Secure boot入门-2fip包加载image流程

本文主要分析了ARM Trusted Firmware中BL2镜像加载的代码流程,重点探讨了如何从FIP(Firmware Image Package)包中正确加载BL2镜像。文章首先介绍了调试环境的搭建方法,然后详细剖析了bl1_load_bl2函数的执行过程,包括plat_get_image_source、load_image等关键函数的调用关系。特别指出了FIP包头校验失败的原因及解决方法,通过修改plat_get_image_source函数确保正确读取fip.bin文件。最后通过代码跟踪展示了fi

2026-04-13 11:25:50 350

原创 Secure boot入门-1基本概念和框架

摘要: Secure Boot的核心目的是防止系统被篡改,但其背后更多是厂商的商业利益考量,如防止水货、二次加工等。通过构建从ROM开始的信任链(如ARM的BL1至BL33阶段),每一级对下一级镜像进行签名校验,确保系统完整性。加密算法上,采用非对称加密(如RSA)和消息摘要(如SHA)技术,其中RSA利用公钥加密、私钥解密的特性保障安全性。整体流程类似特工组织的层级信任机制,确保即使部分环节被攻破,全局仍安全。

2026-04-13 11:23:08 277

原创 uboot入门-5linux启动前夜

uboot主要用于启动操作系统,以armv8架构下的linux为例,其启动时需要包含kernel、dtb和rootfs三部分。

2026-04-13 11:18:27 332

原创 uboot入门-4命令行和驱动管理

本文详细解析了U-Boot启动流程中的命令行处理机制,从重定位前的board_init_f到重定位后的board_init_r,最终进入命令行交互界面。重点分析了main_loop函数的工作流程,包括自动启动命令处理(autoboot_command)和命令行循环(cli_loop)。文章展示了如何通过调试信息查看bootcmd命令,并深入剖析了命令解析与执行的核心函数parse_stream_outer和cmd_process。此外,还解释了U-Boot中DEBUG宏的使用方法以及CONFIG_BOOTD

2026-04-13 11:00:51 369

原创 uboot-3链接脚本和第一阶段启动

本文分析了U-Boot启动过程的两个阶段及链接脚本结构。U-Boot启动分为Stage1(汇编实现,负责硬件初始化)和Stage2(C语言实现,负责内核调用)。通过分析armv8的u-boot.lds链接脚本,详细说明了程序入口、内存布局和关键段的定义,包括文本段、数据段、PSCI支持段等。重点解释了__image_copy_start/end的作用,以及U-Boot如何在DDR初始化前后分阶段完成硬件初始化和全局变量访问。文章为深入理解U-Boot启动机制提供了基础框架。

2026-04-10 17:12:29 395

Android 底层接口与驱动开发技术详解

《Android底层接口与驱动开发技术详解》内容实用,讲解翔实,全书分为3篇共21章,第1~3章是基础篇,介绍了Android开发的基础性知识,分别讲解了搭建开发环境、驱动介绍和Linux内核的基本知识;第4~9章是必备技术篇,详细讲解了Android底层开发的必备技术,分别讲解了分析Android源码、驱动移植、HAL层分析、Goldfish内核驱动分析、MSM内核驱动分析和OMAP内核驱动分析的基本知识;第10~21章是核心技术与应用篇,详细讲解了Android系统中常用驱动的移植知识,分别讲解了显示系统、输入系统、振动器系统、音频系统、视频输出系统、OpenMax多媒体框架、多媒体插件框架、传感器系统、照相机系统、Wi—Fi系统、蓝牙系统、电话系统、GPS系统、Alarm警报器系统、光系统和Battery电池的移植知识。《Android底层接口与驱动开发技术详解》定位于Android的中、高级用户,也可以作为向此领域发展的程序员的参考书。

2018-05-23

嵌入式Linux应用开发完全手册

《嵌入式Linux应用开发完全手册》是2008年人民邮电出版社出版的图书,作者是韦东山。 主要讲述了从最简单的点亮一个LED开始,由浅入深地讲解,使读者最终可以配置、移植、裁剪内核,编写驱动程序,移植GUI系统,掌握整个嵌入式Linux系统的开发方法。

2018-05-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除