__init and __exit The __init and __exit declarations are special kernel macros designed to tell the kernel to flag these functions for special handling in cases where they are compiled in statically rather than include
linux基础之Makefile 1:作用Make工具最主要也是最基本的功能就是通过makefile文件来描述源程序之间的相互关系并自动维护编译工作。而makefile 文件需要按照某种语法进行编写,文件中需要说明如何编译各个源文件并连接生成可执行文件,并要求定义源文件之间的依赖关系。makefile 文件是许多编译器--包括 Windows NT 下的编译器--维护编译信息的常用方法,只是在集成开发环境中,用户通过友好的界面修改
typedef 名字 typedef 机制为我们提供了一种通用的类型定义设施,可以用来为内置的或用户定义的数据类型引入助记符号。例如typedef double wages;typedef vector vec_int;typedef vec_int test_scores;typedef bool in_attendance;typedef int *Pint;这些typedef 名字在程序中可被用作类型标识符//
TCP/IP学习笔记 1 TCP/IP协议栈 这部分简要介绍一下TCP/IP的内部结构,为讨论与互联网有关的安全问题打下基础。TCP/IP协议组之所以流行,部分原因是因为它可以用在各种各样的信道和底层协议(例如T1和X.25、以太网以及RS-232串行接口)之上。确切地说,TCP/IP协议是一组包括TCP协议和IP协议,UDP (User Datagram Protocol)协议、ICMP(Internet C
C++ 第二章(数据类型)之四 常量const允许我们在变化和不变之间划清一条界限.const设计的最初动机就是取代预处理器#define进行值替代.从此其应用范围包括指针,函数变量,返回类型,类对象以及成员函数.const应用1: 值替代:C语言中典型使用预处理器进行值替代典型的用法:#define BUFSIZE 100;BUFSIZE 是一个名字,它不占用存储空间而且可以放在一个头文件中,目的是为使用它的所有的编译单元提
C++ 第二章(数据类型)之三 引用类型引用reference, 有时候又称为别名(alias)。 它可以用作对象的另一个名字.通过引用,我们可以间接地操纵对象.其使用方式类似于指针,但是不需要指针的语法.在实际的程序中,引用主要被用作函数的形式参数——通常将类对象,传递给一个函数.这个特性最主要的是在函数中用来传递一个类的引用,见类的拷贝构造函数.引用就是原来对象的别名,对引用操作就是对原来对象本身操作,就象某人叫朱军,小名是
C++第二章 数据类型 C++的数据无非是常量和变量,常量和变量在计算机中都有存储结构。我们编写的程序以及所保存的程序数据,在计算机的内存中是以二进制位序列的方式存放的.位bit 是含有0 或1 值的一个单元在物理上它的值是个负或正电荷. 在这个层次上,位的集合没有结构.很难,以某种意义来解释这些位序列.但是偶然情况下(尤其是当我们访问实际的机器硬件时),我们会因为需要或者为了方便在单独的位或者位集合的层次上,编
谈谈字符对齐 朋友帖了如下一段代码: #pragma pack(4) class TestB { public: int aa; char a; short b; char c; }; int nSize = sizeof(TestB); 这里nSize结果为12,在预料之中。 现在去掉第一个成员变量为如下代码: #pragma pack(4) class Test
论指针 深入研究C/C++开始了,希望为以后打下坚实的基础.指针是一种数据类型,它指向另外一个对象的地址,其内容就是一块地址,但是他本身也有地址,二者不同.C++/C 程序中,指针和数组在不少地方可以相互替换着用,让人产生一种错觉,以两者是等价的。数组要么在静态存储区被创建(如全局数组),要么在栈上被创建。数组名对应着(而不是指向)一块内存,其地址与容量在生命期内保持不变,只有数组的内容可以改变。指针可以
C++第一章之预编译 1: #ifndef, #ifdef,#include的介绍: ① ifndef #ifndef BOOKSTORE_H #define BOOKSTORE_H /* Bookstore.h 的内容 */ #endif 条件指示符#ifndef 检查BOOKSTORE_H 在前面是否已经被定义.这里BOOKSTORE_H是一个预编译器常量.习惯上预编译器常量往往被写成大写字母,如果BOOKST
skyeye模拟uClinux Skyeye简介 以前直接利用GDB-ARMulator来模拟uClinux.具体参见:http://www.uclinux.org/pub/uClinux/utilities/armulator/. 感觉就是:简单,方便.但是要用到网络功能的话,GDB/ARMulator就表现的无能为力了.SkyEye配置选项SkyEye模拟的硬件配置和模拟执行行为由配置文件skyeye.conf中的
uClinux下应用程序的开发 这个是在uclinux下如何添加应用程序的过程: 为4510B添加自己程序,并编译/下载它们的过程 step 1: 创建一个自己的Application: 请首先认真阅读uClinux 2.4.x Kernel的目录内的Document,directry: ../Documentation/Adding-User-Apps-HOWTO.txt 通过阅读this document可以帮助您自己动手
GDB模拟uClinux运行 1 得到uCLinux,GDB,arm-elftools-20030314.sh(或其他版本)。2 GDB: ① bunzip2 gunzip ② cd gdb-5.0 ./configure –target=arm-elf ③ make && ma
CMPP2.0 协议SP端的·NET开发(转) CMPP2.0 协议SP端的·NET开发 TNT 内容简介:本文介绍了CMPP2.0协议SP端.net实现需要注意的问题,并提供解决方案和参考意见,对CMPP协议做一个解读参考。 关键字:CMPP 2.0 SMS ISMG Socket 线程 线程同步 .Net事件模型 一、CMPP协议简介中国移动通信互联网短信网关接口协议(China Mobile Peer