- 博客(18)
- 收藏
- 关注
转载 加密算法种类
常见的加密算法可以分成三类,对称加密算法,非对称加密算法和哈希算法。1. 对 称 加 密:加密和解密使用相同密钥的加密算法。优 缺 点:对称加密算法的优点在于加解密的高速度和使用长密钥时的难破解性。常见的对称加密算法:DES、3DES、DESX、Blowfish、IDEA、RC4、RC5、RC6和AES。2...
2019-09-12 14:37:16 4645
转载 Windows驱动开发之日志打印 - TraceEvents
《Windows驱动开发技术详解》一书中,介绍了一种“Windows驱动程序日志打印和查看的方法”,具体就是:在需要打印日志的地方,调用“KdPrint”函数,该函数类似标准C的printf(print file)函数。然后用“DebugView.exe”软件查看日志。一、引入事实上,微软也提供了一个日志打印和日志查看机制,它可以查看指定的驱动文件的日志,并...
2019-08-22 18:04:08 4041
转载 Windows驱动_UMDF驱动之三UMDF取消IO完成IO访问IO类型HID驱动
Canceling I/O Requests(取消I/O请求)正在被设备处理的IO请求,可以被应用程序,系统,或者驱动取消。如果设备的IO操作被取消,IO管理器尝试取消所有的和IO操作所关联的没有被处理的IO请求。设备驱动可以一个例程得到通知但IO管理器尝试取消IO请求的时候,然后驱动可以通过设置IO请求的完成状态值为ERROR_OPERATION_ABORTED取消请求。...
2019-08-22 17:16:33 817
转载 Windows驱动_UMDF驱动之二UMDF电源管理和PNP操作
一、Framework Objects(框架对象) UMDF中一般会使用到如下的框架对象:Driver Object IWDFDriver 驱动对象 Device Object IWDFDeivce 设备对象 File Object IWDFFile 文件对象 Interrupt Object IWDFInterrupt ...
2019-08-22 14:30:49 1343
转载 Windows驱动_UMDF驱动之一UMDF驱动架构
一、简介 我们知道WDF分UMDF和KMDF框架,因为之前一直在内核模式下,所以一直没有考虑UMDF驱动框架,还有一个原因是可以使用UMDF框架的驱动,都可以使用KMDF框架代替,反之,不然。但是,UMDF因为其运行在用户模式下,所以也有许多便利性,比如: 1. UMDF增加了系统的稳定性,驱动在用户模式进程地址空间中运行。 2. 既可以使用用户模式的调试器调试,也可以使...
2019-08-22 14:13:45 1959
转载 调用约定__cdecl、__stdcall和__fastcall
要点 __stdcall __cdecl __fastcall 适用场合 Win API C/C++、MFC的默认方式; 可变参数的时候使用; 要求速度快 C编译修饰约定 _functionname@number _functionname @functionname@number 如函数int func(int a, dou...
2019-08-19 16:31:23 141
转载 Windows下usb接口驱动技术
一、USB概述 USB的英文全称为Universal Serial Bus,中文含义是通用串行总线,是由Conpaq、DEC、IBM、Inter、Microsoft、NEC和Northen Telecom等公司为简化PC与外设之间的互连而共同研究开发的一种免费的标准化连接器,它支持各种PC与外设之间的连接,还可实现数字多媒体集成。现在生产的PC几乎都配备了USB接口,Micros...
2019-08-16 09:57:38 11010
转载 Linux内核同步机制之completion
一、简介 内核编程中常见的一种模式是,在当前线程之外初始化某个活动,然后等待该活动的结束。这个活动可能是,创建一个新的内核线程或者新的用户空间进程、对一个已有进程的某个请求,或者某种类型的硬件动作,等等。在这种情况下,我们可以使用信号量来同步这两个任务。然而,内核中提供了另外一种机制——completion接口。Completion是一种轻量级的机制,他允许一个线程告诉另一个线程某个工作已...
2019-08-09 09:48:16 178
原创 Linux测试驱动笔记
####################################Ubuntu 16.04 terminal 无法设置title的处理方法###################################第一步:在~/.bashrc中添加如下代码:function set-title() { if [[ -z "$ORIG" ]]; then ORIG=$PS1 fi...
2019-08-08 18:06:59 614
转载 使用TraceView观察Windows PCIE驱动设备加载和卸载过程
本文主要结合TraceView.exe工具,介绍一个典型的KMDF驱动程序的加载和卸载过程。相关理论主要来自《Win7设备驱动程序开发》一书。关于TraceView.exe的使用,可以参考我之前的博客:点击打开链接。一、启动和加载顺序在《Win7设备驱动程序开发》的7.2节——“设备的枚举和启动”中,提到:为了准备操作设备,KMDF将按固定顺序调用驱动程序的...
2019-08-06 17:15:17 744
转载 NT、WDM、WDF驱动概念
一、概念介绍 NT是驱动模型:NT式驱动程序模型是一种比较老式的驱动程序模型,但适用于现有的Windows系统。NT式驱动模型没有固定的形式,最简单的NT式驱动程序模型这一特点,程序开发者可以编写一个完全不支持硬件工作的驱动程序,却可以将代码运行在内核模式中。 WDM驱动程序模型:WDM式驱动程序在NT式驱动程序的基础上,还必须: 1、包括wdm.h头文件,问不是ntddk.h(...
2019-07-11 13:57:11 2750
原创 Ubuntu 16.04 静态编译QT 5.9.2
Ubuntu 16.04 静态编译QT 5.9.21.vmware安装虚拟机 32位:ubuntu-16.04-desktop-i386.iso(MD5: 610C4A399DF39A78866F9236B8C658DA) 64位:ubuntu-16.04-desktop-amd64.iso(MD5: C94D54942A2954CF852884D656224186) ...
2019-06-19 14:06:41 1397
原创 Shell扩展问题
1.选择快捷方式的时候,快捷方式的文件名是指向文件的文件名,而不是lnk文件。 1) Register as a handler for both "*" and "lnkfile".(注册表中增加一行) HKEY_CLASSES_ROOT,"lnkfile\\ShellEx\\ContextMenuHandlers\\CryptoCC extension" 2...
2019-06-18 17:57:38 653
原创 wcscat_s、_tcscat_s异常
errno_t strcat_s( char *strDestination, size_t sizeInBytes, const char *strSource );errno_t wcscat_s( wchar_t *strDestination, size_t sizeInWords, const wchar_t *strSource );-...
2019-06-17 16:58:06 1987
原创 Windows文件(新建文件、文件大小比较、大小转换、文件名路径、异常文件名)
一、新建指定大小的文件二、代码中文件大小的比较三、查看的文件大小转换为代码四、文件名路径长度五、异常文件名一、新建指定大小的文件1.fsutil file createnew 1K.data0x1000 2.fsutil file createnew 1M.data 0x10...
2019-06-10 18:27:22 316
转载 拷贝文件长度超过MAX_PATH的处理
问题描述:拷贝文件时不全C:\Users\fzhu\AppData\Local\Temp\Crypto\CCM3511SR\from_uT\CCM3511\2016-04-26\DemoCOS-C\Eclipse-C0\eclipse-C0-18APR2016\features\org.eclipse.cdt.build.crossgcc_8.4.0.201406111759\META-INF\...
2019-06-10 18:19:11 1051
原创 设计方法(原型法、敏捷开发)
原型法和敏捷开发原型法定义:又称快速原型法,不属于敏捷开发。 根据需求用IDE实现基本功能,然后用户试用、补充和修改的重复过程,最后的版本再决定是demo还是正式版本。分类1. 抛弃型原型 - 此类原型在系统真正实现以后就抛弃不用了。2. 进化型原型 - 此类原型的构造从目标系统的一个或多个基本需求出发,通过修改和追加的过程逐渐丰富,演化成为最终的系统。
2017-03-13 15:18:58 10804
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人