文章目录 Linux嵌入式开发——文件权限 文件权限 文件权限管理 修改文件权限 修改文件所属用户 拥有者 拥有者组 Linux嵌入式开发——文件权限 文件权限 文件权限是指不同的用户或用户组对某个文件拥有的权限...,文件的权限分为三种,并且可以使用二进制表示文件权限。...我们可以使用如下命令去查看一个文件的信息: ls a.c -l # ls 文件名 -l 我们接下来就来分析一下 a.c文件信息,首先,a.c的文件信息如下所示: - rw-...文件权限管理 修改文件权限 修改文件权限我们使用的是chmod命令,具体用法如下所示,首先我们查看一个文件的属性: -rwxrwxr-x 然后对其进行修改,664就是把所有用户的可执行全部删除,在此之后...chmod 664 a -rw-rw-r-- 修改文件所属用户 修改文件权限我们使用的是chown命令,具体用法如下所示,我们开始以前面的那个文件为例子,修改其所属用户,我们先来查看一下文件的用户。
文章目录 Linux嵌入式开发——连接文件 ln命令 硬连接 符号连接(软连接) Linux嵌入式开发——连接文件 Linux有两种连接文件:第一种叫符号连接也称为软连接,第二种就是硬链接。...inode:记录文件属性,一个文件只有一个inode。inode相当于文件ID,查找文件的时候要先找到inode,然后才能读出文件的内容。...硬链接相关的知识点如下: 具有相同inode的多个文件互为硬链接文件,创建硬链接相当于文件实体多了入口。 对于硬链接文件,只有删除了源文件以及对应的所有硬连接文件,文件实体才会被删除。...根据硬链接文件的特点,我们可以通过给文件创建硬连接的方式来防止文件误删除。 不论修改源文件还是连接文件,另一个文件的数据都会被改变。 硬连接不能跨文件系统。 硬连接不能连接到目录。...符号连接相当于创建了一个独立的文件,这个文件会让数据读取指向它连接的哪个文件的文件名。软连接的特点如下所示: 可以连接到目录。 可以跨文件系统。 删除源文件以后,软连接文件也就“打不开了”。
文章目录 Linux嵌入式开发——文件系统结构 一、根目录“/” 二、Ubuntu文件系统结构 三、绝对路径和相对路径 Linux嵌入式开发——文件系统结构 一、根目录“/” Linux下“/”就是根目录...二、Ubuntu文件系统结构 /bin 存放二进制可执行文件,这些命令在单用户模式下也能够使用。可以被root和一般的账号使用。 /boot Ubuntu内核和启动文件,比如vmlinuz-xxx。.../dev 设备驱动文件 /etc 存放一些系统配置文件,比如用户账号和密码文件,各种服务的起始地址。 /home 系统默认的用户主文件夹,一般创建用户账户的时候,默认的用户主文件夹都会放到此目录下。.../sys 记录内核信息,虚拟文件系统。.../var 存放一些变化的文件,比如日志文件 三、绝对路径和相对路径 绝对路径:从根目录“/”算起的路径。 相对路径:相对于目前路径的文件名写法,比如./home/zzk。不是以“/”开头的就行。
飞凌嵌入式推出的OKT507-C作为一款广受欢迎的开发板拥有丰富的功能接口,而实际上OKT507-C开发板的CPU引脚资源是比较紧缺的,那么它究竟是如何提供如此丰富的接口资源的呢?...为了满足更多客户需求,在降低成本的同时尽可能保留更多功能,飞凌嵌入式为大家提供了OKT507-C去掉IO扩展芯片后保留扩展引脚功能的实现的方法。...修改路径如下: vi OKT507-linux-sdk/kernel/linux4.9/arch/arm64/boot/dts/sunxi/OKT507-C Common.dtsi 关掉IO扩展芯片功能...WiFi引脚配置: 路径如下: vi OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/OKT507-C-Common.dtsi...蓝牙引脚配置: 路径如下: vi OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/OKT507-C-Common.dtsi
Device Tree 是目前嵌入式 Linux 系统最常用的设备解耦工具, 所以要玩转嵌入式 Linux , 这个东西必须掌握. DTB, DTS , DTSI?...在 tina sdk 代码中, 有 board.dts , sun20iw1p1.dtsi 这些文件, 这些就是 device tree 的源文件,或者说描述文件. dts 通过 dtc 这个编译器可以编译成...dtb 以及后面我们要用到的 dtbo(dtb overlay) , 它们是二进制文件, Linux 和 uboot 可以使用....在之前给出的 demo 镜像中, pwm7 这个设备的驱动部分在 dts 中被注释了, 所以我们尝试用 dtb overlay 给他弄回来. dtbo 的编译只要 dtc 就可以, 但是我们会看到 dtsi...使用 #include 宏展开示例, include 里面都是 dt-bindings 目录下的文件,该目录在 tina 中的位置是: lichee/linux-5.4/include , 你要展开需要将
嵌入式Linux升级 嵌入式Linux系统一般是将应用程序与文件系统、内核、资源文件等放在不同的分区,方便后期升级。产品量产后内核、文件系统这些一般不会升级,应用程序可能升级会比较多一些。...这些文件需要加入一些必要的信息,比如:版本号、版本标志、校验等; 版本号一般用于显示提醒; 版本标志是针对该型号设备的不同配置所做的标记(如几个串口、是4G版还是以太网版等); 文件校验是对文件的合法性进行检查...这里主要就是介绍一种将上述信息写入到升级文件里的一种方法。 升级文件的版本信息、标识、校验添加 这里介绍一种简单的方式,将信息写入到升级文件里,验证的时候再从文件里去取。.../bin/test_app-20210924-V1.0.1.img 看下文件里添加的信息 文件生成后,让我们来看下升级文件里我们添加的信息。...可以用Uedit来查看一下文件,这里只截取最后的一部分看下我们添加的信息。如上下图,三部分信息已标出,在做文件信息的检测时,就可以读取文件中的这些信息进行判断处理了。
本地挂载方式1 这种放需要准备一张SD卡,然后需要利用官方光盘里提供的分区工具,对SD卡进行分区,再将内核、uboot、文件系统映像文件拷贝到SD卡上,再修改配置文件,设置启动的系统为Linux系统。...根文件系统映像制作需要用到make_ext4fs命令,这个工具在光盘里也有,是一个压缩包,解压到PC机Linux系统下就可以使用。...配置内核: # cp tiny4412_linux_defconfig .config 制作根文件系统的方式: make_ext4fs -s -l ...示例: sudo make_ext4fs -s -l 500M rootfs.img rootfs [wbyq@wbyq work]$ sudo linux_tools/local/bin...以下命令是挂载NFS文件系统之后,进入到Linux命令行执行。
前言 如果大家做过linux系统移植、或者Linux相关开发,对根文件系统这个名词应该很熟悉,在搭建嵌入式开发环境过程中,移植bootloader,移植kernel制作根文件系统是必须要做3件事情。...Linux启动时,第一个必须挂载的是根文件系统;若系统不能从指定设备上挂载根文件系统,则系统会出错而退出启动。成功之后可以自动或手动挂载其他的文件系统。因此,一个系统中可以同时存在不同的文件系统。...BusyBox 是一个集成了三百多个最常用Linux命令和工具的软件。...有些人将 BusyBox 称为 Linux 工具里的瑞士军刀。简单的说BusyBox就好像是个大工具箱,它集成压缩了 Linux 的许多工具和命令,也包含了 Linux 系统的自带的shell。.../arm-none-linux-gnueabi/lib/* ./ -rd (2).创建fstab文件,完善/etc目录 [wbyq@wbyq rootfs]$ cp /etc/fstab etc/ [wbyq
前言 根文件系统是Linux内核启动之后挂载的第一个文件系统,上篇文章里已经介绍过,如何使用busybox来制作根文件系统。...这篇文章介绍根文件系统制作成功后,如何让内核找到文件系统,并完成挂载,进入到系统命令行终端。...根文件系统支持从网络挂载和本地挂载两种方式: (1)如果是采用网络挂载就将路径设置为/dev/nfs,NFS是Linux下常用的网络文件系统,这种方式挂载一般是在系统开发阶段,方便修改调试代码,也就是将根文件系统放在...PC机上,嵌入式开发板通过网络到PC机进行访问。...255.255.255.0::eth0:off init=/linuxrc console=ttySAC0 lcd=S702 TINY4412 # save TINY4412 # reset 重启之后开发板正常就会进入到Linux
高通平台8953 Linux DTS(Device Tree Source)设备树详解之三(高通MSM8953 android7.1实例分析篇) 本系列导航: 高通平台8953 Linux DTS...的i2c地址为0x44 2.3,&i2c_8前的&表明此处仅仅是对i2c_8节点的补充,我们可以找到该节点定义的地方 kernel\arch\arm64\boot\dts\qcom\msm8953.dtsi...i2c_8_active和i2c_8_sleep,代码如下可见该i2c的IO口为Gpio98和Gpio99 kernel\arch\arm64\boot\dts\qcom\msm8953-pinctrl.dtsi...文件中。...############################ 欢迎广大学子交流嵌入式和安卓开发 aiku老师 微信号 :aiku868 微信公众平台:aiku嵌入式视频教程创科之龙 aiku
/linuxrc在嵌入式linux中一般就是busybox busybox 是一个 C 语言写出来的项目,里面包含了很多 .c 文件和 .h 文件。...但是在嵌入式 linux 中,为了省事我们把 vi、cd 等所有常用的 shell 命令集合到一起构成了一个shell 命令包,起名叫 busybox。...busybox 的体积优势是嵌入式系统本身的要求和特点造成的。...(包括了虚拟文件系统) mdev mdev 是 udev 的嵌入式简化版本,udev/mdev 是用来配合 linux 驱动工作的一个应用层的软件,udev/mdev 的工作就是配合 linux 驱动生成相应的...常见 BSP 结构 7.1 嵌入式 linux 产品的 bsp 介绍 大部分的 ARM 架构的 linux 平台的 bsp 的内容和结构都是相似的,bsp 一般是芯片厂家/板卡厂家提供的。
注:linux内核中一个功能模块有三种编译方法:一种是编入、一种去去除、一种是模块化。...,将来linux系统内核启动起来后可以动态的加载或卸载这个模块。...---- .config “.config文件中每一行都是一个配置项,从.config文件的规模可以看出linux内核的可配置项有两三千个。...所以linux内核是高度可配置的,而且linux内核的所有配置项很难全部搞明白。...因为linux内核的配置项太多太繁杂超出了人的大脑能够记忆和处理的数量级,因此linux内核不像uboot那样直接手工配置,而是发明了一个图形化的配置工具menuconfig。”
自己总结的Linux学习路线,还在这条路上继续奔跑着… 我将其总结为4个阶段吧: 入门 - 抛弃旧的思维习惯,熟练使用 Linux 命令行 从Window切换到Linux是一件很痛苦的事情,因为人类接受信息最快的方式就是图形化的信息...在这一阶段,推荐的书籍是《鸟哥的私房菜》、《linux shell脚本攻略》。 《鸟哥的私房菜》- 几乎每个linux程序的必经之路。...中级 - 通过系统调用或内核接口,学会自己进行程序设计 这一部分,我的建议是分两部分学习: linux程序设计,通过系统调用学会在linux环境下进行C/C++程序开发。...推荐的书籍有《Linux环境下C编程指南》、《UNIX 环境高级编程》。 linux驱动开发,学会基本的linux内核数据结构、接口等等,了解linux设备模型、设备树等,为理解内核打下坚实的基础。...linux内核源码解析,对每个子系统的代码架构深入研究,能对内核进行模块裁剪等。推荐的书籍有《Linux内核设计与实现》、《Linux内核源代码情景分析》和《深入理解Linux内核(第三版)》。
简介 嵌入式Linux下串口编程与Linux系统下的编程没有什么区别,系统API都是一样的。...嵌入式设备中串口编程是很常用的,比如会对接一些传感器模块,这些模块大多是RS232或者RS485接口,对于软件层面上来说,RS232与RS48区别不大。..." /*************************************** *name : open_port *功能描述: 打开串口 *入口参数: 串口号 *返 回 值: 成功返回文件描述符...} return fd; } /****************************** *name : set_port *功能描述: 设置串口参数 *入口参数: fd 文件描述符
在线课堂:https://www.100ask.net/index(课程观看) 论 坛:http://bbs.100ask.net/(学术答疑) 开 发 ...
PetaLinux建议在文件“project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi”里更改DTS。...比如PetaLinux在文件“components/plnx_workspace/device-tree/device-tree/zynqmp.dtsi”里定义了如下以太网的节点: gem3: ethernet...在文件“system-user.dtsi”里,引用标签“gem3”,增加以太网的MAC地址的示例: &gem3 { local-mac-address = [00 0a 35 00 00 00]...; }; 在文件“system-user.dtsi”里,引用节点信息(Node Name)“ethernet@ff0e0000”, 增加以太网的MAC地址的示例: ethernet@ff0e0000 {...总结 在常见的嵌入式系统开发中,工程师主要完成集成工作,不会修改Linux驱动程序的代码。
前言 嵌入式知识点复习一 嵌入式知识点复习二 –体系结构 嵌入式知识点复习三 –ARM-LINUX嵌入式开发环境 嵌入式知识点复习四 –arm-linux文件编程 嵌入式知识点复习五 –arm-linux...进程编程 嵌入式知识点复习六 –arm-linux网络编程 嵌入式知识点复习七 –linux字符型设备驱动初步 嵌入式知识点复习一 1、 嵌入式系统的一般组成结构 2、嵌入式硬件系统的结构 (1)嵌入式处理器...4、嵌入式操作系统 功能: 种类:嵌入式linux;WinCE;Vxworks;μC/OS-II;Android;IOS。...-g ( E X E C ) : (EXEC): (EXEC):(SRC) (CC) (SRC) -o (EXEC) (CFLAGS) 嵌入式知识点复习四 –arm-linux文件编程 1、linux...返回值 成功:文件的当前位移 -1:出错 实例:(1)参考实验2:linux文件编程; (2)网盘:/linux编程源代码/IO(readwrite、fcntl)下相关代码 嵌入式知识点复习五 –arm-linux
Yocto :一个开源协作项目,提供模板、工具和方法,帮助您为嵌入式产品创建定制的基于 Linux 的系统,而不管硬件架构如何。...Yocto 项目的输出大致由三部分组成: 1、目标运行时二进制文件:这些包括引导加载程序、内核、内核模块、根文件系统映像。以及将 Linux 部署到目标平台所需的任何其他辅助文件。...《Buildroot》 Buildroot是我学习的第一个构建嵌入式系统的方式。 Buildroot:通过交叉编译生成嵌入式 Linux 系统的简单、高效且易于使用的工具。...Buildroot输出的主要组成部分: 1、将 Linux 部署到目标平台所需的根文件系统映像和任何其他辅助文件 2、适用于目标硬件的内核,引导加载程序和内核模块 3、用于构建所有目标二进制文件的工具链...个人感想: 我在使用buildroot之前,我在学习嵌入式Linux是没有通过什么构建方法的,只是裸露的uboot,kernel,根文件系统。每一个都要自己去编译,创建。
基本上,在ARM Linux在,一个.dts文件对应一个ARM的machine,一般放置在内核的arch/arm/boot/dts/目录。...由于一个SoC可能对应多个machine(一个SoC可以对应多个产品和电路板),势必这些.dts文件需包含许多共同的部分,Linux内核为了简化,把SoC公用的部分或者多个machine共同的部分一般提炼为....dtsi,类似于C语言的头文件。...,在 rtd-119x-nas.dts中就包含了/include/ “rtd-119x.dtsi” 当然,和C语言的头文件类似,.dtsi也可以include其他的.dtsi,譬如几乎所有的ARM SoC...的.dtsi都引用了skeleton.dtsi,即#include”skeleton.dtsi“ 或者 /include/ “skeleton.dtsi” 正常情况下所有的dts文件以及dtsi文件都含有一个根节点
作为一个新人,怎样学习嵌入式Linux 作为一个新人,怎样学习嵌入式Linux?被问过太多次,特写这篇文章来回答一下。 在学习嵌入式Linux之前,肯定要有C语言基础。...先说到这里吧,嵌入式LINUX里含有bootloader, 内核, 驱动程序、根文件系统这4大块。 一、bootloader: 它就是一个稍微复杂的裸板程序。...四、根文件系统: 大家有没有想过这2个问题: 1. 对于Linux做出来的产品,有些用作监控、有些做手机、有些做平板。那么内核启动后,挂载根文件系统后,应该启动哪一个应用程序呢? ...当然,也可以看里构建根文件系统那章。 说一下我的学习经历吧。 1. 我在学校时读的是物理电子专业,其实课程里没有教怎么设计电路,只是教了些电子电路方面的知识。...Linux方面的书: ,老外写的那本 <linux
领取专属 10元无门槛券
手把手带您无忧上云