home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.whtech.com
/
ftp.whtech.com.tar
/
ftp.whtech.com
/
Geneve
/
9640news
/
CAT01
/
ABEARD.ARK
< prev
next >
Wrap
Text File
|
2006-10-19
|
7KB
|
164 lines
?
Comments to Dave Ramsey's and Jerry Coffey's Comments on Archiving
------------------------------------------------------------------
These are comments to Dave Ramsey's and Dr. Jerry Coffey's thoughts
on archiving and squeezing (crunching) files. I appreciate thier
inputs.
First, Dr. Jerry Coffey's comments. I find myself in almost complete
agreement with Jerry, and his excerpts from Barry Traver. I think
Barry Boone is onto something great with his LZW algorithm, and
have said so several times. I expect that LZW will indeed prove
to be superior (both in terms of speed and packing density) in most
cases over Huffman encoding.
As much as I admire Barry Boone for his work on the LZW archiver,
(and golly, I didn't even know that he had an archiver when I wrote
mine), I think it is unfortunate that he released it in the state
it was in. It was obvious that it was released under duress, per
his own comments in the documentation (question, Barry, why did you
feel under pressure to release it?, older software simply moves aside
when faced with newer, better stuff). All I can say, Barry, is make
it backwards compatible to previous stuff, and I'll tell the world
how you walk on water).
Lets get back to basics. My concept of an archive is a means to collect
a group of (hopefully related) files together in a single file, so that
the files can be recovered conveniently at a later date. A good
archiver should have the following characteristics:
1. It should pack the files quickly and easily from/to all devices
currently supported by the target machine.
2. It should allow inspection of the archive without necessarily
needing to unpack the original file.
3. It should minimize the resulting archive file size, so that
the time taken to upload or download a file to the networks can
be minimized (i.e. file compression methods). Due to limitations
on compression techniques, the archiver should have several
techniques available, and automatically pick the best for
the particular operation.
4. Archiving/Dearciving MUST be a single step operation, i.e. I
don't want to dearchive a file, just to find out that I have
to run it through another decompression step. Or I don't want
to uncompress the archive, creating another file, just to
have to then invoke the archiver. (How many unique names for
files can I think of anyway?)
5. A requirement pointed out on DELPHI is that the resulting
format for the archive should tell the downloader at the time
of downloading which archive method was used to pack the
archive.
6. The archiver should support the new MDOS formats for the
Geneve.
7. The archiver should automatically recognize the different
formats in which the archive might have been packed, and
unpack it appropriately.
8. The archiver doesn't necessarily have to pack in all formats
as in (7). It would be nice if it could optionally create
an archive in TRAVER format, since this is the base which
everybody SHOULD be able to read.
Now, for Dave's concerns:
1. >Directory entries aren't powers of two.
Yes, but this isn't a major programming problem. Is it really
important that the archiver keep the original dates on all of
the files that make it up? The archive itself can easily include
a date for the whole archive. It probably would be good to
extend the header, though, for future use (although that use
has to be carefully delegated).
2. >Bytes 12-13, unusual use -> How can the archiver (dearchiver)
figure out where each file starts if the file is squeezed? I
realize later on that you state that the files should be squeezed
externally to the archiver, but, given that the archiver does
do compression, how can it figure this out if this is the unsqueezed
sector count?
3. >Create fixed number of library entries -> Not a bad idea. I
think that the present format, however, can accomodate needed
operations (e.g. delete file, update file, add file, etc.)
similar to the way it is done in MSDOS by rewriting the entire
archive.
4. >Seperate the archiving process from the compression process:
Dave, this is probably my most serious disagreement. I realize
that the CPM world has been living this way, but when I dearchive
a file, I don't want to have to mess with a file coming out of
the archive (which may have been archived in one of several
different methods), and then finding a decompression program to
decompress it (which may have been compressed in one of several
different formats).
The archiver that gets my vote WILL:
1. Have speedy compression built right in
2. Let me inspect any archive before unpacking it
3. Picks the best compression algorithm
4. Is compatible (for listing and unpacking) with all previous
formats
5. Provides for future expansion (as Dave points out) into the
Geneve.
I am going to be bold and suggest to Barry Boone what I would like to see in
his next formal archiver release:
1. Inclusion of the compression algorithm on a file by file basis.
2. The "compression" type flag should be unique to the new archive
format.
3. A check at the end of the compression to make sure the compressed
file is not larger than the original, and if so, repack it.
4. Inclusion of the Huffman encoding "unpack" algorithm, so that
the archiver can unpack older Huffman encoded files (note that
this algorithm is trivial in comparison to the packing algorithm).
Also, automatic recognition and unpacking of TRAVER unsqueezed
formats on a file by file basis in the archive.
5. The new archive file format should be whatever is the most efficient
for the TI-99 and Geneve (Paul Charlton, suggestions here?), but
should recognize for unpacking the older dis/fix/128 formats.
6. Bits in the archive file header which indicate the compression
algorithm used (yours would be the first to use this, so pick it).
7. Expansion of the archive file headers to include the additional
Geneve time & date fields, and perhaps with suggestions from
the MDOS community on what fields might be up and coming.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
SPECIAL NOTE TO BARRY BOONE:!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Of course, Barry, this are only suggestions. Your program is yours to do
with as you wish. Don't feel pressured, by ANYONE, INCLUDING ME, to
release something, do something, compromise your program in any way that
YOU don't feel is the right way (although listening to suggestions is
always productive, and may give you ideas that you hadn't thought of).
YOU know your program the best, and YOU have to make the technical decisions
of what is feasible over what is desirable.
(soap box concluded)
Al Beard
December, 1987
Download complete. Turn off Capture File.