自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 资源 (8)
  • 收藏
  • 关注

原创 替换 printk 函数

在实际应用中我们希望把消息送到任何一个 tty。这在内核模块被释放时确认错误是很重要的,因为它将会在所有内核模块中使用。这样做的方法是使用一个指向当前运行任务的指针,来得到当前任务的 tty 结构。然后,我们到 tty 结构里寻找一个指向写串函数的指针,我们用这个函数把一个串写进 tty。/* printstr.c - send textual output to the tty you'

2012-06-22 14:12:20 481

原创 linux hook 初探

下面是一段代码可以实现系统调用的替换  linux 内部的系统调用 sys_mkdir :(code.c)   系统调用作为一个数组放在一个系统调用表sys_call_table之中, 由于sys_call_table在不同主机上的地址是不一样的。我们的直接赋值的办法是行不通的。那么我们就需要通过其他方式获取了。   具体的获取思路如下:每一个系统调用都是通过int 0x80中断进入核

2012-06-21 20:24:12 810

转载 阻塞进程(使用等待队列)

如果有人让你做你一时做不到的事情你会怎么办呢?如果你是个人被另一个人打扰,你唯一可以做的就是对他说:“现在不行,我很忙,走开!”但是如果你是内核模块,被进程打扰,你就有另一种选择。你可以让这个进程去挂起直到你可以为之提供服务。毕竟,进程是在不停的被内核挂起或唤醒(这就是多个进程看上去同时在一个处理器上运行的方法)。  这个内核模块就是一个这样的例子。这个文件(称作/proc/s

2012-06-21 14:33:00 1394

转载 内核模块参数示例

我们可以用“module_param(参数名,参数类型,参数读/写权限)”为模块定义一个参数,例如下列代码定义了一个整型参数和一个字符指针参数:static char *book_name = "Linux Driver";static int num = 4000;module_param(num, int, S_IRUGO);module_param(book_na

2012-06-20 10:18:24 702

转载 MOD_INC_USE_COUNT和MOD_DEC_USE_COUNT

2.4内核中,模块自身通过 MOD_INC_USE_COUNT, MOD_DEC_USE_COUNT宏来管理自己被使用的计数。   2.6内核提供了更健壮、灵活的模块计数管理接口 try_module_get(&module), module_put(&module)取代2.4中的模块使用计数管理宏;模块的使用计数不必由自身管理,而且在管理模块使用计数时考虑到 SMP与PREEMPT机制的影响

2012-06-19 21:12:12 1871

原创 测试ioctl函数

在linux设备驱动开发详解中源码:http://blog.csdn.net/gudujianjsk/article/details/7656042makefile 脚本:KVERS = $(shell uname -r)obj-m += globalmem.oEXTRA_CFLAGS=-g -O0build:kernel_moduleskernel_modules

2012-06-19 21:04:22 1039

原创 使用/proc测试

下面所示清单为一个简单的 /proc 使用范例,这段代码在模块加载函数中创建 /proc 文件节点,在模块卸载函数中撤销 /proc 节点,文件中保存了一个32位无符号整形值。#include #include #include static struct proc_dir_entry *proc_entry;static unsigned long val = 0x12

2012-06-19 19:16:39 749

转载 如何解决Install ncurses(ncurses-devel) and try again

今天在 make menuconfig 时遇到错误: *** Unable to find the ncurses libraries or the *** required header files. *** 'make menuconfig' requires the ncurses libraries. ***  *** Install ncurses (ncur

2012-06-07 21:41:39 1138

原创 将一个目录下所有指定文件里面的特定字符串替换

想把自己以前完成的一个工程里面特定字符串替换,本来用脚本是很简单的,但是自己还不会只得用VC写了一个程序,蛋疼啊。程序涉及到知识点: 指针 链表  文件遍历  内存映射文件代码如下: // Test2.cpp : Defines the entry point for the console application.//#include "stdafx.h"#inc

2012-06-05 09:20:06 1112

IDA中文帮助文档(百加力译)

IDA中文帮助文档,使用IDA的助手。。。 反汇编的朋友可以一看。。

2010-09-05

缓冲区溢出速光入门[适合新手]

关于缓冲区入门的文章。。适合于对缓冲区感兴趣但是一直不得要领的同志们。。

2010-09-01

[密码学介绍]杨新第二版

本文详尽的介绍了密码学的原理与运用,更可贵的是读者根本不需要数学知识就可以理解本文的内容。。。

2010-09-01

反汇编工具ida教程

一本讲述反汇编工具ida使用方法的书.目前已经很难得了,费了很大劲才从网上下载了下来.

2009-09-19

先进的反病毒引擎设计

先进的反病毒引擎设计 本文对当今先进的病毒/反病毒技术做全面而细致的介绍,重点当然放在了反病毒上,特别是虚拟机和实时监控技术。 首先介绍几种当今较为流行的病毒技术,包括获取系统核心态特权级,驻留,截获系统操作,变形和加密等。然后我将分五节详细讨论虚拟机技术:第一节简单介绍一下虚拟机的概论;第二节介绍加密变形病毒,我会分析两个著名变形病毒的解密子;第三节是虚拟机实现技术详解,其中会对两种不同方案进行比较,同时将剖析一个查毒用虚拟机的总体控制结构;第四节主要是对特定指令处理函数的分析;最后在第五节中我列出了一些反虚拟执行技术做为今后改进的参照。论文的第三章主要介绍实时监控技术,由于win9x和winnt/2000系统机制和驱动模型不同,所以我将会分成两个操作系统进行讨论。其中涉及的技术很广泛:包括驱动编程技术,文件钩挂,特权级间通信等等。 总之,本论文介绍的技术涉及操作系统底层机制,难度较大;本论文提供的代码,包括一个虚拟机C语言源代码和两个病毒实时监控驱动程序反汇编代码,具有一定的研究和实用价值。 关键字:病毒,虚拟机,实时监控-err

2009-09-19

vb写的一个反汇编工具

vb写的一个反汇编工具,费了n大的劲才弄出来了。自认为功能还可以。

2009-09-19

二维数组与二重指针(整理)

根据自己的编程经验,整理得到的对二维数组本质的讲解

2009-09-15

空空如也

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

TA关注的人

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