标题: 目前DOS最大的问题是32位程序不能驻留内存!
[打印本页]
作者: brglng
时间: 2008-5-18 15:49
标题: 目前DOS最大的问题是32位程序不能驻留内存!
一旦把这个问题解决,DOS将会有突飞猛进的发展,我预言!
Last edited by brglng on 2008-5-23 at 08:45 PM ]
作者: netwinxp
时间: 2008-5-19 05:09
为什么要用TSR?正是修改中断向量的TSR的泛滥导致DOS产成了不可调和的冲突。事实上一个比较好的方案就是像WINDOWS一样除了驱动程序外,其它程序不得修改中断向量和关键系统数据区,当有硬件中断发生时,系统向所有运行的程序发送消息,每个程序都有一个主循环,仅对自己感兴趣的消息进行处理。当然,酱紫会导致不兼容以前的DOS程序,不过这个放弃我觉得很值得。
作者: zhgwbzhd
时间: 2008-5-19 08:30
恩,有一定的道理。如果大家都来修改,会是一个很麻烦的事情。
不过我认为dos是不可能彻底消失的,但是也不会占据主流的。
作者: brglng
时间: 2008-5-23 20:43
可能我没有说清楚。其实我的意思是说,没有32位的“驻留内存”程序。它和16位的TSR不一定要使用相同的技术,但是要驻留内存,否则DOS就没有真正实用的多任务。
我的设想是用一个服务程序来同时兼容16位和32位的应用程序。这样32位程序可能需要在它的框架下才能运行。DPMI可能就是这样的,只是它可能没有包含32位程序如何驻留内存方面的内容。我们可以尝试去扩展DPMI标准。当然,如果我说错了请大家见谅,我对DPMI不算了解。
假如能够使32位程序驻留内存,那就可以开发32位的设备驱动程序,不再受到内存方面的限制。
Last edited by brglng on 2008-5-23 at 08:48 PM ]
作者: netwinxp
时间: 2008-5-24 01:46
制作驱动程序主要是为了让别人能在操作系统更好地使用该硬件,所以32位驱动你最好遵守linux、windows的规则,DOS驱动也有规则。如果你不遵守规则,那还称什么驱动程序。另外DPMI只不过是把扩展内存管理库文件化而已,你同样可以调用INT 15H或直接修改CPU里面的CR?来完成。
作者: brglng
时间: 2008-5-24 14:31
但是32位程序驻留内存还有其他实用意义(比如32位的中文平台等等)。DOS的限制就在于它的32位程序不能像Linux或Windows那样作一个deamon或后台运行。可能是需要一个多任务管理器,但是现在有那么多任务管理器也没见人做过这件事。
作者: netwinxp
时间: 2008-5-24 15:47
Novell有多任务功能,而且功能调用也很公开,网络功能也不错。