home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Misc / UNT-VDIS.LHA / vdisk.doc < prev    next >
Encoding:
Text File  |  1994-11-11  |  12.5 KB  |  273 lines

  1. $VER: vdisk.doc 2.4 (11.11.1994)   (C) 1994 by Etienne Vogt
  2.  
  3.  
  4. INTRODUCTION
  5.  
  6.  vdisk.device is a driver for a recoverable RAM disk. It started 2 years ago as
  7. a hack of ASDG-RAM (written by Perry S. Kivolowitz). These hacked versions 
  8. (1.3 -> 1.12) were not distributed.
  9.  As of version 2.0, it has been entirely rewritten, with many new features added :
  10.  
  11.  - Up to 16 units with virtually unlimited size (512 MB)
  12.  - Dynamic memory allocation and (optionnaly) deallocation
  13.  - Full support of all AmigaDOS Filesystems.
  14.  - Will survive the heaviest system crashes as long as its own data is not 
  15.    corrupted.
  16.  - In case of a recovery failure, the cause can be reported by a support command.
  17.  
  18.  VDisk requires AmigaDOS 2.04 or higher (V37). It has been heavily tested on
  19. the following configurations :
  20.  
  21.  - A500 68000 ECS , 1 Mb Chip 2 Mb Fast , WB 2.04 -> 3.1
  22.    20 Mb IDE-XT + 170 Mb SCSI HDs
  23.  - A3000 68030 ECS, 2 Mb Chip 8 Mb Fast , WB 2.04 -> 3.1
  24.    100 Mb + 1 Gb SCSI HDs
  25.  - A500 68040 ECS , 1 Mb Chip 2 Mb Fast16 8 Mb Fast32 , WB 2.04
  26.    50 Mb SCSI HD
  27.  - A4000 68040 AGA, 2 Mb Chip 8 Mb Fast , WB 3.0
  28.    100 Mb IDE HD
  29.  
  30.  VDisk has been developed independently from StatRam (Another ASDG-RAM based
  31. ram drive written by Richard Waspe and Nicola Salmoria)
  32.  
  33.  
  34. DISTRIBUTION
  35.  
  36.  vdisk.device is Freely Distributable Copyrighted Software (FreeWare).
  37.  Some restrictions from the original ASDG-RAM package remains :
  38.  
  39.  This package :
  40.  
  41.  - Must be copied only in the form of the original lha archive, as uploaded
  42.    to aminet by the author.
  43.  - May not be distributed by any commercial software or hardware vendor.
  44.  - May not be sold under any guise.
  45.  - Must contain the following copyright information.
  46.  
  47.    vdisk.device, Copyright 1994 by Etienne Vogt.
  48.    Inspired from asdg.vdisk.device, Copyright 1987 by Perry S. Kivolowitz
  49.     (ASDG Incorporated)
  50.  
  51.  Specifically :
  52.  
  53.   No maker or seller of Amiga expansion hardware or software may distribute
  54.  this software in any way. No reseller of public domain software may
  55.  distribute this software either (as this in NOT in the public domain).
  56.   The only acceptable means of distribution is by networks, bbs's and by
  57.  non-profit user groups. Distribution MUST BE FREE (except for media
  58.  costs plus a token amount covering only shipping and handling).
  59.  
  60.  Fred Fish is explicitely allowed to include this package in his AmigaLibDisk
  61.  collection (either on floppy disk or on CD-ROM), as is the aminet group for
  62.  their Aminet CD-ROM.
  63.  
  64.  
  65. DISCLAIMER
  66.  
  67.  This software is provided "as is" without any warranty, either expressed or
  68. implied. By using this software, you accept the entire risk as to its quality
  69. and performance.
  70.  
  71.  
  72. INSTALLATION
  73.  
  74.  - Copy the file 'vdisk.device' to your DEVS: directory .
  75.    NEVER CHANGE THE NAME OF THIS FILE !!!
  76.  
  77.  - Copy the support commands CleanRamDisk, DeleteRamDisk, VDStat to your
  78.    C: directory or whatever you like. You may also copy the .info files.
  79.  
  80.  - If you have OS 2.1 or higher, copy the file VD0 to your DEVS:DOSDrivers
  81.    directory. You may change the name of this file to whatever you want.
  82.    You may edit this file to change some parameters of the recoverable RAM
  83.    disk, such as its maximum size. (see below)
  84.  
  85.  - If you have OS 2.0 , join the file VD0.mountlist to your DEVS:MountList
  86.    file. You may change the name of the mountlist entry to whatever you want.
  87.    You may also edit the mountlist record to change some parameters of the
  88.    recoverable RAM disk (see below). Make sure you do not have another
  89.    entry with the same name in your mountlist (especially if you use the
  90.    old asdg-ram).
  91.    Add a 'Mount VD0:' command to your S:User-Startup. If you have 1 Mb or
  92.    less memory, it may be wise to put this command at the beginning of your
  93.    Startup-Sequence to minimize the risk of recovery failures.
  94.  
  95.  - If you still have OS 1.x, well... It's time to upgrade !
  96.  
  97.  - After that, reboot your Amiga. If all is OK, you should see an icon named
  98.    VD-RAM-00 on your Workbench.
  99.  
  100.    NOTE : If you are upgrading from an earlier version of vdisk.device, you
  101.           *MUST* issue a 'DeleteRamDisk' command on all active units before
  102.           rebooting the system, or unexpected things may happen.
  103.           See the support commands below.
  104.  
  105.  
  106. CHANGING MOUNTFILE PARAMETERS
  107.  
  108.   WARNING : Changing any other MountFile parameter than those listed below will
  109.             cause the vdisk.device to cease to function and to wake up the
  110.             GURU with recoverable alert number $50000005 !
  111.             After changing ANY parameter of an already active unit, you MUST
  112.             issue a 'DeleteRamDisk' command on it before rebooting the system,
  113.             or unexpected things may happen.
  114.  
  115.  - DOS device name : Unlike the original asdg.vdisk.device, you can give any
  116.    name you want to the recoverable RAM disk. Just change the name of the
  117.    mountfile (OS 2.1+) or the mountlist entry (OS 2.0). It is recommended
  118.    that the last character be a digit equal to the unit number.
  119.  
  120.  - Unit : This is the device unit number. You can have several recoverable
  121.    RAM disks by having different mountfiles with different values for this
  122.    keyword. Valid numbers are 0 to 15, giving a possible total of 16 units.
  123.  
  124.  - Flags : Different options may be selected here. At this time, you have 
  125.    only one option.
  126.    A Flags value of 1 will enable autocleaning on the corresponding unit.
  127.    This means that the memory used by the ram disk will automatically decrease
  128.    when you delete files in it. This also implies that you cannot use tools
  129.    like DiskSalv to recover the deleted files.
  130.    A Flags value of 0 disables autocleaning. You must then use the CleanRamDisk
  131.    support command to free memory after deleting files. Cleaning may still
  132.    happen if the system runs low on memory.
  133.    It is recommended that you keep AutoCleaning enabled.
  134.  
  135.  - HighCyl : This is used to specify the maximum size the recoverable RAM disk
  136.    is allowed to use. When this size is reached, you will get a 'Volume is full'
  137.    requester. Note that unlike RAD, vdisk.device does only allocate memory when
  138.    you write files into it.
  139.    Do not set this too high ! If you run out of memory before reaching the
  140.    maximum size of the RAM disk, you will get a 'write error' requester and
  141.    the files in the RAM disk might become corrupt !!!
  142.    The recommended maximum size is one fourth of your total FAST RAM.
  143.    The HighCyl parameter must be set to an ODD VALUE. HighCyl + 1 is the total
  144.    number of 'virtual tracks' usable by the RAM disk. One virtual track has
  145.    a size of 8 Kb (16 sectors of 512 bytes).
  146.    The default HighCyl value of 63 thus corresponds to a maximum size of
  147.    512 Kb. For a 2 Mb RAM disk, you will set HighCyl to 255. The maximum
  148.    allowed value is 65533. This corresponds to 512 Mb. Remember this value
  149.    *MUST* be odd !
  150.  
  151.  - Buffers : This is the number of buffers used by the File System to speed up
  152.    disk accesses. With a RAM disk, it may actually slow it down, so you'd
  153.    better not change this.
  154.  
  155.  - BufMemType : Strictly speaking, this is the type of memory used by the
  156.    File System for its internal buffers. For vdisk.device, is also affects
  157.    the type of memory allocated to store data you write into it.
  158.    Useful values are 1 (any memory), 3 (only CHIP memory, not recommended !)
  159.    and 5 (only FAST memory, the default).
  160.    If you have both 16 bit and 32 bit FAST memory, and you want to use only
  161.    the 16 bit memory for the RAM disk, set BufMemType to 517.
  162.  
  163.  - DosType : The type of File System used. Possible values are :
  164.     0x444f5300 : Old File System. Slow and not really needed since vdisk.device
  165.                  has its own checksums.
  166.     0x444f5301 : Fast File System. The default.
  167.     0x444f5302 : International Old File System. OS 2.1 + only.
  168.     0x444f5303 : International Fast File System. OS 2.1 +
  169.     0x444f5304 : Directory Caching Old File System. OS 3.0 +
  170.     0x444f5305 : Directory Caching Fast File System. OS 3.0 +
  171.    International mode may be used if you run OS 2.1 or higher. Directory Caching
  172.    is not a good idea since it will slow down the RAM disk.
  173.  
  174.  - Activate : Instructs the mount command to start the device immediately when
  175.    set to 1. If you set it to 0, you must add some command in your Startup
  176.    that accesses VD0 to start it really.
  177.  
  178.  
  179. SUPPORT COMMANDS
  180.  
  181.  CleanRamDisk :
  182.  
  183.    This command is used to force a vdisk unit to free deleted file space. It
  184.   is generally not needed with autocleaning units.
  185.    This command may be used from Workbench (but you can't use the switches).
  186.   Select the virtual disk icon, then double-click on the CleanRamDisk icon.
  187.  
  188.   Usage : CleanRamDisk DEVICE,UNIT/K/N,NOFREECHIP/S,REBUILD/S,FREEBOOT/S
  189.  
  190.   DEVICE : This is the AmigaDOS device name (ex. VD0: )
  191.   UNIT : Alternatively to the AmigaDOS name, you may specify the unit number
  192.          (ex. UNIT 0)
  193.   NOFREECHIP : When BufMemType is set to 1, CleanRamDisk normally attempts to
  194.                free some CHIP memory by relocating virtual tracks located in
  195.                CHIP RAM to FAST RAM. This switch inhibits this behaviour.
  196.   REBUILD : When a vdisk unit has read errors on it (generally caused by some
  197.             bad software that writes over someone else's memory), it will be
  198.             lost at the next reboot (which in this case may come soon).
  199.             This switch forces a rebuild of all internal checksums so that
  200.             the unit will be kept alive after reset. Some data will still be
  201.             bad, but you should be able to save most of it.
  202.   FREEBOOT : If something has been written in the RAM disk's boot blocks
  203.              (unused at this time), virtual track 0 will be locked in memory.
  204.              This switch will mark the boot blocks as free, thus enabling the
  205.              Cleaning routine to flush track 0 out.
  206.  
  207.  DeleteRamDisk :
  208.  
  209.    This command deletes a virtual disk unit entirely (as RemRAD for RAD). All
  210.   memory used is freed and the File System is inhibited. (VD0:BUSY)
  211.    This command may be used from Workbench. Select the virtual disk icon, then
  212.   double-click on the DeleteRamDisk icon. A requester will ask you for confir-
  213.   mation.
  214.    You *MUST* use this command when you change the mountfile parameters of
  215.   an active unit. You must also delete all active units when you upgrade to
  216.   a newer version of vdisk.device. 
  217.  
  218.   Usage : DeleteRamDisk DEVICE,UNIT/K/N
  219.  
  220.   DEVICE : This is the AmigaDOS device name (ex. VD0: )
  221.   UNIT : Alternatively to the AmigaDOS name, you may specify the unit number
  222.          (ex. UNIT 0)
  223.  
  224.  VDStat:
  225.  
  226.    This command is used to get information about a virtual disk unit that
  227.   failed to recover its data after reboot. It is mainly intended for beta
  228.   testers, so it cannot be used from Workbench.
  229.    Recovery error 2 (Root Structure not found) will always show at power-up.
  230.  
  231.   Usage : VDStat DEVICE,UNIT/K/N,FULL/S
  232.  
  233.   DEVICE : This is the AmigaDOS device name (ex. VD0: )
  234.   UNIT : Alternatively to the AmigaDOS name, you may specify the unit number
  235.          (ex. UNIT 0)
  236.   FULL : This switch causes more information to be displayed. It is mainly
  237.          used for debugging purposes.
  238.  
  239.   Recovery error codes :
  240.  
  241.   1 (Deleted Unit) : This will show after reboot when a unit is deleted by
  242.     the DeleteRamDisk command.
  243.   2 (Root structure not found) : This will always show up at power-up. It may
  244.     also happen if something else (like RAD) allocates memory in reverse order
  245.     before vdisk.device starts. To avoid this, always mount a vdisk unit before
  246.     any ramdrive units. Last possibility is a bad program trashing memory.
  247.     This error indicates that all units were lost.
  248.   3 (Bad Root Structure Checksum) : The Root Structure has been corrupted.
  249.     Bad program around ! All units were lost.
  250.   4 (Bad Sector CheckSum) : Either a bad program has trashed your data, or
  251.     you have a memory failure.
  252.   5 (Track not found) : Bad virtual track. This may happen if the unit maximum
  253.     size is set too big, your memory is heavily fragmented or a bad program
  254.     trashed some memory.
  255.   6 (Reallocation Failure) : Everything seems OK, but memory couldn't be
  256.     reallocated with AllocAbs(). This is a bad one that will also wake up
  257.     the guru with recoverable alert number $50010003. If you have access
  258.     to E-Mail, please send a bug report to me (address below).
  259.   7 (Unit Structure not found) : Unit structure get trashed. Bad program !
  260.   8 (Bad Unit Structure Checksum) : Corrupted unit structure. Bad Program !
  261.   9 (Unknown Error) : How did you get this one ?
  262.  
  263.  
  264. CONTACTING THE AUTHOR
  265.  
  266.  I can be reached by E-Mail at the following address : vogt@mesiob.obspm.fr
  267.  
  268.   Bug reports must include the complete hardware and software configuration,
  269.  including any third party software that was running in the background.
  270.  
  271.  
  272.                                          Etienne Vogt, 11/11/1994
  273.