首页
学习
活动
专区
工具
TVP
发布

嵌入式】基于ARM嵌入式Linux开发总结

前言 嵌入式知识点复习一 嵌入式知识点复习二 –体系结构 嵌入式知识点复习三 –ARM-LINUX嵌入式开发环境 嵌入式知识点复习四 –arm-linux文件编程 嵌入式知识点复习五 –arm-linux...进程编程 嵌入式知识点复习六 –arm-linux网络编程 嵌入式知识点复习七 –linux字符型设备驱动初步 嵌入式知识点复习一 1、 嵌入式系统一般组成结构 2、嵌入式硬件系统结构 (1)嵌入式处理器...嵌入式知识点复习三 –ARM-LINUX嵌入式开发环境 一、交叉开发模式 1、组成结构 (1)宿主机:开发主机,一般由PC、发行版linux系统、开发工具(本地及交叉编译)(代码编辑器Vi,编译器GCC...(2)不同点: ① 编译工具链一般用于本机编译、本机执行开发模式; ② 交叉编译工具链用于宿主机编译,目标机运行交叉开发模式; ③ 编译器一般Linux发行版都配备,直接调用gcc命令即可;...⑤ 实验室使用OK6410开发板定制编译器为32位,其交叉编译工具链主要arm-linux-gcc,arm-linux-g++arm-linux-gdb等构成。

17.4K20

Linux嵌入式开发——文件权限

文章目录 Linux嵌入式开发——文件权限 文件权限 文件权限管理 修改文件权限 修改文件所属用户 拥有者 拥有者组 Linux嵌入式开发——文件权限 文件权限 文件权限是指不同用户或用户组对某个文件拥有的权限...,文件权限分为三种,并且可以使用二进制表示文件权限。...我们可以使用如下命令去查看一个文件信息: ls a.c -l # ls 文件名 -l 我们接下来就来分析一下 a.c文件信息,首先,a.c文件信息如下所示: - rw-...文件权限管理 修改文件权限 修改文件权限我们使用是chmod命令,具体用法如下所示,首先我们查看一个文件属性: -rwxrwxr-x 然后对其进行修改,664就是把所有用户可执行全部删除,在此之后...,我们再来查看一下这个文件属性,接下来就可以发现我们文件属性得到了修改。

4.4K30
您找到你想要的搜索结果了吗?
是的
没有找到

Linux嵌入式开发——连接文件

文章目录 Linux嵌入式开发——连接文件 ln命令 硬连接 符号连接(软连接) Linux嵌入式开发——连接文件 Linux有两种连接文件:第一种叫符号连接也称为软连接,第二种就是硬链接。...符号连接类似Windows下快捷方式,或者说是一个指针。而硬链接则通过文件系统 inode 连接来产生新文件名,而不是产生新文件,就相当于文件分身,共用同一个ID。...或者说,是共用一块内存区域对象。我们下面有一个对于inode简单介绍,具体介绍大家可以自行查找资料。 inode:记录文件属性,一个文件只有一个inode。...硬连接 硬链接是多个文件都指向同一个inode,就相当于武侠小说中分身一样,主体死亡,分身不会死亡,而且分身受伤和获得宝物,主体也能获得。或者说,是共用一块内存区域对象。...---- 根据硬链接文件特点,我们可以通过给文件创建硬连接方式来防止文件误删除。 这个就很好理解了,毕竟这些文件都是独立,删除哪一个,另外都能独立执行。

3.3K40

嵌入式Linux开发 配置网络

2.2.4 配置网络 重点来了,以前我们在VMware中使用桥接,这需要保证Windows、Ubuntu、开发板三者互通,而很多人电脑有多个网卡,这涉及网络设置太复杂了。...2.2.4.2 设置NAT网络端口映射 在NAT网络下,外面的设备无法看到Ubuntu,要想开发板能访问到Ubuntu,需要进行端口映射。 先关闭Ubuntu,再关闭VMware,才能设置。...这样,开发板访问Windows这些端口时,才可以访问到Ubuntu。 先使用管理员身份运行“虚拟网络编辑器”,如下图所示: ?...注意:你可能突然碰到网络问题,可能是Ubuntuip变了,这就需要修改端口映射中虚拟机IP。如下图所示: ? 修改好后,再去测试网络。...2.2.4.3 修改Ubuntumountd端口 在NAT网络下,要想开发板能通过NFS挂载Ubuntu,需要修改mountd端口为9999 如果你还不会用vi命令,可以在Ubuntu桌面启动终端,

3.3K20

Linux嵌入式开发——C编程

文章目录 Linux嵌入式开发——C编程 一、编写C程序 1.1、设置vim编辑器 1.2、编写C程序 二、编译C程序 三、make工具和Makefile文件 3.1、编写C程序 C文件 H文件 3.2...、不使用make工具 3.3、使用make工具和Makefile文件编译 Linux嵌入式开发——C编程 一、编写C程序 我们目前就是使用VIM编辑器编写程序,当然,也可以使用vscode,但是vscode...-O:对程序进行优化编译,如果使用此选项的话整个源代码在编译、链接时候都会进行优化,这样产生可执行文件执行效率就高。...-O2:比-O 更幅度更大优化,生成可执行效率更高,但是整个编译过程会很慢。...我们在第四行时候,没有把我们 “\r\n”,放到引号内,我们看一下会产生什么效果。

4.5K20

Linux嵌入式开发——shell脚本

文章目录 Linux嵌入式开发——shell脚本 一、shell脚本基本原则 二、shell脚本语法 2.1、编写shell脚本 2.2、交互式shell脚本 2.3、shell脚本数值计算 2.4、...判断符 2.6、默认变量 三、shell脚本条件判断 if then if then else case 四、shell脚本函数 不带参数 带参数 五、shell循环 while until for Linux...嵌入式开发——shell脚本 经过我们前面的学习,我们已经能够在终端中输入命令来完成一些常用操作,但是都是一条一条地输入命令,如果需要执行命令一旦多起来,就会很麻烦。...当然有,这就是我们接下来要介绍shell脚本! shell脚本类似windows批处理文件,就是将连续执行命令写成一个文件。...shell脚本提供数组、循环、条件判断等功能,一般是Linux运维或者系统管理员要掌握,但作为嵌入式开发人员,我们只需要掌握shell脚本最基础部分即可。

8K20

Linux嵌入式开发——shell命令

目录信息查看——ls ​ ls -a 显示目录所有文件及文件夹,包括隐藏文件,比如以.开头,一般在我们创建新文件夹或者删除文件夹时候,都需要看一眼。...man printf 数据同步写入磁盘——sync ​ 这个命令主要用来确保我们文本什么写入到了磁盘里面。...grep -nr "Ubuntu" 文件夹大小查看——du ​ 这个命令用来查看文件大小,加上-sh就是以我们人能看懂放松去显示。...df 打开文件——gedit ​ 这个就是用来打开我们文件,之后就能对文件进行编辑了。 gedit a.c 当前系统进程查看——ps ​ 这个用来查看系统进程,在嵌入式开发比较常用。...进程实时运行状态查看——top ​ 有点像是windows下资源管理器,能实时查看运行状态。 top 文件类型查看——file ​ 就是用来查看文件类型,在嵌入式蛮多。

6.5K20

嵌入式Linux 搭建开发环境

搭建开发环境主要工作是:安装虚拟机、安装Windows开发工具。 学习嵌入式Linux时,各种程序比如Linux内核、你编写驱动、应用,都需要在Linux机器下编译。...无论是VMware还是Docker,都可以满足嵌入式Linux学习与工作。...你不需要同时看VMware和Docker章节,选择其中一个就可以。 2.1.2 安装Windows软件 选择、安装好虚拟机后,就要在Windows安装各种开发软件了。...然后,为Linux源码建立source insight工程,请参考:《第九篇 常见问题》《1.3 安装使用Source Insight》。...注意:在Windows解压Linux内核源时有错误是正常,因为Windows并不支持某些Linux特有的文件,并且Windows中文件名不区分大小写,当出现提示是否覆盖文件时,选择“是”。

7.9K30

linux 嵌入式Linux构建方法《Rice linux 学习开发

《Yocto》 Yocto是我最近在学习一个东西。 Yocto :一个开源协作项目,提供模板、工具和方法,帮助您为嵌入式产品创建定制基于 Linux 系统,而不管硬件架构如何。...《Buildroot》 Buildroot是我学习第一个构建嵌入式系统方式。 Buildroot:通过交叉编译生成嵌入式 Linux 系统简单、高效且易于使用工具。...优点: Buildroot 对简单性关注意味着,更容易学习。核心构建系统用 Make 编写,并且足够短以便开发人员了解整个系统,同时可扩展到足以满足嵌入式Linux 开发人员需求。...Buildroot 系统使用普通 Makefile 和 Kconfig 语言来进行配置。Kconfig 由 Linux 内核社区开发,广泛用于开源项目,使得许多开发人员都熟悉它。...个人感想: 我在使用buildroot之前,我在学习嵌入式Linux是没有通过什么构建方法,只是裸露uboot,kernel,根文件系统。每一个都要自己去编译,创建。

7.3K20

Linux嵌入式开发——Makefile基本语法

文章目录 Linux嵌入式开发——Makefile基本语法 一、Makefile 规则格式 二、Makefile 变量 2.1、赋值符“=” 2.2、赋值符“:=” 2.3、赋值符“?...=” 2.4、变量追加“+=” 三、Makefile 模式规则 四、Makefile 自动化变量 五、Makefile 伪目标 Linux嵌入式开发——Makefile基本语法 接下来我们来详细介绍一下基本...我们具体来看一看赋值符“=”具体含义:**通过赋值符“=”赋值变量真实值取决于它所引用变量最后一次有效值。**所以最后结果就是这个。...“%”,目标中“%” 表示对文件名匹配,“%”表示长度任意非空字符串,比如“%.c”就是所有的以.c 结尾文件。...$< 依赖文件集合中第一个文件,如果依赖文件是以模式(即“%”)定义,那么“$<”就是符合模式一系列文件集合。 $? 所有比目标新依赖目标集合,以空格分开。

1.3K20

嵌入式 Linux 开发基本概念

1.2.1 嵌入式 Linux 开发有哪些内容? 嵌入式 Linux 系统,就相当于一套完整 PC 软件系统。 ? Windows 为例: ① 电脑一开机,那些界面是谁显示?...类似的,这个 BIOS 对应于嵌入式 Linux bootloader。 Bootloader 作用就是去 Flash、SD 卡等设备上读入 Linux 内核,并启动它。...嵌入式 Linux 能从 Flash 上读出并执行应用程序,肯定也得有 Flash 驱动程序啊,当然也不仅仅是Flash。...同样嵌入式 Linux 系统中我们也有各种 APP,它们位于根文件系统上。...简单地说,嵌入式 LINUX 系统里含有: ① bootloader:用于启动 Linux 内核 ② Linux 内核(含有驱动程序):提供进程管理、文件管理、硬件驱动等 ③ 根文件系统:系统运行必需文件

2.4K30

嵌入式Linux怎么搭建开发环境?

Linux系统开发完全手册 第二版 2.1 安装Windows软件 2.1.1 这么多虚拟机,如何选择?...搭建开发环境主要工作是:安装虚拟机、安装Windows开发工具。 学习嵌入式Linux时,各种程序比如Linux内核、你编写驱动、应用,都需要在Linux机器下编译。...无论是VMware还是Docker,都可以满足嵌入式Linux学习与工作。...你不需要同时看VMware和Docker章节,选择其中一个就可以。 2.1.2 安装Windows软件 选择、安装好虚拟机后,就要在Windows安装各种开发软件了。...注意:在Windows解压Linux内核源时有错误是正常,因为Windows并不支持某些Linux特有的文件,并且Windows中文件名不区分大小写,当出现提示是否覆盖文件时,选择“是”。

3.9K10

嵌入式Linux项目开发步骤有哪些

微控制器制造商开发板,以及他们与开发板一起提供软件项目例程,在工程师着手一个新设计时可以提供很大帮助。但在设计项目完成其早期阶段后,进一步设计时,制造商提供软件也可能会导致一些问题。...因此,本文主旨是为使用Linux嵌入式操作系统版本——μClinux,开始一个新设计项目,该指南共分为五个步骤。...步骤1:Linux工具和项目布局 每个嵌入式软件设计都从选择合适工具开始。...用于嵌入式开发工具链是一个交叉工具链,更常见叫法是交叉编译器。 GNUBinutils是嵌入式Linux工具链第一个组件。...在嵌入式Linux,它被称为GCC,支持许多种微控制器和处理器架构。 接下来是C函数库。它实现Linux传统POSIX应用编程接口(API),该API可被用来开发用户空间应用。

2.2K20

Linux应用开发:嵌入式Linux下矢量字体运用

一、freetype简介 FreeType库是一个完全免费(开源)、高质量且可移植字体引擎,它提供统一接口来访问多种字体格式文件,可以非常方便我们开发字体显示相关程序功能。...它支持单色位图、反走样位图渲染。FreeType库是高度模块化程序库,虽然它是使用ANSI C开发,但是采用面向对象思想,因此,FreeType用户可以灵活地对它进行裁剪。...拷贝生成库到开发板 [root@wbyq freetype-2.4.10]# cp _install/lib/*.so* /home/wbyq/rootfs/lib/ -fdv 2....比如:[wbyq@wbyq lcd_freetype]$ arm-linux-gcc freetype.c -lfreetype 2.3 windows电脑上矢量字体存放目录 2.4 示例代码 #...驱动开发"); /*7.

4.2K30

嵌入式 Linux 开发必知基础概念

裸机编程现在主要是正对低端嵌入式系统,如 SCM(single chip machine)、各式 MCU、DSP 等。当然,编写 PC bootloader 肯定也属 于裸机编程。...2、Linux 系统开发 基于 linux 操作系统来开发我们产品叫 linux 系统开发。此开发编程方式和裸机开发编程方式是截然不同。...举个例子:linux 系统可以跑到不同硬件上面如 pc 机或者 arm 开发板上面。...如果 linux 操作系统跑到 PC 机上,那么驱动就要适配 PC 机;如果 linux 操作系统跑到 arm 开发板上面, 那么驱动就要适配 arm 开发板;所以说不同硬件架构都可以跑 linux,...5、Linux 系统架构优点 linux 系统开发架构和裸机架构是不同,架构相比于裸机架构是非常复杂了,那么我们使用这 个架构都有什么好处呢?

1.4K40

Linux嵌入式开发——文件系统结构

文章目录 Linux嵌入式开发——文件系统结构 一、根目录“/” 二、Ubuntu文件系统结构 三、绝对路径和相对路径 Linux嵌入式开发——文件系统结构 一、根目录“/” ​ Linux下“/”就是根目录.../home 系统默认用户主文件夹,一般创建用户账户时候,默认用户主文件夹都会放到此目录下。.../mnt 用户可使用挂载点,如果要挂载一些额外设备,那么就可以挂载到此处。 /opt 可选文件和程序存放目录,给第三方软件放置目录。.../tmp 临时目录 /usr usr不是user缩写,而是UNIX Software Resource缩写,存放于系统用户有关文件,会占用很大存储空间!.../var 存放一些变化文件,比如日志文件 三、绝对路径和相对路径 绝对路径:从根目录“/”算起路径。 相对路径:相对于目前路径文件名写法,比如./home/zzk。不是以“/”开头就行。

1.7K50

嵌入式linux之go语言开发(十)

但是这离最终目标还远。最近想再坚持坚持,继续完善一点儿。 最终目标是能够实现一电脑上运行模拟pos机和仅更改下配置就能自由切换运行在嵌入式硬件上完整功能pos。...颠覆传统模式,解决传统模式升级难,维护难,日志分析难,移植难,复用难,开发效率低等诸多问题。随着网络发达,终端上业务一定是越来越轻量,后台服务越来越重量模式。...因为基于服务和云方式,才能更大限度复用和提高效率。它符合一个定律,符合用更少能量传递、处理和存储更多信息这个商业发展轴心趋势。...这场AIoT全面革命才刚刚开始,格局未定、玩家众多,在这片新兴蓝海市场中,还将上演无数场精彩战役。 这样思路是可行,我之前做电脑上模拟pos机,就是这个思路。...逐步把一些可以复用东西挪动到后台实现,逐步终端成为了一个只负责诸如显示,语音提示和操作卡片和扫码媒介。功能都在后台,在云上实现以服务形式呈现。

1.3K30

(二)Linux嵌入式开发——软件安装(Ubuntu)

文章目录 (二)Linux嵌入式开发——软件安装(Ubuntu) APP Store APT工具 问题 解决办法1 解决办法2 deb软件包 程序源码 问题1 解决办法 问题2 解决办法 总结 (二)Linux...嵌入式开发——软件安装(Ubuntu) 接下来,我们来介绍一下如何在Ubuntu环境下安装软件,我们主要介绍4种下载软件方式,就让我们来一起看看吧!...但是需要注意就是,我们需要安装Linux版本下安装包。 我们有两种安装方式,第一种就是双击,这个比较简单,就不再介绍了。我们介绍一下第二种。...需要命令如下: sudo dpkg -i xxxx.deb 卸载命令如下所示: sudo dpkg -r xxxx 程序源码 接下来我们介绍就是使用程序源码来安装,这个地方我们下载是tree...,主要功能就是把文件内容以树状图形式展现出来,首先我们进入下载网页:The Tree Command for Linux Homepage (indstate.edu)。

77740

Linux嵌入式开发——vim编辑器

文章目录 Linux嵌入式开发——vim编辑器 准备操作 使用 打开 工作模式 一般模式 编辑模式 命令行模式 保存退出 其他操作方式 Linux嵌入式开发——vim编辑器 准备操作 首先我们需要安装一下...vim,使用命令如下所示: sudo apt-get install vim 其实Linux系统自带一个vi编辑器,但是vi编辑器不好用,所以建议大家安装vim编辑器。...i 在当前光标所在字符前面,转为输入模式。 I 在当前光标所在行行首转换为输入模式。 a 在当前光标所在字符后面,转为输入模式。 A 在光标所在行行尾,转换为输入模式。...o 在当前光标所在行下方,新建一行,并转为输入模式。 O 在当前光标所在行上方,新建一行,并转为输入模式。 s 删除光标所在字符。 r 替换光标处字符。...我们使用最多就是“a”,其他简单了解一下就行。 命令行模式 命令行模式(底行模式):先进入到一般模式,然后输入:、/、?这三个中任意一个就可以进入到命令行模式。我们一般用最多就是“:”。

49930
领券