中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » 打造32位dos,中国聪明的DOSer们,别走开,全进来!!!!!!!!
作者:
标题: 打造32位dos,中国聪明的DOSer们,别走开,全进来!!!!!!!! 上一主题 | 下一主题
poor
初级用户





积分 160
发帖 36
注册 2006-12-23
状态 离线
『楼 主』:  打造32位dos,中国聪明的DOSer们,别走开,全进来!!!!!!!!

我想说说我的想法,比较幼稚!

在我们的手里,现在有两件神兵利器,一件是倚天剑,一件是屠龙刀:它们就是MS-DOS7.10和Djgpp编译器。

现在网路上有dos源码可供下载,不管是几版,反正据说是Dos的16位source。

拿着Djgpp,我就琢磨,它>>>>Djgpp>>>>>>保护模式下的32位dos程序C compiler,Well,那么我们:

在DOS7.10操作系统下,用djgpp把down来的Dos源码重新编译一遍,出来的程序不就变成保护模式下32位了吗??

再用这个新造出来的"New DOS"去format硬盘,再把Dos——>>>>>sys进去,这种状况下,是不是就造出32bit Dos来了?

天啊,别告诉我,你没想到过,至少,我这样的笨蛋都想到了!!!

(不过,我估计网上的那些源码根本编译不撩) 即便这样,网上也有开源的什么Pc-dos之类嘛?采用这些open source的Dos源码来编译,不是具有同样的效果吗?

你是什么看法呢?回帖是一种美德 ^_^

*****************************
参考资料:

一、
http://www.cn-dos.net/forum/viewthread.php?tid=22574&fpage=1
请问DJGPP 编译的程序是16位还是32位


二、
http://www.xiaofan21.net/soft/2669.htm
Djgpp (32位编译器)
djgpp 是一个编译器以及一组相关的工具,它们能使你在 MS-DOS/MS-Windows 下编写 32 位保护模式的程序。

所有使用 djgpp 编译的程序,以及随 djgpp 发布的开发工具看上去都像一个标准 DOS 程序。他们依靠 MS-DOS 和 BIOS 进行文件 I/O 以及其他基本功能,如:键盘输入、屏幕光标位置等等。但是一个 djgpp 程序的内核是真正的 32 位保护模式代码;djgpp 程序使用“DPMI”(DOS 保护模式接口,DOS Protected Mode Interface)以便在保护模式下对 DOS/BIOS 功能进行调用。因此,任何一个可以运行 DOS 程序并且提供 DPMI 支持的环境都可以运行 djgpp 程序。已知的与 djgpp 兼容的环境包括:MS-DOS、Caldera's DR-DOS(http://www.lineo.com/products/drdos.html)、NWDOS、FreeDOS(http://www.freedos.org/)、Windows 3.X/9X/NT、OS/2 以及 Linux DOSEmu。当 djgpp 程序运行在 Windows 9x 和 Caldera's DR-DOS 下时,它们支持长文件名。

djgpp 的核心是移植到 MS-DOS 的 GNU C/C++ 编译器、GCC 以及辅助工具,例如汇编程序、连接程序、Make 和一个超文本文档浏览器。djgpp C 库是为 djgpp 特别重写的,主要由 DJ Delorie 一人完成,当然还离不开一小部分志愿者的帮助。核心工具和库仍然在开发和维护当中。

djgpp 提供了一系列与 ANSI 和 Posix 完全兼容的工具。GCC 兼容 ANSI/ISO 标准 C;djgpp C 库则同时兼容 ANSI 和 Posix(但一小部分 Posix 特性没有实现,例如“fork”系统调用);并且 C++ 库也与最新的标准兼容;djgpp 使用的 GNU 开发工具也全部兼容 Posix。因此,djgpp 工具在微软操作系统上提供了完整一致的 Posix 层,甚至对于用户和开发人员来说,那些不为人知的 DOS 限制和 DOS/Windows 与 Unix 之间的不兼容之处也几乎被完全隐藏了起来。

djgpp 可以被用来:

C/C++ 编程教学
在 MS-DOS 和 MS-Windows 上学习使用 Linux/Unix 开发工具
编写游戏和图形程序(Quake 的 DOS 版本就是使用 djgpp 编译的)
建立一个 Unix 和 MS-DOS 通用的开发环境
编写可移植的 DOS/Unix 程序
将 Unix 程序移植到微软操作系统下
从 2.0 版开始,djgpp 程序不再需要一个独立的 DOS 扩展器,只需要一个 DPMI 服务器就可以运行;djgpp 包括一个免费的 32 位 DPMI 服务器,可以在一个缺少 DPMI 服务器的纯 DOS 环境中支持 32 位、4G 线性地址空间以及最大 512M 的虚拟内存。
*****************************

[ Last edited by poor on 2006-12-24 at 10:45 PM ]

2006-12-25 11:41
查看资料  发短消息 网志   编辑帖子  回复  引用回复
poor
初级用户





积分 160
发帖 36
注册 2006-12-23
状态 离线
『第 2 楼』:  

這是繁體字版:


=========================
『樓 主』:  打造32位dos,中國聰明的DOSer們,別走開,全進來!!!!!!!!

我想說說我的想法,比較幼稚!

在我們的手裏,現在有兩件神兵利器,一件是倚天劍,一件是屠龍刀:它們就是MS-DOS7.10和Djgpp編譯器。

現在網路上有dos源碼可供下載,不管是幾版,反正據說是Dos的16位source。

拿著Djgpp,我就琢磨,它>>>>Djgpp>>>>>>保護模式下的32位dos程序C compiler,Well,那麽我們:

在DOS7.10作業系統下,用djgpp把down來的Dos源碼重新編譯一遍,出來的程式不就變成保護模式下32位了嗎??

再用這個新造出來的"New DOS"去format硬碟,再把Dos——>>>>>sys進去,這種狀況下,是不是就造出32bit Dos來了?

天啊,別告訴我,你沒想到過,至少,我這樣的笨蛋都想到了!!!

(不過,我估計網上的那些源碼根本編譯不撩) 即便這樣,網上也有開源的什麽Pc-dos之類嘛?采用這些open source的Dos源碼來編譯,不是具有同樣的效果嗎?

你是什麽看法呢?回帖是一種美德 ^_^

*****************************
參考資料:

一、
http://www.cn-dos.net/forum/viewthread.php?tid=22574&fpage=1
請問DJGPP 編譯的程式是16位還是32位


二、
http://www.xiaofan21.net/soft/2669.htm
Djgpp (32位編譯器)
djgpp 是一個編譯器以及一組相關的工具,它們能使你在 MS-DOS/MS-Windows 下編寫 32 位保護模式的程式。

所有使用 djgpp 編譯的程序,以及隨 djgpp 發布的開發工具看上去都像一個標准 DOS 程序。他們依靠 MS-DOS 和 BIOS 進行文件 I/O 以及其他基本功能,如:鍵盤輸入、屏幕光標位置等等。但是一個 djgpp 程序的內核是真正的 32 位保護模式代碼;djgpp 程序使用“DPMI”(DOS 保護模式接口,DOS Protected Mode Interface)以便在保護模式下對 DOS/BIOS 功能進行調用。因此,任何一個可以運行 DOS 程序並且提供 DPMI 支持的環境都可以運行 djgpp 程序。已知的與 djgpp 兼容的環境包括:MS-DOS、Caldera's DR-DOS(http://www.lineo.com/products/drdos.html)、NWDOS、FreeDOS(http://www.freedos.org/)、Windows 3.X/9X/NT、OS/2 以及 Linux DOSEmu。當 djgpp 程序運行在 Windows 9x 和 Caldera's DR-DOS 下時,它們支持長文件名。

djgpp 的核心是移植到 MS-DOS 的 GNU C/C++ 編譯器、GCC 以及輔助工具,例如彙編程序、連接程序、Make 和一個超文本文檔浏覽器。djgpp C 庫是爲 djgpp 特別重寫的,主要由 DJ Delorie 一人完成,當然還離不開一小部分志願者的幫助。核心工具和庫仍然在開發和維護當中。

djgpp 提供了一系列與 ANSI 和 Posix 完全兼容的工具。GCC 兼容 ANSI/ISO 標准 C;djgpp C 庫則同時兼容 ANSI 和 Posix(但一小部分 Posix 特性沒有實現,例如“fork”系統調用);並且 C++ 庫也與最新的標准兼容;djgpp 使用的 GNU 開發工具也全部兼容 Posix。因此,djgpp 工具在微軟操作系統上提供了完整一致的 Posix 層,甚至對于用戶和開發人員來說,那些不爲人知的 DOS 限制和 DOS/Windows 與 Unix 之間的不兼容之處也幾乎被完全隱藏了起來。

djgpp 可以被用來:

C/C++ 編程教學
在 MS-DOS 和 MS-Windows 上學習使用 Linux/Unix 開發工具
編寫遊戲和圖形程序(Quake 的 DOS 版本就是使用 djgpp 編譯的)
建立一個 Unix 和 MS-DOS 通用的開發環境
編寫可移植的 DOS/Unix 程序
將 Unix 程序移植到微軟操作系統下
從 2.0 版開始,djgpp 程序不再需要一個獨立的 DOS 擴展器,只需要一個 DPMI 伺服器就可以運行;djgpp 包括一個免費的 32 位 DPMI 伺服器,可以在一個缺少 DPMI 伺服器的純 DOS 環境中支持 32 位、4G 線性地址空間以及最大 512M 的虛擬記憶體。
*****************************

[ Last edited by poor on 2006-12-24 at 10:45 PM ]

[ Last edited by poor on 2006-12-24 at 10:51 PM ]

2006-12-25 11:49
查看资料  发短消息 网志   编辑帖子  回复  引用回复
electronixtar
铂金会员





积分 7493
发帖 2672
注册 2005-9-2
状态 离线
『第 3 楼』:  

不是我打击你哈,32位的DOS不就是cmd/WinPE/FreeDOS么?

[ Last edited by electronixtar on 2006-12-25 at 12:17 PM ]

2006-12-25 12:15
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Michael
钻石会员





积分 10046
发帖 3039
注册 2002-11-11
状态 离线
『第 4 楼』:  

DOS的产生完全是因为那个时代的机器性能不强,可它又带给我们那么多的快乐。



简单就是美
2006-12-26 07:42
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: