40楼#
发布于:2007-07-19 16:02
和杀软冲突跟用不用generic table没关系,generic table只是一个用来组织数据的算法实现,和hashtable没有本质区别。
|
|
41楼#
发布于:2007-07-19 16:13
单独的generic table我没有测试过,
应该来说是不会冲突的, 最有可能是不是加入了事件同步引起的 KeInitializeEvent(&Event, NotificationEvent, FALSE); KeWaitForSingleObject(&Event, Executive, KernelMode, FALSE, NULL); 另外存文件名会导致这个表变得很大,也有可能引起死机 |
|
42楼#
发布于:2007-07-19 17:21
引用第41楼lsxredrain于2007-07-19 16:13发表的 : KeInitializeEvent(&Event, NotificationEvent, FALSE); KeWaitForSingleObject(&Event, Executive, KernelMode, FALSE, NULL); ======================================================= 你是指 KeInitializeEvent(&FileCtxPtr->Event, SynchronizationEvent, TRUE); 。。。 KeWaitForSingleObject((&FileCtxPtr->Event Executive, KernelMode, FALSE, NULL); 吗? 这个倒是有可能。 “存文件名导致死机”,你是指存文件名的内存消耗太大,导致系统内存枯竭吧,这个用任何方法都会有这个问题,不过内存枯竭不一定就要让他死机啊,优雅地处理内存分配失败就可以了,还有对每个打开的文件只保存一份文件名,对内存的消耗已经尽量达到最小了。 而且算一下就知道,就算同时打开几万个文件,内存也才消耗几M |
|
43楼#
发布于:2007-07-19 18:01
对,就是这个SynchronizationEvent,,在瑞星下会导致系统变得很慢慢,甚至死机
老大什么时候把这个bug修改一下 内存大小是小事,主要是表弄得太大,效率会很低的, 几万文件就是几万个元素 我一般只存打开过的密文,其他文件都不管的 |
|
44楼#
发布于:2007-07-20 10:31
为什么要把
// DriverObject->MajorFunction[IRP_MJ_DIRECTORY_CONTROL] = SfDirectoryControl; // DriverObject->MajorFunction[IRP_MJ_SET_INFORMATION] = SfSetInformation; 这两个函数//掉,它们没用吗? |
|
|
45楼#
发布于:2007-07-20 11:35
我只测试了Read和Write,所以把不相关的屏蔽了,你可以增加的
|
|
46楼#
发布于:2007-07-20 12:29
引用第43楼lsxredrain于2007-07-19 18:01发表的 : 你可以把它分成若干个表啊,我那个代码只是示例,一般我在实际中都会分成128个表, 然后通过FsContext MOD 128作为表数组的索引,通常情况下一个表的数据小于10个。 |
|
47楼#
发布于:2007-07-20 12:30
引用第43楼lsxredrain于2007-07-19 18:01发表的 : 这个只能通过产品的策略来避免。 |
|
48楼#
发布于:2007-07-20 14:53
受教了,我的hash表也是分成128个表来处理的
产品策略如何避免SynchronizationEvent呢? 有点想不明白, |
|
49楼#
发布于:2007-07-20 15:34
学习中。。。。。。
|
|
50楼#
发布于:2007-07-20 17:16
先顶!
|
|
51楼#
发布于:2007-07-23 11:32
若想在sfread中取得文件名,调用那个函数?
SpyLogIrp吗? |
|
|
52楼#
发布于:2007-07-23 17:27
lsxredrain 兄,你搞定文件标识了吗?
|
|
53楼#
发布于:2007-07-23 17:43
我用压缩法加标记,目前还比较稳定
|
|
54楼#
发布于:2007-07-23 17:50
引用第51楼jl2004于2007-07-23 11:32发表的 : 一般来说是在Create 历程中取到先存起来,需要用时再取出来 |
|
55楼#
发布于:2007-07-24 02:40
压缩法加标记?
老大,什么是压缩法加标记法啊? |
|
56楼#
发布于:2007-07-24 08:35
引用第55楼wengzuhong于2007-07-24 02:40发表的 : 用一个压缩比很大的压缩算法把文件某一部分压小一点不就可以放标记了吗? |
|
57楼#
发布于:2007-07-24 09:05
不错
|
|
58楼#
发布于:2007-07-24 16:29
不错,可是,对于几个字节的文件怎么办?
|
|
59楼#
发布于:2007-07-24 16:39
几个字节要泄密谁也挡不住的啊
不过我可以控制不允许非法进程从加密文件中获取明文信息 |
|