<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/1.5.1-alpha" -->
<rss version="0.92">
<channel>
	<title>JIURL</title>
	<link>http://jiurl.blogsome.com</link>
	<description></description>
	<lastBuildDate>Tue, 12 Feb 2008 12:11:42 +0000</lastBuildDate>
	<docs>http://backend.userland.com/rss092</docs>
	<language>en</language>

	<item>
		<title>Virus May Cry 0.94</title>
		<description><![CDATA[	download: http://viruscry.googlepages.com/viruscry-0.94-en-setup.exe
	What&#8217;s new: Some bugs in &#8220;Virus May Cry 0.93&#8243; fixed.
]]></description>
		<link>http://jiurl.blogsome.com/2008/02/12/virus-may-cry-094/</link>
	</item>
	<item>
		<title>Virus May Cry 0.92</title>
		<description><![CDATA[	download: http://pushebp.kilu3.de/viruscry-0.92-en-setup.exe
More stable.
]]></description>
		<link>http://jiurl.blogsome.com/2007/06/03/virus-may-cry-092/</link>
	</item>
	<item>
		<title>Virus May Cry 0.91</title>
		<description><![CDATA[	download: http://thejiurl.googlepages.com/viruscry-0.91-en-setup.exe
	More stable.
]]></description>
		<link>http://jiurl.blogsome.com/2007/05/12/virus-may-cry-091/</link>
	</item>
	<item>
		<title>Virus May Cry 0.90</title>
		<description><![CDATA[	download: http://thejiurl.googlepages.com/viruscry-0.90-en-setup.exe
	Are you bothered by Virus and Antivirus? Virus may harm your system, steal your data. But Antivirus can slow down all things very excellently. Are you tired about this, then try &#8220;Virus May Cry&#8221;.
&#8220;Virus May Cry&#8221; can let you never be affected by a virus.
	1. &#8220;Virus May Cry&#8221; do what
	If you has installed &#8220;Virus [...]]]></description>
		<link>http://jiurl.blogsome.com/2007/03/10/virus-may-cry-090-3/</link>
	</item>
	<item>
		<title>Virus May Cry 0.90</title>
		<description><![CDATA[	下载：http://thejiurl.googlepages.com/viruscry-0.90-en-setup.exe
	你受到病毒和杀毒软件的困扰吗？病毒可能破坏你的系统，盗取你的数据。杀毒软件则可以出色的让一切都慢下来。你讨厌这样吗，那来试试 &#8220;Virus May Cry&#8221; 吧。
&#8220;Virus May Cry&#8221;, 可以让你不再中病毒。
	1. &#8220;Virus May Cry&#8221; 会干什么
	当你装好了 &#8220;Virus May Cry&#8221; 之后，任何程序文件将要被执行的时候，你都会得到通知，由你来决定这个程序文件是否能被执行。因此，一个病毒文件想要被执行的时候，你就会得到通知，你可以不允许它执行，因此你就不会中病毒了。
	注意：上面提到的任何程序文件，包括了所有的可执行的程序文件。
	当你装好了 &#8220;Virus May Cry&#8221; 之后，当任何程序文件将要被执行的时候，&#8221;Virus May Cry&#8221; 都会弹出一个对话框，告诉你哪个文件想要被执行，并给你四种选择，“加载并加入白名单”，“不加载并加入黑名单”，“加载”，“不加载”。
	选择“加载并加入白名单”的话，那么这个程序文件将获得执行，并且从此以后这个程序文件都可以被执行，并且不会弹出询问对话框。
	选择“不加载并加入黑名单”的话，那么这个程序文件就不能执行，并且从此以后这个程序文件都不能执行，并且不会弹出询问对话框。
	选择“加载”的话，那么这个程序文件本次将获得执行，以后再被执行的话，还会弹出询问对话框。
	选择“不加载”的话，那么这个程序文件本次就不能执行，以后再被执行的话，还会弹出询问对话框。
	&#8220;Virus May Cry&#8221; 安装好之后，就已经将系统目录下的 windows 系统文件加入到了白名单。而你运行其他程序的时候，&#8221;Virus May Cry&#8221; 都会弹出询问对话框，如果你觉得这个程序文件是可以信赖的，那么你就把它加入到白名单中，以后运行这个程序，就不会再弹出询问对话框了。
	如果你不知道一个程序文件，是可信赖的程序，还是一个病毒的话，那么建议你使用 google 来搜索这个文件名。
	2. &#8220;Virus May Cry&#8221; 的控制器
	&#8220;Virus May Cry&#8221; 的安装目录下，有一个 controller.exe 程序，使用它，你可以获得当前的 &#8220;Virus May Cry&#8221; 的状态，和控制 &#8220;Virus May Cry&#8221;。
	你可以停止或者运行 &#8220;Virus May Cry&#8221;。
你可以停止或者运行 &#8220;Virus May Cry&#8221; [...]]]></description>
		<link>http://jiurl.blogsome.com/2007/03/10/virus-may-cry-090/</link>
	</item>
	<item>
		<title>对 MBCS 文本的 QuickSearch 搜索的误搜 节选</title>
		<description><![CDATA[	作者: JIURL
邮箱: thejiurl@gmail.com
主页: http://jiurl.blogsome.com/
http://jiurl.yeah.net/
	[前言]
	这篇文章是以前写给自己备忘的一个研究文档的节选。
	[MBCS]
	MBCS: Multi-Byte Character Set
DBCS: Double-Byte Character Set
	MBCS 文本中，既可能有1个字节的 Ascii 字符，又可能有2个字节的 DBCS 字符。
硬盘上的大多数文本文件就是以 MBCS 方式来保存的。
	[区分大小写的搜索]
	QuickSearch 寻找匹配串，是以字节为单位来进行匹配的，
对字节的256个可能值，建立 MoveLenTable[] 表，来计算移动距离，
详细见 QuickSearch.txt 中的介绍。
	对于 MBCS 文本来说，这样的匹配结果，可能有误搜，但是肯定没有漏搜。
我们应该去除掉误搜的情况。
	会产生 DBCS TrailByte 引起的误搜。
	DBCS TrailByte 引起的误搜，一种情况，比如：
	szPattern 为 &#8220;gabc&#8221;
szText 为 &#8220;鎔abc xyz&#8221;
	&#8216;鎔&#8217;是一个 DBCS 字符，编码为 0xe6 0x67。
&#8216;g&#8217; 是一个 ASCII 字符，编码为 0x67。
	用 szPattern 对 szText 进行区分大小写的搜索，会得到一个匹配，
匹配串从 DBCS 字符 &#8216;鎔&#8217; 的 TrailByte 开始，
而实际上，并不应该有匹配，所以就出现了误搜。
	DBCS TrailByte 引起的误搜，另一种情况，比如：
	略。
	[不区分大小写的搜索]
	对于不区分大小写的搜索，
	对于文本中的每个字节，不管它是一个 ascii [...]]]></description>
		<link>http://jiurl.blogsome.com/2006/10/24/p29/</link>
	</item>
	<item>
		<title>gdi显卡驱动节选</title>
		<description><![CDATA[	作者: JIURL
邮箱: thejiurl@gmail.com
主页: http://jiurl.blogsome.com/
http://jiurl.yeah.net/
	[前言]
	这篇文章是以前写给自己备忘的一个研究文档的节选。
	[gdi 显卡驱动]
	显卡驱动将讨论，显卡驱动中支持 gdi 实现的部分。
	如果是一个纯 frame buffer 的话，显卡不作任何加速，所有 gdi 的实现都是 win32k 中的代码软件实现，gdi 把 frame buffer 当作一个位图，直接访问，进行相应的绘制。当然，这种情况除非特意设计，否则的话，是不会出现的。
	不是纯 frame buffer 的情况，gdi 不直接访问 frame buffer，
显卡硬件实现了某些硬件加速，可能实现了某些 gdi 需要的硬件加速。gdi 中，有硬件加速的，就交给显卡驱动来完成，没有硬件加速的，gdi 软件实现，然后把结果交给显卡驱动来完成显示。
	显卡驱动至少需要实现，DrvCopyBits, DrvTextOut 和 DrvStrokePath，其他 gdi 函数可以软件实现，最终调用这几个驱动实现的函数，来把结果写入 frame buffer。
	显卡驱动可以实现的 gdi 的功能：
DrvBitBlt
DrvPlgBlt
DrvStretchBlt
DrvStretchBltROP
DrvTextOut
DrvStrokePath
DrvFillPath
DrvStrokeAndFillPath
DrvLineTo
DrvCopyBits
DrvAlphaBlend
DrvGradientFill
DrvTransparentBlt
	更多细节可以参考关于 SURFACE, HDC 等的讨论。
	[显卡驱动]
	显卡驱动（支持gdi部分）相关内容主要在下面的4个文件中：
	win32k.sys
VideoPort.sys
	disp 驱动 (.dll) (如 vga.dll)
mini port 驱动 (.sys) (如 vga.sys)
	win32k.sys 和 VideoPort.sys 是系统文件。
disp 驱动 (.dll) 和 [...]]]></description>
		<link>http://jiurl.blogsome.com/2006/10/24/p28/</link>
	</item>
	<item>
		<title>汉朝定都于长安的原因</title>
		<description><![CDATA[	公元前202年（两千二百多年前），汉朝开国皇帝刘邦定都于长安。
	大概是这么回事，当时有两派意见。一派主要是俩人：娄敬，张良，主张定都于长安。另一派是好多大臣，主张定都于洛阳。
	这事发生在洛阳。
最开头是，娄敬求见刘邦，跟刘邦说了一大套，怂恿刘邦定都长安。
我估计，一来，刘邦跟娄敬不熟，有点半信半疑。二来，刘邦是大风大浪过来的人，可能还是比较爱听大伙都说两句。
于是，就跟群臣说这事，大伙的意思是定都洛阳。
据司马迁推测，因为这帮人大多不是长安附近的，定都洛阳离这伙人家近点，所以他们都起哄让定都洛阳。我估计，这可能也是个原因。他们嘴上说的是：周朝定都洛阳，痛快了好几百年，秦朝定都长安，只过了二世的瘾。我估计，很多人可能也是真诚的。
刘邦可能觉得两边说的都有点道理，就犹豫不决。
张良就跟刘邦说了一通，基本上也是老词，跟娄敬那套差不多，让他定都长安。刘邦立刻就决定定都长安了。我估计，一来，刘邦是大风大浪过来的人，一听就知道娄敬，张良说的也在理。二来，刘邦跟张良那是太熟了，知道这就是一个人精啊，听他的，保准吃不了亏。所以，这事就这么定了。
	娄敬，张良，他们说长安有各种的好处。所以，刘邦最终决定，定都于长安。
他们是怎么说的？长安到底有什么好处呢？。。。你猜。。。
	另外：
史籍资料，未必可信，所以应该首先考证它的可信度，但是，咱们没那个功夫，就算了。凭感觉，司马迁的这部《史记》，可信度应该还是比较高的。
	所有内容来源于：
《史记·留候世家》
《史记·刘敬叔孙通列传》
	http://jiurl.blogsome.com/

]]></description>
		<link>http://jiurl.blogsome.com/2006/10/22/p27/</link>
	</item>
	<item>
		<title>DPC 延迟过程调用</title>
		<description><![CDATA[	作者: JIURL
邮箱: thejiurl@gmail.com
主页: http://jiurl.blogsome.com/
      http://jiurl.yeah.net/
	$ 前言
	这篇文章应该写于 2005年4月13日，是写给自己备忘的研究文档，本来是根本没有打算放出来的。
	$ DPC 
	deferred procedure call (DPC) 延迟过程调用
	dpc 主要是为了减少处于高 IRQL 的硬件中断处理的时间。
由于低 IRQL 的硬件中断不能中断 高 IRQL 的硬件中断处理。
而可能有些硬件的中断处理代码量比较大，花的时间比较多，会造成其他硬件中断的响应会等的时间比较长。
很有可能就是因为 时钟中断处理，非常非常频繁，代码量也比较多，可能会比较大的影响到其他硬件中断的响应，至于硬件中断响应比较慢可能会对不同的硬件造成什么结果，有待研究。
	$ DPC 队列
	整个系统只有一个 DPC 队列，至少对单cpu的系统是如此，对于多cpu系统有可能是一个cpu一个，有待验证。
	这个队列是个 LIST_ENTRY 链表。
	链表头在 pcr 的 +800 struct _LIST_ENTRY DpcListHead。
链的深度在 pcr 的 +808 uint32 DpcQueueDepth。
	所有的 dpc 都链在这个链上。
	链上的每项是个 KDPC 结构。
	struct   _KDPC (sizeof=32)
+00 int16   [...]]]></description>
		<link>http://jiurl.blogsome.com/2006/09/25/dpc/</link>
	</item>
	<item>
		<title>求职</title>
		<description><![CDATA[	找工作，大家多帮忙。
thejiurl@gmail.com
]]></description>
		<link>http://jiurl.blogsome.com/2006/06/29/p25/</link>
	</item>
</channel>
</rss>
