自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

面试总结

java 的参数传递/*** java 参数传递** @time 下午8:54:44* @author retacn yue* @Email [email protected]*/public class test {/*** @param args*/public static void main(String[] args) {//int a = 0;Sys...

2013-06-18 21:40:00 119

uboot start.S文件分析

U-boot第一个开始文件arch\arm\cpu\arm1176\start.Sstart.S文件分析:/**armboot-StartupCodeforARM1176CPU-core**Copyright(c)2007 SamsungElectronics**Copyright(C)2008*GuennadiLiakhovetki,DENXSoftwareEn...

2013-06-03 22:18:00 158

u-boot Makefile 文件分析

Makefile文件分析 ##(C)Copyright2000-2010#WolfgangDenk,DENXSoftwareEngineering,[email protected].##SeefileCREDITSforlistofpeoplewhocontributedtothis#project.##Thisprogramisfreesoftware;youcanre...

2013-06-01 21:44:00 254

u-boot mkconfig文件分析

Mkconfig文件分析   #!/bin/sh-e #Scripttocreateheaderfilesandlinkstoconfigure#U-Bootforaspecificboard.##Parameters:TargetArchitectureCPUBoard[VENDOR][SOC]#@$(MKCONFIG)mini6410armarm117...

2013-05-31 21:29:00 109

openJTAG学习笔记二

fedora 下使用openJTAG1 安装驱动#[root@localhost eclips_projects]# cp /home/retacn/Desktop/50-ftdi.rules /etc/udev/rules.d/ //查看usb设备 [root@localhost eclips_projects]# ls /dev/ttyUSB* -l 安装minicom...

2013-05-25 20:04:00 135

openJTAG学习笔记一

安装软件 光盘Windows\install目录下的 01.OpenOCD with GUI setup.exe 02.yagarto-bu-2.18_gcc-4.2.2-c-c++_nl-1.16.0_gi-6.8.50_20080408.exe 03.yagarto-tools-20070303-setup.exe jre7 使用eclipse调试led程序 1 导入光盘示例放入D:\c_po...

2013-05-22 21:45:00 284

c++学习笔记十七

构造、析构、赋值运算 c++会为一个空类声明一个copy构造函数,一个copy assignment操作符和一个析构函数 如果没有声明构造函数,还会生成一个default构造函数 示例代码如下: class Empty{...}; 等同于 class Empty{//default构造函数Empty(){...}//copy构造函数Empty(const Empty& rhs){...}/...

2013-05-18 23:44:00 69

即时通信学习笔记

下载安装文件 openfire_3_6_4.exe spark_2_5_8_exe.exe org.jivesoftware.smack_3.1.0.jar 源代码下载路径 http://svn.igniterealtime.org/svn/repos/openfire/trunk 搭建openfire服务器 C:\WINDOWS\system32\drivers\etc\hosts文件,增加一新...

2013-05-18 09:56:00 78

c++学习笔记十六

c with classes 尽量以const enum inline 替换#define 示例代码: #define ASPECT_RATIO 1.653 //不进入记号表(symbol table) 替换为 const AspectRatio 1.653 //进入记号表 定义常量字符串 const std::string authorName("retacn"); class专属常量 示例代码...

2013-05-14 21:50:00 65

nand flash学习笔记一

Nandflash 原理图上有data0-data7共8个引角容量为256M*8bit,所以地址位应该有28位,原理图上只有data0-data7,所以需要发出多次地址信号1命令、地址、数据复用2地址多次发出 Nandflash与内存不同,不能直接读写,要先发出命令,再发出地址,再读写数据CLE为高电平data0-data7传输的是命令ALE为高电平data0...

2013-05-13 21:05:00 346

NDK环境搭建学习笔记

本地native方法实现步骤 1 在java中声明native()方法,然后编译 2 用javah生成一个.h文件 3 编写包含.h文件的c文件 4 编译c文件 5 使用编译成功的so文件 ndk安装 1 下载ndk安装包 http://developer.android.com/sdk/ndk/index.html 2 将解压的地址写入环境变量PATH 3 在命令提示符下输入ndk-build如...

2013-05-12 13:39:00 124

DDR学习笔记

DDR15条地址线32k128M*2(20)=2(27)   查看6410芯片手册;5.4.3DDR/MOBILEDDRSDRAMINITIALIZATIONSEQUENCE•Programmem_cmdindirect_cmdto‘2’b10’,whichmakesDRAMControllerissue‘NOP’memorycommand.•Progra...

2013-05-11 14:19:00 208

链接地址学习笔记

链接地址启动过程  示例代码如下: start.S文件.globl_start_start:/*硬件相关设置*/ldrr0,=0x70000000orrr0,r0,#0x13mcrp15,0,r0,c15,c2,4/*关看门狗*/ bltest/*位置无关*/ldrpc,=test/*位置相关*/ ldrr0,=0x7E...

2013-05-05 12:40:00 138

UART学习笔记

串口(UART)DIV_VAL=(PCLK/(bpsx16))−135=115200/66.5/16-1  查看芯片手册:GPACON0x7F008000R/WPortAConfigurationRegister0x0000  GPA0[3:0]0000=Input0001=Output0010=UARTRXD[0]0011=Reserved0100=...

2013-05-04 22:00:00 185

系统时钟学习笔记

12m晶振----->pll------>cpu Mux多路选择器Div分频器示例代码如下:汇编实现.globlclock_init clock_init: /*1.设置LOCK_TIME*/ldrr0,=0x7E00F000/*APLL_LOCK*/ldrr1,=0x0000FFFFstrr1,[r0] strr1,[r0...

2013-05-04 21:59:00 129

GPIO学习笔记

用汇编点亮一个led1看原理图GPK4=0,led亮GPK4=1,led灭2怎么让GPK4输出高低电平(看芯片手册,操作寄存器实现)配置功能:输入/输出/其他设置其输出高/低电平3查看芯片手册GPK4[19:16]0000=Input 0001=Output0010=HostI/FDATA[4] 0011=HSITXREADY0100=Reserved 01...

2013-04-14 19:50:00 139

字符设备驱动程序学习笔记四

竟争与互斥 程序调试 1 打印调试信息 printk 定义全局打印 示例代码如下: #ifdef PDEBUG #define PLOG(fmt,args...) printk(KERN_DEBUG "scull:",fmt,##args) #else /*do nothing*/ #define PLOG(fmt,args...) #endif 在makefile中定义PDEBUG的值 示例代码...

2013-04-05 11:12:00 85

字符设备驱动程序学习笔记三

memdev.h文件示例代码如下: #ifndef _MEMDEV_H #define _MEMDEV_H //采用静态分配设备号 #ifndef MEMDEV_MAJOR #define MEMDEV_MAJOR 260 #endif #ifndef MEMDEV_NR_DEVS #define MEMDEV_NR_DEVS 2 #endif #ifndef MEMEV_SIZE #defin...

2013-04-04 14:03:00 66

字符设备驱动程序学习笔记二

字符驱动程序 1 设备号 字符设备通过字符设备文件来存取 ls -l 如果输出的第一列是c标识,说明该文件是字符设备文件 设备文件项中的两个数分别为 主设备号/次设备号 设备文件与设备驱动通过主设备号建立联系 次设备号用来分辩操作的哪个设备 dev_t 用来描述设备号 在linux/types.h中声明,示例代码如下:typedef __u32 __kernel_dev_t;typedef __k...

2013-04-04 10:29:00 92

字符设备驱动程序学习笔记一

linux 驱动程序 字符设备驱动程序 网络接口驱动程序 块设备驱动 字符设备 按字节来访问的设备 字符设备驱动用来驱动字符设备 通常实现open close read write 块设备 unix系统一次传输一个或多个512字节 linux允许块设备传送任意数目的字节 字符设备驱动和块设备驱动哪个可以随机访问 网络接口 通常是一个硬件设备(etho),也可以是一个;软件设备如回环接口(lo) 驱...

2013-04-01 21:55:00 98

linux进程管理学习笔记

linux 进程管理 1 linux进程控制 进程的四个要素: 有一段程序供其执行 有专用的内核空间椎栈 内核中有一个tash_struct数据结构 有独立的用户空间 task_struct中包含了描述进程和线程的信息 pid_t pid 进程号 最大10亿 volatile long state 进程状态 TASK_RUNNING 准备就绪 TASK_INTERRUPTIBLE 处于等待中 等待...

2013-03-28 20:57:00 121

android 代码混淆

在项目文件下,自动生成了文件:proguard-project.txt, project.properties两个文件,于是打开这两个文件,在proguard-project.txt中有:# If your project uses WebView with JS, uncomment the following # and specify the fully qualified class...

2013-03-20 19:47:00 59

linux内存管理学习笔记

1 linux内存管理 地址类型 物理地址 出现在cpu地址总线上的寻址物理内存的地址信号,是地址变换的最终结果 线性地址(虚拟地址)在32位cpu架构下,可以表示4g的地址空间,用16进制表示就是 0x00000000到0xffffffff 逻辑地址程序代码编译后,出现在汇编程序中的地址 地址转换 cpu将一个逻辑地址转换为物理地址: 利用段式内存管理单元,将逻辑地址转换成线性地址 再利用页...

2013-03-12 20:50:00 64

嵌入式linux系统学习笔记

嵌入式linux内核制作 1 清除原有配置文件与中间文件 x86 make distclean arm make distclean 2 配置内核 x86 make menuconfig arm make menuconfig ARCH=arm 3 内核编译 x86 make bzImage arm make uImage ARCH=arm CROSS_COMPILE=arm-linux- 根文件...

2013-03-06 21:39:00 89

原理图学习笔记二

2013-02-21 21:54:00 144

arm学习笔记五(c/c++与arm汇编混合编程)

混合编程 常见方式: 1 在c/c++程序中嵌入汇编指令 语法格式:__asm{ 汇编语言程序 } 2 在汇编程序中访问c/c++定义的全局变量 示例代码如下: test.c #include <stdio.h> int gVar_1=12; extern asmDouble(void) int main(void){printf("original value of gVar_1...

2013-02-21 21:47:00 643

arm学习笔记四(arm伪指令)

arm伪指令 符号定义伪指令 定义arm汇编程序中的变量、对变量赋值以及定义寄存器的别名 定义全局变量 gbla(全局数字变量,初始化值为0)GBLA 全局变量名 示例代码如下:GBLA Test1;定义全局数字变量test1Test1 SETA 0x123;将该变量赋值为0x123 gbll(全局逻辑变量,初始化为F)GBLL 全局变量名 示例代码如下:GBLL Test2;定义全局逻辑变量te...

2013-02-21 21:46:00 183

原理图学习笔记一

画个草图也挺过瘾

2013-02-17 22:24:00 97

多线程学习笔记

多线程程序设计 头文件:pthread.h 连接时需要用到的库文件:libpthread.a 创建线程 函数原型 #include <pthread.h> int pthread_creat(pthread_t *tidp,const pthread_attr_t *attr,void *(*start_rtn)(void),void *arg) tidp:线程id attr:线程属性...

2013-02-16 21:42:00 76

进程间通信学习笔记五(信号量)

信号量 又名信号灯,保护临界资源,进程可以根据它判断是否能够访问某些共享资源 除了用于访问控制外,还用于进程同步 分类: 二值信号量 值只能取0或1,有点像互斥锁 计数信号量 信号量的值可以取任意非负值 创建/打开 #include <sys/types.h> #include <sys/ipc.h> #include <sys/sem.h> int semge...

2013-02-16 21:41:00 59

进程间通信学习笔记四(消息队列)

消息队列 信号能够传送的信息量有限 管道只能传送无格式的字节流 消息队列就是一个消息链表,消息可以看作是一个记录,具有特定的格式 消息队列的分类: posix(可移植的操作系统接口)消息队列 系统v消息队列:是随内核持续的,只有在内核重起或者人工删除时,该消息队列才会被删除 键值 每个消息队列都在系统范围内对应唯一的键值,也是获得消息队列描述字的方法 返回文件名对应的键值 #include &lt...

2013-02-16 21:40:00 65

进程间通信学习笔记三(共享内存通信)

共享内存通信 被多个进程共享的一部分物理内存,是进程间共享数据的一种最快的方法 一个进程向共享内存区域写入数据,共享这个内存区域的所有进程都可以立刻看到 其中的内容 实现共享内存分为两个步骤: 1 创建共享内存,使用shmget函数 函数原型:int shmget(key_t key,int size,int shmflg)key:标识共享内存的键值 0 如果shmflg设置为IPC_PRIVAT...

2013-02-16 21:40:00 75

进程间通信学习笔记二(信号通信)

信号通信 用户按某些键时,产生信号 硬件异常产生信号 进程用kill函数将信号发送给另一个进程 可以用kill函数将信号发送给其他进程 信号的类型 1 sighup 从终端上发出的结束信号 2 sigint 来自键盘的中断信号(ctrl-c) 3 sigquit 4 sigill 5 sigtrap 6 sigiot 7 sigbus 8 sigfpe 9 sigkill 结束接收信号的进程 10...

2013-02-16 21:39:00 80

arm学习笔记三(arm指令集)

arm指令集 跳转指令 实现流程的跳转 专门的跳转指令 b 跳转指令 格式:B{条件}目标地址 示例代码如下:当cpsr寄存器中的z条件码置位时,程序跳转到标号label处执行CMP R1,#0BEQLable 指令条件 指令条件 标志位 含义 EQ Z置位 相等 NE Z清零 不相等 CS C置位 无符号数大于或等于 CC C清零 无符号数小于 MI N置位 负数 PL N清零 正数或零 V...

2013-02-16 21:32:00 182

arm学习笔记二(arm寻址方式)

工作状态 arm状态 32位指令 thumb状态 16位指令 存储器的格式 最大寻址空间为4gb 大端格式:字数据的高字节存储在低地址中,低字节存放在高地址中 小端格式:与大端格式相反 axd查看寄存器 ================================================================= arm寻址方式(貌似计算机原理中学过) 处理器根据指令中给出的地...

2013-02-16 21:31:00 169

arm学习笔记一(arm概述及其基本编程模型)

arm概述及其基本编程模型 arm体系结构的版本及命名方法 arm体系统构的6个版本的特点 arm体系的变种 1 thumb指令集(t变种) 2 长乘法指令(M变种) 3 增强型dsp指令(E变种) 4 java加速器jazelle(J变种) 5 arm媒体功能扩展(SIMD变种) arm/thumb体系版本的命名格式 1 字符串ARMv 2 ARM指令的版本号 1-6 3 表示变种的字符 版本4...

2013-02-16 21:30:00 135

进程间通信学习笔记一(管道通信)

进程间通信(ipc) 应用场景: 数据传输 资源共享 通知事件 进程控制 system v at&t system v posix(portable operating system interface)可移植操作系统接口 常用的进程间通信的方式: 管道(pipe)和有名管道(fifo) 信号(signal) 消息队列 共享内存 信号量 套接字(socket) 管道通信 半双工的,数据只能...

2013-02-01 20:08:00 124

进程控制学习笔记一

进程控制 进程的定义: 进程是一个程序的一次执行的过程,同时也是资源分配的最小单元 进程的特点:动态性、并发性、独立性、异步性 进程的状态: 1 就绪、阻塞、执行 2 TASK_RUNNING(运行) TASK_INTERRUPTIBLE(可中断) TASK_UNINTERRUPTIBLE(不可中断) TASK_ZOMBIE(僵死) TASK_STOPPED(停止) 进程id 进程id(pid) ...

2013-01-28 21:10:00 58

文件I/O编程学习笔记三(linux 时间编程)

linux 时间编程 时间类型 coordinated universal time世界标准时间 calendar time日历时间 时间获取 #include <time.h> time_t time(time_t *tloc) 从1970年1月1日0时到现在经历的秒数 时间转换 日历转化为格林威治标准时间 struct tm *gmtime(const time_t *timep)...

2013-01-27 17:56:00 68

文件I/O编程学习笔记二(c语言库函数访问文件)

c语言库函数访问文件 库函数是独立于操作系统平台,可移植性强 文件的创建和打开 FILE *fopen(const char *filename,const char *mode) filename:文件名 mode:打开模式 常见的打开方式: r,rb 只读 w,wb 只写,如果文件不存在就创建 a,ab 追加,如果文件不存在就创建 r+,r+b,rb+ 读写方式打开 w+,w+b,wh+ 读写...

2013-01-27 17:29:00 106

空空如也

空空如也

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

TA关注的人

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