AminetAminet
Search:
84450 packages online
About
Recent
Browse
Search
Upload
Setup
Services

disk/optim/PFSDefragTry.lha

Mirror:Random
Showing:generic
No screenshot available
Short:Tries to defrag PFS partitions (1.5), with source
Author:Martin Steigerwald and Stefano Pucino
Uploader:Martin-Steigerwald gmx net (Martin Steigerwald)
Type:disk/optim
Architecture:m68k-amigaos
Date:1999-10-14
Download:http://aminet.net/disk/optim/PFSDefragTry.lha - View contents
Readme:http://aminet.net/disk/optim/PFSDefragTry.readme
Downloads:5458

$VER: PFSDefragTry.readme 1.5 (29.9.1999)
$Id: PFSDefragTry.readme 1.5 1999/10/08 18:20:06 helios Exp $

Note this is a later version than the previous 37.5 version!

ABOUT

*Tries* to defragment PFS partitions by recopying all fragmented files.
Will run diskvalid in analyse mode to get a list of the fragmented files.


DISCLAIMER

I REJECT ANY RESPONSIBILITIES IF YOU LOOSE YOUR DATA.

* NO WARRANTIES * NO WARRANTIES * NO WARRANTIES * NO WARRANTIES *

So, I hope this is clear now. ;-) Sorry, but I had to do this.

NOTE: THIS IS A BETA VERSION. THE NEW FILENOTE, DATE AND ATTRIBUTE SUPPORT
HAS NOT BEEN TESTED THOROUGHLY. USE AT YOUR OWN RISK!


DISTRIBUTION

PFSDefragTry was Freeware, is Freeware and will always be Freeware. Now
including source. When you want to continue development see below under
"FURTHER DEVELOPMENT?".


FURTHER DEVELOPMENT?

I have no time to fiddle around with this now. Thus I included the source
code to allow further developments.

You can freely continue development *non-commercially*. This means this
and further developments can only ever be released non-commercially as
freeware.

You can continue developing without noticing me. But then please rename it
when you release it and keep my name mentioned.

I prefer when you contact me when you want to continue development. Then I
could hand it over to you for further development officially. This means
you also take over support for it. ;-) (Its not a lot support queries,
really.)

Continuing development is easy: AmigaE 3.3 is freeware now. Just download
and use it. But you may well transfer the source to C if you like.


TODO

Some ideas I got from users (well there are actually some;-):
- preserve protection bits and filenotes. Yes, my copy routine didn't
  care about this at all.
  Easy solution:  Just make C:Copy resident and use C:Copy CLONE
  Other solution: Implement the needed stuff in the copy routine of
                  PFSDefragTry
  (Stefan Schulz, Arnljot Arntsen)

Ideas of my own:
- some GUI with progress display and stuff


REQUIREMENTS

AmigaOS2.0+
PFS2/3. It also works on AFS, but I really recommended to update to PFS2/3!


USAGE

Usage is simple.

PFSDefragTry DEVICE/A,TEMPDIR,BUFLEN/N

As you can see only one argument is needed. And this is the device you
want to defragment!

With TEMPDIR you can specify where PFSDefragTry should copy the files
file by file in order to let PFS defragment them. If you do not
specify it files will be copied into DEVICE/A:. I recommend pointing
TEMPDIR to an other partition than the one being defragmented.

TEMPDIR must have enough space to hold the biggest file to defragment. To
find it out exactly try diskvalid DEVICE/A ANALYSE, look which files have
been fragmented, and look which one is the largest of them. It is always
save to just leave as much space in tempdir that the largest file of the
complete partition will fit into there.

Files will be copied one by one. So one file will be copied. Then deleted.
Then either renamed to its original name if your tempdir is on the same
device that should be defragmented or copied back to its original place.

If there is not enough space, you get get AmigaDOS requesters. No extra
space checking is done! Anyway files that are to big will simply not
defragmented. Nothing else will happen. But you have to click that
requesters away.

The more free space you have on the partition to defragment the better the
chance to get a successful defragmentation. PFSDefragTry ONLY tries do
use PFS to defragment files. It does not defragment the free space on a
device.

Note: Currently all files that PFSDefragTry copies to defragment them
will be set to the actual date! This is due to my own copying routine
which simply uses AmigaDOS Read() and Write(). C:Copy doesn't like
filenames with wildcards in it so I could not use it.

Maybe future versions will take care of the date stamps of the files. I
don't need this, so it may only be implemented when someone ask me to do
it.

The last parameter specifies the buffer size in bytes the copy routine
will use! Default value is 65536. I recommend to set this to 1048576
- 1 MB - or even more in order to avoid unnecessary hard disk head
movements at least when TEMPDIR is on the same hard disc than the
partition that is defragmented.

Some words about efficiency: It works fairly good, but it does not always
be successful. Running it several times will most likely give better
results than running it once.

When you have question or suggestion don't hesitate to email me.


HISTORY

Hel = Martin 'Helios' Steigerwald
Max = Stefano 'Max Headroom' Pucino
When nothing is stated assume Hel ;-)

revision 1.5
date: 1999/10/08 18:15:35;  author: helios;  state: Exp;  lines: +37 -25
- now I have it... hmmm... Stefan stored the pointers to the
  comment, the filedate and the protection bits to variables
  and freed the DosObject afterwards and then used them to
  restore the file data... this can't work or only works
  in the case when the freed structure has not been overwritten
  again
  AH this, sucked ;-)
  hopefully it really copies filenotes now... now keeps
  fib open till not used anymore
- added some more comments to the source

revision 1.4
date: 1999/10/08 17:35:31;  author: helios;  state: Exp;  lines: +76 -43
- cosmetical changes, revised error messages
- tried to find not setting filenote problem... this
  is strange. I could reproduce it when there was other
  activity on disc but after some changes it seemed to
  be gone
- cause of that I added all error checking it can get
  when comment can not be set it should really complain
  now

revision 1.3
date: 1999/09/29 12:23:22;  author: helios;  state: Exp;  lines: +2 -2
- changed some texts

revision 1.2
date: 1999/09/29 12:15:27;  author: helios;  state: Exp;  lines: +29 -6
- now under control of HWGRCS (Hel)
- implemented CTRL-C check while copying (Max)
- implemented support for filecomment, date and attributes (Max)
- This tool is completely Y2K-free ;-)) (Max)

PFSDefragTry 37.4 (17.9.1999)
- changed name to PFSDefragTry, since PFS3 is out, and it also works
  on AFS
- changed legal status to public domain
- added FURTHER DEVELOPMENT?
- added TODO
- little other changes in this readme
- updated my email address!


THANKS GO TO

Stefan Pucino for the 37.5 update with filenote, attributes and date
support that I put into 1.2

Simon Dick for the idea.

Mark Harden for his work on the AFS FAQ and the support Fourth Level
Developments should have actually done.

Michiel Pelt for PFS2!

Wouter van Oortmerssen for Amiga E


AUTHOR

Martin Steigerwald
Email: Martin-Steigerwald at gmx.net
Web:   http://helios.home.pages.de


Contents of disk/optim/PFSDefragTry.lha
 PERMSSN    UID  GID    PACKED    SIZE  RATIO     CRC       STAMP          NAME
---------- ----------- ------- ------- ------ ---------- ------------ -------------
[generic]                 2366    4936  47.9% -lh5- 1665 Oct  8  1999 PFSDefragTry
[generic]                 1984    6569  30.2% -lh5- 17cf Oct  8  1999 PFSDefragTry.e
[generic]                 3203    6868  46.6% -lh5- 54c5 Oct  8  1999 PFSDefragTry.readme
[generic]                 3645   12020  30.3% -lh5- 2d46 Oct  8  1999 RCS/PFSDefragTry.e
[generic]                 4119   10165  40.5% -lh5- 0b64 Oct  8  1999 RCS/PFSDefragTry.readme
---------- ----------- ------- ------- ------ ---------- ------------ -------------
 Total         5 files   15317   40558  37.8%            Oct 14  1999

Aminet © 1992-2024 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>