![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux
文章平均质量分 56
龙图腾
驱动工程师真心喜欢学习真心喜欢技术
展开
-
简单的自解压程序
Linux 自解压程序简单的自解压程序生成可执行程序执行自解压程序脚本 autopack_run.sh简单的自解压程序参考cmake-3.19.6-Linux-x86_64 写了一个自解压的可执行程序生成可执行程序cat ./autopack_run.sh test.tar.gz > test_auto_run.sh1执行自解压程序方法1: sh 直接执行ssh test_auto_run.sh1方法2:增加可执行权限chmod +x test_auto_run.s转载 2022-05-16 15:19:52 · 616 阅读 · 0 评论 -
Linux 中基于 DRM 的图形显示系统概述
Linux系统中图形显示方案1FBDEVFramebuffer device社区参与度不高,基本转移到了DRM。DRM/KMSDirect Rendering Manager / KernelMode Setting主流的图形显示方法,社区参与度高,支持图形系统精细化操作,基本形成了一套图显系统开发的生态标准。V4L2Video For Linux 2主要用于视频捕获的应用场景,并且需要特定输出设备,对复杂图显控制器的支持不佳DRM系统组成2kernel层转载 2022-03-16 19:20:06 · 2486 阅读 · 0 评论 -
linux底层设置分辨率 DRM KMS 理解
我的理解原创 2020-11-26 18:31:33 · 1457 阅读 · 0 评论 -
linux DTC处理#include
我在尝试使用kernel DTC命令编译时,冒出错误,发现有错误。进而得知·。发现dts文件中引用了.h文件.linux自带的DTC文件无法直接编译DTC需要GCC预处理预处理方法如下:cpp -Wp,-MD,x.pre.tmp -nostdinc -I. -I kernel/include/ -undef -D__DTS__ -x assembler-with-cpp -o...原创 2020-03-23 12:58:29 · 1892 阅读 · 0 评论 -
Shell中;;&在case场景中的作用
case通用用法:case $var in A) command1 ;; B) command2 ;; C) command3 ;; *) command4 ;;esac如果变量var匹配里面,匹配到了则执行相应的命令并退出case,依次从A-->B-->C;如果C里面也没有,则执行默认的*),command4; 但实际场景里面经常会...转载 2020-01-02 17:38:23 · 609 阅读 · 0 评论 -
Linux中的括号用法
一、Linux中的小括号(也叫圆括号)“( )”的用法1.单小括号()1)数组赋值或者初始化数组;2)子Shell赋值:小括号中的内容会开启一个子shell独立运行;括号中以分号连接,最后一个命令不需要;各命令和括号无需空格;3)实现多条命令集合:新开多条命令来执行,各个命令之间用分号隔开,最后一个命令必须要分号来隔开;4)与”$“结合实现命令替换:等同于cmd扫描一遍命令行,发...转载 2020-01-02 15:48:26 · 2924 阅读 · 0 评论 -
linux shell:替换结构 ${var1##*:} ${bz1%,*}的意思
介绍下Shell中的${}、##和%%使用范例,本文给出了不同情况下得到的结果。假设定义了一个变量为:代码如下:file=/dir1/dir2/dir3/my.file.txt可以用${ }分别替换得到不同的值:${file#*/}:删掉第一个 / 及其左边的字符串:dir1/dir2/dir3/my.file.txt${file##*/}:删掉最后一个 / 及其左边的字符串:...转载 2020-01-02 15:40:46 · 600 阅读 · 0 评论 -
cmos sensor (图像传感器) CSI接口
Chapter 39(Page 1429)CMOS Sensor Interface(CSI) 本章介绍了CMOS图像传感器接口(CSI)的架构,操作守则以及编程原型。该CSI接口能够使得MX27直接连接到外部的CMOS图像传感器上。CMOS图像传感器分为两类,非智能和智能。非智能的这类图像传感器只是支持传统的摄像头时序(场同步和行同步),然后输出一个Bayer(拜耳)以及统计的数转载 2012-03-06 14:43:15 · 20527 阅读 · 4 评论 -
shell 脚本和case例子
case和select结构在技术上说并不是循环, 因为它们并不对可执行代码块进行迭代. 但是和循环相似的是, 它们也依靠在代码块顶部或底部的条件判断来决定程序的分支. 在代码块中控制程序分支 case (in) / esac 在shell中的case结构与C/C++中的switch结构是相同的. 它允许通过判断来选择代码块中多条路径中的一条. 它的作用和多个if/t转载 2012-03-24 14:31:50 · 1167 阅读 · 0 评论 -
Linux_shell脚本_遍历文件夹下所有文件
#!/bin/bashfunction ergodic(){for file in ` ls $1 `do if [ -d $1"/"$file ]thenergodic $1"/"$fileelselocal path=$1"/"$file #得到文件的完整的目录local name=$file #得到文件的名字原创 2012-03-15 09:37:18 · 1277 阅读 · 0 评论 -
变量赋值和引用
=== 变量赋值和引用 ===Shell编程中,使用变量无需事先声明,同时变量名的命名须遵循如下规则: #首个字符必须为字母(a-z,A-Z) #中间不能有空格,可以使用下划线(_) #不能使用标点符号 #不能使用bash里的关键字(可用help命令查看保留关键字)需要给变量赋值时,可以这么写: 变量名=值 要取用一个变量的值,只需在变量名前转载 2012-03-14 21:46:50 · 814 阅读 · 0 评论 -
uboot/tools/mkimage 用法和参数详解
Usage: mkimage -l image-l ==> list image header information$ mkimage -A arch -O os -T type -C comp -a addr -e ep -n name -d data_file[:data_file...] image-A ==> set architecture to 'arch'-O ==转载 2012-05-28 15:57:52 · 2012 阅读 · 0 评论 -
jffs2文件系统在nand flash上的移植(实验平台为MPC8315ERDB开发板)
刚解决这个问题,很激动先说说这个板子吧,MPC8315ERDB,飞思卡尔的,CPU:Freescale MPC8315E 400MHZ,Flash有两块,8M的Nor Flash和32M的Nand Flash,其他配置也很丰富,2块千兆网卡,一块160G三星硬盘,还有很多接口什么的,不过跟本文无关,还是废话少说。做这个移植主要参考了User_Manual_MPC8315ERDB_2转载 2012-05-28 15:11:34 · 1175 阅读 · 0 评论 -
freescale LTIB BSP 使用总结
freescale LTIB BSP 使用总结: 1.ltib BSP的简介(readme.bsp) Freescale Linux(tm) Target Image Builder (ltib) Board Support Package (BSP) details support features(kernel,u-boot,Tool转载 2012-05-29 11:33:34 · 3261 阅读 · 0 评论 -
用IMX51_EVK小系统模拟新板子--修改u-boot宏定义
为了能够使u-boot能够把环境变量保存在自己所在的SPI NOR FLASH中,必须要修改相应的宏定义文件。步骤如下:1、修改mx51_bbg_android.h 文件在~/MyAndroid/bootable/bootloader/uboot-imx/include/configs/目录下,找到mx51_bbg_android.h 文件。用gedit或者vi打开,修改如下:转载 2012-05-29 11:34:17 · 1169 阅读 · 0 评论 -
u-boot 配置文件
一、配置文件名称和目录这个配置文件的名称为 开发板名称.txt。这个配置文件的目录为 include/configs/ 目录。二、宏定义整个文件的内容使用条件宏定义 #ifndef __CONFIG_H#define __CONFIG_Hxxxxxxxxxxxxxxxxxxxxxxxx转载 2012-05-29 12:53:44 · 931 阅读 · 0 评论 -
解析linux根文件系统的挂载过程
一:前言前段时间在编译kernel的时候发现rootfs挂载不上。相同的root选项设置旧版的image却可以。为了彻底解决这个问题。研究了一下rootfs的挂载过程。特总结如下,希望能给这部份知识点比较迷茫的朋友一点帮助。二:rootfs的种类总的来说,rootfs分为两种:虚拟rootfs和真实rootfs.现在kernel的发展趋势是将更多的功能放到用户空间完成。以保持内核的精简转载 2012-05-30 14:23:08 · 462 阅读 · 0 评论 -
uBoot和Linux的参数传递关系
[root@gliethttp linux-2.4.19-rmk7]#make at91rm9200dk_config[root@gliethttp linux-2.4.19-rmk7]#make oldcnofig //使用dk板默认配置如果想定制,可以继续执行[root@gliethttp linux-2.4.19-rmk7]#make menuconfig[root@glie转载 2012-05-30 15:10:34 · 671 阅读 · 0 评论 -
ubuntu如何通过samba创建共享
本文是基于ubuntu桌面版。前面的设置都是管理员进行的,这里说的管理员就是可以使用sudo命令,也就是在admin用户组的成员,普通用户就是不在admin组的用户(默认情况下没有sudo权限,不是samba用户,也不在sambashare用户组)。装系统时设置的那个唯一的用户,他拥有sudo权限和其它的所有默认权限(默认已在sambashare),当然,最高的仍然是root(注意root和管理转载 2012-05-31 16:47:02 · 657 阅读 · 0 评论 -
make menuconfig
make menuconfig 图形化的内核配置make mrproper -----删除不必要的文件和目录. #make config(基于文本的最为传统的配置界面,不推荐使用) #make menuconfig(基于文本选单的配置界面,字符终端下推荐使用) #make xconfig(基于图形窗口模式的配置界面,Xwindow下推荐使用) #make oldconfig(如果只转载 2012-06-01 22:03:54 · 972 阅读 · 0 评论 -
initramfs 使用
initramfs usage使用initramfs可以实现内核和文件系统在一个映像文件中,不过会增大内核体积,同时占用较多内存。(1)准备根文件系统先准备好根文件系统,放到某个目录,不过为了方便和内核一起打包,可以放到内核源代码的usr/目录下,我的做法是在usr目录下建立了image目录,然后将可用的根文件系统的内容全部复制到image目录下:转载 2012-06-02 14:17:44 · 885 阅读 · 0 评论 -
linux下RamDisk实现方式
在Linux中可以将一部分内存mount为分区来使用,通常称之为RamDisk,分为:Ramdisk, ramfs, tmpfs 。① 第一种就是传统意义上的,可以格式化,然后加载。这在Linux内核2.0/2.2就已经支持,其不足之处是大小固定,之后不能改变。为了能够使用Ramdisk,我们在编译内核时须将block device中的Ramdisk支持选上,它下面还有两个选项,一个是转载 2012-06-01 16:26:55 · 1309 阅读 · 0 评论 -
LTIB 常用命令详解
下面再写一点ltib的常用命令参数吧,虽然觉得对其编译内核和文件系统流程有了一定了解,但是对其命令参数用过的还不是很多,可以说是不甚了解,下面介绍一些,希望有用:首先一个比较有用的命令参数就是help,一个人忘记命令参数很常见,何况刚开始熟悉这个工具。下面这个命令行可以查看ltib命令的使用帮助:$ ./ltib --help ## 这个等原创 2012-06-01 20:27:03 · 1822 阅读 · 0 评论 -
ramdisk作为根文件系统的配置
从ramdisk根文件系统启动Linux成功,总结一下 今天做了个试验,让Linux2.6.29.4从ramdisk根文件系统启动成功,总结一下。其中涉及的内容较多,很多东西不再详述,如需深入研究请查阅相关资料(百度或谷歌一下一大堆)。开发环境:Fedora 9交叉编译工具链:arm-linux-gcc 4.3.2 with EABI嵌入式Linux内核版本:2.6.2原创 2012-06-01 20:34:59 · 1855 阅读 · 0 评论 -
剖析Linux系统启动过程
本文以RedHat9.0和i386平台为例,剖析了从用户打开电源直到屏幕出现命令行提示符的整个Linux启动过程。并且介绍了启动中涉及到的各种文件。 阅读Linux源代码,无疑是深入学习Linux的最好方法。在本文对Linux启动过程的介绍中,我们也尝试从源代码的视角来更深入的剖析Linux 的启动过程,所以其中也简单涉及到部分相关的Linux源代码,Linux启动这部分的源码主要使用转载 2012-06-02 14:21:45 · 549 阅读 · 0 评论 -
linux后台运行程序及恢复
1.后台运行的两个命令 & 和 ctr+z一开始就+“&”具体方法是: [命令]空格[&]比如:QUOTE:[root@pcmxexweb etc]# find / -name xml &这样,这个查找程序就会在后台运行。它运行的同时不影响你干别的事情。但是有的时候忘记了在命令之后加上‘&’转载 2012-06-04 12:16:03 · 502 阅读 · 0 评论 -
Ubuntu下SSH设置
网上有很多介绍在Ubuntu下开启SSH服务的文章,但大多数介绍的方法测试后都不太理想,均不能实现远程登录到Ubuntu上,最后分析原因是都没有真正开启ssh-server服务。最终成功的方法如下: Ubuntu 下安装 OpenSSH Server 是无比轻松的一件事情,需要的命令只有一条: sudo apt-get install openssh-server (查看返转载 2012-05-16 12:23:23 · 444 阅读 · 0 评论 -
LTIB for UBUNTU 11.10 & error faced
LTIB for UBUNTU 11.10 & error faced 1.) LTIB - How to setup LTib and compile packages in Ubuntu 11.1----------------------------------------------------------------Intially update and转载 2012-05-23 09:49:42 · 2482 阅读 · 5 评论 -
Linux tail 命令详解
用途从指定点开始将文件写到标准输出。使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容。 语法标准语法tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Nu转载 2012-05-23 16:29:15 · 629 阅读 · 0 评论 -
tail 命令
tail命令用途显示文件的最后几行。语法标准语法tail [ -f ] [ -c Number | -n Number | -mNumber | -b Number | -k Number ] [ File ]要以逆序显示行tail [ -r ] [ -n Number ] [ File ]描述ta转载 2012-05-23 20:52:15 · 741 阅读 · 0 评论 -
Linux export命令
Linux export命令 功能说明:设置或显示环境变量。 语 法:export [-fnp][变量名称]=[变量设置值] 补充说明:在shell中执行程序时,shell会提供一组环境变量。export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该此登录操作-f 代表[变量名称]中为函数名称。 -n 删除指定的变量。变量实际上并未删除,只是不原创 2012-05-24 21:20:45 · 615 阅读 · 0 评论 -
linux 目录结构
目录树的主要部分有root(/)、/usr、/var、/home等等。下面是一个典型的linux目录结构如下: / 根目录 /bin 存放必要的命令 /boot 存放内核以及启动所需的文件等 /dev 存放设备文件 /etc 存放系统的配置文件 /home 用户文件的主目录,用户数据存放在其主目录中 /lib 存放必要的运行库 /mnt 存放临时的映射文件系统,我们原创 2012-05-24 13:40:09 · 555 阅读 · 0 评论 -
zImage和uImage的区别
zImage和uImage的区别一、简介对于Linux内核,编译可以生成不同格式的映像文件,例如:# make zImage# make uImagezImage是ARM Linux常用的一种压缩映像文件,uImage是U-boot专用的映像文件,它是在zImage之前加上一个长度为0x40的“头”,说明这个映像文件的类型、加载位置、生成时间转载 2012-05-25 11:26:31 · 564 阅读 · 0 评论 -
ubuut环境变量
u-boot的环境变量是使用u-boot的关键,它可以由你自己定义的,但是其中有一些也是大家经常使用,约定熟成的,有一些是u-boot自己定义的,更改这些名字会出现错误,下面的表中我们列出了一些常用的环境变量:环境变量可以通过printenv命令查看环境变量的设置描述bootdelay 执行自动启动的等候秒数baudrate 串口控制台的波特率netmask原创 2012-05-25 20:40:00 · 1794 阅读 · 0 评论 -
Linux系统中profile文件原理与应用
Linux profile文件的改变会涉及到系统的环境,也就是有关Linux环境变量的东西,学习Linux要了解Linux profile文件的相关原理,这里对则以文件进行具体分析。这里修改会对所有用户起作用。 1、Linux是一个多用户的操作系统。每个用户登录系统后,都会有一个专用的运行环境。通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义。用户可以对自己转载 2012-06-15 19:05:50 · 584 阅读 · 0 评论 -
linux命令后台运行
1.在下达的命令后面加上&,就可以使该命令在后台进行工作,这样做最大的好处就是不怕被ctrl+c这个中断指令所中断。 2. 那大家可能又要问了,在后台执行的程序怎么使它恢复到前台来运行呢?很简单,只用执行fg这个命令,就可以了。 3.可能有些同学又要问了,我现在已经在前台运行的命令,我能把它放到后台去运行么?当然可以了,只要执行ctrl+z就可以做到了。是不是很赞啊! 4.说到这转载 2012-06-15 13:01:00 · 453 阅读 · 0 评论 -
常用 U-boot命令详解
常用 U-boot命令详解U-boot发展到现在,他的命令行模式已经非常接近Linux下的shell了,在我编译的U-boot-2009.11中的命令行模式模式下支持“Tab”键的命令补全和命令的历史记录功能。而且如果你输入的命令的前几个字符和别的命令不重复,那么你就只需要打这几个字符即可,比如我想看这个U-boot的版本号,命令就是“原创 2012-06-15 20:19:36 · 1309 阅读 · 0 评论 -
make menuconfig详解
make menuconfig 图形化的内核配置make mrproper -----删除不必要的文件和目录. 1 #make config(基于文本的最为传统的配置界面,不推荐使用) 2 #make menuconfig(基于文本选单的配置界面,字符终端下推荐使用)注意:使用make menuconfig 需要安装ncurses( sudo apt-get ins原创 2012-06-16 18:39:34 · 5468 阅读 · 0 评论 -
dd命令的高级应用
dd是Linux上的一个常用的命令。 例如:dd if=/1.txt of=/tmp/2.txt (其中, if代表input file;of代表output file, 命令的结果就是将根目录下的1.txt的内容拷贝到/tmp目录的的2.txt。) 当然,如果只是用dd做这样的事情显然大材小用了,因为cp可以干同样的事情,而且更简单。 下面就转载 2012-06-18 16:42:18 · 2428 阅读 · 0 评论 -
uboot 与系统内核中 MTD分区的关系:
uboot 与系统内核中 MTD分区的关系:分区只是内核的概念,就是说A~B地址放内核,C~D地址放文件系统,等等。1:在内核MTD中可以定义分区A~B,C~D。。。。。。并与以绝对的地址赋上值。bootloader中只要能将内核下载到A~B区的A地址开始处就可以,C~D区的C起始地址下载文件系统。。。这些起始地址在MTD的分区信息中能找到。bootloader对分区的概念不重要,转载 2012-06-18 18:08:04 · 666 阅读 · 0 评论