易截截图软件、单文件、免安装、纯绿色、仅160KB

《Linux设备驱动程序(第三版)》对应代码修改记录

今天将该书misc-modules部分的jiq.c代码做了些修改,以保证这份代码在UBUNTU 9.10 & Linux 2.6.31的环境下运行。
记录一下主要的修改位置:
1.config.h
新内核中使用了autoconf.h代替config.h
2.工作队列
在新的内核中为了避免非延迟的工作队列中timer的成本,将工作队列中的timer剥离出来。同时又构造了延迟工作队列的新结构。
详情参考:Linux 自2.6.20工作队列的变化
我用新的API重写了相关的代码。
3.统一化
和其他类型不同,在timer中任务执行一次就退出。我将其修改为和其他其他类型一样的处理方法。
4.结构化(不是必需的修改,但是我觉得这样更易于理解)
原来的程序中,主进程的唤醒被放置到了jiq_print函数中,虽然这样
代码更加精简。但是将业务的逻辑和处理放到了一起。略微有悖于结构化的思想。于是我将其从jiq_print函数中移除,转而在对应的控制函数(即调用
jiq_print的函数)中处理。
如此一来,这些函数的逻辑统一为:
a)取得需要显示的数据结构。
b)调用
jiq_print显示
c)根据jiq_print的返回值决定是继续执行相应的任务还是唤醒主进程。


相关文档:

构建ARM Linux交叉编译工具链

2.2  构建ARM Linux交叉编译工具链
构建交叉编译器的第一个步骤就是确定目标平台。在GNU系统中,每个目标平台都有一个明确的格式,这些信息用于在构建过程中识别要使用的不同工具的正确版本。因此,当在一个特定目标机下运行GCC时,GCC便在目录路径中查找包含该目标规范的应用程序路径。GNU的目标规范格式为CPU-PLATF ......

怎样创建真正很小的Linux下的ELF可执行文件


怎样创建真正很小的Linux下的ELF可执行文件
转载: ELF文件格式研究
日期: Friday, July 25 @ 14:46:16 CST
主题: 软件开发

发信人: someone (++), 信区: Linux

标 题: 怎样创建真正很小的Linux下的ELF可执行文件
发信站: ......

Linux下安装OpenSSH

因为自己的傻,所以才有的此篇日志。也许有人可以发现,在我博客上已经有篇名为“LFS配置IP及安装OpenSSH”,而再写这篇日记是因为自己在Linux下使用了光盘里的OpenSSH,然后装上后使用自己硬盘上的SSH时老是提示已经占用,结果反复装了好几遍才意识到这个问题!~这就好比一个人骑在马上数马的数目一样,总是少一 ......

Linux 2.6.19.x 内核编译配置选项简介


Linux 2.6.19.x 内核编译配置选项简介
作者:金步国
版权声明
本文作者是一位自由软件爱好者,所以本文虽然不是软件,但是本着 GPL 的精神发布。任何人都可以自由使用、转载、复制和再分发,但必须保留作者署名,亦不得对声明中的任何条款作任何形式的修改,也不得附加任何其它条件。您可以自由链接、下载、传播此文档 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号