![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-09-14 23:19 |
共 47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,268 会员排行 |
| DOS开发编程 & 发展交流 (开发室) » [转帖] DJGPP--32位的C语言编程环境 |
| 可打印版本 20,126 / 52 |
| 第46楼 lemonhall | 发表于 2003-08-02 00:00 |
| 高级用户 发帖 183 积分 639 | |
|
忘了一点,你在哪里看到v5的,好象是r5吧???
|
|
| 第47楼 lemonhall | 发表于 2003-08-02 00:00 |
| 高级用户 发帖 183 积分 639 | |
|
而且,CWSDPMI最新版本r5已经放弃DPMI 0.9的支持了(对其进行不完全兼容,据说
是对一个SWAP命令的不兼容)而支持最新的DPMI 1.0。它的版本号只是表示发布版本 其中对其主版本号的输出如下 CWSDPMI V0.90+ (r5) Copyright (C) 2000 CW Sandmann ABSOLUTELY NO WARRANTY 这很明确地说明了它的主版本号小于1(它的命名规则和日本人的惯用的规则更相象) 另外,强调声明一下。CWSDPMI的发展历史,它起初不是为DJGPP开发的,但是在R4版本后 的确是为了支持DJGPP而做了优化。当然,这个独立的开发小组还和著名的游戏机模拟器项目 MAME有共同开发,交换资料的活动。 过几天,我会把中文化的关于CWSDPMI的文档,贴出来的。 再问一次,DD需要合作么? |
|
| 第48楼 ATLaS | 发表于 2003-08-02 00:00 |
| 初级用户 发帖 29 积分 169 | |
|
嗯,是release 5,不是v5。
其实dos下的程序我更关心的就是dos extender。dos4gw也不是没有发展了,但免费的就到此为止。djgpp缺省用cwsdpmi,但pmode/dj好像也有些自己的优势:更小,速度更快。只是还找不到完整的对比。 djgpp虽说也是32-bit的开发环境,但我看过它runtime library的源码,i/o部分还是用底层的bios中断做的,也就是说,程序仍然有mode switching。这对有实时性要求的程序来说是无法接受的。我很感兴趣的是:绕过bios直接写纯保护模式下的i/o到底有多难?希望能有人有兴趣探讨一下。 |
|
| 第49楼 lemonhall | 发表于 2003-08-02 00:00 |
| 高级用户 发帖 183 积分 639 | |
|
dos4gw绝对在版权上,不能称为免费. 它从来没有免费过.
其实讨论DOS4GW和CWSDPMI,这时对我们来说没有多少 意义.因为现成的,最好的实现还是MS提供的DPMI服务. 我相信,多数人连CWSDPMI的安装包都不下载. 绕过bios直接写纯保护模式下的i/o??????? 你在说什么? 绕过bios还有什么??对,还有直接的机器指令,但80386 处理器本身就是需要一个mode switching才能从real mode 转到v86模式. 这是从CPU指令上直接决定的, windows 3.x就是实现的典范.真不明白你想用80386 来作怎样的东西.想写一个实时操作系统??? dos extender??这些技术和实时性本身就是相矛盾的. CWSDPMI不支持dos extender,说明文件里首先声明了 这一点. DOS下的实时系统的实现需要的是其他的技术,那需要的 是更深厚的底子.如工业控制软件. 如果是做这类的东西,参照老的计算机教材反而来的更好. |
|
| 第50楼 lemonhall | 发表于 2003-08-02 00:00 |
| 高级用户 发帖 183 积分 639 | |
|
最后,保护模式,我们天天把他挂在嘴边.
有谁能真正完整地解释一下,什么是保护 模式? 保护模式发展的历史么? |
|
| 第51楼 ATLaS | 发表于 2003-08-02 00:00 |
| 初级用户 发帖 29 积分 169 | |
|
保护模式,呵呵,简单的说:不是保护你的程序不被破坏,而是保护系统不被你的程序破坏。真正的32-bit保护模式是在80386以后才实现的。
你没有明白我的意思。bios和dos代码都是real mode下的代码,而dos4gw,cwsdpmi或者其他各种dpmi server都是完全运行在protected mode下的,如果runtime library或者程序中调用了bios或dos中断,dpmi server会把程序从protected mode切换为real mode(好像也有是v86 mode?),但如果程序中没有调用任何real mode下的东西,那就是纯保护模式代码。 在新的操作系统中(比如window nt kernel和linux),系统加载后都会接管所有的bios中断,让系统真正运行在纯保护模式下。当然,我需要的没有那么复杂,只是部分,比如i/o部分有没有可能绕过bios和dos?唯一的困难在于这种实现可能严重依赖于硬件,而我们没有那么大的能力。但简单的像屏幕输出之类的功能,完全可以用直接写buffer的方式来实现,从而避免mode switching,当然可能有些功能难以完整。至于输入部分,我还没有什么概念。 |
|
| 第52楼 lemonhall | 发表于 2003-09-20 00:00 |
| 高级用户 发帖 183 积分 639 | |
|
本贴被整理到精华区
|
|
| 第53楼 cir2633 | 发表于 2010-01-08 16:05 |
| 初级用户 发帖 23 积分 52 | |
|
DJGPP是个什么概念? 是个开发环境还是IDE ?,,,,,,,
|
|
| 上一页 1 2 3 4 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |