我对于开发 Windows 软件,没有兴趣。即便有兴趣,也没有能力,不具备必要的知识。Windows 的驱动程序,我开发不了。我不仅不能开发,甚至连看懂代码、修改代码的工作都做不了。但是,yaya 、 wintoflash、chenall 你们可能具备开发的知识,至少能够看懂和修改别人的代码。现成的三个驱动程序,都有源代码,都可以参考。当然了,要是不愿意,那就不去做这个工作了。尤其是,假如微软已经做了这个工作,那就更不可能再去重复这个劳动了。微软做了吗?我们目前还不能给出肯定或否定的答案。
只有两种情况:做了,和没做。
我们假定微软做了,前面我们已经探讨过了,这种可能性蛮大的。
假定要实现一个实模式虚拟光盘的保护模式驱动,技术上可能怎样去实现?
首先,在进入保护模式之前,先搜索实模式的光盘信息,记录这些信息。最重要的信息是:光盘的第一个扇区对应于硬盘的哪个扇区号。这个信息能够找到。可以这样找:尝试读虚拟光盘的第一扇区,然后用 CPU 指令单步跟踪执行过程,在访问硬盘的地方,结束跟踪,此时已经找到了虚拟光盘在硬盘上的起始位置。至于说光盘的长度,这个可以假定是无限大,不必确定它。如此一来,就可以编写保护模式的虚拟光盘驱动了(前提是懂得编写 Windows 驱动程序的知识)。当然,这里只支持连续的扇区序列。如果不连续,那情况比较复杂,这里不深入探讨。