|
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 |
|
|
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 |
|
|
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 |
|
|
home
初级用户
积分 170
发帖 27
注册 2005-2-27
状态 离线
|
『第
7 楼』:
这个对我们初学者来说非常有用,先谢谢你了!
|
|
2005-12-4 16:27 |
|
|
weilong888
银牌会员
积分 1270
发帖 548
注册 2004-5-31
状态 离线
|
|
2005-12-4 20:00 |
|
|
yhsyhs101101
新手上路
积分 8
发帖 4
注册 2005-11-14
状态 离线
|
『第
9 楼』:
很好啊.厉害 啊........谢谢了.......
|
|
2005-12-16 08:56 |
|
|
flamey
初级用户
积分 152
发帖 74
注册 2005-12-1
状态 离线
|
|
2005-12-17 15:43 |
|
|
lfdjssz
初级用户
积分 125
发帖 72
注册 2005-9-13
状态 离线
|
|
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
状态 离线
|
|
2006-1-26 00:38 |
|