home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Jason Aller Floppy Collection
/
176.img
/
SLBBS76M.ZIP
/
SLPACK.ZIP
/
SLPACK.DOC
next >
Wrap
Text File
|
1989-12-07
|
7KB
|
143 lines
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
----------------------------------------------------------------------------