自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (5)
  • 收藏
  • 关注

原创 e1000e网卡驱动分析—网卡驱动的体系结构

在硬件上电初始化时,BIOS统一检查所有的PCI设备,并为每个设备分配一个物理地址,该地址通过BIOS获得并写到设备的配置空间内,CPU不能直接访问,驱动程序可以将这部分配置空间通过ioremap映射到普通内存供CPU访问。当操作系统初始化时,其为每个PCI设备分配了一个pci_dev结构,并将前面分配的物理地址写到pci_dev的resource字段中。在驱动程序中,可以通过读取这个字段得到

2013-03-02 18:27:30 5245 2

原创 e1000e网卡驱动分析—概述

最近公司有个项目要修改intel的网卡驱动,由于都是比较公司设备都是用的比较新的网卡,特拿内核中e1000e部分来分析。e1000是比较老的驱动,用于支持比较老的intel网卡设备,关于这两部分的比较,LWN上有篇文章介绍,感兴趣的同学可以去看下:http://lwn.net/Articles/278016/。    内核版本:3.0.13    源码目录:driver/net/e1000

2012-12-16 22:31:54 6361

原创 内核uprobes使用介绍

简介uprobe 事件tracer工具是在内核3.5开发期间何入内核主线版本的,虽然uprobe已经存在很久了。uprobe是和kprobe类似的调试方法。编译内核时通过打开CONFIG_UPROBE_EVENT=y来时能该特性。和kprobe类似,使用时不需要通过current_tracer来激活,而是检测点通过/sys/kernel/debug/tracing/uprobe_events设

2012-12-16 22:18:15 10600

转载 链接器都干了些什么?

<br />目前项目在不停的增长,我想还是在它规模仍旧很小的时候把它的模块分清楚,不同模块分到不同的projects里面,这里面出现了很多问题,也反映了我知识上的很多不足。<br />1,project最后的输出要设置清楚,有的是static lib,有的是dll,有的是exe,不一样的输出要设置好,它们都是linker的成果,但是以不同的方式应用。<br />2,project dependency设置好,build order什么的,通过这些把一系列的project联系起来。<br />3,projec

2010-11-21 00:01:00 715

转载 CreateRectRgn和CombineRgn函数

<br />创新是永恒的追求。当大家习惯Windows的界面时,又想自己开发的软件耳目一新的感觉,那么就得要改变窗口的形状,比如心形的窗口,总之是不规则的窗口。这时就需要使用到叫做区域的技术。区域就是把不同的形状的图形进行组合,然后可以填充它,或者在它那里显示。比如MSN左边的TAB按钮,应就是区域的运用就可以实现它了。<br /> <br />函数CreateRectRgn声明如下:<br />WINGDIAPI HRGN    WINAPI CreateRectRgn( __in int x1, __i

2010-10-26 21:31:00 855

原创 转贴 CxImage类库使用说明

<br />一。CxImage类库简介<br />这只是翻译了CxImage开源项目主页上的部分简介及简单使用。<br />CxImage类库是一 个优秀的图像操作类库。它可以快捷地存取、显示、转换各种图像。有的读者可能说,有那么多优秀的图形库,如OpenIL,FreeImage, PaintLib等等,它们可谓是功能强大,齐全,没必要用其它的类库。但我要说,这些类库基本上没有免费的,使用这些类库,你要被这样那样的许可协议所 束缚。在这点上,CxImage类库是完全免费的。另外,在使用上述类库时,你会遇到重

2010-10-24 20:18:00 577

转载 CReg类轻松读取注册表

<br /><br />//========================================================================<br />//TITLE:<br />//    CReg类轻松读取注册表<br />//AUTHOR:<br />//    norains<br />//DATE:<br />//    Sunday  8-April-2007<br />//Environment:<br />//        EVC4.0 + Standard

2010-10-20 22:36:00 828

原创 WSARecvFrom()

<br />int WSARecvFrom ( SOCKET s, LPWSABUF lpBuffers, DWORD dwBufferCount, LPDWORD lpNumberOfBytesRecvd,

2010-09-14 22:48:00 3840

原创 Winsock编程-WSAEnumProtocols()

<br />WSAEunmProtocols  获取系统上安装的网络协议相关信息。<br />int WSAEnumProtocols ( LPINT lpiProtocols, LPWSAPROTOCOL_INFO lpProtocolBuffer, ILPDWORD lpdwBufferLength );<br />     lpdwProtocols:一个以NULL结尾的协议标识号数组。本参数可选;如果lpdwProtocol

2010-09-14 22:34:00 1626

转载 Winsock编程——WSAAsyncSelect模型

Winsock编程接口的 WSAAsyncSelect 模型以 WSAAsyncSelect 函数为中心。WSAAsyncSelect模型把网络事件通知转换为Windows消息,发送到指定的窗口。例如,如果套接字收到了数据包,这个模型就会把通知转换为Windows消息,发送到你指定的窗口。然后你再处理这个消息,此时读取数据就不会阻塞。MFC的CSocket类就是采用的该模型。WSAAsyncSelect模型的使用方法:1、假设你已经有了一个窗口过程(winproc),或者是一个对话框过程(DlgProc

2010-09-14 21:34:00 816

原创 CIPAddressCtrl的用法

<br />CIPAddressCtrl的用法<br />CIPAddressCtrl的值转换成CString,CString转换成CIPAddressCtrl<br />CString strIP="192.168.1.184";<br />m_IPAddr.SetWindowText(strIP);<br />CString strIP;<br />m_IPAddr.GetWindowText(strIP);<br /><br />CString strIP="192.168.1

2010-09-12 22:22:00 626

转载 自定义的button

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <object class

2010-05-26 22:15:00 854

转载 MCI函数与命令

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <object class

2010-05-23 22:38:00 5537 5

转载 MCISendString详细参数

(注:本文以2000年七月的MSDN解释为准)MCI Command String是多媒体设备的程序接口。通过它,我们可以打开一个多媒体文件,例如mp3,VCD,Mpeg4格式的文件等等,并对它进行播放,暂停,关闭等操作。现在小弟有幸给大家介绍一下MCI Command String的使用方法。MCI Command Stri

2010-05-22 20:30:00 1768

转载 用mciSendString制作可播放MPEG,AVI,WAV,MP3等的播放器

mciSendString是用来播放多媒体文件的API指令,可以播放MPEG,AVI,WAV,MP3,等等,下面我们来介绍一   下它的使用方法:   一,打开多媒体文件。   首先在Dialog上面放一个Picture控件,MCISendString就在这个Picture控件的平面上播放多媒体文件,   设Picture控件的ID为IDC_STATIC1:   CStatic

2010-05-20 22:00:00 1602

转载 一些vc的基本知识,创建应用实例的步骤

AfxMessageBox("Copy");表示弹出一个消息框 消息是Copy;1.启动界面的步骤  a.创建一个单文档框架  b.在工程菜单里选择添加工程  c.在添加工程里选择Components and Controls Gallery  d.Components and Controls Gallery里选Visuan C++ Components  e.V

2010-05-20 21:25:00 743

转载 VC读写INI文件(转

我们写的程序当中,总有一些配置信息需要保存下来,以便完成程序的功能,最简单的办法就是将这些信息写入INI文件中,程序初始化时再读入.具体应用如下:  一.将信息写入.INI文件中.  1.所用的WINAPI函数原型为: BOOL WritePrivateProfileString(LPCTSTR lpAppName,LPCTSTR lpKeyName,LPCTSTR

2010-05-20 21:22:00 557

L4Ka-Pistachio的一个paper

在Pistachio官网找到的一个paper,大家可以学习下。

2011-11-29

fiasco源码

fiasco源码 Fiasco.OC + L4Re core

2011-11-28

fiasco内核源码

fiasco内核源码 Fiasco.OC kernel + preprocess tool

2011-11-28

纯JavaScript时钟

自己觉得不错的JavaScript应用,在我的一个试验中用到过。

2009-06-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除