看书实现的代码,遇到了好多问题,做了详细的代码注释。另外在排查问题的过程中看到了一个操作注册表的通用的 c 文件,貌似是一个硬件驱动的 ftp 地址。ftp://ftp.lantronix.com/priv/cpr/Lantronix/4.3/4.3.0.0/Debug/DriverSource/registry...
Windows 内核编程并没有提供像 Ring3 层的 CopyFile 这样的 API,看了看书中的例子自己写了一份 MyCopyFile,以后用来备用。 12345678910111213141516171819202122232425262728293031323334353637383940414243...
在 Windows 内核开发中,字符串并非像 C 中使用的是一个 \0 结尾的字符数组,取而代之的是一个结构体,该结构体储存了指向字符的指针和字符的长度。因为没有了 \0,很多 C 语言库函数也无法使用了,但不用担心,Windows 提供了很多操作这种字符串的函数。见如下示例: 初始化、拷贝、拼接字符串1234...
这几天在看 libevent 的官方书籍跟着学习,开着个 Ubuntu 的虚拟机在 Windows 下来回切换,学习效率实在低下,且不说编译、测试这些复杂的步骤。所以决定研究一下如何在 Windows Visual Studio 环境下使用 libevent 库,这样学习效率会高很多。从网上借鉴了一些教程,都写的...
还是 2015 年学过的知识,这么久不用忘差不多了。本文主要记录一下方便以后查阅并加深印象。gcc 编译一个程序的四个过程分别是 预处理->汇编->编译->链接,预处理一般是导入一些头文件的信息及一些宏的替换等等,汇编是将代码编译为汇编代码,真正到编译过程才是把汇编代码编译为二进制的文件,最后链...
makefile 语法123456789目标:依赖(tab)命令如:add.o:add.c(一个tab缩进)gcc –Wall –g –c add.c –o add.o目标:要生成的目标文件依赖:目标文件由哪些文件生成命令:通过执行该命令由依赖文件生成目标 makefile 工作原理1、若想生成目标,检查规则中...
所谓全排列就是将一个数据组合拆开重新排列,比如 abc,可重新排序为 acb、bac、bca、cab、cba,通过算法上实现一般就是递归或一个while循环来实现。最近复习算法方面的内容接触到的新的算法,记录一下思路。 主要思路就是把每个子项都拿到第一位,然后递归分别跟后面的交换得出不同的组合。以下是参考代码,...
这个话题还是很早以前讨论过,当时并没有好好的理解,最近在复习知识的时候又重新看了一遍资料,自己做一下总结,也希望后面有人需要学习时可以对他有所帮助。以下我会举两个结构体的例子,分别画图的方式表达对齐的原则。 结构体对齐的公式记住以下这些规则,把结构体往里面套就可以了。结构体对齐的原则就是牺牲空间的方式来减少时间...
在网络上翻阅过的一份资料,所谈之处皆是痛点,如因处理大量请求可能会导致内存不足的情况、多线程情况下数据包排序紊乱等问题,非常值得参考和学习,其中引入的其他文献有微软官方和非官方文章,附带有非常可靠的代码提供学习,此文非常值得记录。特此分享! 资料下载下载原版PDF:完成端口实现高性能服务端通信层的关键问题.pd...
向往了多年,终于静下心来备战 IOCP,对于语言方面不缺少什么东西了,剩下的就是对操作系统和编程技巧的学习了,所以慢慢的开始写一些周边会涉及到的代码,也算是对 C/C++ 的复习,本文写的是一个 Windows 下多线程的例子,跟 Linux 下没什么区别,循环创建线程然后用堆上内存传递参数,代码有详细...