(elf 1/elf 1s开发板及显示屏)
linux内核是操作系统中最核心的部分,它负责管理计算机硬件资源,并提供对应用程序和其他系统组件的访问接口,控制着计算机的内存、处理器、设备驱动程序和文件系统等关键功能,今天小编就给各位小伙伴介绍一下如何获取linux内核源码。
获取linux内核源码的渠道
linux有一个庞大的开源社区,每个人都可以向开源社区提交代码。由于linux内核十分庞大所以每个模块都有对应的维护人员。维护人员的工作就是审核人们提交的代码是否正确,如果没有问题,就会合并到主分支上。这样就会使linux内核不断完善和更新。
接下来就是芯片原厂例如恩智浦,开发人员会不定期在linux官网下载稳定版本的内核,将其适配到各个芯片上,芯片原厂也会对内核进行维护形成自己的维护版本。
最后是板卡厂商,会到芯片原厂获取已经适配好的稳定版本的内核,在其基础上进行各个外设接口的适配,然后给用户提供移植好的板级开发包。板卡厂商也会对移植好的内核版本进行维护,例如一些bug修复或者物料替换。
获取linux内核源码的方法
一、获取linux官网源码
地址:https://mirrors.edge.kernel.org/pub/linux/kernel/
如果不是在芯片原厂工作一般不会到linux官网下载源码,但我们有必要了解这种获取源码的方法。因为linux官网对一些bug或者驱动更新的比较及时,在遇到一些内核问题时就可以到linux官网的源码中查一下是不是有相关的提交记录。
二、获取芯片原厂的linux源码
每个芯片原厂都有自己的git仓库,他们会把已经开发完成的内核源码放到git仓库中,供用户查看和下载。下面以nxp的仓库为例进行讲解。
地址:https://github.com/nxp-imx/linux-imx
(一)切换到对应的版本,因为开发板是在linux4.1.15上进行的适配,所以讲解均以4.1.15版本内核为例。
(二)可以选择使用git克隆,也可以选择下载zip压缩包
三、获取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源码目录:
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/
内核虚拟化相关代码
内核源代码的目录结构和文件说明就介绍到这里。之后我们还会介绍内核编译以及如何给在nxp的源码上适配elf 1开发板。希望能对各位小伙伴在学习嵌入式开发的时候有所帮助。
AVR单片机8位数码管显示的程序实现(两种方法介绍)
中国首个异构计算处理器IP核实现 可用于机器学习
采用Atmega48单片机进行光强度数显器的设计
【C语言进阶】面试题:请使用代码判断主机存储属于大端模式还是小端模式?
骁龙625对阵P20,谁是千元机首选
获取Linux内核源码的方法
秤重仪与西门子通过Modbus转Profinet网关连接
荣耀Magic2评测 科技与时尚我都能给你
关于LED显示屏的基础知识
5G、虚拟现实、物联网将成CES 2017焦点
高通发布骁龙888处理器:后续“动作”令人期待
基于XIAO的翻页显示器设计
PLC在锅炉干式出灰系统中的应用
ACH连接器/压着式连接器产品介绍
便携式全频段调频接收机的制作
海外半导体资产成香饽饽:上市公司组团抢购 今年交易额超1400亿
中国机器人产业时冷时热 服务机器人爆发仍待时机
Microchip发布新一代相位噪声分析仪,产品型号为53100A
又一重大半导体交易,美国两大巨头再整合
真正首次揭秘“数字南网”建设行动方案