代码改变世界

推荐排行榜

我的Linux书架

2011-01-27 23:03 by wwang, 41807 阅读, 收藏,
摘要: 工作几年来,一直从事Linux内核驱动方面的开发。从接触Linux到现在,读过不少Linux方面的书籍,现把认为很不错的一部分列出来和大家分享一下。入门类一直认为,在一个系统上学习开发之前,首先需要熟悉这个系统的使用。鉴于天朝的国情,绝大部分人第一个接触的操作系统就是Windows,因此对于这绝大部分人来说,如果要学习Linux开发,学会使用这个系统都是必不可少的一个环节。现在的Linux初学者是... 阅读全文

GCC强大背后

2010-11-24 21:37 by wwang, 16881 阅读, 收藏,
摘要: 前记: 经常浏览博客园的同学应该会觉得本文有标题党之嫌,这个标题的句式来自于MiloYip大牛的大作《C++强大背后》,在此,向Milo兄致意。GCC,全称GNU Compiler Collection,是一套GNU开发的编译器环境,它的创始人便是大名鼎鼎的Richard.M.Stallman。最初GCC刚开始开发时,它还叫做GNU C Compiler,随着开发的深入,GCC很快得到了扩展,不仅可以支持C语言,还可以处理C++,Pascal,Object-C,Java以及Ada等其他语言。目前,GCC不仅是GNU的官方编译器,也成为编译和创建其他操作系统的编译器,包括BSD家族以及MAC O 阅读全文

玩转C链表

2010-11-28 20:50 by wwang, 45940 阅读, 收藏,
摘要: 链表是C语言编程中常用的数据结构,比如我们要建一个整数链表,一般可能这么定义:struct int_node { int val; struct int_node *next;};为了实现链表的插入、删除、遍历等功能,另外要再实现一系列函数,比如:void insert_node(struct int_node **head, int val);void delete_node(struct int_node *head, struct int_node *current);void access_node(struct int_node *head){ struct int_node *no 阅读全文

Linux内核的Oops

2010-11-14 23:13 by wwang, 62080 阅读, 收藏,
摘要: 什么是Oops?从语言学的角度说,Oops应该是一个拟声词。当出了点小事故,或者做了比较尴尬的事之后,你可以说"Oops",翻译成中国话就叫做“哎呦”。“哎呦,对不起,对不起,我真不是故意打碎您的杯子的”。看,Oops就是这个意思。在Linux内核开发中的Oops是什么呢?其实,它和上面的解释也没什么本质的差别,只不过说话的主角变成了Linux。当某... 阅读全文

DKMS简介

2011-06-21 23:33 by wwang, 45708 阅读, 收藏,
摘要: 我们都知道,如果要使用没有集成到内核之中的Linux驱动程序需要手动编译。当然,这并不是一件什么难事,即使是对于没有编程经验的Linux使用者,只要稍微有点hacker的意识,努力看看代码包里的Readme或者INSTALL文件,按部就班的执行几条命令还是很容易办到的。但这里还有一个问题,Linux模块和内核是有依赖关系的,如果遇到因为发行版更新造成的内核版本的变动,之前编译的模块是无法继续使用的,我们只能手动再编译一遍。这样重复的操作有些繁琐且是反生产力的,而对于没有内核编程经验的使用者来说可能会造成一些困扰,使用者搞不清楚为什么更新系统之后,原来用的好好的驱动程序突然就不能用了。这里,就是 阅读全文
1 2 3 4 5 ··· 7 下一页