2011年12月19日

摘要: (使用以下扩展可能需要使用-gnu99)GNC CC是一个功能非常强大的跨平台C编译器,它对C 语言提供了很多扩展,这些扩展对优化、目标代码布局、更安全的检查等方面提供了很强的支持。本文把支持GNU扩展的C 语言称为GNU C。 Linux 内核代码使用了大量的 GNU C扩展,以至于能够编译 Linux 内核的唯一编译器是 GNU CC,以前甚至出现过编译 Linux 内核要使用特殊的 GNU CC 版本的情况。本文是对 Linux 内核使用的 GNU C扩展的一个汇总,希望当你读内核源码遇到不理解的语法和语义时,能从本文找到一个初步的解答,更详细的信息可以查看gcc.info。文中的例子. 阅读全文
posted @ 2011-12-19 14:45 lightsalt2011 阅读(861) 评论(0) 推荐(0) 编辑

2011年12月15日

摘要: [转自:http://hi.baidu.com/flyreally/blog/item/20e9ce1157dc4912b9127bc5.html]c99中新增加了一个类型定义,就是restrict。restrict的定义是It can be applied only to pointers, and it indicates that a pointer is the sole initial means of accessing a data object.我不知道确切应该怎么翻译,大意是restrict只对指针有用,它声明一个指针是唯一初始化访问一个数据对象。比如,按照书上的例子,int 阅读全文
posted @ 2011-12-15 21:45 lightsalt2011 阅读(229) 评论(0) 推荐(0) 编辑

2011年12月6日

摘要: 一下内容转载于:http://blog.chinaunix.net/space.php?uid=22976768&do=blog&id=1640924。这个总结的很好~windows下的TortoiseSVN是资源管理器的一个插件,以覆盖图标表示文件状态,几乎所以命令都有图形界面支持,比较好用,这里就不多说。主要说说linux下svn的使用,因为linux下大部分的操作都是通过命令行来进行,所以必须得掌握linux下svn的常用指令。当然linux下也有模仿TortoiseSVN的linux X程序,例如RabbitVCS,模仿程度很高,但很容易拖慢X,因此不推荐。 (如果是第 阅读全文
posted @ 2011-12-06 14:41 lightsalt2011 阅读(373) 评论(0) 推荐(0) 编辑

2011年12月5日

摘要: 原文地址:http://www.cnblogs.com/xuxm2007/archive/2011/07/29/2121280.html#include <unistd.h>int daemon(int nochdir,int noclose)在创建精灵进程的时候,往往需要将精灵进程的工作目录修改为"/"根目录并且将标准输入,输出和错误输出重定向到/dev/nulldaemon的作用就是当参数nochdir为0时,将根目录修改为工作目录noclose为0时,做输入,输出以及错误输出重定向到/dev/null执行成功返回0错误返回-1<----------- 阅读全文
posted @ 2011-12-05 10:29 lightsalt2011 阅读(297) 评论(0) 推荐(0) 编辑

2011年12月2日

摘要: GNU C的一大特色(却不被初学者所知)就是__attribute__机制。__attribute__可以设置函数属性(Function Attribute)、变量属性(Variable Attribute)和类型属性(Type Attribute)。__attribute__书写特征是:__attribute__前后都有两个下划线,并切后面会紧跟一对原括弧,括弧里面是相应的__attribute__参数。__attribute__语法格式为:__attribute__ ((attribute-list))其位置约束为:放于声明的尾部“;”之前。函数属性(Function Attribute) 阅读全文
posted @ 2011-12-02 12:24 lightsalt2011 阅读(235) 评论(0) 推荐(1) 编辑

2011年11月26日

摘要: 近段时间,不断有向我咨询经验的人。师弟师妹们及早准备的意识,让我这个做师兄的自愧弗如。说也惭愧,一年前自己准备考研时,大多时间只是处于懵懂的状态,非但没有四处寻觅“过来人”的意识,连“考研论坛”这个基本平台,也是上年6月份才从室友口中第一次得知,其消息之闭塞,观念之落后,思想之愚顽,可见一斑。 有关考研的起步,我一直在对身边的人强调——早准备者得主动。可总有一些人优柔寡断,畏首畏尾,让人备感无奈。考研是一项十分浩大的工程,何况你要面对的是北理工信息与电子学院最有实力的专业。只有厚积薄发,方能有足够实力挥斥方遒;投机取巧的心态,期盼以最后的冲刺冲出奇迹的人,多半以“出师未捷身先死”而告终。 .. 阅读全文
posted @ 2011-11-26 16:49 lightsalt2011 阅读(208) 评论(0) 推荐(0) 编辑

2011年11月25日

摘要: 第1种方法是使用find和xargs命令,示例如下 find dir | xargs grep str,dir是指某个目录 find file | xargs grep str,file是指某个文件 注意:这种方法,会递归搜索子目录 第2种方法是直接使用grep命令,示例如下 grep str dir/*,dir是指某个目录,但不递归搜索其子目录 grep -r str dir/*,使用-r选项,递归搜索其子目录 grep str file,file是指某个文件 第3种方法是综合以上两种,写一个shell脚本,代码如下 #!/bin/bash #find_str.sh if [ $# -lt 阅读全文
posted @ 2011-11-25 12:41 lightsalt2011 阅读(765) 评论(0) 推荐(0) 编辑

2011年11月9日

摘要: test.cview plain#include<stdio.h>#include<stdlib.h>externchar*_binary_test_c_start;intmain(){printf("%s",(char*)&_binary_test_c_start);}Makefileview plainALL:test.cobjcopy-Ibinary-Oelf32-i386-Bi386test.ctest.bingcc-ottest.ctest.binobjcopy很方便的可以把文本文件做成可以连接器可以连接的对象,进而链进可执行程序里 阅读全文
posted @ 2011-11-09 17:47 lightsalt2011 阅读(316) 评论(0) 推荐(0) 编辑

2011年11月6日

摘要: 原文地址:http://blog.csdn.net/cuijianzhongswust/article/details/6869596如果普通编程不需要了解这些东西,如果想精确控制你的目标文件的格式或者你想查看一下文件里的内容以便作出某种判断,那么你可以看一下下面的工具:ar,nm,objdump,objcopy。具体用法请参考man在线手册。ar基本用法ar命令可以用来创建、修改库,也可以从库中提出单个模块。库是一单独的文件,里面包含了按照特定的结构组织起来的其它的一些文件(称做此库文件的member)。原始文件的内容、模式、时间戳、属主、组等属性都保留在库文件中。 下面是ar命令的格式:. 阅读全文
posted @ 2011-11-06 22:25 lightsalt2011 阅读(558) 评论(0) 推荐(0) 编辑
摘要: 原文地址:http://blog.csdn.net/cuijianzhongswust/article/details/6870813awk 用法小结 - - - by ruson 2006.4 NTU1. awk 非常适合于结构化的文本文件(行、列数据)复杂处理。相对于 sed 而言,它可进行复杂的编程处理,并且可以产生复杂的报表输出。2. awk 通常有三个版本,旧 awk、nawk(新) 、gawk。Solaris 下建议用 nawk,因为旧 awk有很多功能不支持,例如数学运算幂 ^ ,函数getline,system等。3. 基本语法:awk ‘pattern{action}’ fi 阅读全文
posted @ 2011-11-06 22:24 lightsalt2011 阅读(833) 评论(0) 推荐(0) 编辑

导航