Leon_George
码龄14年
关注
提问 私信
  • 博客:1,005,658
    社区:293,210
    问答:1,132
    动态:2,035
    1,302,035
    总访问量
  • 437
    原创
  • 5,008
    排名
  • 36,906
    粉丝
  • 813
    铁粉
  • 学习成就

个人简介:一只始终飞翔在嵌入式Linux ARM开发中的黑鸟,对bootloader、跟文件系统和Linux内核裁剪,以及对Linux底层应用和驱动开发也有些许心得。有志同道合的同学请关注我哦。

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:福建省
  • 加入CSDN时间: 2010-09-26
博客简介:

Leon的博客

查看详细资料
  • 原力等级
    成就
    当前等级
    8
    当前总分
    5,911
    当月
    30
个人成就
  • 嵌入式领域优质创作者
  • 博客专家认证
  • 获得1,503次点赞
  • 内容获得219次评论
  • 获得5,505次收藏
  • 代码片获得8,150次分享
创作历程
  • 26篇
    2024年
  • 21篇
    2023年
  • 100篇
    2022年
  • 54篇
    2021年
  • 54篇
    2020年
  • 138篇
    2019年
  • 11篇
    2018年
  • 43篇
    2017年
成就勋章
TA的专栏
  • 带你学习Linux系统移植
    付费
    20篇
  • 带你备战软考中级嵌入式系统设计师
    付费
    11篇
  • 带你备战高级信息系统项目管理师
    付费
    23篇
  • 嵌入式开发
    86篇
  • Linux内核原理及其接口函数分析
    21篇
  • GNU C
    3篇
  • 笔记
    20篇
  • Linux3.4.2驱动开发
    64篇
  • 算法
    14篇
  • 系统函数
    12篇
  • STM32
    1篇
  • c
    69篇
  • C++
    9篇
兴趣领域 设置
  • 嵌入式
    单片机嵌入式硬件
  • 硬件开发
    驱动开发arm开发射频工程
  • 服务器
    linux
TA的社区
  • 黑鸟小站
    46 成员 401 内容
    创建者
创作活动更多

AI大模型如何赋能电商行业,引领变革?

如何使用AI技术实现购物推荐、会员分类、商品定价等方面的创新应用?如何运用AI技术提高电商平台的销售效率和用户体验呢?欢迎分享您的看法

186人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

一文搞清Linux中各种时间变量及其相互转换

本文旨在说明在Linux中各种时间相关的变量定义,以及他们之间的转换函数。
原创
发布博客 2024.10.17 ·
553 阅读 ·
18 点赞 ·
0 评论 ·
5 收藏

二叉树的介绍

本文讲述了二叉树的类型,及其两种表示方法(链式、数组式)和三种递归式遍历方法(前序、中序、后序);之后,介绍了二叉搜索树的常见操作(查找、插入、删除)及其应用(中序遍历二叉搜索树可以将节点按照升序进行排序,平均时间复杂度为log(n) )。
原创
发布博客 2024.08.24 ·
1115 阅读 ·
15 点赞 ·
1 评论 ·
17 收藏

谈谈hash算法

哈希算法的设计是一个需要考虑许多因素的复杂问题。然而对于某些要求不高的场景,我们也能设计一些简 单的哈希算法。:对输入的每个字符的 ASCII 码进行相加,将得到的总和作为哈希值。:利用了乘法的不相关性,每轮乘以一个常数,将各个字符的 ASCII 码累积到哈希值中。:将输入数据的每个元素通过异或操作累积到一个哈希值中。**旋转哈希 **:将每个字符的 ASCII 码累积到一个哈希值中,每次累积之前都会对哈希值进行旋转操作。
原创
发布博客 2024.08.24 ·
825 阅读 ·
14 点赞 ·
0 评论 ·
9 收藏

基础C语言知识串串香11☞宏定义与预处理、函数和函数库

源码.c——> (预处理)——>预处理过的.i文件——>(编译)——>汇编文件.S——>(汇编)——>目标文件.o->(链接)——>elf可执行程序预处理用预处理器,编译用编译器,汇编用汇编器,链接用链接器,这几个工具再加上其他一些额外的会用到的可用工具,合起来叫编译工具链(gcc就是一个编译工具链)。-E:只预处理不编译(执行头文件的扩展、宏替换、条件编译筛选、去掉注释等),生成.i文件-S:只编译不汇编(将C/C++语言程序翻译成汇编语言),生成.S文件-c。
原创
发布博客 2024.06.23 ·
680 阅读 ·
23 点赞 ·
0 评论 ·
26 收藏

grep常见用法

详尽分析了linux中grep命令的常见用法
原创
发布博客 2024.06.11 ·
1195 阅读 ·
20 点赞 ·
0 评论 ·
11 收藏

20_文件系统的制作 -JFFS2

JFFS2 文件系统是通过工具 mkfs.jffs2 将文件系统目录制成映像文件。制作工具mkfs.jffs2 需要编译 zhb 库和 mtd-utils,下面详细介绍其制作过程
原创
发布博客 2024.05.18 ·
275 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

19_文件系统的制作 -YAFFS2

如果开发板只有Nand Flash, 那么选择最合适的文件系统为YAFFS文件系统。例如,mini2440只有 Nand Flash 没有 Nor Flash,因此选择的文件系统为 YAFFS2 文件系统
原创
发布博客 2024.05.18 ·
257 阅读 ·
5 点赞 ·
0 评论 ·
1 收藏

18_文件系统的制作-Ramdisk

本文介绍如何制作文件系统。另外, 由于Busybox 集合了很多工具,编译起来也非常方便。在讲解制作文件系统的时候,也会介绍 busybox 的编译和安装过程;介绍制作文件系统时,会详细介绍 Ramdisk 、 YAFFS2、JFFS2 及其它文件系统的制作。
原创
发布博客 2024.05.12 ·
97 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

17_基于Flash和RAM的的文件系统选择

本文主要讲述在嵌入式系统中,常见的基于flash和内存(RAM)的文件系统类型,具体选择要结合实际需求灵活选配。
原创
发布博客 2024.05.12 ·
264 阅读 ·
6 点赞 ·
0 评论 ·
0 收藏

16_嵌入式文件系统选择

在进行嵌入式系统开发过程中,文件系统的选择和制作与硬件条件息息相关。根据硬件(Flash 或 RAM)的特性来指定相应的文件系统,能够充分利用硬件资源及提高系统效率。因为目前大部分的嵌入式文件系统都是建立在 Flash 之上,下面介绍 Flash 硬件方案比较与 Flash 的特点。
原创
发布博客 2024.04.02 ·
638 阅读 ·
29 点赞 ·
0 评论 ·
9 收藏

15_Linux内核升级

如果这一步省略,会在移植到开发板后 Bootloader 引导时出现机器 ID 错误的现象。出错的 ID 号将以十六进制给出, 将其转化为十进制, 替换 mach-types文件中的对应项。这里移植后报的错误是 0xFB,即对应十进制 251。查看对 System Type(系统类型) 的修改情况以确认进行正确的配置。将所有文件复制到工作目录下,然后解压内核文件和编译器文件。实际上就是完成对内核的配置。编译内核生成映像文件。
原创
发布博客 2024.04.02 ·
509 阅读 ·
18 点赞 ·
0 评论 ·
18 收藏

14_Linux内核裁剪及编译

经过对内核的认识和对裁剪配置项的了解,接下来实际操作。针对 S3C2440 开发板进行裁剪 Linux 内核。
原创
发布博客 2024.03.26 ·
1392 阅读 ·
13 点赞 ·
0 评论 ·
10 收藏

13_Linux内核配置选项

内核配置通常是对内核支持的各个功能进行取舍配置,将配置的方案保存到 configure文件中。在编译内核的时候,就会根据此配置对内核进行取舍编译。
原创
发布博客 2024.03.26 ·
1493 阅读 ·
14 点赞 ·
0 评论 ·
20 收藏

12_Linux内核结构

Linux 内核主要的 5 个部分:**进程调度、内存管理、虚拟文件系统、网络接口、进程通信**。在系统移植的时候,它们是内核的基本元素,这 5 个部分之间的关系
原创
发布博客 2024.03.17 ·
963 阅读 ·
20 点赞 ·
0 评论 ·
21 收藏

11_BootLoader分析

【摘要】本文详细介绍了基于嵌入式系统中的 OS 启动加载程序 ―― ==BootLoader 的概念、软件设计的主要任务以及结构框架==等内容。 在拿到空PCB板之后,硬件工程师首先会测试各主要**线路是否通连**(各焊点是否有空焊、断接或短路的情况),然后逐个模块焊接上去。之后需要验证系统上电之后,CPU与各组件的**供电电压是否正常**,供给CPU的震荡电路能否能够**正常起振**,外部存储器能否**正常读写**。
原创
发布博客 2024.03.17 ·
1121 阅读 ·
25 点赞 ·
0 评论 ·
25 收藏

10.网络文件系统( NFS)使用

本文介绍 了网络文件系统NFS在嵌入式系统开发中的优点和使用方法
原创
发布博客 2024.03.10 ·
2122 阅读 ·
20 点赞 ·
1 评论 ·
17 收藏

9. 内核、文件系统加载工具

该协议的传输速度和成功率都是比较优秀的。内核和文件系统也可以通过 MiniTools 工具烧写,烧写过程与烧写 Bootloader 类似。与烧写 Bootloader 不同的是,内核和文件系统下载需要选择正确的内核文件和文件系统文件,在烧写完成后会在“详细信息”中显示操作步骤以及完成信息。正确连接开发板后,选择开发板的系统类型及Bootloader 文件,通过要烧写的文件对应项目后的“…运行 MiniTools 软件,将开发板的 NOR/NAND 选择开关置于 NOR 位置,然后打开开发板电源。
原创
发布博客 2024.03.10 ·
1172 阅读 ·
23 点赞 ·
0 评论 ·
19 收藏

8. 超级终端和 Minicom

在对目标板进行查看、操作或目标板和上位机进行文件传输与通信时,需要安装终端软件。通过终端软件来对目标板进行配置,或者执行目标板上的程序与主机进行通信。 下面介绍 3种终端软件,具体开发时,你仅需任意使用一个即可,并非都要进行安装
原创
发布博客 2024.03.09 ·
756 阅读 ·
11 点赞 ·
0 评论 ·
6 收藏

7. 交叉开发环境设置

交叉编译工具是为了使在上位机中编译的文件能够在不同平台的目标机中执行,搭建交叉编译环境是嵌入式开发的第一步,也是关键的一步。不同的体系结构、不同的操作系统,甚至是不同版本的内核,都会用到不同的交叉编译器。选择交叉编译器非常重要, 有些交叉编译器经常会有部分的 BUG,都会导致最后的代码无法正常运行。
原创
发布博客 2024.03.09 ·
1371 阅读 ·
28 点赞 ·
0 评论 ·
19 收藏

先中后层序遍历算法图解及C实现代码,区分递归和非递归两种写法

发布资源 2024.03.09 ·
md
加载更多