自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

转载 Boot Loader

1 Boot Loader概述简单地说,在操作系统内核运行之前,通过一小程序,可以初始化硬件设备、建立内存空间的映射图等,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核配置好相应的环境,也可以下载文件到系统板上的SDRAM,对Flash进行擦除与编程,这个小程序一般称为Boot Loader。可以说,一个功能完善的Boot Loader已经相当于一个微型的操作系统了。

2011-11-21 22:31:15 384

转载 kernel 启动过程之一, uimge, zimage,arch/arm/boot/compressed/head.S

这几天因为工作原因,升级 2.6.22.7 的kernel 到 Mavell 的arm 板子上去,遇到一些头疼的问题,不得不分析启动代码, 郁闷阿。zImage是ARM Linux常用的一种压缩映像文件,uImage是U-boot专用的映像文件,它是在zImage之前加上一个长度为0x40的“头”,说明这个映像文 件的类型、加载位置、生成时间、大小等信息。换句话说,如果直接从uImage的

2011-11-21 22:25:03 533

转载 ARM启动过程详解

前言:本人因工作需要,首次接触到了ARM单片机,但因无人指导,走了不少弯路。下面这些笔记是我在一个多月的学习过程中总结的一点心得(可能比较乱,工作忙,没时间整理,各位朋友莫怪!),现在发到网上,与各位网友共享,希望对大家有点小小的帮助。本人购买的是上海勤研电子提供的ARM实验板,使用三星的S3C44B0X芯片,我在学习过程写的一些程序也参考了他们随板提供的一些源代码,特此致谢!关于ARM和

2011-11-21 22:23:58 1351

转载 (转)arm BOOT阅读笔记(新人发帖)

做了近两年ARM下的驱动开发,常用的各个设备驱动基本都碰过,不过Boot由于任务安排的缘故(公司一直有专人在做),一直没有机会接触,从刚开始接触嵌入式的时候,就一直想弄清楚板子上电后,程序是怎么执行的,不过看了下公司boot源码,就很快放弃了,当时对汇编充满了畏惧,做了1年多的驱动后,再看汇编感觉就没那边痛苦了,最近把boot的资料整理下,把我觉得boot比较核心的部分,完整的看了一遍,现在做个记

2011-11-21 22:22:57 366

转载 ARM Boot 示例

ARM Boot 示例    程序主要作用是通过串口下载VxWorks到ARM Flash ROM,主要过程是初始化ARM硬件,初始化串口UART1,从串口接收VxWorks image到DRAM,初始化Flash ROM.最后将DRAM中的VxWorks写入Flash ROM. ARM 串口与PC机串口连接,由PC机下载(download)VxWorks 到主板Flash ROM.

2011-11-21 22:18:46 387

转载 arm boot .s

arm   boot .s (2008-01-02 15:25:25)转载标签: arm boot分类: 足迹在汇编文件中程序的开始段一般用 .section ".start" 或 .type stext标识。这个head.S文件主要产生对vmlinuz解压缩的代码,所以这个文件在链接的时候排在真正kern

2011-11-21 22:17:12 574

转载 U-boot启动分析

U-boot启动分析16) 补丁制作和测试 [root@samfei u-boot]# make distclean [root@samfei 44b0]# mv u-boot u-boot.wx [root@samfei 44b0]# cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/u-boot login Lo

2011-11-21 22:16:39 595

转载 对照Startup.s学习ARM汇编指令

对照Startup.s学习ARM汇编指令(1)GBLL 伪指令用于定义一个全局的逻辑变量,并初始化为{False}。GBLL    BOOTLOADERBOOTLOADER   SETL    {TRUE}(2)GET(或 INCLUDE)GET 伪指令用于将一个源文件包含到当前的源文件中,并将被包含的源文件在当前位置进行汇编处理。可以使用 INCLUDE 代替 GET。I

2011-11-21 22:12:43 611

转载 GNU ARM汇编快速入门

标题:GNU ARM汇编快速入门2008-06-25 09:27:07前言: 以前用ARM的IDE工具,使用的是ARM标准的汇编语言。现在要使用GNU的工具,当然要了解一点GNU ARM汇编的不同之处。其实非常的简单,浏览一下文档然后再看看程序就完全可以搞定了,或者你硬着头皮看GNU ARM的汇编程序,用不了多少时间你就就可以无师自通了。个人比较健忘,还

2011-11-21 22:12:10 441

转载 学习 Linux,101: 管理磁盘配额

概述在本文中,了解如何管理用户的磁盘配额。学习:设置一个文件系统的磁盘配额设置配额限制检查配额生成配额报告除非有特殊说明,本文中的例子都使用 2.6.34 内核的 Fedora 13。您在其他系统上的结果可能有所不同。本文帮助您准备 Linux Professional Institute's Junior Level Administration(

2011-11-01 23:55:41 547

转载 读写自旋锁详解,第 1 部分

读写自旋锁简介什么是读写自旋锁自旋锁(Spinlock)是一种常用的互斥(Mutual Exclusion)同步原语(Synchronization Primitive),试图进入临界区(Critical Section)的线程使用忙等待(Busy Waiting)的方式检测锁的状态,若锁未被持有则尝试获取。这种忙等待的做法无谓地消耗了处理器资源,故而只适用于临界区非常短小的代码片

2011-11-01 23:54:24 374

转载 Linux内核的同步机制

一、引言在现代操作系统里,同一时间可能有多个内核执行流在执行,因此内核其实象多进程多线程编程一样也需要一些同步机制来同步各执行单元对共享数据的访问。尤其是在多处理器系统上,更需要一些同步机制来同步不同处理器上的执行单元对共享的数据的访问。在主流的Linux内核中包含了几乎所有现代的操作系统具有的同步机制,这些同步机制包括:原子操作、信号量(semaphore)、读写信号量(rw_s

2011-11-01 23:33:25 230

转载 [总结] Linux下/dev/mem和/dev/kmem的区别及作用

区别:/dev/mem: 物理内存的全镜像。可以用来访问物理内存。/dev/kmem: kernel看到的虚拟内存的全镜像。可以用来访问kernel的内容。作用:前者用来访问物理IO设备,比如X用来访问显卡的物理内存,或嵌入式中访问GPIO。用法一般就是open,然后mmap,接着可以使用map之后的地址来访问物理内存。这其实就是实现用户空间驱动的一种方法。

2011-11-01 23:31:52 4087

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除