这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » 【转载】嵌入式学习——ElfBoardELF1板卡获取内核源码的方法----fr

共2条 1/1 1 跳转至

【转载】嵌入式学习——ElfBoardELF1板卡获取内核源码的方法----from三叶

工程师
2023-12-20 22:10:08     打赏

大家应该对Linux操作系统有一定的了解,但可能还不知道我们拿到手的内核源码都经历了什么。

linux有一个庞大的开源社区,每个人都可以向开源社区提交代码。由于linux内核十分庞大所以每个模块都有对应的维护人员。维护人员的工作就是审核人们提交的代码是否正确,如果没有问题,就会合并到主分支上。这样就会使linux内核不断完善和更新。

接下来就是芯片原厂例如恩智浦,开发人员会不定期在linux官网下载稳定版本的内核,将其适配到各个芯片上,芯片原厂也会对内核进行维护形成自己的维护版本。

最后是板卡厂商,会到芯片原厂获取已经适配好的稳定版本的内核,在其基础上进行各个外设接口的适配,然后给用户提供移植好的板级开发包。板卡厂商也会对移植好的内核版本进行维护,例如一些BUG修复或者物料替换。

接下来讲一下获取源码的三种方法:

一、获取linux官网源码

地址:https://mirrors.edge.kernel.org/pub/linux/kernel/

如果不是在芯片原厂工作一般不会到linux官网下载源码,但我们有必要了解这种获取源码的方法。因为linux官网对一些bug或者驱动更新的比较及时,在遇到一些内核问题时就可以到linux官网的源码中查一下是不是有相关的提交记
图片1.png

二、获取芯片原厂的linux源码

每个芯片原厂都有自己的git仓库,他们会把已经开发完成的内核源码放到git仓库中,供用户查看和下载。下面以NXP的仓库为例进行讲解。

地址:https://github.com/nxp-imx/linux-imx

(一)切换到对应的版本,因为开发板是在linux4.1.15上进行的适配,所以讲解均以4.1.15版本内核为例。
图片2.png

(二)可以选择使用git克隆,也可以选择下载ZIP压缩包

图片3.png

三、获取ELF1开发板源码

ELF1的内核源码在资料包当中的路径如下:ELF1开发板资料包\02-Linux 源代码\02-0 出厂内核和uboot源码\内核源码\linux-4.1.15-elf1.tar.bz2
下面以ELF1的内核源码为例,给大家介绍一下内核源代码的目录结构和文件说明。

内核源代码的目录结构和文件说明

将:ELF1开发板资料包\02-Linux 源代码\02-0 出厂内核和uboot源码\内核源码\linux-4.1.15-elf1.tar.bz2内核源码压缩包复制到ubuntu系统的/home/elf/work/目录下,解压缩:

elf@ubuntu:~/work$tar -xvf linux-4.1.15-elf1.tar.bz2

解压完成之后使用ls命令查看Linux源码目录:

图片4.png

Linux内核目录下有很多的文件夹和文件,很多文件夹和文件我们不需要关注,我们主要了解比较常用的一些文件夹和文件的涵义就够用了。

目录目录说明arch/可支持的不同CPU架构下的核心代码。例如arm就是arm架构相关的代码,arm目录下包括很多处理器平台,也包括了启动代码boot、架构相关配置文件configs、内核相关文件kernel、内存管理mm和库lib等block/块设备相关通用函数crypto/常见的加密算法相关代码Documentation/说明文档,对每个目录和模块有详细说明drivers/设备驱动程序,其中每一个目录都代表一种设备驱动firmware/固件代码fs/可支持的文件系统相关代码include/通用的头文件init/内核初始化核心代码ipc/内核进程间通信相关代码kernel/内核核心代码,目录下实现了多数linux系统的内核函数lib/内核共用的函数库mm/内存管理相关代码net/网络相关代码sample/示例代码scripts/用于内核配置的脚本文件,用于实现内核配置的图形界面security/安全性相关,支持安全操作系统相关代码。包括SELinux、Apparmor、Smack和TOMOYO Linux安全模块。tools/常用工具代码usr/内核启动相关代码virt/内核虚拟化相关代码

内核源代码的目录结构和文件说明就介绍到这里。希望能对各位小伙伴在学习嵌入式开发的时候有所帮助。

来源: 整理文章为传播相关技术,网络版权归原作者所有,如有侵权,请联系删除。


专家
2023-12-22 13:15:16     打赏
2楼

感谢分享


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]