386 保护模式编程是一项复杂繁重的工作, 设计 VVDOS 的目的就是力求自己在这方面有所进步。
我的最初灵感是在看完 Inside Windows NT (一本好书,只能看第一版)后,有了一个强烈的编写保护系统的愿望。在接下来的过程中,我进入了保护方式,编写了有关的异常处理程序,也写出了一个小小的保护模式程序载入器。但结果是什么呢?没有程序可以载入,我不得不面对编写编译器(第一次遇到Watcom C 是97年)。一个月后,编译器只实现了错误处理和词法分析。最后也就做罢
一个收获是即使在实模式下(当然包括保护模式),通过修改 IDT 的基地址(不要修改长度),也可以迁移中断向量表到指定内存地址,这就叫做中断向量表搬迁技术吧。
一个程序员说过:“欢迎来到保护模式,这里的一切都是挂羊头卖狗肉。”。大家可以从虚拟内存、保护模式中断处理等得到体会。
环境是Dos3.31-6.22、没有Emm386,TASM 2.5-3.0、BC2)