home *** CD-ROM | disk | FTP | other *** search
-
- SLPACK Oct 1988
- Searchlight BBS Message File Optimizer by F. LaRosa
-
- -----------------------------------------------------------------
- (c) Copyright 1988 Searchlight Software.
- This program may be used free of charge by registered
- SEARCHLIGHT BBS owners only.
- -----------------------------------------------------------------
-
-
- Discussion: What is SLPACK?
- ---------------------------
- SLPACK is a "disk optimizer" utility for your Searchlight BBS message
- base. It will minimize the amount of disk access and maximize the speed
- with which your BBS system can access messages on your disk.
-
- When the MS-DOS operating system allocates disk space for files, it
- maximizes available storage by allocating small "clusters" of disk space,
- at various locations on the disk, to files as requested. As a result, files
- become "fragmented"- they consist of many chunks of data all over your
- disk. Fragmented files take more time to access, since the system must
- process and access many segments. Many programs are available to optimize
- disk space by uniting fragmented files back into continuous areas on the
- disk.
-
- Similarly, Searchlight BBS allocates space for messages in small chunks
- in the MESSAGE.BBS file on your disk to make maximum use of disk space, and
- messages are often "fragmented" all over the file. To help speed up access
- to your messages, the SLPACK program will repack your entire message base,
- organizing your messages into continuous areas on the disk. SLPACK will
- also deallocate and free up unused space in your message file (even the
- space that the CHECK command cannot release).
-
- Running SLPACK is not required; even without periodic repacking,
- Searchlight BBS provides fast access to messages, and efficient use and
- reuse of disk space. SLPACK is an "optimizer" that you can use to get the
- best possible performance out of your system.
-
-
- Using SLPACK
- ------------
- The syntax is simple: just type SLPACK at the command line. You must be
- situated in the directory containing your CONFIG.BBS data file. SLPACK will
- print a message and ask you to press "Y" to begin the packing procedure. It
- will then ask you for the number of "free records" to allocate. If you'd
- like to allocate some free space, type in a number, or else press RETURN
- for 0 free records.
-
- There are two command line options: if you type SLPACK /NOPROMPT, the
- program will proceed without printing the initial message and waiting for
- the keyboard responses. /NOPROMPT must appear in all capitals, exactly as
- shown. If you specify /NOPROMPT, you can also specify the number of free
- records you want (for example, SLPACK /NOPROMPT 200). If a free record
- count is not given, it defaults to 0.
-
- A couple of important warnings are in order before you begin. First, MAKE
- A BACKUP OF ALL *.BBS DATA FILES BEFORE YOU BEGIN PACKING. The pack
- procedure rearranges every message record and pointer on the system, and if
- it aborts before it can finish (due to power failure, disk errors, or other
- unforseen events) you will have DESTROYED most of your message base beyond
- any hope of recovery. If anything goes wrong during the packing, restore
- your backup and try it again.
-
- Secondly, if you're running a multinode system, you must make sure that
- all nodes are shut down, and nobody is accessing the database while SLPACK
- runs. Otherwise, you risk corrupting the data files.
-
- Finally, if you suspect there might be some error or corruption in your
- message base, make sure you check it with the CHECK command before running
- SLPACK. Running CHKDSK on your disk drive is also a good idea. SLPACK does
- not check for corrupted data, any may hang if there are errors in the data
- file.
-
-
- Error Messages
- --------------
- SLPACK may display one of the following messages when it runs:
-
- Cannot open system files!
- - You are not located in the directory containing the CONFIG.BBS file.
-
- Invalid version. SLBBS version 1.64 or later is required.
- - SLPACK does not operate on systems using earlier versions of SLBBS.
-
- Insufficient memory available for packing.
- - SLPACK could not allocate enough memory for the packing operation.
-
- Program halted. No action taken.
- - Displayed if you type "N" in response to the initial prompt.
-
- A return code (errorlevel) of 1 is returned if any of these messages is
- displayed. No action will have been taken, and the message base will not
- have been packed or otherwise changed.
- Error levels of 2 and above are returned if the program encounters a
- serious error, such as a disk error, during the pack operation. If an error
- code greater than 1 is detected, the message base will probably have been
- left in a corrupted state, and should be restored from a backup copy.
- A return code of 0 indicates a successful packing.
-
-
- A few Notes and Tips
- --------------------
- SLPACK will rearrange your message file's internal structure. However, it
- does not guarantee that the message file itself is un-fragmented on the
- disk. To fully optimize disk access, run a disk optimizer on your hard disk
- after running SLPACK. Note that since SLPACK packs the messages "in place",
- without using any temporary files, it won't "fragment" the message file if
- the message file is already contiguously allocated.
-
- You can run SLPACK regularly as an offline event by specifying the
- /NOPROMPT parameter. If you do so, have your batch file make a back-up copy
- of the BBS files before SLPACK runs, and check the return code (errorlevel)
- to be sure of a successful run.
-
- The "free records" parameter allows you to allocate blank records at the
- end of the message file that will be used as new messages are posted. Of
- course, Searchlight BBS will "expand" the message file if free records are
- not available; however, by allocating them all at once, the free records
- are more likely to be in a contiguous disk block. I would recommend
- allocating some free space, depending on your system's level of activity
- (message blocks are 96 bytes in length). In particular, if you are running
- a system with multiple nodes, allocating extra records in the message file
- is an extremely good idea, as this increases the efficiency of multinode
- processing (dynamic file expansion can cause difficulty with some multiuser
- operating systems and networks).
-
- SLPACK will generally take more time to execute if the message base is
- highly fragmented, less time if it's already nearly optimized. Therefore it
- will probably take SLPACK longer to run the first time you use it.
-
-
- Copyright
- ---------
- This program is (c) Copyright 1988 Searchlight Software. You may use
- this program for free if you are a registered owner of any extended version
- of Searchlight BBS. You may distribute this program in unmodified form.
-
-
- F. LaRosa 10/04/1988
- ----------------------------------------------------------------------------
-
-