- 博客(51)
- 资源 (6)
- 收藏
- 关注
转载 DLL编写教程
DLL编写教程半年不能上网,最近网络终于通了,终于可以更新博客了,写点什么呢?决定最近写一个编程技术系列,其内容是一些通用的编程技术。例如DLL,COM,Socket,多线程等等。这些技术的特点就是使用广泛,但是误解很多;网上教程很多,但是几乎没有什么优质良品。我以近几个
2011-08-11 09:53:31
630
转载 linux gcc用法及参数说明
1、linux gcc包含的c/c++编译器 gcc、cc、c++、g++: gcc和cc是一样的,c++和g++是一样的,一般c程序就用gcc编译,c++程序就用g++编译 2、linux gcc的基本用法 gcc test.c这样将编译出一个名为a.out的程序gcc test.c -o test这样将编译出一个名为test的程序 -o参数用来指定生成程序的名
2009-11-26 15:33:00
1507
原创 关于const_cast
下列代码 const int a = 10; int *pa; pa = const_cast(&a); *pa = 5; coutcout 解释:const int a = 10;编译器不为a分配空间,只是保存在符号表中,至此a的值永远是10
2009-11-11 17:57:00
703
转载 boost源码剖析之:Tuple Types(rev#2)
刘未鹏(pongba)C++的罗浮宫(http://blog.csdn.net/pongba) Note: 并非新作,04年曾放在blog上,后来删掉了,不过网上到处有转载。这是修改之后的版本。 动机[1]假设你有这样一个函数:它接受两个整型数据并返回它们整除的结果,像这样: int DevideInts(int n,int d){ return n/
2009-10-29 17:57:00
688
转载 [转载]自己动手编写嵌入式Bootloader之(3)
第三部分:源代码,运行结果这一部分将对前文没有提到的几段关键代码进行简单说明,介绍一下源代码组织结构和Makefile系统,展示一下实验运行结果,并提供全部源代码下载。1. 定时器初始化和延时程序因为在 CS8900A的驱动程序中需要用到延时,因此有必要对S3C2440的计时器进行使能和初始化,并编写延时程序。S3C2440A共有5个定时器,编号为Tim
2009-08-28 10:26:00
1492
转载 [转载]自己动手编写嵌入式Bootloader之(2)
第二部分:通过网口下载内核映像要实现通过网口下载文件的功能,从底层到上层需要做的工作包括:开发板上的网卡芯片的驱动程序;TCP/IP协议栈的实现;TFTP客户端应用程序的实现。我们使用的OK2440开发板配备CS8900A网卡芯片。 为了简单起见,网络数据包的发送和接收都使用轮询方式,不使用中断;协议栈只使用ARP/IP/UDP协议,不涉及TCP及其他协议;应用程序
2009-08-28 10:25:00
1070
转载 [转载]自己动手编写嵌入式Bootloader之(1)
第一部分:基本功能流程CPU上电后会从IO空间的某地址取第一条指令。但此时:PLL没有启动,CPU工作频率为外部输入晶振频率,非常低;CPU工作模式、中断设置等不确定;存储空间的各个BANK(包括内存)都没有驱动,内存不能使用。在这种情况下必须在第一条指令处做一些初始化工作,这段初始化程序与操作系统独立分开,称之为bootloader。实际上,很少有必要自己写一个Bootloader,因为
2009-08-28 10:23:00
1542
1
转载 pfSense 防火墙硬件平台性能评估指导手册
摘要: 通过阅读 pfSense 官方文档了解防火墙性能的评估方法作者: By REISTLIN [雷斯林] MSN: Rexxxxxx@hotmail.com QQ: 3A984版权: 原创文章.转载请保留作者信息和原文完整.谢绝任何方式的摘要.原文: http://www.reistlin.com/blog/666本文是根据[pfSense] 的官方文档 Hardware Sizing Gui
2009-07-16 17:57:00
2073
转载 从源代码中打造一个最小的Linux操作系统
我们在此所要打造的系统是非常小的,而且并不准备作为工作产品来使用。如果您想从头开始打造一个有实际用途的系统,请参阅Gerard Beekmans所撰写的Linux空手道实作指南篇 (Linux From Scratch HOWTO)。 您所需要具备的条件 我们首先要安装一个Linux发行套件比如红帽(RedHat)到一个分区上,然后使
2009-07-16 13:27:00
1000
转载 NAT原理及应用
1.背景: 随着Internet的飞速发展,越来越多的用户加入到互联网的使用中。目前全球上网人数已经超过4亿,到2005年将达到10亿,2010年达到30亿。而目前的4.8亿移动电话用户到2003年也会猛增到10亿。 如此惊人的增长速度,使得网络本身的发展遇到了障碍,最主要的两个问题是: 一:路由表的快速增长。有数据表明,1990年,只有大约5000条路由被存放在路由表中,到199
2008-02-27 14:06:00
2099
转载 IP PBX
1. 概述 随着Internet的深入应用与发展,各类新技术层出不穷,ISP、ICP、ASP等网络公司不断涌现,推动着数据业务持续快速增长,可望在最近几年达到和超过话音业务。IP将成为未来信息通信的主导技术,各种业务可由IP包来承载(Everything over IP),而IP信息流又可以在各种传输媒体中传送(IP over Everything),并以IP网为基础,最终实现数
2008-01-04 16:18:00
1538
转载 堆内存和栈内存详解
堆:顺序随意栈:先进后出堆和栈的区别一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈2、堆区(heap) — 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。3、全局区(静
2007-10-09 19:00:00
5604
1
转载 malloc()和free()详细解释
在C语言的学习中,对内存管理这部分的知识掌握尤其重要!之前对C中的malloc()和free()两个函数的了解甚少,只知道大概该怎么用——就是malloc然后free就一切OK了。当然现在对这两个函数的体会也不见得多,不过对于本文章第三部分的内容倒是有了转折性的认识,所以 写下这篇文章作为一个对知识的总结。这篇文章之所以命名中有个“浅谈”的字眼,也就是这个意思了!希望对大家有一点帮助!
2007-09-19 22:13:00
1560
1
原创 实时操作系统与通用操作系统的一些比较
主题:实时操作系统与通用操作系统的一些比较(转载) 嵌入式实时系统中采用的操作系统我们称为嵌入式实时操作系统,它既是嵌入式操作系统,又是实时操作系统。作为一种嵌入式操作系统,它具有嵌入式软件共有的可裁剪、低资源占用、低功耗等特点;而作为一种实时操作系统(本文对实时操作系统特性的讨论仅限于强实时操作系统,下面提到的实时操作系统也均指强实时操作系统),它与通用操作系统(如Windows、Unix、
2007-08-17 23:30:00
994
转载 嵌入式系统中LCD驱动的实现原理
S3C2410,讲解如何进行LCD驱动程序模块化编程及如何将驱动程序静态加载进系统内核。 LCD(液晶显示)模块满足了嵌入式系统日益提高的要求,它可以显示汉字、字符和图形,同时还具有低压、低功耗、体积小、重量轻和超薄等很多优点。随着嵌入式系统的应用越来越广泛,功能也越来越强大,对系统中的人机界面的要求也越来越高,在应用需求的驱使下,许多工作在linux下的图形界面软件包的开发和移植工作中都
2007-08-17 23:13:00
1655
转载 【转载】深入了解C语言(函数的参数传递和函数使用参数的方法)
C语言生成的代码在执行效率上比其它高级语言都高.现在让我们来看看C语言生成的代码具体是什么样子的.当你看完本文对于C语言的了解一定会更深一步了. 本文通过一个个实际案例程序来讲解C语言. 研究案例一 工具: Turboc C v2.0,Debug,MASM v5.0,NASM实例C程序:/* example1.c */char ch;int e_main(){ e_putchar(ch); } 目
2006-12-03 21:57:00
1330
转载 关于C语言中的结构体对齐问题
1,比如:struct{short a1;short a2;short a3;}A;struct{long a1;short a2;}B;sizeof( A)=6, sizeof( B)=8,为什么?注:sizeof(short)=2,sizeof(long)=4因为:“成员对齐有一个重要的条件,即每个成员按自己的方式对齐.其对齐的规则是,每个成员按其类型的对齐参数(通常是这个类型的大小)和指定对
2006-11-24 20:52:00
1406
转载 static 和 const
一、控制存储方式: static被引入以告知编译器,将变量存储在程序的静态存储区而非栈上空间。 1、引出原因:函数内部定义的变量,在程序执行到它的定义处时,编译器为它在栈上分配空间,大家知道,函数在栈上分配的空间在此函数执行结束时会释放掉,这样就产生了一个问题: 如果想将函数中此变量的值保存至下一次调用时,如何实现? 最容易想到的方法是定义一个全局的变量,但定义为一个全局变量有许多
2006-11-19 15:28:00
1192
转载 U-Boot在44B0X开发板上的移植以及代码分析
以《U-Boot在44B0X开发板上的移植以及代码分析》为基础,根据自己的开发板改写。张磊 2005-2-25REVISION HISTORY:开发平台:Redhat 9.0开发工具:arm-elf-gccwww.taoydy.com1. u-boot 介绍u-boot 是一个open source 的bootloader,目前版本是1.1.2。u-bo
2006-06-12 13:59:00
2108
转载 Head_armv.S分析
3.1 说明 这个文件是arch/arm/kernel/head-armv.S,用汇编代码完成,是内核最先执行的一个文件。这一段汇编代码的主要作用,是检查cpu id,architecture number,初始化页表、cpu、bbs等操作,并跳到start_kernel函数。它在执行前,处理器的状态应满足:l r0 - should be 0l
2006-05-29 17:30:00
1768
转载 Linux启动过程综述
www.taoydy.com内容: 一. Bootloader 二.Kernel引导入口 三.核心数据结构初始化--内核引导第一部分 四.外设初始化--内核引导第二部分 五.init进程和inittab引导指令 六.rc启动脚本 七.getty和login 八.bash 附:XDM方式登录 本文以Redhat 6.0 Linux 2.2.
2006-05-18 23:56:00
1401
转载 jffs文件系统分析(www.taoydy.com)
摘要:本文主要分析了uclinux 2.4内核的jffs文件系统机制。希望能对基于uclinux开发产品的广大工程师有所帮助。 关键词:uclinux vfs jffs 申明:这份文档是按照自由软件开放源代码的精神发布的,任何人可以免费获得、使用和重新发布,但是你没有限制别人重新发布你发布内容的权利。发布本文的目的是希望它能对读者有用,但没有任何担保,甚至没有适合特定目的的隐含的担保。更详
2006-05-18 23:54:00
2403
转载 Linux bootloader 编写方法
作者:范晓炬 对于移植 linux 到其它开发板的人来说,编写 boot loader 是一个不可避免的过程。对于学习linux的人来讲,编写 bootloader 也是一个很有挑战性的工作。本文通过对 linux
2006-05-18 23:50:00
1512
转载 linux之 F.A.Q(转载)
linux之 F.A.Q原文地址:http://www.smth.org/bbscon.php?board=LinuxApp&id=12810发信人: Rocktor (戒烟迎锦标), 信区: LinuxNewbie标 题: 一句话问答(2004/03/18更新)发信站: BBS 水木清华站 (Mon Jun 16 14:23:35 2003), 转信一句话问答
2006-05-17 22:17:00
1774
转载 Linux系统下的多线程编程入门
引言 线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者。传统的Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多进程。现在,多线程技术已经被许多操作系统所支持,包括Windows/NT,当然,也包括Linux。 为什么有了进程的概念后,还要再引入线程呢?使用多线
2006-05-17 22:13:00
1103
转载 串口通讯基础及S3C2410 UART控制器(www.taoydy.com)
www.taoydy.com数据通信的基本方式可分为并行通信与串行通信两种:并行通信:是指利用多条数据传输线将一个资料的各位同时传送。它的特点是传输速度快,适用于短距离通信,但要求通讯速率较高的应用场合。串行通信:是指利用一条传输线将资料一位位地顺序传送。特点是通信线路简单,利用简单的线缆就可实现通信,降低成本,适用于远距离通信,但传输速度慢的应用场合。一、异步通信及其协议异步
2006-05-17 22:07:00
3146
转载 Linux详细编译内核方法(2)
12. Amateur Radio support 业余无线广播 可以用来启动无线网络的基本支持,目前的无线网络可以通过公众频率传输数据,如果你有此类设备就可以启用,具体请参考AX25和HAM HOWTO 文档。 13. IrDA(infrared)support红外支持 14. ISDN subsystem 如果使用ISDN上网,这个就必不可少了。ISDN(Integrated Service
2006-05-17 22:06:00
1746
转载 Linux详细编译内核方法(1)
目录 序言 第一章 内核编译的基础 第一节内核简介 第二节内核版本 第三节编译原因 第四节准备工作 第二章 内核编译的流程 第一节编译开始 第二节配置内核 {核心内容} 1.代码成熟等级 2..处理器类型和特色 3.对模块的支持 4.基本的选择 5.即插即用支持 6.块设备支持 7.网络选项 8.电话支持 9.SCSI设备的支持 10.I2O接口适配器 11.网络设备支持 12.配置业余无线广播
2006-05-17 22:05:00
2223
1
转载 BabyLinux制作过程详解
BabyLinux制作过程详解作者:GuCuiwen email:win2linux@163.com版权声明:本文档可以在网络上在非商业范围内自由转载,转载请注明出处如果转载版面包含商业广告,请向作者支付至少每千字100园的稿费以书面,书籍形式转载和出版请按至少每千字100园人民币的标准向作者支付稿费一,什么是BabyLinux二,为什么要做这样一个linux三,什么人适合读这篇文档四,应该具备的
2006-05-15 11:15:00
1313
转载 击退男性健康十大死敌
心脏病、肾病、车祸、自杀……MH总结出“男人的十大健康杀手”,并从大量的科学研究中筛选出一些最好的方法,无需药品,不用手术,只需要一些简单的DIY,就可以轻松地防治它们。 1.拦截心脏病 多吃牛排 <iframe src="http://adclient.163.com/html.ng/site=netease&affiliate=health
2006-05-07 16:29:00
1357
转载 devfs介绍
2001 年 9 月 01 日伴随着 Linux 2.4 版本的发行,出现了大量的文件系统可能性,其中包括 ReiserFS、XFS、GFS 和其它文件系统。这些文件系统听起来的确都很酷,但是它们真正能做些什么呢,擅长在哪些方面,以及在 Linux 产品环境下如何才能安全地使用它们呢?Daniel Robbins 通过向您展示如何在 Linux 2.4 的环境下建立这些新的高级文件系统来回答以
2006-04-26 21:55:00
2918
转载 LCD驱动移植笔记
LCD驱动程序往2.6.11内核的移植总结硬件环境:SBC-2410X开发板(CPU:S3C2410X)内核版本:2.6.11.1运行环境:Debian2.6.8交叉编译环境:gcc-3.3.4-glibc-2.3.3注:本驱动移植是基于s3c2400 framebuffer 的驱动。一、从网上将Linux内核源代码下载到本机上,并将其解压:#tar jxf linux-2.6.11.1.ta
2006-04-25 23:36:00
2739
转载 cs8900a驱动移植笔记
硬件环境:SBC-2410X开发板(CPU:S3C2410X)内核版本:2.6.11.1运行环境:Debian2.6.8交叉编译环境:gcc-3.3.4-glibc-2.3.3第一部分 网卡CS8900A驱动程序的移植一、从网上将Linux内核源代码下载到本机上,并将其解压:#tar jxf linux-2.6.11.1.tar.bz2二、打开内核顶层目录中的Makefile文件,这个文件中需要修
2006-04-25 23:35:00
2762
1
转载 嵌入式系统 Boot Loader 技术内幕
嵌入式系统 Boot Loader 技术内幕1. 引言在专用的嵌入式板子运行 GNU/Linux 系统已经变得越来越流行。一个嵌入式 Linux 系统从软件的角度看通常可以分为四个层次: 1. 引导加载程序。包括固化在固件(firmware)中的 boot 代码(可选),和 Boot Loader 两大部分。 2. Linux 内核。特定于嵌入式板子的定制内核以及内核的启动参数。 3. 文件系统。
2006-04-25 15:40:00
1182
转载 Find your Root File System with MTD
Once a brave soul finally gets the kernel to compile for their system. Their high hopes fo
2006-04-23 22:47:00
2501
转载 关于Blog和RSS 的全面介绍
关于 Blog 和 RSS 的全面介绍关于 Blog 和 RSS 的全面介绍原著:Aaron Skonnard翻译:NorthTibet原文出处:MSDN Magazine Apr. 2004(The XML Files)什么是 Blog?"Blog"是 Web Log 的简称(译者注:也就是网志(中国大陆也叫博客))。它是一种作者与读者以日志风格进行交互的中介。在软件社区,人们以网志形式来共
2006-04-22 17:13:00
1219
转载 微软的应试题完整版(附答案)
网上有不少Microsoft的测试题,引来不少的眼光。在这里把所有的测试题加以整理,再附上答案。(个别题目答案有多种,文本仅代表作者的思路)每道题的后面会给出一个时间。这个时间是作者做出该题所用的时间。(注意,这不是什么标准时间,相信所有浏览本试卷的朋友都会在某一道或多道题上找到灵感,迅速解题的) 一.最基本题型(说明:此类题型比较简单) 1.烧一根不均匀的绳,从头烧到尾总共需要1个小时。现在有若
2006-04-22 17:08:00
1588
转载 uClinux下Nor Flash的JFFS2文件系统构建
uClinux下Nor Flash的JFFS2文件系统构建 作者:广州新太科技股份公司 贾东耀 文章来源:国外电子元器件 点击数:1359 更新时间:2004-12-14 摘要:目前的嵌入式系统多使用FLASH作为主存,因此,如何有效管理FLASH上的数据非常重要。文章以SST39VF160芯片为例,讨论了在Nor Flash上建立uClinux的JFFS2文件系统的一般步骤,从而为FLASH上的
2006-04-22 16:49:00
2940
转载 实例分析-在FLASH上构造JFFS2文件系统
我在制作JFFS2过程中参考了下面这个例子,问题在:root@172.16.115.7:/# cp jffs2.image /dev/mtdblock2cp: writing `/dev/mtdblock2: No space left on device怎么创建MTDBLOCK2??4.7.3 实例分析-在FLASH上构造JFFS2文件系统最后,我以一个实际的例子来叙述一下如何在FLASH构造
2006-04-22 16:45:00
6419
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人