楼 主
怎样在DOS下重新load command.com程序?
发表于 2007-06-13 19:00 · 中国 江苏 苏州 联通
新手上路
★
积分 8
发帖 2
注册 2007-05-18 12:26
19年会员
UID 88919
性别 男
状态 离线
我希望我的程序退出时重新load command.com,不知有什么好方法?
第 2 楼
发表于 2007-06-14 21:55 · 中国 广东 深圳 电信
中级用户
★★
部落守望者
积分 351
发帖 140
注册 2006-06-19 17:11
20年会员
UID 57261
性别 男
状态 离线
程序正常退出后会将控制权自动返回给COMMAND.com。除非你的程序有异常不能退出。回到DOS提示符状态C:\ 就说明已经回到COMMAND.com下了
一切从底层开始
第 3 楼
发表于 2007-07-02 22:33 · 中国 山东 济宁 联通
中级用户
★★★
痴迷DOS者
积分 456
发帖 570
注册 2004-10-09 00:00
21年会员
UID 32281
性别 男
状态 离线
如果不小心改变了command。com,可以通过覆盖法使其复原,就是新分配386k内存再释放即可
DOS不是万能的,没有DOS是万万不能的
自古系统谁无死?留取胆清照汗青!uploadImages/20035317345478982.png
第 4 楼
发表于 2007-07-25 19:41 · 中国 福建 厦门 电信
高级用户
★★★
积分 741
发帖 366
注册 2007-07-25 19:11
19年会员
UID 94024
性别 男
状态 离线
其实COMMAND.COM分为暂驻模块(也就是命令外壳程序)和常驻模块,当你运行.com的程序时,COMMAND会释放全部暂驻模块,把剩下的常规内存交给.com程序,.com程序退出后把控制权交给常驻模块,常驻模块会自动再重新掉入暂驻模块,如果.com程序修改或破坏常驻模块则会造成暂驻模块无法重新掉入,也就变成了死机。
简单地说,只要你运行一个com文件再退出,能释放的也就全释放了(TSR程序常驻部分挂在内存分配链上修改了可用内存和挂接了中断,不能强行释放,否则会导致内存链断裂、中断程序飞走而死机)。
[ Last edited by netwinxp on 2007-7-25 at 08:14 PM ]
论坛跳转: