
┣ Embedded Linux ┫
文章平均质量分 80
billpig
这个作者很懒,什么都没留下…
展开
-
【SEP4020】cross compile libdmtx 中出现的问题
由于自己的开发板的根文件系统放在/work/nfs_root/cmt_root/下,所以在之前已经把ImageMagick交叉编译到/work/nfs_root/cmt_root/usr/local下,接下来开始编译libdmtx,在使用./configure --host=arm-linux的时候一直遇到de>configure: error: dmtxread/dmtxwrite re原创 2010-01-25 23:31:00 · 1305 阅读 · 0 评论 -
The .config
The dot-config file is the configuration blueprint for building a Linux kernel image. You will likely spend significant effort at the start of your Linux project building a configuration that is appro原创 2010-01-25 23:31:00 · 907 阅读 · 0 评论 -
【理论知识篇】ATPCS概述
为了使单独编译的C语言程序和汇编程序之间能够相互调用,必须为子程序之间的调用规定一定的规则.ATPCS就是ARM程序和THUMB程序中子程序调用的基本规则...一.ATPCS概述... ATPCS规定了一些子程序之间调用的基本规则.这些基本规则包括子程序调用过程中寄存器的使用规则,数据栈的使用规则,参数的传递规则.为适应一些特定的需要,对这些基本的调用规则进行一些修改得到几种不同的原创 2010-01-25 23:31:00 · 898 阅读 · 0 评论 -
ARM工作模式及寄存器
了解ARM处理器的工作模式和各个寄存器的功能,对移植操作系统是很有帮助的。 ARM处理器共有7种不同的处理器模式:1、用户模式(User):正常程序的执行模式。2、快速中断模式(FIQ):用于高速数据传输和通道处理。3、外部中断模式(IRQ):用于通常的外部中断处理。4、特权模式(SVE):又叫管理模式,供操作系统使用的一种保护模式。5、数据访问中止模式(ABT):用于原创 2010-01-25 23:28:00 · 7020 阅读 · 1 评论 -
ldr和adr在使用标号表达式作为操作数的区别
转载自:http://blog.youkuaiyun.com/denlee/archive/2008/05/31/2499542.aspxARM汇编有ldr指令以及ldr、adr伪指令,他门都可以将标号表达式作为操作数,下面通过分析一段代码以及对应的反汇编结果来说明它们的区别。 ldr r0, _start adr r0, _start ldr转载 2010-01-16 09:40:00 · 459 阅读 · 0 评论 -
ldr和adr在使用标号表达式作为操作数的区别
转载自:http://blog.youkuaiyun.com/denlee/archive/2008/05/31/2499542.aspxARM汇编有ldr指令以及ldr、adr伪指令,他门都可以将标号表达式作为操作数,下面通过分析一段代码以及对应的反汇编结果来说明它们的区别。 ldr r0, _start adr r0, _start ldr转载 2010-01-19 14:14:00 · 790 阅读 · 0 评论 -
GNU汇编使用经验
1. mov pc #0x 指令可用来实现代码跳转,跳转时的立即数可以是32位的,但必须是一个8位的数移位偶数次的结果。2. 在代码中使用.word定义变量时,一定要保证该地址不会被指令执行到,或者把变量的定义专门放到一个数据段里面。3. 比较时使用cmp指令,后跟bne、bge、bgt、blt、ble跳转指令4. 可以使用.word把标识符作为常量使用 例如: Start: valueO原创 2010-01-19 14:13:00 · 1050 阅读 · 0 评论 -
【Bootloader】对.lds连接脚本文件的分析
本文由Jacky原创,来自http://blog.chinaunix.net/u1/58780/showart.php?id=462971对于.lds文件,它定义了整个程序编译之后的连接过程,决定了一个可执行程序的各个段的存储位置。虽然现在我还没怎么用它,但感觉还是挺重要的,有必要了解一下。先看一下GNU官方网站上对.lds文件形式的完整描述:de>SECTIO转载 2010-01-19 14:12:00 · 910 阅读 · 0 评论 -
【Bootloader】u-boot 1.1.6 start.S 代码学习
/*参考了别人的一些笔记,看完了启动代码。本文档记录在看代码时碰到的困难,将这些曾经困扰的问题记录下来,以备今后之用。分析时不重要的代码被删除了。*/.globl _start_start: b reset ldr pc, _undefined_instruction ldr pc, _software_interrupt ldr转载 2010-01-19 14:10:00 · 902 阅读 · 0 评论 -
【Bootloader】移植U-Boot.1.2.0到博创2410-S(S3C2410A)
转载自:http://blog.chinaunix.net/u1/34474/showart.php?id=363269 同时附加自己的一些修改一、在U-Boot中建立自己的开发板类型,并测试编译。我为开发板取名叫: tekkaman24100 在工作目录下解压U-Boot。$tar zxvf u-boot.git.tar.gz1 进入U-Boot目录,修改Makefil转载 2010-01-19 14:07:00 · 981 阅读 · 0 评论 -
【Busybox】inittab详解
linux下的/etc/inittab中的英文解释: This file describes how the INIT process should set up the system in a certain run-level.The inittab file describes which processes are started at bootup and原创 2010-01-19 14:06:00 · 3654 阅读 · 0 评论 -
【SEP4020】Linux开发推荐挂载NFS作为根文件系统
转载自:http://hi.baidu.com/aokikyon/blog/item/86d1640fb3b7ca226059f390.html 以前陆陆续续写过很多挂载NFS相关的内容,现在把他们整理一下,看起来方便些。 之前使用cramfs或yaffs作为根文件系统,开发起来很不方便,需要修改一点文件都要重新烧写nand,在开发时推荐挂载虚拟机下的nfs分区作为根文件系统。NF转载 2010-01-19 14:03:00 · 1814 阅读 · 0 评论 -
【Busybox】Busybox init启动过程
Busybox会在内核刚完成加载后就立即启动,此后Busybox会跳转到它的init进程开始自横行,它的init进程主要进行一下的工作。1、为init进程设置信号处理进程2、对控制台进行初始化3、解析inittab文件即/etc/inittab4、在默认情况想ia,Busybox会运行系统初始化脚本/etc/init.d/rcS5、运行导致init暂停的inittab命令(ac原创 2010-01-19 14:00:00 · 1371 阅读 · 0 评论 -
【SEP4020】ImageMagick和libdmtx的移植 for Arm7
经过两天的奋斗,终于成功的把这2个的东西移植到开发板上去了,我用的是SEP4020的开发板,系统为UBUNTU 9.10,由于这是俺第一次做移植,遇到了不少新鲜而困难的东西,首先对移植的过程还不太了解,我自己的开发板是通过NFS挂载根文件系统(路径:/work/nfs_root/cmt_root),当初在移植的时候直接把ImageMagick安装在/work/nfs_root/cmt_ro原创 2010-01-27 09:24:00 · 3620 阅读 · 1 评论 -
Thumb的工作状态
Thumb指令集概述为兼容数据总线宽度为16位的应用系统,ARM体系结构除了支持执行效率很高的32位ARM指令集以外,同时支持16位的Thumb指令集。Thumb指令集是ARM指令集的一个子集,是针对代码密度问题而提出的,它具有16位的代码宽度。与等价的32位代码相比较,Thumb指令集在保留32位代码优势的同时,大大的节省了系统的存储空间。Thumb不是一个完整的体系结构,不能指望处理器只执原创 2010-01-25 23:30:00 · 3647 阅读 · 0 评论 -
【Bootloader】U-BOOT全线移植分析系列之四--U-boot如何引导Linux内核启动?
U-BOOT全线移植分析系列之四――U-boot如何引导Linux内核启动? Sailor_forever sailing_9806@163.com 转载请注明http://blog.youkuaiyun.com/sailor_8318/archive/2008/08/05/2773412.aspx 【摘要】本节介绍了U-boot使用go或bootm启动linux内核的方法。首先介绍转载 2010-01-29 15:19:00 · 1403 阅读 · 0 评论 -
【Bootloader】mkimage使用详解 (-a 和 –c参数指定的地址异同的差别)
uboot 源代码的tools/ 目录下有mkimage 工具,这个工具可以用来制作不压缩或者压缩的多种可启动映象文件。 mkimage 在制作映象文件的时候,是在原来的可执行映象文件的前面加上一个0x40 字节的头,记录参数所指定的信息,这样uboot 才能识别这个映象是针对哪个CPU 体系结构的,哪个OS 的,哪种类型,加载内存中的哪个位置, 入口点在内存的那个位置以及映象名是什么转载 2010-01-29 15:18:00 · 2047 阅读 · 0 评论 -
如何用virtualbox3.0在win7下架设桥接网络 for ubuntu 9.10
首先说一下我的环境:主机:win7虚拟机:virtualbos 3.0客户机:ubuntu 9.10 今天下午从老师那边刚拿到开发板,开始进行各个尝试,后来发现貌似开发板网卡那边的借口驱动有点问题,老是Ping不通主机,于是想通过nfs启动虚拟机上的zImage,可以怎么用nfs进行远程的连接呢?在之前查了很多的网上的文章,都说要搞个tap0,br0什么的,全部都试了一遍,原创 2010-01-13 20:06:00 · 3527 阅读 · 0 评论