目录 1
译者序 1
前言 1
产业进步 Windows 95的影响 1
第一章 欢迎使用Windows 95 1
绕过COMMAND.COM 4
…但是,也绕过DOS吗? 8
为什么不拒绝Microsoft的声明呢? 16
那些无所不在的Microsoft框图 16
宣称集成化 18
Windows 95与DOS 20
仅仅一个小小回调 30
谁害怕MS-DOS? 32
WfW 3.11:被忽略了的操作系统 33
第二章 观察Chicago自举 37
从WINBOOT.SYS到WIN.COM 37
是全部重写的吗? 39
从注册到XMS 41
放弃实模式驱动程序吗? 43
从IFSHLP.SYS到WIN.COM 45
从WIN.COM到KRNL386.EXE 46
深入虚拟机器管理器 50
VxD:90年代的TSR 59
从KRNL386.EXE到CAB32.EXE 64
探索Explorer 70
第三章 Windows与DOS的联系 73
Windows INT 2Fh广播 74
实例数据 77
嵌入的虚拟设备驱动程序 78
防止对FAKEWIN的误解 80
FAKEWIN的奥秘 81
第四章 DOS和Windows的结合 81
DOS实例数据和SDA ………………………………………………………………(?)什么是WINA20.386? 96
DOS的IN_WIN3E标志 96
V86模式 100
全局EMM输出 100
DOSMGR广播API 101
TSR标识函数 104
第五章 Windows的两面性 111
Windows内核 111
DOS扩展器与DOS的未来 112
DOSX:一个通用的DOS扩展器和DPMI服务器 116
运行DOSX 121
使用DPMI外壳库 121
关于MEMLOOP 125
第六章 保护模式DOS:WIN386和WSDPMI 129
KRNL386是以何种模式装载? ……………………………………………………(?)DPMIINFO 134
WIN386的确是一个内存管理器 137
MSDPMI……………………………………………………………………………(139)第七章 32BFA和LFN源自何处………………………………………………………(1?)Windows 95的进步:VMM32………………………………………………………(?)Windows 95支持长文件名………………… 166
第八章 逐渐消失的DOS 169
绕过DOS……………………………………………………………………………(?)32BFA与磁盘缓存的性能对比 ……………………………………………………(?)获取与设置当前驱动器………………………………………………………………(?)Windows 95:仍然绕过DOS,但是支持T 189
INTVECT:VxD INT 21h钩挂的另一个例子……………………………………(?)全局和局部INT 21h钩挂 196
IFSHLP.SYS和V86回调函数的作用……………………………………………(1?)32BFA与网络、CD-ROM及软盘 222
替代实模式程序:这并非新方法 224
另一个旧例子:TEST1600 228
中断101:IDT与IVT 230
Windows建立在DOS之上? 237
第九章 谁是控制者:Windows还是DOS? 237
在保护模式下运行DOS 239
虚拟机器监视器 240
V86模式和PE位 242
第十章 Windows如何运行DOS 247
V86TEST 247
从V86模式到实模式的转换 256
IOPL和中断标志 258
在虚拟机器上运行DOS 267
模拟与映射中断 268
控制DOS的选项 270
第十一章 谁需要DOS 273
Windows在运行吗? 274
V86TEST实际上说明了什么? 274
VxD调用 279
顶层Windows INT 21h调用: 283
返回Windows 286
32位文件存取的影响 288
什么是BIOS调用 292
第十二章 通过WV86TEST进一步探索 299
切断与DOS的所有联系? 300
WinWord与DOS 305
Windows 95的Explorer和DOS 308
Windows 95中的PSP和其它DOS数据 310
Win32 FindNextFile等价于INT 21h的714Fh功能调用 318
WV86TEST程序分析 330
Windows 95和保护模式DOS 336
第十三章 KERNEL32调用KRNL386 337
从Explorer启动一个Win16应用程序 340
CAB32:KERNEL32使用Win16内核 343
Win32和PSP 352
是谁在调用INT 21h? 357
Windows 95的当前目录在哪儿? 359
从Explorer产生PSP的六个简单步骤: 372
WSPY21代码 380
DOS扩展器:一个“骗子” 391
KERNEL的INT 21h处理程序和KernelDosProc 395
第十四章 时钟:32位与16位代码混合 403
16/16:WfW 3.11下的Win16时钟 403
32/16:Win32下的Windows 95时钟 405
形实转换(Thunking):应用CALL FWORD PTR混和16位和32位代码 409
32/32:Windows 95时钟 415
Windows 95真的向下调用到DOS了吗?它到达那里时做些什么? 419
Call_Priority_VM_Event的魅力 427
Win32文件句柄和形实转换(Thunking) 430
从Win32读PSP 431
使用Win32文件句柄 436
真正绕过DOS:可执行文件加载和内存映射文件 443
无处不在的Win16:Win16Lock传奇一幅 447
结束语 Microsoft——无处不在 453
眼光并不在应用程序商业上面 453
不是幻想者,而是机会主义者 455
附录A Windows 95开发指南资源工具箱 457
附录B Progammer’s Shop的CD-ROM使用入门 465