CONFIG.SYS Sorting trick v1.1 [1/13/93] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ I've discovered a little trick about OS/2 that improves boot up time. It's a matter of sorting your CONFIG.SYS into a form that more closely matches the way OS/2 loads various drivers on boot-up. Applying this trick has shaved off almost a minute of boot-up time on many systems. Your results may vary. This has only been tested on OS/2 2.1 GA, but I'd imagine it would work on OS/2 2.0 and below, without any trouble. I've found this order to work the best: ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ IFS ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ BASEDEV ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ SET statements , sorted alphabetically, to "look nice" ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Any OS/2-specific commands [PROTECTONLY, DISKCACHE, IOPL, etc] ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ OS/2 devices, sorted alphabetically, where applicable. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ DOS specific commands [DOS=HIGH,UMB, FCBS=16,8, etc] ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ DOS devices, sorted alphabetically, where applicable. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ CALL/RUN commands ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ HPFS-formatted drives should experience less "disk-thrashing" than FAT-formatted drives, since HPFS stores filenames in alphabetical order. Certain device drivers must be loaded before others, so keep this fact in mind when you are re-arranging your CONFIG.SYS. The loading order of MMPM/2 device drivers should NOT be messed with, but can be moved around in a "group" chunk. The DOS virtual driver, VENH.SYS, should not be sorted. A user suggested using the shareware text editor, BOXER, and it's Sort function to sort CONFIG.SYS, then using a little cut and paste to move things into the right places. Another user also suggested writing an actual program to sort the CONFIG.SYS automatically, and correctly. I've been pondering on writing that myself, it might be as simple as a little REXX .CMD file! Keep a boot-disk handy, just in case you foul up somewhere. I suggest using BOOT2X, from IBM EWS, for making a single boot-disk, based on your pre-existing configuration on your hard drive. I've always kept my SET commands sorted alphabetically, just so they were a bit more organized, whether it improves boot-up time or not, I'm not sure. [I would doubt it would make much of a difference] If you really want to be a speed demon, store all your BASEDEV's in your root directory, since that's where OS/2 looks first for BASEDEV's. But, since I like to keep my root directory 'tidy', I've chosen to store all mine in the C:\OS2 directory. ** WARNING ** Unsolicited ShareWare plug ** WARNING IBM's MOUSE.SYS driver hasn't been known for it's speed. On my machine, I have an InPort mouse. MOUSE.SYS will still look at the COM ports for a mouse and thus waste a lot of time during boot-up. [Around 10-15 seconds in my case] The 3rd party mouse driver, RODENT, uses less CPU time, allows you to use all 3 buttons of your mouse, and also "finds" your mouse MUCH faster than IBM's driver. It's nearly instantanious on most systems I've tried RODENT on. If you have a serial mouse, make sure to tell RODENT which COM port it is attached to, since RODENT will find your mouse just that much faster. ** WARNING ** Unsolicited ShareWare plug ** WARNING I'd like to hear from others about their experiences using this trick. There may be better sorting configurations, and I'd like to hear about them. If you're ambitious, time the speed difference between your original and sorted CONFIG.SYS and send me the results, I'll include you in this document. To aid in determining the factor(s) on whether or not certain systems will benefit from a sorted CONFIG.SYS, send me your results and system configuration. CPU Type OS/2 version [Service Pack, bug fixes applied, etc] Amount of RAM HD size and type [IDE, ESDI, RLL, MFM, SCSI, SCSI2, etc] VLB/PCI/EISA/ISA/MCA type motherboard Amount of cache memory on motherboard. Chipset of motherboard [OPTI, ETEK, Austek, CHIPs, etc] Special device drivers you are loading, that "sway" from the default. Where to contact the author: ---------------------------- By far, the easiest way to contact me is through Internet: tiensivu at student dot msu dot edu I also run a BBS back at home [I'm currently away at college, with the BBS running on semi-auto-pilot], Black Horizon, 1-616-866-3717, 16.8k Dual, 24 hrs. Concentrating on OS/2 support, 210 Megs of files. I apologize for the callers who requested FILES thru FrontDoor from my BBS in Dec '93. The file-list program broke down and was not updating the listing every night. This has been fixed and a new file listing is generated every night at 3am EST. Proud member of: Team OS/2! FidoNet : 1:228/74 ITC Net : 85:871/207 HellNet : 6950:1/1 PowerNet : 616:1/1 NetherNet: 17:1/3 U.S. mail: Aaron Tiensivu 522 West Holmes Hall (Michigan State University) East Lansing, Michigan 48825-1115 A few people have asked about my nationality, since my last name is, well, not very common. My grandpa moved, with his whole family, when he was 18, to Michigan from Finland. He's 76 now, is still *VERY* active, remodeled a house in New Mexico, USA, and built a barn in the backyard, with my grandma. So all the people in Finland should be proud.. :) Here is an example CONFIG.SYS, sorted: IFS=C:\OS2\DRIVERS\IFS\HPFS.IFS /CACHE:2048 /CRECL:128 /AUTOCHECK:C IFS=C:\OS2\DRIVERS\IFS\CDFS.IFS /Q BASEDEV=OS2DASD.DMD /Q BASEDEV=PRINT01.SYS BASEDEV=IBM1FLPY.ADD BASEDEV=IBM1S506.ADD /A:0 /U:0 /SMS BASEDEV=SBCD2.ADD /P:220 BASEDEV=OS2CDROM.DMD /Q PROTSHELL=C:\OS2\PMSHELL.EXE SET AUTOSTART=PROGRAMS,TASKLIST,FOLDERS,CONNECTIONS SET BOOKSHELF=C:\OS2\BOOK; SET COMSPEC=C:\OS2\CMD.EXE SET DPATH=C:\OS2;C:\OS2\SYSTEM;C:\OS2\MDOS\WINOS2;C:\OS2\INSTALL;C:\;C:\OS2\BITMAP;C:\OS2\MDOS;C:\OS2\APPS; SET EPMPATH=C:\OS2\APPS; SET GLOSSARY=C:\OS2\HELP\GLOSS; SET HELP=C:\OS2\HELP;C:\OS2\HELP\TUTORIAL; SET IPF_KEYS=SBCS SET KEYS=ON SET OS2_SHELL=C:\OS2\CMD.EXE SET PATH=C:\OS2;C:\OS2\SYSTEM;C:\OS2\MDOS\WINOS2;C:\OS2\INSTALL;C:\;C:\OS2\MDOS;C:\OS2\APPS; SET PROMPT=$i[$p] SET RUNWORKPLACE=C:\OS2\PMSHELL.EXE SET SYSTEM_INI=C:\OS2\OS2SYS.INI SET USER_INI=C:\OS2\OS2.INI SET VIDEO_DEVICES=VIO_SVGA SET VIO_SVGA=DEVICE(BVHVGA,BVHSVGA) LIBPATH=.;C:\OS2\DLL;C:\OS2\MDOS;C:\;C:\OS2\APPS\DLL; PRIORITY_DISK_IO=NO THREADS=256 IOPL=YES MAXWAIT=15 MEMMAN=SWAP,PROTECT SWAPPATH=C:\OS2\SWAP 1024 1024 PRINTMONBUFSIZE=1,0,0 PROTECTONLY=NO RMSIZE=640 CODEPAGE=437,850 COUNTRY=001,C:\OS2\SYSTEM\COUNTRY.SYS DEVINFO=KBD,US,C:\OS2\KEYBOARD.DCP DEVINFO=SCR,VGA,C:\OS2\VIOTBL.DCP DEVICE=C:\OS2\TESTCFG.SYS DEVICE=C:\OS2\DOS.SYS DEVICE=C:\OS2\PMDD.SYS DEVICE=C:\OS2\MOUSE.SYS DEVICE=C:\OS2\POINTDD.SYS DEVICE=C:\OS2\SIO.SYS (1:38400) (2:38400) BREAK=OFF BUFFERS=10 DOS=HIGH,UMB FCBS=16,8 FILES=40 DEVICE=C:\OS2\MDOS\VCDROM.SYS DEVICE=C:\OS2\MDOS\VDPMI.SYS DEVICE=C:\OS2\MDOS\VDPX.SYS DEVICE=C:\OS2\MDOS\VEMM.SYS DEVICE=C:\OS2\MDOS\VMOUSE.SYS DEVICE=C:\OS2\MDOS\VSIO.SYS DEVICE=C:\OS2\MDOS\VSVGA.SYS DEVICE=C:\OS2\MDOS\VWIN.SYS DEVICE=C:\OS2\MDOS\VXMS.SYS /UMB SHELL=C:\OS2\MDOS\COMMAND.COM