- 博客(73)
- 资源 (17)
- 收藏
- 关注

转载 成功应该养成的习惯
要成功,就马上准备有所付出吧!这就是每天你应该养成的习惯。1、不说“不可能”; 2、凡事第一反应: 找方法,不找借口; 3、遇到挫折对自己说声:太好了,机会来了! 4、不说消极的话,不落入消极的情绪,一旦发生立即正面处理; 5、凡事先订立目标; 6、行动前,预先做计划; 7、工作时间,每一分、每一秒做有利于生产的事情; 8、随时用零碎的时间做零碎的事情; 9、守时; 10、写点日记,不要太依靠
2008-10-14 13:13:00
805
转载 升级linux2.4.20内核到2.6.18
本文记录了我在winxp下的vmware5.5.3虚拟机中升级linux2.4.20内核到2.6.18的过程。主要参考了以下两篇文章1、Linux内核升级全过程 手把手教你一次成功(2.4.20-8到2.6.18) 作者:飘扬,首发地址:http://www.piaoyang.org/blog 飘扬的这篇文章写的很详细,只是个别地方还有瑕疵,本文主要就是以该文为蓝本,修正了原文中的一些
2010-03-25 15:13:00
1105
原创 编译工具eldk的安装
1.下载ARM-2007-01-21.ISO,2.挂载 #mount -o loop /root/arm-2007-01-21.iso /mnt3.安装 #./install -d /eldk/arm arm 1.下载eldk-mips-2007-01-21.iso,2.挂载 #mount -o loop /root/eldk-mips-2007-01-21.iso /mnt3.安装
2010-01-07 16:53:00
2569
转载 U-Boot启动代码分析(MIPS)
U-Boot代码分析(by MulinB)(以某Demo板Bootloader代码工程为例,CPU是MIPS架构的某多核CPU): 1) 史前时代:汇编在FLASH中运行的日子(汇编指令参见《See MIPS Run》一书):U-Boot的开始执行始于用汇编语言编写的CPU依赖的程序,程序是从cpu/mips/start.S文件中的_start代码段开始执行的。由于
2009-12-17 15:15:00
5521
转载 U-BOOT环境变量实现
1.相关文件common/env_common.c供u-boot调用的通用函数接口,它们隐藏了env的不同实现方式,比如dataflash, epprom, flash等 common/env_dataflash.cenv 存储在dataflash中的实现 common/env_epprom.cenv 存储在epprom中的实现 common/env_f
2009-12-13 09:16:00
1200
原创 u-boot 启动流程(mips)
u-boot的启动过程比较简单,大致做下面的工作: 1 cpu初始化 2 时钟,串口,内存(ddr ram)初始化 3 内存划分,分配栈,数据,配置参数,以及u-boot代码在内存中的位置。 4 对u-boot代码做relocate 5 初始化 malloc,flash,pci 以及外设(比如,网口) 6 进入命令行或者直接启动Linux kernel基本上
2009-12-12 18:39:00
3401
转载 u-boot start.S 代码学习
*参考了别人的一些笔记,看完了启动代码。本文档记录在看代码时碰到的困难,将这些曾经困扰的问题记录下来,以备今后之用。分析时不重要的代码被删除了。*/.globl _start_start: b reset ldr pc, _undefined_instruction ldr pc, _software_interrupt ldr
2009-12-10 20:19:00
1299
转载 U-Boot重定位代码分析
概述重定位(relocate)代码将BootLoader自身由Flash复制到SDRAM,以便跳转到SDRAM执行。之所以需要进行重定位是因为在Flash中执行速度比较慢,而系统复位后总是从0x00000000地址取指。重定位代码,位于/U-Boot/cpu/s3c44b0/start.S :relocate: /* relocate U-Boot t
2009-12-10 20:03:00
1261
转载 U-Boot源码分析与移植
本文从以下几个方面粗浅地分析u-boot并移植到FS2410板上:1、u-boot工程的总体结构2、u-boot的流程、主要的数据结构、内存分配。3、u-boot的重要细节,主要分析流程中各函数的功能。4、基于FS2410板子的u-boot移植。实现了NOR Flash和NAND Flash启动,网络功能。 这些认识源于自己移植u-boot过程中查找的资料和对源码的简单阅读。下面主要以smdk24
2009-12-08 23:13:00
1455
转载 ARM的异常和中断
异常和中断处理,负责处理错误,中断和其他由外部系统触发的事件。 ARM有7种异常,数据中止、快速中断请求、中断请求、预取址中止、软件中断、复位及未定义指令。 2种类型的中断,第一类是由外设引起的,即IRQ和FIQ。第二类是一条引发中断的特殊指令SWI。两种中断都会挂起正常的程序执行。 异常是需要中止指令正常执行的任何情形,包括ARM内核产生复位,取指或存储
2009-12-08 22:39:00
1412
转载 arm启动初期堆栈示意图
RAM (DRAM) * * 0xC200 0000 +------------------------------------+ * | boot loader (size: 1M) | * 0xC1F0 0000 +------------------------------------+ * | heap a
2009-12-06 22:41:00
1303
原创 ARM中CP的操作指令MCR/MRC详解
1. MCR, 将ARM中normal register的值传向CP register. format: mcr cpx, op1, src_reg, dst_reg1, dst_reg2, op2 /* op, operation code; src, source; dst, destination */ cpx: Integer in the ra
2009-12-06 21:44:00
4952
转载 PowerPC 常用寄存器简介
PowerPC 体系结构规范(PowerPC Architecture Specification)发布于 1993 年,它是一个 64 位规范 ( 也包含 32 位子集 )。几乎所有常规可用的 PowerPC(除了新型号 IBM RS/6000 和所有 IBM pSeries 高端服务器)都是32位的。PowerPC 处理器有 32 个(32 位或 64 位)GPR(通用寄存器)以及诸如 PC(
2009-12-01 10:32:00
5878
原创 powerpc 通用寄存器的作用
/* register definition *//* volatile registers that are not saved cross subroutine calls */#define p0 r3 /* argument register, volatile */#define p1 r4 /* argument register, volatile */#define p2
2009-12-01 10:06:00
2327
转载 基于MIPS的uBoot编译环境搭建
工作需要,准备在mips上移植一下uBoot,搞了两天才搞定,现将环境搭建方法记录如下:一.编译工具的准备 由于uBoot的MIPS部分采用mips_4kc-gcc编译,因而不能使用cygwin下的gnu开发包mips-elf-gcc,主要是由于uBoot中运用了GP指针,使用mips-elf-gcc的时候可能会进行重定位,因而无法正常工作。好了,到这儿我们就一心一意的搭建基于
2009-11-24 12:22:00
2708
转载 PPC的MMU实现简介
MMU就是内存管理单元,PPC上有两种方式来实现MMU,Block方式和Segment方式。两种方式在一个嵌入式系统中可以并存,但Block方式优先于Segment方式。利用Block方式,PPC需要利用到BAT,可以称之为Block寄存器(是一种SPR)。在PPC750中一共有16个BAT,分成2类,分别是IBAT与DBAT(指令与数据),这两类中又分为四组,每组由Lower BAT和Upp
2009-11-24 10:09:00
1157
转载 右键打开cmd命令提示符方法
将以下内容保存为 reg文件,运行 Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT/Directory/shell/DOS.Command]@="&Dos Command from here"[HKEY_CLASSES_ROOT/Directory/shell/DOS.Command/command]@="cmd /
2009-04-23 15:51:00
1635
1
转载 VxWorks丰富的定时管理和时钟管理
VxWorks提供丰富的定时管理和时钟管理,主要应用在以下几个方面:维护系统日历时钟在任务等待信号量、消息、事件(VxWorks5.5版本以上)或内存段时的超时处理。(系统提供的函数调用都有关于timeout的参数设置。)以一定的时间间隔或在特定的时间唤醒或发送告警到一个任务。处理任务调度中的时间片轮转。VxWorks系统这些功能都依赖于周期性的定时中断,离开实时时钟或定时器硬件就无法工作。介
2009-02-19 15:31:00
7320
原创 如何输出long long型数据
#include int main(void){ long long mem = 123456789012; printf("mem=%ld/n",mem); exit(0); } 输出不正确呀,应该用什么转移符? print("mem=%lld/n",men);
2008-12-30 16:53:00
10066
转载 PPC的MMU实现简介
MMU就是内存管理单元,PPC上有两种方式来实现MMU,Block方式和Segment方式。两种方式在一个嵌入式系统中可以并存,但Block方式优先于Segment方式。 利用Block方式,PPC需要利用到BAT,可以称之为Block寄存器(是一种SPR)。在PPC750中一共有16个BAT,分成2类,分别是IBAT与DBAT(指令与数据),这两类中又分为四组,每组由Lower
2008-12-30 10:50:00
1570
转载 AIX PowerPC体系结构及其溢出技术学习笔记
创建时间:2004-06-04 文章属性:原创 文章提交:san (san_at_xfocus.org) 整理:san 创建:2004-05-23 一、熟悉PowerPC体系及其精简指令集计算 PowerPC体系结构是RISC(精简指令集计算),定义了 200 多条指令。PowerPC 之所以是 RISC,原因在于大部分指令在一个单一的周期内执行,而且是定长的32位指令,通常只执行一个单一的操作(
2008-12-30 10:46:00
2784
原创 printf打印16进制数据,高位补零的方法。
代码:unsigned char data = 0xf;unsigned char regAddr = 0xf; printf("/nwite data 0x%02x to regAddr 0x%02x success/n", data, regAddr); 结果:wite data 0x0f to regAddr 0x0f success
2008-12-18 13:53:00
19187
1
原创 mpc8260的i/o操作函数
#define INTERNAL_MEM_MAP_ADDR 0x0xxx/* I/O Port Configuration Registers *//*** Port A data direction reg ***/#define M8260_IOP_PADIR(base) ((VINT32 *) ((base) + 0x010D00))/*** Port A pin assign
2008-12-04 10:18:00
1731
原创 assert的用法
函数名: assert 功 能: 测试一个条件并可能使程序终止 用 法: void assert(int test); 程序例: #include #include #include struct ITEM { int key; int value; }; /* add item to list, make sure list is not null */ vo
2008-11-20 16:40:00
674
原创 使用函数指针的例子
void display_year(char *str){ printf("display %s/n", str);}void display_month(char *str){ printf("display %s/n", str);}void display_day(char *str){ printf("display %s/n", str);}void dis
2008-11-19 17:34:00
727
转载 vxworks的default boot line说明
boot程序的主要功能是引导vxworks 内核,所以boot程序需要知道vxworks的内核存放在何处,通过什么手段去获取。在vxworks缺省的boot程序里有一条内建的default boot line,它指明了获得vxworks内核的途径,在boot程序启动时,它先寻找NVRAM里面有无boot line,如没有,则等里的内容添入BOOT_PARAMS结构里,然后,启动程序和vxworks
2008-11-05 17:32:00
6242
转载 VCC、VDD和VSS的区别
在电子电路中,常可以看到VCC、VDD和VSS三种不同的符号,它们有什么区别呢? 一、解释 VCC:C=circuit 表示电路的意思, 即接入电路的电压; VDD:D=device 表示器件的意思, 即器件内部的工作电压; VSS:S=series 表示公共连接的意思,通常指电路公共接地端电压,也就是负极。 二、说明 1、对于数字电路来说,VCC是电路的供电电压
2008-11-05 11:13:00
1357
转载 objcopy使用说明
objcopy用于将object的部分获全部内容拷贝到另一个object,从而可以实现格式的变换。objcopy可用用于将文件转换成S-record格式或者raw二进制格式。例如, xxxx-elf-objcopy –O srec test.o test.s19则将test.o转换成s-record文件中。通常涉及到text段。 xxxx-elf
2008-10-31 14:06:00
15619
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人