编程进阶网 编程进阶网
首页
  • 计算机原理
  • 操作系统
  • 网络协议
  • 数据库原理
  • 面向对象
  • 设计原则
  • 设计模式
  • 系统架构
  • 性能优化
  • 编程原理
  • 方案设计
  • 稳定可靠
  • 工程运维
  • 基础认知
  • 线性结构
  • 树与哈希
  • 工业级实现
  • 算法思想
  • 实战与综合
  • 算法题考核
  • C语言入门
  • C综合案例
  • C专栏博客
  • C标准集库
  • C++入门教程
  • C++综合案例
  • C++专栏博客
  • C++开发技巧
  • Java入门教程
  • Java综合案例
  • Java专栏博客
  • Go入门教程
  • Go综合案例
  • Go专栏博客
  • Go开发技巧
  • JavaScript入门
  • JavaScript高级
  • Android库解读
  • Android专栏
  • Android智能硬件
  • iOS ObjC入门
  • iOS Swift入门
  • iOS入门精通
  • Web之Html手册
  • Web之TypeScript
  • Web之Vue高级进阶
  • Linux之QML入门
  • Linux之QT核心库
  • Linux实践开发
  • Python教程
  • Shell&Bash教程
  • 工具脚本
  • 自动化脚本
  • 质量保障
  • 产品思考
  • 软实力
  • 开发流程
  • Git应用
  • 技术模版
  • 技术规范
  • Markdown
  • Mermaid
  • 开源协议
  • JSON工具
  • 文本工具
  • 图片处理
  • 文档转化
  • 代码压缩
  • 关于我
  • 自我精进
  • 职场管理
  • 职场面试
  • 心情杂货
  • 友情链接

杨充

专注编程 · 终身学习者
首页
  • 计算机原理
  • 操作系统
  • 网络协议
  • 数据库原理
  • 面向对象
  • 设计原则
  • 设计模式
  • 系统架构
  • 性能优化
  • 编程原理
  • 方案设计
  • 稳定可靠
  • 工程运维
  • 基础认知
  • 线性结构
  • 树与哈希
  • 工业级实现
  • 算法思想
  • 实战与综合
  • 算法题考核
  • C语言入门
  • C综合案例
  • C专栏博客
  • C标准集库
  • C++入门教程
  • C++综合案例
  • C++专栏博客
  • C++开发技巧
  • Java入门教程
  • Java综合案例
  • Java专栏博客
  • Go入门教程
  • Go综合案例
  • Go专栏博客
  • Go开发技巧
  • JavaScript入门
  • JavaScript高级
  • Android库解读
  • Android专栏
  • Android智能硬件
  • iOS ObjC入门
  • iOS Swift入门
  • iOS入门精通
  • Web之Html手册
  • Web之TypeScript
  • Web之Vue高级进阶
  • Linux之QML入门
  • Linux之QT核心库
  • Linux实践开发
  • Python教程
  • Shell&Bash教程
  • 工具脚本
  • 自动化脚本
  • 质量保障
  • 产品思考
  • 软实力
  • 开发流程
  • Git应用
  • 技术模版
  • 技术规范
  • Markdown
  • Mermaid
  • 开源协议
  • JSON工具
  • 文本工具
  • 图片处理
  • 文档转化
  • 代码压缩
  • 关于我
  • 自我精进
  • 职场管理
  • 职场面试
  • 心情杂货
  • 友情链接
  • README
  • Android提升进阶

  • iOS开发和进阶

  • Web开发和进阶

  • Linux应用开发

    • README
    • QML基础入门

    • QT核心库实践

    • Linux实践开发

      • README
      • Linux开发指引
        • 01.嵌入式开发大纲
        • 02.嵌入式学习规划
        • 03.C语言基础技能
        • 04.C++基础技能
        • 05.操作系统与Linux基础
        • 06.Linux编程基础
        • 07.嵌入式Linux应用开发
        • 08.开发涉及到技术点
      • 崩溃监听实践
      • Linux应用指令
      • 应用重启策略
      • 守护进程保活
      • 脚本进程保活
      • 应用启动的原理
      • LVGL设计原理
      • Qt应用保活方案设计
  • Apps
  • Linux应用开发
  • Linux实践开发
杨充
2025-07-01
目录

Linux开发指引

# 01.嵌入式开发路线指引

# 目录介绍

  • 01.嵌入式开发大纲
  • 02.嵌入式学习规划
  • 03.C语言基础技能
  • 04.C++基础技能
  • 05.操作系统与Linux基础
  • 06.Linux编程基础
  • 07.嵌入式Linux应用开发
  • 08.开发涉及到技术点

# 01.嵌入式开发大纲

1、C语言(熟悉,因为很多库都是基于C写的,调用或者移植需要)

2、C++语言(精通,开发使用的主要语言)

3、Linux操作系统(系统构成、启动原理、命令、权限、文件管理、驱动、进程、网络、服务管理、软件管理、各种系统api调用等)

4、嵌入式Linux应用开发(环境搭建、IDE使用、项目构建、模拟调试、真机调试等)

# 02.嵌入式学习规划

模块 描述 预计时间
C语言 基础语法,输入输出,函数,结构体,指针,预处理,文件操作等 大概3天
C++语言 基础语法,函数,指针,引用,类,多线程,锁,内存分配,异常 大概4天
Linux操作系统 系统概念,文件系统,进程线程,网络,权限,指令,各种api 大概5天
Linux应用开发 结合一本入门书籍,熟悉开发环境,GUI图形编程,综合案例学习 大概10天

# 03.C语言基础技能

01.基础语法。熟悉C语言基础语法,运算,表达式,编译原理。

02.变量和数据类型。熟练基本数据类型,变量和常量,枚举和派生类型,字符串类型。

03.循环和选择。选择结构,循环结构,跳转语句等。

04.输入和输出。缓存和字节流,print输出数据,scanf,getchar等。

05.数组和容器。熟练使用数组和一些常见的容器。

06.函数和返回值。熟练c中函数定义,调用,值传递,函数模版,作用域等。

07.结构体。熟练使用结构体,定义,访问等。熟悉共用体,位域。

08.指针。熟悉指针使用,指针运算,指针数组,函数指针,指针传递等。

09.预处理。熟悉预处理器的使用。

10.文件操作。熟悉文件操作,文件读写,追加等操作。

11.应用调试。熟悉c语言断点调试,单步调试,断言函数,调试信息输出等。

# 04.C++基础技能

01.基础语法。数据类型,常量,变量,字符串,C++编译规范和原理。

02.运算符和表达式。算术,赋值,比较,逻辑,位,等各种运算符和表达式。

03.判断和循环。选择结构,循环结构,跳转语句等。

04.函数实践。函数调用,常见样式,值传递,函数声明,模版函数等。

05.指针和引用。指针定义,占用内存,空指针和野指针,指针和数据,指针和数组。

06.数组和容器。数组定义和使用,序列容器,关联容器,无序容器使用等。

07.输入和输出流。基本输入和输出,文件操作,IO读写等。

08.类和对象。结构体定义,结构体参数,对象的创建。

09.继承和派生。熟悉继承,重载函数,多态实践,抽象类和数据抽象。

10.多线程和并发。熟悉线程创建,取消,连接和分离,线程休眠和唤醒,并发编程。

11.线程安全锁。搞懂同步机制,线程安全锁使用,互斥锁mutex使用,解决并发问题。

12.内存分配堆和栈。动态内存分配,指针内存管理,内存分区模型等。

13.异常处理。熟悉异常声明和处理,定义异常,异常捕获设计等。

14.STL标准模板库。熟悉STL算法,迭代器,适配器,函数对象等。

# 05.操作系统与Linux基础

Linux基础:学习Linux的基本命令、文件系统、权限管理、文本处理工具(如grep、sed、awk等)。

操作系统概念:学习操作系统的基本概念,如进程、线程、内存管理、文件系统、I/O操作等。

# 06.Linux编程基础

系统编程:学习Linux系统编程,掌握文件I/O、进程控制、线程编程、IPC(进程间通信)等。

网络编程:学习套接字编程,理解TCP/IP协议,掌握基本的客户端和服务器编程。

嵌入式Linux:学习嵌入式Linux的基本架构,理解交叉编译、Bootloader、内核裁剪、根文件系统制作等。

# 07.嵌入式Linux应用开发

01.嵌入式系统基础。熟悉嵌入式系统概念,结构,操作系统,软件开发流程。

02.嵌入式C/C++语言基础。预处理,程序可移植,C和汇编接口,内核常见数据结构。

03.嵌入式Linux开发环境。环境搭建,开发环境配置,内核和移植,文件系统构建。

04.嵌入式文件IO编程。调用编程接口,系统IO概述,底层文件IO操作,串口应用,标准IO编程。

05.嵌入式Linux多任务编程。多任务,进程编程,熟悉进程通信,编写进程通信案例。

06.嵌入式网络编程。网络编程知识,Web服务器,NTP客户端实现。

07.QT图形编程学习。嵌入式GUI熟悉,窗口部件,界面编程,对话框等。

08.嵌入式应用程序练习。结合GitHub上一些优秀案例,找一到两个案例学习和练习一下。

# 08.开发涉及到技术点

1.数据处理:IO流,日志文件保存,文件处理,数据库使用等

2.网络:网络请求(Https,或者其他),json数据解析,数据运用,网络连接

3.通信:进程间通信熟练使用,信号,共享内存,消息队列,管道等

4.UI相关:窗口部件,界面,文本,图片,熟悉LVGL框架,熟悉QT界面编程

5.硬件:音量调节,摄像头取流,图片编解码,传感器,补光灯,音频播放,网络,蓝牙

6.应用:应用打包,更新升级,应用重启

7.硬件交互:USB,串口通信,韦根

8.安全:包权限,签名

9.ROM相关:烧录,开机动画

上次更新: 2026/06/10, 11:13:41
README
崩溃监听实践

← README 崩溃监听实践→

最近更新
01
信号崩溃快速排查
06-15
02
CoreDump破案
06-15
03
perf火焰图实战
06-15
更多文章>
Theme by Vdoing | Copyright © 2019-2026 杨充 | MIT License | 桂ICP备2024034950号 | 桂公网安备45142202000030
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式