前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >嵌入式 Linux 开发基本概念

嵌入式 Linux 开发基本概念

作者头像
韦东山
发布2020-09-30 11:26:42
2.4K0
发布2020-09-30 11:26:42
举报
文章被收录于专栏:韦东山嵌入式韦东山嵌入式

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

嵌入式 Linux 系统,就相当于一套完整的 PC 软件系统。

在这里插入图片描述
在这里插入图片描述

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、开发板,如下图所示:

在这里插入图片描述
在这里插入图片描述

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. 烧写系统 如果开发板系统崩溃,或是新到手的板子上没有系统,请根据后面的开发板使用手册手册来烧写系统。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-09-16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.2.1 嵌入式 Linux 开发有哪些内容?
  • 1.2.2 日常工作中开发流程是怎样?
  • 1.2.3 搭建开发环境需要做哪些事情
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档