Intro Download and install Frequently Asked Questions Tips and tricks

Homepage







© J.C. Kessels 2009
MyDefrag Forum
May 18, 2013, 05:47:40 pm *
Welcome, Guest. Please login or register.

Login with username, password and session length
News:
 
  Home Help Search Login Register  
  Show Posts
Pages: [1] 2 3 4
1  MyDefrag v4 Forum / Bugs and problems / OtherInstances(kill) doesn't work for me on: November 29, 2011, 04:42:07 pm
I can't get  OtherInstances(kill) to work - it just behaves like OtherInstances(ask), the default.
2  JkDefrag v3 Forum / Bugs and problems / AddGap : ZoneBegin (and ZoneSize) Values are Incorrect on: November 08, 2011, 11:16:13 am
In MyDefrag v4.3.1, when using AddGap - after processing a (non-empty) zone - ZoneBegin is given the value of ZoneEnd.

The relevant extract from my illustrative script is :-
----------------------------------------------------------------------------
  Title('SysVolInfo')
  FileSelect
    DirectoryName("System Volume Information")
  FileActions
    MoveUpToZone()
    AddGap(0.21*VolumeSize + ZoneEnd - ZoneBegin - ZoneSize,DoNotVacate)
  FileEnd
----------------------------------------------------------------------------

The extract from the Debuglog is :-
===========================================================
09:42:48     Vacating free area
09:42:48       Evaluating expression at line 18 column 12...
09:42:48       Evaluating expression at line 18 column 12...
09:42:48       Evaluating expression at line 18 column 12...
09:42:48       Evaluating expression at line 18 column 12...
09:42:48         Number 1 = 2.100000e-001 (0)
09:42:48       Value of macro !VolumeSize! = 40007729152.000000
09:42:48         Number 2 = 4.000773e+010 (40007729152)
09:42:48         Result = 8.401623e+009 (8401623121)
09:42:48         Number 1 = 8.401623e+009 (8401623121)
09:42:49       Value of macro !ZoneEnd! = 6033252352.000000
09:42:49         Number 2 = 6.033252e+009 (6033252352)
09:42:49         Result = 1.443488e+010 (14434875473)
09:42:49         Number 1 = 1.443488e+010 (14434875473)
09:42:49       Value of macro !ZoneBegin! = 6033252352.000000
09:42:49         Number 2 = 6.033252e+009 (6033252352)
09:42:49         Result = 8.401623e+009 (8401623121)
09:42:49         Number 1 = 8.401623e+009 (8401623121)
09:42:49       Value of macro !ZoneSize! = 0.000000
09:42:49         Number 2 = 0.000000e+000 (0)
09:42:49         Result = 8.401623e+009 (8401623121)
09:42:49       AddGap has set the beginning of the next zone to LCN=2051177.
09:42:49     Finished FileActions.
===========================================================

Also, ZoneSize is given a value of 0 (but this was reported in a post some time ago).

I appreciate the tremendous work done by Jeroen, but it now 18 months since this latest release of MyDefrag. It would be nice to hear some news from Jeroen on how the next release is progressing.

3  MyDefrag v4 Forum / Requests for new features / Re: Quicker Defragging Method? on: December 12, 2010, 02:10:27 pm
The specific problems that I have encountered are :-

- Because of the distance (parts of the) files are moved, defragging is very slow.

- It appears that more parts of a file are moved up the disk than is necessary to order them in
  their unfragmented position.

- When space is tight, because of the way parts of files are moved out of the way, some of
  these intertwined files become labelled as unmovable, so that they are not then defragged.

- If MyDefrag stops after it hase partially defragged a file, on the next run it does not continue
   from where it left off. It starts all over again, first moving out those parts of the file that
   it had previously put in order.
4  MyDefrag v4 Forum / Requests for new features / Quicker Defragging Method? on: December 10, 2010, 08:33:01 pm
I've got several defragmented ~5GB archive files. From limited observations, it appears that to defrag them, MyDefrag moves the fragments further up the disk then brings the fragments down in their correct order. This appears to involve moving fragments further than is necessary.

MyDefrag could moved up files (or a FileMoveChunkSize part of a big file) that are is in the way, replacing them by the next sequenced part (or a FileMoveChunkSize part of a big file) of the defragmented file. Wouldn't this be quicker and involve moving files over shorter distances?

Would this also get round a problem that I have noticed, where fragmented large files (whose fragments are intertwined) are not defragmented, some of the files being marked as unmovable (due to lack of space above them?).
5  MyDefrag v4 Forum / Bugs and problems / Re: ImportListFromProgramHints Problem on: February 14, 2010, 04:50:11 pm
Using Debug(485), the debuglog shows the same entry for each .pf file, i.e :-

15:37:25     Analyzing the program hints
15:37:25       This is not a prefetch scenario file (invalid cookie): C:\WINDOWS\Prefetch\ALG.EXE-0F138680.pf
15:37:25       This is not a prefetch scenario file (invalid cookie): C:\WINDOWS\Prefetch\ATNOTES.EXE-158394E7.pf
15:37:25       This is not a prefetch scenario file (invalid cookie): C:\WINDOWS\Prefetch\AUTORUNS.EXE-0D80187B.pf
............       ................
............       ................
............       ................
15:37:27       This is not a prefetch scenario file (invalid cookie): C:\WINDOWS\Prefetch\WUAUCLT.EXE-399A8E72.pf
15:37:27       This is not a prefetch scenario file (invalid cookie): C:\WINDOWS\Prefetch\WUPDMGR.EXE-2F30BEAB.pf
15:37:27       This is not a prefetch scenario file (invalid cookie): C:\WINDOWS\Prefetch\XPLORER2_LITE.EXE-067B1651.pf
15:37:27       This is not a prefetch scenario file (invalid cookie): C:\WINDOWS\Prefetch\_IU14D2N.TMP-35FC02AC.pf
15:37:27     Sorting the program hints
15:37:27       No files imported.
15:37:27     Finished FileBoolean.
6  MyDefrag v4 Forum / Bugs and problems / ImportListFromProgramHints Problem on: February 14, 2010, 02:24:22 pm
I can't get this to work on XP Pro SP3. No files are selected - even though there are lots of '.pf files' in the folder 'C:\WINDOWS\Prefetch'.

                       My test script is ...
     Debug(175)
   VolumeSelect
     Name("C:")
   VolumeActions
     FileSelect
       ImportListFromProgramHints("*.pf")
     FileActions
       Defragment(Fast)
       FastFill()
       Pause()
  FileEnd
VolumeEnd
                 ... and the debuglog extract is ...
   .............................
   13:04:15       Found 1 items with wrap-around fragments.
   13:04:15       Finished Scanning for items with wrap-around fragments.
   13:04:15     Starting FileBoolean.
   13:04:15     Calculating the maximum end of the gap.
   13:04:15       Iteration 1: 0 unmovable clusters after 7842657, new ZoneBegin = 7842657
   13:04:15       Maximum end of gap = 7842657
   13:04:15     Analyzing the program hints
   13:04:15     Sorting the program hints
   13:04:15       No files imported.
   13:04:15     Finished FileBoolean.
   13:04:15   Finished VolumeActions.
   13:04:15 Calculating the maximum end of the gap.
   13:04:15   Iteration 1: 0 unmovable clusters after 7842657, new ZoneBegin = 7842657
   13:04:15   Maximum end of gap = 7842657
   13:04:15 Statistics after:
   ..................................

Just as a matter of interest, would the statement 'ImportListFromProgramHints("*")' select files in 'Layout.ini' as well those in '.pf files'.

 
7  MyDefrag v4 Forum / Questions and help / Re: Zone stability on: January 08, 2010, 06:37:59 pm
You can create fixed Zone Ends using the method below.

1. Run a Mydefrag Analyze script and use the diskmap cursor to determine suitable zone end cluster numbers.

2. create a .bat file called (say ZoneEndsC.bat), as below :-

      SET ZoneEnds= -m"Zone1=0900000" -m"Zone2=1800000"
::                  (use your own   ^^^^^    and        ^^^^^  cluster numbers)
::                  (add/remove  -m"Zonex=nnnnnnn" as required)

2. In your script (say it is called Daily for your C drive), use :-
  ...
  VolumeSelect
    CommandlineVolumes()
   ...
   FileSelect
   ...
   FileActions
   ...
     AddGap(!Zone1!*BytesPerCluster)
  FileEnd
  ...

3. create a .bat file called (say DailyC_Run.bat), with the lines :-
  @ECHO off
   CALL ZoneEndsC
   Start MyDefrag -r"Daily" %ZoneEnds% -v"C:"

4. Run DailyC_Run and it will leave gaps after the zones. To ensure that a gap is created (in case a zone is empty), then instead of AddGap(...) use MakeGap(...) AFTER FileEnd.

To adjust the Zone Ends, simply edit ZoneEndsC.bat. For a D: drive, create ZoneEndsD.bat and DailyD_Run.bat (using -v"D:").
 

8  MyDefrag v4 Forum / Bugs and problems / Re: Can't get Macros to work on: December 30, 2009, 07:42:21 pm
If I explicitly enter the directory name, then the expression works OK - it's only when I try to use the inbuilt macro that it doesn't work.
9  MyDefrag v4 Forum / Bugs and problems / Can't get Macros to work on: December 30, 2009, 01:45:58 pm
If I use the inbuilt macro !ScriptDirectory! as below :-

    FullPath("!ScriptDirectory!","=  MyDefragTemp*.*")

MyDefrag doesn't seem to recognise it and ignores any '=  MyDefragTemp*.*' files, as shown in the debuglog  extract below :-
....
12:36:43     The volume has already been analyzed, using existing data.
12:36:43     Starting FileBoolean.
12:36:43     Looking for: \=  MyDefragTemp*.*
12:36:45     Finished FileBoolean.
12:36:45   Zone 1 of 8
12:36:45   Cleaning up old data from memory.
12:36:45     Finished cleaning up old data from memory.
12:36:45   The volume has already been analyzed, using existing data.
12:36:45   Vacating free area
12:36:45     MakeGap has set the beginning of the next zone to LCN=0.
12:36:45   Zone 2 of 8
....

10  MyDefrag v4 Forum / Questions and help / Re: How to Place Files at Specific Locations? on: December 30, 2009, 01:14:58 pm
Thanks for your replies. Using SortByName(Ascending) instead of FastFill() worked OK.

I am using the script to ensure there is a space just after the $logfile/$bitmap, as I have found that XP often creates files after these files (which are half way down the disk and far away from the $mft).

I use CREATFIL to create a temporary 256MB file, my script relocates the file and optimizes the rest of the files, then I delete the temporary file - leaving a 256MB space. This works OK and could be used to create a space in the middle of a large zone.

I'm running XP SP3 on a 2.8GHz PC with 1GB memory. The only problem is that (as the debuglog extract below shows) it takes over 5 minutes to move the 256MB temporary file up the disk. This seems rather a long time - is this normal?
....
11:19:02   The volume has already been analyzed, using existing data.
11:19:02   Vacating free area
11:19:02     Evaluating expression at line 49 column 11...
11:19:02       Number 1 = 4.001595e+010 (40015953920)
11:19:02       Number 2 = 5.200000e-001 (0)
11:19:02       Result = 2.080830e+010 (20808296038)
11:19:02     MakeGap has set the beginning of the next zone to LCN=5080150.
11:19:02   Zone 1 of 8
11:19:02   Starting FileSelect for zone 1 (at line 50 column 3).
11:19:02     Cleaning up old data from memory.
11:19:02       Finished cleaning up old data from memory.
11:19:02     The volume has already been analyzed, using existing data.
11:19:02     Starting FileBoolean.
11:19:02     Looking for: *\# MyDefrag\=  MyDefragTemp*.*
11:19:04     Finished FileBoolean.
11:19:04     Starting FileActions.
11:19:04     Calculating the end of the zone.
11:19:04       ZoneBegin = 5080150
11:19:04       Number of clusters in selected items = 65549
11:19:04       Iteration 1: 0 unmovable clusters between 5080150 and 5145699, ZoneEnd = 5145699
11:19:04       New ZoneEnd = 5145699
11:19:04     Starting to sort by Name.
11:19:04     SortBy
11:19:04       Creating sorted list.
11:19:04         Finished creating sorted list.
11:19:04       Placing items in sorted order.
11:19:04     Calculating the end of the zone.
11:19:05       ZoneBegin = 5080150
11:19:05       Number of clusters in selected items = 65549
11:19:05       Iteration 1: 0 unmovable clusters between 5080150 and 5145699, ZoneEnd = 5145699
11:19:05       Re-using old ZoneEnd: 5145699
11:19:05     SortBy
11:19:05       Creating sorted list.
11:19:05         Finished creating sorted list.
11:19:05       Placing items in sorted order.
11:19:05         I want to place Inode=51410 ('C:\Documents and Settings\graham\My Documents\My PC\Programs\# MyDefrag') at Lcn=5080150, 13 clusters.
11:19:05           Testing if 'C:\Documents and Settings\graham\My Documents\My PC\Programs\# MyDefrag' (Inode=51410) is already at LCN=5080150
11:19:05             Yes, it is exactly there.
11:19:05         I want to place Inode=121680 ('C:\Documents and Settings\graham\My Documents\My PC\Programs\# MyDefrag\=  MyDefragTemp  =.tmp') at Lcn=5080163, 65536 clusters.
11:19:05           Testing if 'C:\Documents and Settings\graham\My Documents\My PC\Programs\# MyDefrag\=  MyDefragTemp  =.tmp' (Inode=121680) is already at LCN=5080163
11:19:05             The item is fragmented.
11:19:05           Vacating items from LCN=5080163 until there are at least 65536 free clusters.
11:19:05             No need to vacate, there are already 131059 free clusters at LCN=5080163.
11:19:05           Preemptive vacate of items not belonging to this zone, from LCN=5080150 to LCN=5082591.
11:19:05             Vacating movable items between LCN=5080150 and LCN=5082591.
11:19:05               Next movable item is at LCN=5211222, which is above LCN=5082591.
11:19:05               Finished vacating.
11:19:05           Moving 'C:\Documents and Settings\graham\My Documents\My PC\Programs\# MyDefrag\=  MyDefragTemp  =.tmp' (Inode=121680)
11:19:05             Moving 51200 clusters to Lcn=5080163.
11:23:24             Getting fragment list for: C:\Documents and Settings\graham\My Documents\My PC\Programs\# MyDefrag\=  MyDefragTemp  =.tmp
11:23:24               Translating into fragment tree....
11:23:24               Counting fragments....
11:23:24             Moving 14336 clusters at offset=51200 to Lcn=5131363.
11:24:28             Getting fragment list for: C:\Documents and Settings\graham\My Documents\My PC\Programs\# MyDefrag\=  MyDefragTemp  =.tmp
11:24:28               Translating into fragment tree....
11:24:28               Counting fragments....
11:24:28       Finished sorting by Name.
....
11  MyDefrag v4 Forum / Questions and help / How to Place Files at Specific Locations? on: December 29, 2009, 06:44:41 pm
I have tried to use the OptimizeDaily MakeGap (....) MakeGap(0) technique, :-
....
  MakeGap(VolumeSize * 0.52, DoNotVacate)
  FileSelect
    FullPath("*\# MyDefrag","=  MyDefragTemp*.*")
  FileActions
    FastFill()
  FileEnd

  MakeGap(0)
....
      in an attempt to initially place "=  MyDefragTemp*.*" files at a specific (higher) disk location, before going on to process the rest of the disk.

However, the files are not moved up. The debuglog file shows :-
....
Version: MyDefrag v4.2.7
Date: 2009/12/29 16:56:28
Windows version: v5.1 build 2600 S
....
16:57:07   Vacating free area
16:57:07     Evaluating expression at line 49 column 11...
16:57:07       Number 1 = 4.001595e+010 (40015953920)
16:57:07       Number 2 = 5.200000e-001 (0)
16:57:07       Result = 2.080830e+010 (20808296038)
16:57:07     MakeGap has set the beginning of the next zone to LCN=5080150.
16:57:07   Zone 1 of 8
16:57:07   Starting FileSelect for zone 1 (at line 50 column 3).
16:57:07     Cleaning up old data from memory.
16:57:07       Finished cleaning up old data from memory.
16:57:07     The volume has already been analyzed, using existing data.
16:57:07     Starting FileBoolean.
16:57:07     Looking for: *\# MyDefrag\=  MyDefragTemp*.*
16:57:09     Finished FileBoolean.
16:57:09     Starting FileActions.
16:57:09     Calculating the end of the zone.
16:57:09       ZoneBegin = 5080150
16:57:10       Number of clusters in selected items = 49015
16:57:10       Iteration 1: 0 unmovable clusters between 5080150 and 5129165, ZoneEnd = 5129165
16:57:10       New ZoneEnd = 5129165
16:57:10     FastFill
16:57:10     Starting FastFill.
16:57:10       Vacating movable items between LCN=5080150 and LCN=5129165.
16:57:10         Next movable item is at LCN=5211222, which is above LCN=5129165.
16:57:10         Finished vacating.
16:57:10       Starting to fill the gap at LCN=5080150, size=131072 clusters.
16:57:10         There are no more items above the gap, finished.
16:57:10     Updating list of unmovable files at: C:\Program Files\MyDefrag\MyDefrag.dat
16:57:10       Loading file into memory: C:\Program Files\MyDefrag\MyDefrag.dat
16:57:10       Finished updating list of unmovable items.
....

Could anybody please explain what I'm doing wrong?


12  MyDefrag v4 Forum / Bugs and problems / Floating-Point Numbers using Multipliers cause Script Syntax Errors on: November 10, 2009, 06:35:18 pm
According to the Help page Scripts-Settings-NUMBER, Multipliers can be appended to integer or floating-point - but the latter cause Scripts to fail with Syntax Errors, e.g. :-

      15KB, 15M, 15MB are OK
      1.5KB, 1.5M, 1.5MB fail
13  MyDefrag v4 Forum / Bugs and problems / FastFill Won't move file into correct Zone due to Unmovable file on: October 22, 2009, 07:08:36 pm
MyDefrag cleared out a space for a file, but will not move it - apparently because an unmovable file occupies part of the space. The problem file is subsequently coloured as if it has been processed normally, even though it has not been moved into its correct zone.

Current debuglogs don't appear to highlight the problem (maybe because the problem first occurred on a previous Mydefrag run, in which the space was created for it to move into ).
14  MyDefrag v4 Forum / Bugs and problems / Re: LastAccess Problem with Literal date/time on: October 21, 2009, 10:23:31 am
Thanks Jeroen, that looks like it's resolved the problem. I didn't realise that MyDefrag used GMT - and I'm on BST at the moment. I'll have to find a way to tweak my times.
15  MyDefrag v4 Forum / Bugs and problems / Re: LastAccess Problem with Literal date/time on: October 20, 2009, 08:55:25 pm
I'm using NTFS & LastAccess time properties seems to be updating OK.

Hoewever, something really weird is going on. Using :-

                    LastAccess(2009/10/20 08:00:00,2009/10/20 09:03:12)

one of the files highlighted has a Date Accessed of 20/10/2009 09:14, which is above the selected range.

The Debuglogs up to (495) don't help - I aborted a Debug(495) run because it was horrendously slow.
Pages: [1] 2 3 4
Powered by MySQL Powered by PHP Powered by SMF 1.1.5 | SMF © 2006-2008, Simple Machines LLC Valid XHTML 1.0! Valid CSS!