嵌入式 Linux 开发基本概念

(3) 2024-04-22 10:23

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说嵌入式 Linux 开发基本概念,希望能够帮助你!!!。

在线课堂:https://www.100ask.net/index(课程观看)
论  坛:http://bbs.100ask.net/(学术答疑)
开 发 板:https://100ask.taobao.com/ (淘宝)
     https://weidongshan.tmall.com/(天猫)
交流群一:QQ群:869222007(鸿蒙开发/Linux/嵌入式/驱动/资料下载)
交流群二:QQ群:536785813(单片机-嵌入式)
公 众 号:百问科技


版本 日期 作者 说明
V1 2020 韦东山 技术文档

1.2.1 嵌入式 Linux 开发有哪些内容?

嵌入式 Linux 系统,就相当于一套完整的 PC 软件系统。
嵌入式 Linux 开发基本概念_https://bianchenghao6.com/blog__第1张
Windows 为例:

① 电脑一开机,那些界面是谁显示的?
是 BIOS,它做什么?一些自检,然后从硬盘上读入 windows,并启动它。
类似的,这个 BIOS 对应于嵌入式 Linux 里的 bootloader。
Bootloader 的作用就是去 Flash、SD 卡等设备上读入 Linux 内核,并启动它。

② Windows 系统必需的软件,比如 IE、文件浏览器等保存在哪里?
在 C 盘上,里面有各种系统软件。
对应的,系统运行必需的文件在 Linux 下我们称之为根文件系统。

③ windows 能识别出 C 盘、D 盘,那么肯定有读写硬盘的能力。
这个能力我们称之为驱动程序。当然不仅仅是操作硬盘,还有网卡、USB 等等其他硬件。
嵌入式 Linux 能从 Flash 上读出并执行应用程序,肯定也得有 Flash 的驱动程序啊,当然也不仅仅是Flash。

④ Windows 启动之后,我们就是聊 QQ、玩游戏了,这些就是 APP,它们存在磁盘上。

同样的,嵌入式 Linux 系统中我们也有各种 APP,它们位于根文件系统上。

简单地说,嵌入式 LINUX 系统里含有:

① bootloader:用于启动 Linux 内核

② Linux 内核(含有驱动程序):提供进程管理、文件管理、硬件驱动等

③ 根文件系统:系统运行必需的文件、程序

④ APP:保存于根文件系统上

1.2.2 日常工作中开发流程是怎样?

Bootloader、Linux 内核、APP 等等软件,需要在 Ubuntu 中编译;但是阅读、修改这些源码时,在 Windows下会比较方便。

所以,我们需要在 Windows、Ubuntu 上都存有源码。

① 在 Windows 上阅读、研究、修改(使用 Source insight 会很方便),修改后上传到 Ubuntu(使用 Filezilla)

② 在 Ubuntu 上编译、制作(使用 MobaXterm 远程登录 Ubuntu 会很方便)

③ 把制作好的可执行程序下载到开发板上运行、测试(使用 MobaXterm 连接开发板的串口)。

在整个开发过程中,我们会用到 Windows、Ubuntu、开发板,如下图所示:
嵌入式 Linux 开发基本概念_https://bianchenghao6.com/blog__第2张

1.2.3 搭建开发环境需要做哪些事情

这里只是列出要做的事情,后面会一一讲到。

  1. 安装 VMware、下载 Ubuntu 映象
  2. 安装 Windows 上各个 APP
    这些 APP 有:SouceInsight、FileZilla、MobaXterm、Notepad++
  3. 下载源码和工具链
    工具链:必须下载或上传到 Ubuntu,并设置好 PATH 环境变量。(简单地说,工具链就是编译器)
    源码:u-boot、Linux 内核,学习到时再下载也行,Windows 和 Ubuntu 各存一份。
    注意:根文件系统是使用 buildroot 制作的,它无需放在 Windows 上。
  4. 连接开发板
    ① 连接电源线到开发板,
    ② 开发板的串口线,接到 Windows 电脑;并用 MobaXterm 连接串口。
    ③ 开发板的网线,接到路由器或交换机,网络的设置请参考以下文档(可先不做):
  5. 烧写系统
    如果开发板系统崩溃,或是新到手的板子上没有系统,请根据后面的开发板使用手册手册来烧写系统。

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

上一篇

已是最后文章

下一篇

已是最新文章

发表回复