中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS学习入门 & 精彩文章 (教学室) » Config.sys & Autoexec.bat 文件的详细介绍
« [1] [2] »
作者:
标题: Config.sys & Autoexec.bat 文件的详细介绍 上一主题 | 下一主题
yuanbao
初级用户





积分 21
发帖 1
注册 2005-8-15
状态 离线
『楼 主』:  Config.sys & Autoexec.bat 文件的详细介绍

--------Config.sys--------
[MENU]
MENUITEM=SUB_1 DOS
MENUITEM=SUB_2 DOS & CDROM
MENUITEM=SUB_3 MS_Windows
MENUCOLOR=15,1
MENUDEFAULT=SUB_3,10
[SUB_1]
DEVICE=HIMEM.SYS /TESTMEM:OFF
DEVICE=EMM386.EXE RAM NOEMS I=B000-B7FF
LASTDRIVE=Z
DOS=HIGH,UMB
FILES=96
STACKS=9,512
[SUB_2]
DEVICE=HIMEM.SYS /TESTMEM:OFF
DEVICE=EMM386.EXE RAM I=B000-B7FF
DEVICEHIGH=C:\CDROM\TEAC_CDI.SYS /D:MSCD001
LASTDRIVE=Z
DOS=HIGH,UMB
FILES=96
STACKS=9,512
[SUB_3]
[COMMON]
LASTDRIVE=Z
格式如下:
[MENU]
MENUITEM=块名,菜单内容
MENUCOLOR=X,Y
MENUDEFAULT=块名,时间值
[块名]
…………
[COMMON]
…………
  这是一个多重配置的命令格式,其中[MENU]块是必不可少的,它定义了启动菜单的菜单项及颜色等信息,其它的块大多以某个菜单项的名字来命名,当选中菜单项时则执行与它相应的块里面的语句;[COMMON]为公共项,无论选择哪个菜单项,公共项里面的命令都将被执行。

  MENUITEM=SUB_1 系统定义了一个菜单项,格式为:
  MENUITEM=块名 菜单内容
  块名:当选中此菜单项时,将执行的配置块的名字。
  菜单内容:显示启动菜单时,出现在屏幕上的内容。 此项为可选项,指定它则启动显示菜单时只显示它而不显示块名,否则启动菜单上显示的是块名。
  MENUCOLOR=15,1定义了启动菜单的前景色和背景色,格式为:MENUCOLOR=X,Y
  X:指定菜单中文字的颜色,其值为0~15。
  Y:指定菜单中背景颜色,其值为0~15,缺省值为0,即黑色。
  MENUDEFAULT=SUB_3,10定义了启动菜单的一个缺省选择项,并设定了一个超时限定值。格式如下:

  MENUDEFAULT=块名,时间值
  块名:缺省菜单项的块名。
  时间值:规定在等待多少秒后如果还未按键,系统将执行缺省菜单项相应的菜单块。

  DEVICE=C:\PWindows 98\HIMEM.SYS /TESTMEM:OFF 加载扩展内存管理程序,其中"/TESTMEM:OFF"表示加载扩展内存管理程序时不检测内存。
  DEVICE=C:\PWindows 98\EMM386.EXE RAM NOEMS I=B000-B7FF 加载扩充内存管理程序(必须先加载扩展内存管理程序)。"RAM"表示将640K~1024K之间闲余的内存提交给DOS管理,此空间即为UMB(上位内存块),"NOEMS"表示系统不提供任何扩充内存的功能,缺少情况下EMM386管理程序会将扩展内存模拟成扩充内存。"I=B000-B7FF"表示将地址为B000~B7FF(供单色显示器映射ROM用)的32K大小的内存释放成为UMB。

  DEVICEHIGH=C:\CDROM\TEAC_CDI.SYS /D:MSCD001 将光驱驱动程序装载入上位内存。注意如果要在DOS下面使用光驱,最好在配置Config.sys前运行一下光驱在DOS下面驱动程序的安装文件,然后将此安装程序在Config.sys和Autoexec.bat两文件中添加的语句记下来,在配置多重启动时把这些语句加进去。因为各类光驱的驱动程序都不尽相同,所以只能这么配置。

  LASTDRIVE=Z 指定系统可分配的最后一个驱动器号,其值取A~Z。
  DOS=HIGH,UMB表示DOS管理由EMM386.EXE创建的UMB,并将自身的一部分装入HMA(高端内存)。
  FILES=96 指定DOS可以同时访问的文件数量。
  STACKS=9,512 此命令表示在处理硬件中断时可以动态使用9个512K大小的数据堆栈。

--------Autoexec.bat--------
@ECHO OFF
GOTO %CONFIG%
:SUB_1
SET PATH=C:\UCDOS;C:\TOOLS;%PA-TH%
LH C:\TOOLS\MOUSE
SMARTDRV
GOTO END
:SUB_2
SET PATH=C:\UCDOS;C:\TOOLS;%PA-TH%
LH C:\TOOLS\MOUSE
LH C:\CDROM\MSCDEX.EXE /D:MSC-D001
SMARTDRV
GOTO END
:SUB_3
WIN
GOTO END
:END

  说明如下:

  @ECHO OFF 表示不显示AUTOEXEC. BAT中各行命令语句的内容,前面加上"@"则"ECHO OFF"字符也不显示在屏幕上,否则屏幕上显示"ECHO OFF"。
  SET 用于设置、显示或删除DOS环境变量。%PATH%表示取当前系统搜索路径参数。
  GOTO %CONFIG% 表示DOS将转到标号为环境变量CONFIG值的语句下面,开始执行下面的语句。
  LH MOUSE.COM 表示将鼠标驱动程序加入到上位内存,如果鼠标驱动程序是*.SYS的形式的化,则必须将该驱动程序通过CONFIG. SYS文件加载到上位内存区中,格式为:
  DEVICEHIGH=C:\MOUSE\MOUSE. SYS其中"DEVICEHIGH"表示将该设备驱动程序加载到UMB。
  LH C:\CDROM\MSCDEX.EXE /D:MSCD-001 将光驱驱动程序装载入上位内存。注意加入此命令前在Config.sys必须加入"DEVI-CEHIGH=C:\CDROM\TEAC_CDI.SYS/D:MS-CD001"语句。
  SMARTDRV加载高速磁盘缓存程序。程序加载时如上位内存有剩余空间,它将自动加载到上位内存。为有效地加速系统对磁盘的操作,通过SMARTDRV.EXE在扩展内存中创建磁盘缓存,它存储刚刚使用且以后还要使用的磁盘扇区的数据,因为以后直接从RAM而不是从磁盘中读取数据,所以提高了访问速度。
如果最终调试成功后还可以用文本编辑器打开MSDOS.SYS文件,在文件最后加入一行语句----"BOOTKEYS=0",以禁止使用者使用F4、F5和F8键。也可在Config.sys的第一行(即"[MENU]"的上面)加入如下语句:
  SWITCHES=/F/N (启动时的开关选项,"/F"表示启动时跳过2秒钟的"Starting……"等待时间;"/N"表示禁止使用"F5"或"F8"键来跳过启动命令)
  注意:Config.sys和Autoexec.bat两个文件中所有的标点符号都必须是西文格式的(如","不能写成","),否则在启动时将出错!
  附扩充内存、扩展内存、常规内存、上位内存、高端内存的定义
  扩展内存(XMS,EXTENDED MEMO-RY),是主板上0~640K以外的内存。由于DOS早期开发的局限性,只能管理0~640K内的内存段。为了使用640K以外的扩展内存,电脑业形成了一个使用标准,即(Lotus/Intel/Micro-soft/AST)Extended Memory specification(扩展内存使用规范)。MS_DOS所提供的HIMEM .SYS文件即是按此规范编写的扩展内存管理(驱动)程序,通过在启动时加载此管理(驱动)程序,系统即可使用640K以上的内存空间。

  扩充内存(EMS,EXPANDED MEMO-RY),是通过加插板卡或通过模拟实现的内存。为了使用640K以上的扩充内存,电脑业形成了一个使用标准,即(Lotus/Intel/Microsoft)Expanded Memory Specification(扩充内存使用规范)。对于加插板卡的扩充内存,必须运行随卡附带的驱动程序;如果要用扩展内存来模拟扩充内存,则需运行MS_DOS提供的EMM386.EXE驱动程序。从EMS和XMS的产生时间来看,EMS要早于XMS,早期的计算机内存都较小,远远满足不了大型软件的运行需要,所以必须通过加插板卡以增加内存,而随着主板、内存等的制造成本的下降,XMS也逐渐取代了EMS,但为了适应早期一些应用程序必须使用EMS的需要(比如以前KOEI出的三国志系列),MS_DOS提供了通过EMM386. EXEGO来利用XMS模拟EMS的的功能。

  常规内存始于0KB,结束于640KB,社果没有使用一些内存管理程序的话(在MS_DOS下面,除了HIMEM.SYS、EMM386.EXE之外还有Quarterdeck的QEMM和Qualitas的386MAX等),那么常规内存就是你所能使用的唯一的一种内存,常规内存将被DOS及设备驱动程序和TSR(内存常驻程序)所占用。TSR是装入计算机内存并驻留在那里面的一种程序,而一般的程序往往在使用完毕之后把占用的内存返还给操作系统。

  上位内存(UMB,UPPER MEMORY BLOCKS),指640KB到1024KB之间的内存,通常此区域被褚如系统ROM、视频之类所使用。但大多数的计算机的硬件并不使用整个上位内存区,当我们使用了像EMM386这样的内存管理管理程序之后,就可以把一些TSR程序移到这此内存区。
高端内存(HMA,HIGH MEMORY AREA),是1MB内存以上的64KB连续内存空间,它属于扩展内存。换句话说就是指扩展内存的前64K部分。这是内存的一个特殊区域,通常用来将DOS装入高端内存区域内。

2005-8-18 20:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Michael
钻石会员





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

不错!
我们还可以在autoexec中使用%config%判断用户选择的菜单项,根据选择执行不同的语句。



简单就是美
2005-8-18 20:21
查看资料  发短消息 网志   编辑帖子  回复  引用回复
freeboy1314
初级用户





积分 23
发帖 12
注册 2005-8-19
状态 离线
『第 3 楼』:  

我用记事本打开,怎么里面没有内容的

2005-8-19 01:06
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
cadle
初级用户




积分 195
发帖 49
注册 2005-8-12
来自 辽宁
状态 离线
『第 4 楼』:  

这个对我们初学者来说非常有用,先谢谢你了!

2005-8-19 09:52
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (12606915)  编辑帖子  回复  引用回复
cn_archer
元老会员

农民


积分 2903
发帖 991
注册 2003-7-23
来自 福建省
状态 离线
『第 5 楼』:  



  Quote:
Originally posted by freeboy1314 at 2005-8-19 01:06 AM:
我用记事本打开,怎么里面没有内容的

Windows系统已经不依赖autoexec.bat和config.sys了,它们现在主要靠注册表来配置系统运行环境。



艰难奋长戟,万古用一夫

中国DOS联盟  http://www.cn-dos.net   欢迎大家来共同学习
我的MSN&E-Mail cn_archer@hotmail.com  QQ 56049418
2005-8-19 12:13
查看资料  发送邮件  发短消息 网志  OICQ (56049418)  编辑帖子  回复  引用回复
JonePeng
金牌会员

D◎$ Fαп


积分 4562
发帖 1883
注册 2004-1-19
来自 广东广州
状态 离线
『第 6 楼』:  

Win9x/ME的系统仍保留Autoexec.bat和Config.sys。
但NT的系统在启动时不在依赖它们,但CMD仍需要Autoexec.nt和Config.nt来配置,这两个文件位于%SystemRoot%\system32目录下。



----====≡≡≡≡ 我的至爱,永远是MSDOS!≡≡≡≡====----
  
2005-8-19 14:48
查看资料  发送邮件  发短消息 网志  OICQ (373343541)  编辑帖子  回复  引用回复
home
初级用户




积分 170
发帖 27
注册 2005-2-27
状态 离线
『第 7 楼』:  

这个对我们初学者来说非常有用,先谢谢你了!

2005-12-4 16:27
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
weilong888
银牌会员




积分 1270
发帖 548
注册 2004-5-31
状态 离线
『第 8 楼』:  

讲得很不错。

2005-12-4 20:00
查看资料  发送邮件  发短消息 网志  OICQ (314295922)  编辑帖子  回复  引用回复
yhsyhs101101
新手上路





积分 8
发帖 4
注册 2005-11-14
状态 离线
『第 9 楼』:  

很好啊.厉害 啊........谢谢了.......

2005-12-16 08:56
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
flamey
初级用户





积分 152
发帖 74
注册 2005-12-1
状态 离线
『第 10 楼』:  

谢谢!

2005-12-17 15:43
查看资料  发短消息 网志   编辑帖子  回复  引用回复
lfdjssz
初级用户





积分 125
发帖 72
注册 2005-9-13
状态 离线
『第 11 楼』:  

谢谢了.......

2006-1-2 16:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
zhri1980
初级用户





积分 52
发帖 26
注册 2006-1-3
状态 离线
『第 12 楼』:  

好久没见到多重配置的介绍了~~~

真令人怀念啊~~~



2006-1-3 17:34
查看资料  发短消息 网志   编辑帖子  回复  引用回复
kro1999
新手上路





积分 10
发帖 5
注册 2006-1-11
状态 离线
『第 13 楼』:  

好久没有做过MENU菜单了,经典!

2006-1-11 23:24
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fdsiuha
高级用户




积分 587
发帖 302
注册 2005-7-25
状态 离线
『第 14 楼』:  



  Quote:
Originally posted by kro1999 at 2006-1-11 23:24:
好久没有做过MENU菜单了,经典!

是啊,好象有11年了....



欢迎造访DOS的小屋!
http://risky.ik8.com
2006-1-11 23:38
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
lockingxp
初级用户





积分 30
发帖 15
注册 2006-1-25
状态 离线
『第 15 楼』:  

谢谢!

2006-1-26 00:38
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


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



论坛跳转: