tiechui_sensei
文章平均质量分 66
B站大佬的视频笔记
糯米藕片
Just RE.
展开
-
tiechui_lesson03_缓冲读写与自定义控制
学习了与应用层通过缓冲区方式的交互,包括读写,自定义控制等。小坑比较多,大部分是是头文件和设置上的错误,跟着视频敲想快进就跳过了一些细节。原创 2023-05-06 16:30:17 · 605 阅读 · 0 评论 -
tiechui_lesson02_创建设备与简单通信
学习了驱动对象与设备对象的关系以及创建对象和符号连接与应用层通信的方式。原创 2023-05-06 13:48:52 · 97 阅读 · 0 评论 -
tiechui_lesson07_中断级和自旋锁
但是当页面被换到磁盘上的pagefile.sys,缺页中断无法打断DPC过程(弹幕大佬:“准确说缺页中断会产生,但页面错误异常处理函数无法回应中断请求”),结果是访问一个无效内存,导致BSOD。(弹幕大佬:“也就是说获取自旋锁的线程中断级更高,被抢占的概率更小,从而能尽可能快的释放锁,避免其他线程长时间忙等待”)。DPC这个级别是软件层面能提升到的最高权限,ISR(延迟过程调用)当某个硬件设备引发一个高中断的时候,可以把不那么紧急的任务放在DPC里边来执行,同时又把中断级降低。比如在尝试重入全局变量。原创 2023-05-08 22:10:01 · 685 阅读 · 0 评论 -
tiechui_lesson08_内存的分配和链表
主要是将链表结构的使用,在内核开发中使用起来比较方便的一种数据结构原创 2023-05-10 16:16:28 · 706 阅读 · 0 评论 -
tiechui_lesson04_内核中字符串操作
主要是对宽字符类型的字符串的应用,包括初始化,拷贝,比较,检索,合并等。原创 2023-05-07 12:30:24 · 252 阅读 · 0 评论 -
tiechui_lesson06_注册表操作
这节课主要学习注册表的相关操作,包括注册表的打开,读取,修改,删除。可以自己通过底层API手动来获取和设置注册表,也可以用微软提供的运行时函数。我的看法是底层函数用来了解原理,真正在代码中使用的时候还是会优先使用微软封装好的Rtl运行时函数。而且通过这节课也让我对注册表有了一些认识,注册表就像是一种可视化的数据结构,存放一些程序需要或者系统需要的一些数值,是一些键值对的集合。原创 2023-05-08 15:10:56 · 595 阅读 · 0 评论 -
tiechui_lesson01_入口函数和卸载函数
有一种蓝屏(BSOD)的情况,如果在卸载函数中没有设置删除设置个进程通知回调函数nothing,那么就会产生BSOD。因为操作系统中保有这个回调指针后,我们卸载掉驱动,那么这个指针所指的函数就不存在了,而操作系统仍然去试图访问这个函数那么就导致了蓝屏。在安装驱动的时候注册了一个进程通知回调,在系统中有进程创建或者关闭的时候,调用回调函数。第一个参数为注册的回调函数,第二个是添加和删除回调的布尔值。指定调用方提供的进程创建回调例程的入口点。,则指定例程将添加到列表中。,则从列表中删除指定的例程。原创 2023-05-06 11:18:10 · 657 阅读 · 0 评论 -
tiechui_lesson14_网络连接请求的拦截
这一节主要学习网络请求的过滤,铁锤大佬讲了些关于IRP的知识。原创 2023-05-27 16:11:24 · 925 阅读 · 0 评论 -
tiechui_lesson05_内核小文件拷贝
主要学习在内核中的文件操作,包括文件的打开,创建,读取,写入,查询文件属性等。原创 2023-05-08 10:59:43 · 578 阅读 · 0 评论