关闭

ARM跑马灯·汇编程序详细解析 .

本人使用的是TQ2440开发板,主芯片是S3C2440,它一共有130个I/O端口,分为9组:GPA、GPB...GPJ。    对于这几组GPIO引脚,它们的寄存器是相似的:    GPxCON:用于选择引脚功能    GPxDAT:用于读、写引脚数据    GPxUP:用于确定是否使用内部上拉电阻 ,其中无GPAUP寄存器! 注意:PORT A与PORT B~PORT J 在功能选择...
阅读(558) 评论(0)

Linux操作系统根文件系统的启动分析

一般的系统是先启动/sbin/init,但是也可通过启动参数指定init=来确定,如:我的系统就是制定的init=/linuxrc,因为文件系统是采用busybox的,而linuxrc。也是一个指向busybox的文件,不过不确认它指向具体哪个指令。不过可能是/sbin/init。 init进程的主要任务是按照inittab文件所提供的信息创建进程,由于进行系统初始化的那些进程都由i...
阅读(380) 评论(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可以干同样的事情,而且更简单。        下面就介绍一下...
阅读(807) 评论(0)

linux 下查找文件或者内容常有命令

whereis 查找软件的安装路径 -b 只查找二进制文件 -m 只查找帮助文件 -s 只查找源代码 -u 排除指定类型文件 -f 只显示文件名 -B 在指定目录下查找二进制文件 -M 在指定目录下查找帮助文件 -S 在指定目录下查找源代码 locate 在文件索引数据库中搜索文件 -d 搜索指定数据库 updatedb 更新文件索引数据库 f...
阅读(416) 评论(0)

LINUX 根文件系统加载,不同文件系统的挂载和 操作方法(VFS虚拟文件系统) --2

Linux启动盘boot/root盘的制作 boot/root盘由两部分组成,即核心和根文件系统。要把这两部分都放到一个1.44MB的软盘上去,通常要对内核和根文件系统进行压缩,压缩核心的最好方法是进行重新编译内核,将一些不必要的支持去掉,如对网络和其它周边设备的支持,重要的一点是记住内核必须支持RAMDISK及ext2,否则系统不能正常引导。关于内核的编译本文不再阐述,下面重点介绍如何生成根文...
阅读(739) 评论(0)

uboot从usb(fat)分区加载内核

第一步: 内核的支持。修改linux source中的.config文件。 CONFIG_CMDLINE="console=ttyS0,115200 mem=160m ip=off noinitrd root=8:1 rw rootfstype=ext2 rootdelay=10" 8为sda(即U盘)的主设备号,1为第一个分区,是ext2系统,rootdelay表示延迟10秒加载,原因为u...
阅读(782) 评论(0)

使Uboot支持USB的步骤

今天查看了一下在P4080DS板子的U-Boot中支持USB,主要是加入USB Host端驱动和相应设备端驱动来支持存储设备,这样就 可以将Kernel以及文件系统存放在U盘上,来通过U盘来启动。 跟其它接口一样,在U-Boot中,USB的支持也是通过放在相应板子上的几个宏定义来实现,对于P4080DS板,是在include/configs/corenet_ds.h定义: ----------...
阅读(514) 评论(0)

linux开机过程中的内核打印

前言 嵌入式开发中, 通常使用串口输出调试信息,了解运行状态。 内核启动过程中,在不同阶段会通过不同的方式将调试信息输出到串口。 (注:以下内容针对 arm-linux.) 解压缩阶段 解压缩阶段内核会输出: Uncompressing Linux................................ done, booting the kernel.   查...
阅读(328) 评论(0)

在嵌入式Linux上构建2个串口控制台

当前的很多嵌入式系统很多使用2个串口来进行通讯,一个串口常常作为命令行串口,给用户使用。而另一个串口可以用来通信或者作为调试串口使用。     本文以两个串口在Linux下 一个作为调试串口,另一个作为用户命令行串口为例说明。首先,ttyS0作为调试串口,而ttyS1作为命令行串口使用。等系统启动后,命令行串口对用户是可见的,用户可以操作。而调试串口只给开发人员使用。     在系统启...
阅读(476) 评论(0)

将linux启动由com0转为com1,只需要修改:

总结:将linux启动由com0转为com1,只需要修改: (1)uncompress.c,将启动输出设为uart0 (2)在serial8250_init()之中加入myinit(),保证uart1能够工作 (3)修改serial.h 将uart1设置为正确的地址 (5)修改启动参数加入console=ttyS1,115200n8 (4)修改/etc/inittab保证启动之后,使用t...
阅读(257) 评论(0)

嵌入式Linux内核移植相关代码分析

饮水思源 - 主题文章阅读  [讨论区: Embedded] 本主题共有 6 篇文章,分 1 页, 当前显示第 1 页 [返回讨论区] [回复本文][原帖] 发信人: patrickzhang (一塌糊涂), 信区: Embedded 标 题: 嵌入式Linux内核移植相关代码分析 发信站: 饮水思源 (2006年12月13日10:37:42 星期三)...
阅读(328) 评论(0)

华为--C++ 笔试面试题目

本文的写作目的并不在于提供C/C++程序员求职面试指导,而旨在从技术上分析面试题的内涵。   许多面试题看似简单,却需要深厚的基本功才能给出完美的解答。企业要求面试者写一个最简单的strcpy函数都可看出面试者在技术上究竟达到了怎样的程度,我们能真正写好一个strcpy函数吗?我们都觉得自己能,可是我们写出的strcpy很可能只能拿到10分中的2分。读者可从本文看到strcpy函数从2分到10分...
阅读(232) 评论(0)

ARMlinux kernel 启动之start_kernel (二)

了解完kernel启动以前的汇编之后我们来看看正式的c语言启动代码,也就是我们的start_kernel函数了。start_kernel相当大,里面每一个调用到的函数都足够我们伤脑筋了,我这里只是浅尝辄止的描述一下函数的功能,从而对kernel启动的过程有一个比较直观的了解。很多函数真正理解需要对linux相关体系有很深的了解,暂时没有时间深入,留待以后了。        说实话启动的代码看到现...
阅读(233) 评论(0)

ARM linux kernel启动流程 head.S(一)

1. kernel运行的史前时期和内存布局 在arm平台下,zImage.bin压缩镜像是由bootloader加载到物理内存,然后跳到zImage.bin里一段程序,它专门于将被压缩的kernel解压缩到KERNEL_RAM_PADDR开始的一段内存中,接着跳进真正的kernel去执行。该kernel的执行起点是stext函数,定义于arch/arm/kernel/head.S。 在分析st...
阅读(419) 评论(0)

制作linux下根文件系统

(1)创建根文件系统的基本目录结构。 我把这个过程做成了shell脚本(文件名为mkroot) ,很方便! #! /bin/sh     echo "creatint rootfs dir......"     mkdir rootfs     cd rootfs     echo "making dir : bin dev etc lib proc sbin sys usr"...
阅读(400) 评论(0)
60条 共4页1 2 3 4 下一页 尾页
    个人资料
    • 访问:43576次
    • 积分:734
    • 等级:
    • 排名:千里之外
    • 原创:11篇
    • 转载:49篇
    • 译文:0篇
    • 评论:4条
    文章分类
    最新评论