FoxPro 2.5的运行环境
出处:按学科分类—工业技术 企业管理出版社《工程师手册》第931页(3486字)
单用户的FoxPro 2.5 for DOS有两种版本可供用户选择。标准型版本和增强型版本,增强型版本是一个真正的32位产品,它可以充分使用80386和80486微处理器并可使用所有可用的扩展内存,这意味着文件的运行速度会更快一些。
标准版本的FoxPro只要求8088/8086或80286的处理器,640K以上的内存。对DOS版本的要求也低,只要MS-DOS(PC-DOS)3.1以上版本即可。
当FoxPro被正确地使用在合适的硬件平台上时,它可提供一种异常快的速度。不过,它也是一种复杂的软件产品,因为它要与扩展内存、EMS内存、XMS内存、高位存储单元、DOS文件和缓冲器局域网操作系统的文件进行大量的相互作用。为了高效地运行FoxPro 2.5,需对计算机进行合理配置,不仅要建立最有效的FoxPro的系统配置文件CONFIG.FP,而且要调整DOS、内存管理器、磁盘超高速缓冲器、Microsoft Windows和局域网操作系统的配置和选择。
配置调整得越精细,FoxPro运行得越好越快,配置FoxPro时的重要工作之一是,为FoxPro和用户程序获得尽可能大的常规内存空间(即基本内存空间)。常规DOS内存空间增加5K到10K,这显得并不很多,但即使增加这点小的常规DOS内存空间,也将使FoxPro的性能得到改进。
根据我们的经验,用户所碰到的大多数问题直接来自系统配置方面,而不是FoxPro本身。
我们现在就介绍一下如何有效地配置计算机系统、局域网系统、以及进行内存管理,从而有效地运行FoxPro 2.5/DOS的方法。
1.系统配置文件CONFIG.SYS
无论你用的是哪种版本,也不管你的计算机是单机运行还是作为局域网(Local Area Network,缩写为LAN)上的一个工作站,只要机器启动,DOS总要在计算机的缺省驱动器的根目录中寻找CONFIG.SYS文件。CONFIG.SYS文件中有两项设置的值对FoxPro的正常运行至关重要,它们是FILES参数和BUFFER参数。
没有CONFIG.SYS文件的计算机也可以运行。但像FoxPro这样的高级软件,若没有一个适当的CONFIG.SYS文件,是很难充分发挥它的作用的。CONFIG.SYS文件的内容可以有多种形式,也可以只包含两项参数的设置:
BUFFERS=nn
FILES=nn
这里的nn代表一个整数值,或者初始化一系列的设备驱动器、内存管理、磁盘高速缓冲器、以及其它选项,而且也可以很复杂。
FoxPro 2.5/DOS和FoxPro 2.0要求同时打开的文件个数相同,因为它们比FoxBASE+和FoxPro1.x要求的文件个数要多,所以对FoxBASE+或FoxPro1.0来说已足够的FILES参数,若要运行FoxPro2.5/DOS和用户程序,则应当增大FILES参数。随着可用文件个数的增大,常规DOS内存空间也相应减少。
每打开一个数据库,就要增加一个文件。如果打开原数据库包含了一或多个备注型字段,则.FPT文件还需要一个附加的文件。如果正在使用IDX类型的索引文件,无论是标准的还是紧缩的,每个IDX文件都要有一个文件。将FILES参数设为40并不能保证你运行复杂的应用程序而不碰到“Too many files open”的错误信息。如果CONFIG.SYS文件中没有包含FILES参数,大多数DOS版本默认45个可用文件。不同的DOS版本支持FILES参数的不同取值范围。一般来讲,DOS3.3及其以上版本支持的FILES参数范围为1到255,但这个范围也可能因具体机器的不同而不同。DOS3.3以下的版本一般最多只支持99个文件。
CONFIG.SYS文件中的缓冲区参数设置得太大或太小都将减弱计算机的性能。如果该参数设得过大,DOS将把大量的数据读入缓冲区,因此也减弱了性能。由于FoxPro使用自己的缓冲区或高速缓冲区,因而在CONFIG.SYS中指定一个大的缓冲区参数只能起到反作用,因为在FoxPro高速缓冲区中的信息将被移入DOS的缓冲区,然后再写入硬盘。更进一步,大的缓冲区参数设置将减少DOS可为FoxPro提供的内存空间,最终降低了机器的性能。
BUFFERS参数的最佳设置范围是20到40。实践经验证明,具有1M以上内存的计算机的最佳BUFFERS参数是20或25。不过这仅是一个一般的看法,也许这种最佳值要随着机器的不同而改变。例如,若正在使用一个高速缓冲磁盘控制器,用户可能会发现,如将BUFFERS参数降到8或9,机器的速度会明显改善。
2.局域网与文件
与单机或单用户环境相比较。局域网环境下的文件参数配置是一个更复杂的问题,但对您的多用户应用程序的作用来说,它又是一个关键问题。各种网络操作系统所提供的文件参数配置也各不相同,因而使问题更复杂化了。
不论用的是Novell 286或Novell 386网络操作系统的哪个版本,一旦启动Novell LAN,就要寻找Novell配置文件。如果NET.CFG和SHELL.CFG文件同时存在,则Novell使用NET.CFG文件。Novell配置文件应当和Novell驱动器放入同一个子目录。
SHELL.CFG或NET.CFG文件中就至少包含有关FILE HANDLES参数的申明。FILEHANDLES参数在概念上类似于CONFIG.SYS文件中的FILES参数;不过Novell的FILE HANDLES参数控制的是定位于服务器上的可用文件的个数。而CONFIG.SYS中的FILLES参数控制的是定位于硬盘和驱留于工作站内存中的可用文件的个数。DOS文件与Novell文件的个数之和不能超出250。例如,若FILES=130,而且FILE HANDLES=130,则当用户希望进网时,Novell网络操作系统将会给出一个错误信息。在用户减少上述参数的值之前,是不可能进入局域网的。如果用户将CONFIC.FP中的FILES参数降得太小,则最终会碰到来自DOS或FoxPro的错误信息“Too many files”。
局域网工作站和服务器上的CONFIG.SYS文件中的FILES参数控制着可用文件的数目。服务器上的FILES参数必须提供足够的文件,以便所有的服务器文件可被所有的工作站打开。例如,五个工作站同时使用一个数据文件,并且没有使用索引文件(包括CDX结构索引文件),则它们使用的是5个文件。若该数据库文件含有一个或多个备注型或通用型字段,则将使用10个文件。
Novell ELS既不使用SHELL.CFG文件,也不使用NET.CFG文件。相反,用户必须通过Novell的某种途径来改变可用文件的数目。
基于DOS的局域网,像Novell NetWare Lite,要求装入DOSSHARE。这种以大量基于DOS的局域网通过CONFIG.SYS中的FILES参数来决定可用文件的数目。这类局域网上的工作站只需将FILES设为99便可很好地工作。除了工作站上的FILES参数设置,服务器上的FILES参数必须为所有打开的文件提供足够的文件数。