摘要: (1) 查看版本下载内核 uname -r 查看内核版本 一般系统中不会有内核源码,需要自己下载源码。 1> mkdir /home/usr1/temp 建立临时目录 usr1是用户的主目录 2> cd /home/usr1/temp 进入临时目录 3> apt-get source linux-image-$(uname -r) 下载内核源代码 建议:下载源码时候使用一般用户模式,建立临时路径,不要在系统目录usr/bin/src 目录中。(2) 解压配置 1>tar jfx linux-2.6.25.10.tar.bz2 解压源码 2>cd l... 阅读全文
posted @ 2013-08-14 17:35 皁仩腄覺 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 线程是可结合的(joinable)或者是分离的(detached)。一个可结合的线程能够被其他线程收回其资源和杀死。在被其他线程回收之前,它的存储器资源(例如栈)是不释放的。相反,一个分离的线程是不能被其他线程回收或杀死的,它的存储器资源在它终止时由系统自动释放。 默认情况下,线程被创建成可结合的。为了避免存储器泄漏,每个可结合线程都应该要么被显示地回收,即调用pthread_join;要么通过调用pthread_detach函数被分离。 int pthread_join(pthread_t tid, void**thread_return); 线程通过调用pthread_join函数... 阅读全文
posted @ 2013-08-14 10:37 皁仩腄覺 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 最近老看一些服务器网关的代码页看了一些开源的代码。一个重要的技术线程池。 何为线程池,所谓线程池就是一组用来处理,客户请求的线程组 这里的客户指代的是线程池服务的对象。 线程池的实现原理: (1)消息队列调用函数,当有消息到来时候,将消息封装插入消息队列。 (2)有一个 线程池附服务线程,该线程负责检索消息队列,创建线程池线程,将该消息派发到线程池的某一线程处理。 (3)线程池线程参数,该参数应该是一个结构体,该结构体中某项指向一个消息,处理完成之后删除消息,进入等待状态。 源代码如下 代码注释有说明 故不在单独讲解代码: 1 #include 2 #i... 阅读全文
posted @ 2013-08-09 09:30 皁仩腄覺 阅读(394) 评论(0) 推荐(0) 编辑
摘要: Handle 是用来标记windows资源Hwnd Handle的一个子类 就好比char是int的一个子类一样。这个是窗口句柄HINSTANCE Handle的一个子类,用来标记可执行程序的实例App实例。使用hwnd 和 HINSTANCE是方便用户阅读维护代码。 阅读全文
posted @ 2013-08-05 18:05 皁仩腄覺 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 不知道现在人是懒了还是怎么了都使用这玩意,难道自己不会写makefile吗?我一直觉得makefile书写简单点就好了,就不要用atuomake 之类的工具了。今天同事给了我一个测试程序,就两个文件然后用automake工具生成makefile,我自己又加了一个文件,我自己都不知道如何编译。所以不得已对automake工具简单的研究了下。(1) 简介 Autoconf/Automake工具用于自动创建功能完善的makefile文件。当前大多数软件包都是用这一工具生成makefile文件的。Autoconf/Automake工具组主要包括autoconf、automake、perl语言环境和.. 阅读全文
posted @ 2013-08-04 17:27 皁仩腄覺 阅读(471) 评论(0) 推荐(0) 编辑
摘要: WDF提供了一个统一的大范围的设备类型的驱动程序模型,有如下特征: 1> 支持用户模式和内核模式 2> 对象模型 3> 一个简化对象生存期管理和同步I / O请求的对象的层次结构 4> 一个I / O模型的框架处理与操作系统的交互 5> 外设、视频加速、电源管理的实现提供了强大的状态管理和智能默认处理状态转换 WDF驱动包括KMDF(内核态*.SYS) UMDF(用户态*.DLL) 内核模式驱动程序:作为内核模式操作系统的一部分执行,管理I/O 即插即用 ,电源等,通常为分层结构 用户模式驱动程序:通常为应用程序与驱动程序的接口或其它操作系统接口的驱动程序,用户模 阅读全文
posted @ 2013-07-26 09:43 皁仩腄覺 阅读(266) 评论(0) 推荐(0) 编辑
摘要: (1) 安装VS2010(2) 开发包安装 1> 2000/XP/2003下,Windows采用WDM驱动模型(Windows Driver Model),开发2000/XP/2003的驱动开发包为:DDK。 2> Vista及以后版本,采用了WDF驱动模型(Windows Driver Foudation),对应的开发包:WDK。 WDK可以看做是DDK的升级版本,WDK是包含以前DDK相关的功能,XP下也可以用WDK开发驱动,WDK能编译出2000-2008的各种驱动。 这里选择下载Windows Driver Kit Version 7.1.0 下载地址http:/... 阅读全文
posted @ 2013-07-25 16:59 皁仩腄覺 阅读(149) 评论(0) 推荐(0) 编辑
摘要: (1) 基本概念 驱动程序是一个软件组件,可让操作系统和设备彼此通信。例如,假设应用程序需要从设备中读取某些数据。应用程序会调用由操作系统实现的函数,操作系统会调用由驱动程序实现的函数。驱动程序(由设计和制造该设备的同一公司编写)了解如何与设备硬件通信以获取数据。当驱动程序从设备获取数据后,它会将数据返回到操作系统,操作系统将数据返回至应用程序。 (2)驱动程序扩展 1> 并非所有驱动程序都必须由设计该设备的公司编写。在多种情形下,设备根据已发布的硬件标准来设计。这表示驱动程序可以由 Microsoft 编写,设备设计者无须提供驱动程序。 2> 并非所有驱动程序都直接与设备... 阅读全文
posted @ 2013-07-25 15:49 皁仩腄覺 阅读(206) 评论(0) 推荐(0) 编辑
摘要: GTK提供了一套打印技术CUPS 阅读全文
posted @ 2013-07-22 09:18 皁仩腄覺 阅读(435) 评论(0) 推荐(0) 编辑
摘要: 注:图片来自于博客 http://blog.163.com/hbu_lijian/blog/static/126129153201201710456994/ fstream 中IO对象常用的是iftream(文件输入流) ,ofstream(文件输出流),用来读写文件。 最近工程中用到socket 接收收据,接收到的数据是一个图像,接收完之后用于打印,由于图像接收完整之后才能打印。 一开始我就想建立一个文件保存数据,等保存完毕之后在打开一个文件,读入数据流然后用于打印。结果发现在大规模的接收文件时候效率很低。 我在想是否可以既有输入又有输出特性,我想到了管道。但有觉得不合适。我不可能为每... 阅读全文
posted @ 2013-07-19 17:28 皁仩腄覺 阅读(473) 评论(0) 推荐(0) 编辑