自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

TinyXml快速入门(一)

作者:朱金灿来源:http://blog.csdn.net/clever101 对于xml文件,目前我的工作只是集中在配置文件和作为简单的信息文件来用,因此我不太喜欢使用msxml这种重量级的xml解析器,特别是使用msxml解析xml涉及到复杂的com类型转换,更是令人感觉繁琐。因此对于简单的xml文件的解析,我更愿意使用开源的TinyXml。 首先介...

2010-02-28 22:25:00 54

make常见错误

转载于http://www.linuxsir.org/main/doc/gnumake/GNUmake_v3.80-zh_CN_html/make-15.htmlmake执行过程中所产生错误并不都是致命的;特别是在命令行之前存在“-”、或者make使用“-k”选项执行时。make执行过程的致命错误都带有前缀字符串“***...

2010-02-28 19:51:00 96

使用google docs来撰写csdn blog

还是习惯使用google docs,偶然看见在网上存在这样的一篇文章,高兴,试验,效果还不错,于是记录如下http://beans.seartipy.com/2007/11/12/desktop-blogging-editors-for-gnulinux-users/ Google Docs as a Blog EditorThe last option I am going t...

2010-02-28 15:19:00 112

c# 类的基本知识,未完,待续

1.访问修饰符的使用,如果函数或者是成员变量被public修饰的话,那么可以在该class之外访问,如果是private的话是不能在这个类之外来访问的,c#中默认的是使用private修饰符,但是作为一个良好的编程习惯的话,还是需要显示的指明是private。2.c#语言中提供关键字partial,例如cs1.cspartial class Circle (){ p...

2010-02-27 17:39:00 56

c# 错误和异常处理

1.c#中的异常处理使用try-catch-finally机制来实现异常处理,需要注意的是return语句对于异常处理流程的影响。如果return语句是在try语句块中的话,finally语句块中的代码段是会执行的,但是如果在try代码段中出现exit时,下面的finally是不会执行的,原因就是整个的虚拟机已经退出了。2.在c#中如果有多个的异常需要捕获,例如try{...

2010-02-27 16:21:00 104

c# 函数的方法和作用域

在学完java之后,感觉c#的和java的是很相似的,所以这里只是将其中需要注意的事项列出来。1.调用方法时,如果不是static的话,即时在同一个类中,直接开始调用函数也是编译出错的。例如 static void Main(string[] args) { int c = addValue(1, 2); } /*static*/ int a...

2010-02-27 16:02:00 83

昨天面试的一些感慨

作者:朱金灿来源:http://blog.csdn.net/clever101/ 受领导之托,昨天面试了一个已参加工作一些年的往届毕业生。这个小伙并不是计算机专业毕业,坦言自己是自学计算机的,相关项目经验不多。我从他的简历上也看到这一点。他的简历上写上了看过很多经典的书籍,如《C++ primer》、《Think in C++》等,对STL比较熟悉。我也不想用老套的思路出几...

2010-02-27 10:55:00 70

该让孩子用手机吗

作者:朱金灿来源:http://blog.csdn.net/clever101/ 过年时送给一个亲人一部手机,没想到过了几天麻烦来了,她家的一个读小学五年级的小孩(和我也很熟)给我发短信求助,说她妈妈不让他使用手机。他的意思是让我向她妈妈求求情,让他使用手机。我想了一下,她妈不让他使用手机的原因很可能是怕影响他的学习,便回他短信:如果你能写一份保证书给我和你的妈妈,保证你使...

2010-02-25 22:57:00 62

skyeye模拟s3c2410 linux下程序

在前面的基础上,下面开始利用skyeye自带的testsuites中的资源来运行自己的程序的方法1.首先是下载下载skyeye-1.2.5_REL.tar.gz,然后解压该文件2.使用skyeye模拟板子s3c2410运行某个linux首先进入解压完的目录,然后cd ./linux/s3c2410/s3c2410x-2.6.14skyeye –c skyeye.conf...

2010-02-24 20:03:00 94

skyeye模拟u-boot在s3c2410上运行

前面成功的移植了u-boot(其实只能是说是编译成功,还谈不上是真正的移植,(*^__^*) ),下面开始在skyeye中来运行u-boot在编译u-boot时,所作的修改如下#ifdef CONFIG_AMD_LV400#define PHYS_FLASH_SIZE 0x00080000 /* 512KB */#define CFG_MAX_FLASH_SECT (11) /...

2010-02-23 19:33:00 103

使用std::sort需要注意的问题

转载地址:http://blog.chinaunix.net/u2/61062/showart_2150555.html 注:今天使用std::sort函数出了一个错误,错误图片如下: 在网上搜到一篇解决这个错误的有用的资料,特记录。1.例子 先举个例子:分析一下程序的运行结果:看看在三种情况下程序的...

2010-02-22 22:00:00 194

u-boot移植s3c2410

u-boot的向s3c2410板上的移植(只是编译而以)可谓是千辛万苦啊(对于菜鸟而言,(*^__^*),高手除外),下面就是我的痛苦经历。过程如下:下载u-boot-1.1.6版本,然后解压,进入解压完的目录之后,首先是修改对应文件,该部分是参见网上blogs。http://blog.csdn.net/hhq0216/archive/2006/12/29/1466894.as...

2010-02-21 22:26:00 68

arm-linux,arm-elf-交叉编译环境下载地址

最常用的编译版本是arm-linux-gcc-3.4.1 和 arm-linux-3.3.2 的,现在的嵌入式开发基本上用的是这些,3.4.1的用于编译2.6的内核,而3.3.2的常用于编译busybox,和bootloader(u- boot),编译的版本配合不好的话就会出错,所以要选择好编译版本,如果这个版本不行的话,可以试试其他的版本,在uclinux上用的多的就是 arm-elf-to...

2010-02-21 22:21:00 74

invalid option `short-load-bytes'

编译器:arm-linux- 3.4.1 出现以下错误cc1: error: invalid option `short-load-bytes'make: *** [entry.o]错误 1 如果改用2.95.3则不会出现该问题。 原因是高版本的编译器不支持-mshort-load-bytes选项,改为-malignment-traps即可。...

2010-02-21 21:20:00 102

run helloworld on s3c2410 using skyeye without OS

终于将s3c2410在skyeye上跑起来了,没有操作系统的底层支持,实现的是直接向端口写数据。hello.c/** hello.c* just a function used to output "helloworld" to uart** author: SU Hang* date: 2004-08-28 */void hello(void){ ...

2010-02-20 21:54:00 63

gnu ld script

3.1 Basic Linker Script ConceptsWe need todefine some basic concepts and vocabulary in order to describe the linkerscript language.The linker combines input files into a single output fil...

2010-02-19 21:48:00 72

GNU binutils笔记

GNU binutils是一组二进制工具集。包括:addr2line ar gprof nm objcopy objdump ranlib size strings strip. 本文归纳他们的常用法。ar ar用于建立、修改、提取档案文件(archive)。archive是一个包含多个被包含文件的单一文件(也称之为库文件),其结构保证了可以从中检索 并得到原始的被包含文件(称之为archi...

2010-02-19 15:09:00 57

GNU ARM命令行工具基本使用入门

调用格式:arm-elf-gcc [stage-opt] [other-opts] -mcpu=arm7tdmi in-file -o out-file常见用法:将C代码编译为二进制目标文件:arm-elf-gcc -c -O2 -g -mcpu=arm7tdmi filename.c -o filename.o将多个二进制目标文件合并为一个可执行文件:arm-elf-ld fil...

2010-02-18 22:10:00 90

arm-elf与arm-linux的区别

在基于ARM的嵌入式系统开发中,常常用到交叉编译的GCC工具链有两种:arm-linux-*和 arm-elf-*,两者区别主要在于使用不同的C库文件。arm-linux-*使用GNU的Glibc,而arm-elf-*一般使用 uClibc/uC-libc或者使用REDHAT专门为嵌入式系统的开发的C库newlib.Glibc。uClibc/uC-libc以及 newlib都是C语言库文件,只是所...

2010-02-18 22:02:00 121

skyeye arm_hello分析

在skyeye的安装目录下的testsuites目录下存在arm_hello工程,在该文件夹下存在如下的文件:hello.c,hello.lds,Makefile,start.S,skyeye.conf,README下面是README文件中关于上面三个文件的解释Source Files: After using command 'make clean' to delete bi...

2010-02-18 21:54:00 74

skyeye配置文件

0px;width:100%;">skyeye.conf是skyeye的配置文件,用来描述模拟的目标板的类型,内存分布,以及SkyEye的运行配置等等信息。事实上,你可以把想要让用户配置的选项都可以放在skyeye配置文件中。这样用户可以通过编辑skyeye.conf文件来比较灵活的选择仿真平台的功能和定制要模拟的目标板。还是从安装skyeye目录下的testsu...

2010-02-17 21:06:00 87

skyeye相关命令简介

在上一篇的基础上介绍skyey的相关命令,在skyeye环境中能够使用tab键来实现命令的自动补齐。(1)breakbreak 断点地址(skyeye)break 0x1000050Insert breakpoint at address 0x1000050 successfully.(2)list-bp列出当前所有断点(skyeye)list-bpID A...

2010-02-17 20:10:00 60

skyeye testsuite中arm_hello运行

在上一篇中没有改写PATH环境变量,可以使用下面的命令:sudo vim /etc/bash.bashrc新增加下面语句if [ -d /opt/skyeye/bin ] ; thenPATH=/opt/skyeye/bin:"${PATH}"fi保存source /etc/profile最后可以从任意的目录下键入skyeye启动程序。在shell中键入skye...

2010-02-17 18:57:00 83

skyeye安装

SkyEye是一个开源软件项目,它是在Linux和Windows平台上实现一个纯软件模拟集成开发环境,模拟常见的嵌入式系统。可以在SkyEye上运行Linux,uClinux以及uC/OS-II等多款嵌入式操作系统和各种系统软件。(1)在ubuntu中最简单的方法当然是使用下面的命令来安装skyeye : sudo apt-get install skyeye(2)下面...

2010-02-17 17:19:00 85

s3c2410开发环境建立

首先介绍的整体的环境是ubuntu 9.04 gcc的版本是4.1.下面是具体的环境建立(1)arm-linux-gcc安装在下面的网址上http://www.handhelds.org/download/projects/toolchain/下载arm-linux-gcc-3.4.1.tar.bz2执行下面的命令:将arm-linux-gcc-3.4.1.tar.bz2复制到/t...

2010-02-16 22:19:00 154

c#入门学习(1) -- c#中的变量,运算符和程序结构

一c#中的变量类型c#中的变量和c,c++,java中类型是大致相同的,包含以下的数据类型:int long float double decimal string char bool (B大写)。每种数据类型都有自己的范围。超出该种数据类型的范围时,会产生编译错误。1.需要注意的是变量类型decimal,它表示的是货币值,它比double数据类型具有更高的精度和更小的范围。具体dec...

2010-02-16 11:00:00 53

linux 0.11 内核学习 -- ioctl.c

/** ioctl.c 文件实现了输入/输出控制系统调用ioctl(),该函数* 主要是调用函数tty_ioctl()对终端的IO进行控制*//** linux/fs/ioctl.c** (C) 1991 Linus Torvalds*/#include <string.h>#include <errno.h>#incl...

2010-02-16 09:17:00 69

linux 0.11 内核学习 -- inode.c

/** linux/fs/inode.c** (C) 1991 Linus Torvalds*/#include <string.h>#include <sys/stat.h> // 文件状态头文件#include <linux/sched.h>#include <linux/kernel.h>...

2010-02-16 09:15:00 248

linux 0.11 内核学习 -- fcntl.c

/** linux/fs/fcntl.c** (C) 1991 Linus Torvalds*/#include <string.h>#include <errno.h>#include <linux/sched.h>#include <linux/kernel.h>#include <asm/se...

2010-02-16 09:13:00 64

linux 0.11 内核学习 -- block_dev.c

/** 该文件的两个函数是为了向open和write函数提供接口,实现内核数据* 和用户数据的交互*//** linux/fs/block_dev.c** (C) 1991 Linus Torvalds*/#include <errno.h>#include <linux/sched.h>#include <l...

2010-02-16 09:12:00 73

linux 0.11 内核学习 -- bitmap.c

/** linux/fs/bitmap.c** (C) 1991 Linus Torvalds*//* bitmap.c contains the code that handles the inode and block bitmaps */#include <string.h>#include <linux/sched.h>...

2010-02-16 09:10:00 98

linux 0.11 内核学习 -- head.s

## 这段代码被连接到system模块的最前面,这也是它为什么称之为head.s的原因。# 从这里开始内核完全运行在保护模式下。head.s采用的是at&t格式的# 汇编。注意的是代码中的赋值方向是从左到右。## 这段程序实际上是出于内存的绝对地址0开始处。首先是加载各个数据段寄存器。# 重新设置全局描述符表gdt --> 检测a20地址线是否真的开启,...

2010-02-16 09:07:00 95

The Eight Levels of Programmers,程序员的8中境界

Have you ever gotten that classic job interview question,"where do you see yourself in five years?"When asked, I'm always mentally transported back toa certain Twisted Sister video from 1984.I ...

2010-02-14 18:07:00 138

c语言位操作在内核中应用

1. “按位与”运算符(&) 参加运算的两个数据,按二进位进行“与”运算。原则是全1为1,有0为0,即:0&0=0; 0&1=0; 1&0=0; 1&1=1; 如下例: a=5&3; //a=(0b 0101) & (0b 0011) =0b 0001 =1 那么如果参加运算的两个数为负数,又该如何算...

2010-02-12 23:53:00 96

一个老工程师的心理话

一个老工程师的心理话:诸位,俺当工程师十余年了,从研发到管理!回顾工程师生涯,感慨万千,愿意讲几句掏心窝子的话,也算给兄弟姐妹提个醒,希望他们比咱们强!1.提高自己的专业知识,扩大自己的知识面,学习他人的经验,少走弯路。请教要虚心。2.好好规划自己的路,不要跟着感觉走!根据个人的理想决策安排,绝大部分人并不指望成为什么院士或教授,而是希望活得滋润一些,爽一些。那么,就需要慎 重安排自己的轨迹。从哪...

2010-02-12 12:21:00 48

会叫的狗不咬人

作者:朱金灿来源:http://blog.csdn.net/clever101 由于临近春节,大家被归家的情绪所影响,都无心工作。一位今晚就要上火车回家的女同事突然站起来,摆出一副摩拳擦掌的样子,大声宣布:"我现在开始写代码了,大家别拦着我,我要实现***算法才走!"我有意逗她:"会叫的狗不咬人!"她立即回我:"你真烦人!该干啥干啥去!"...

2010-02-10 16:04:00 75

linux 0.11 内核学习 -- exec.c

/** 该文件主要是实现do_execve函数,主要是实现对于二进制文件的加载执行* 和shell脚本文件的加载执行*//** linux/fs/exec.c** (C) 1991 Linus Torvalds*//** #!-checking implemented by tytso.*//** Demand-loading im...

2010-02-09 22:53:00 120

linux 0.11 内核学习 -- file_dev.c

/** linux/fs/file_dev.c** (C) 1991 Linus Torvalds*/#include <errno.h>#include <fcntl.h>#include <linux/sched.h>#include <linux/kernel.h>#include <as...

2010-02-08 11:16:00 64

linux 0.11 内核学习 -- pipe.c

/** 该文件中的两个函数read_pipe和write_pipe是上层函数* read和write的底层实现*//** linux/fs/pipe.c** (C) 1991 Linus Torvalds*/#include <signal.h>#include <linux/sched.h>// 内存管理头文件。含...

2010-02-08 11:13:00 101

linux 0.11 内核学习 -- buffer.c

/** buffer.c 程序用于对高速缓冲区(池)进行操作和管理。高速缓冲* 区位于内核代码和主内存区之间。** |---|---|------------------|---------------------|-------------------|* | | | * * * | buffer | |* |---|---...

2010-02-08 11:10:00 81

空空如也

空空如也

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

TA关注的人

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