home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 5 / DATAFILE_PDCD5.iso / demos / proart24 / Virtualise / Docs / FrontEnd < prev    next >
Encoding:
Text File  |  1996-08-08  |  16.3 KB  |  377 lines

  1. File        : FrontEnd
  2. Date        : 08-Aug-96
  3. Author      : © A.Thoukydides, 1995, 1996
  4. Description : Description of the WIMP front-end "!Virtualis".
  5.  
  6.  
  7. INTRODUCTION
  8.  
  9. This file is intended as a reference to all of the features included in the
  10. "!Virtualis" front-end. For a simple introduction read the "Tutorial" file.
  11. The front-end supports interactive help; use Acorn's !Help application to
  12. obtain information about the item under the mouse pointer.
  13.  
  14.  
  15. STARTING THE PROGRAM
  16.  
  17. It is necessary to register the software before using it for the first time.
  18. See the "Tutorial" file for details of how to do this.
  19.  
  20. Start the front-end by simply double-clicking SELECT on the "!Virtualis" icon
  21. in a directory viewer. After a short delay the application icon will appear
  22. on the icon-bar.
  23.  
  24.  
  25. THE ICON BAR
  26.  
  27. Clicking Menu on the icon which appears on the iconbar opens the main program
  28. menu which offers the following options:
  29.  
  30.     Info            Moving over the sub-menu arrow displays a standard
  31.                     program information window. The version number should be
  32.                     the same as the version of the Virtualise module being
  33.                     used.
  34.                     
  35.     List areas...   This opens up a window giving details of all the dynamic
  36.                     areas in the machine, and allow various operations to be
  37.                     performed. Clicking SELECT on the icon has the same
  38.                     effect.
  39.  
  40.     Page faults...  This opens up a window showing the number of page faults
  41.                     which have been serviced classified according to the type
  42.                     of instruction which generated the exception.
  43.                     
  44.     Configure...    This opens up a dialogue box which allows the Virtualise
  45.                     module to be configured. Clicking ADJUST on the icon has
  46.                     the same effect.
  47.  
  48.     Automatic...    This opens up a window listing the dynamic area names for
  49.                     which virtual memory will automatically be enabled when
  50.                     they are next created.
  51.  
  52.     Tasks...        This opens up a window listing the current WIMP tasks,
  53.                     allowing specified tasks to be suspended and swapped to
  54.                     disc.
  55.                     
  56.     Quit            Quits the front-end program. The module is not affected.
  57.  
  58.  
  59. DYNAMIC AREA LIST WINDOW
  60.  
  61. The dynamic area list window can be opened by either selecting the
  62. "List areas..." option from the icon-bar menu or clicking SELECT on the
  63. application icon.
  64.  
  65. The window which is opened displays details of all the dynamic areas which
  66. exist in the computer. This list is updated once per second on WIMP
  67. null-polls. Areas with numbers under 256 (those which are not listed as
  68. dynamic areas in the Taskmanager) are shaded. The columns of details are:
  69.  
  70.     Name            The name of the dynamic area as displayed by the
  71.                     TaskManager or returned by OS_DynamicArea 2.
  72.                     
  73.     Number          The dynamic area number as used with OS_DynamicArea,
  74.                     OS_ReadDynamicArea and OS_ChangeDynamicArea.
  75.                     
  76.     Maximum         The maximum size (reserved logical address space) of the
  77.                     dynamic area.
  78.                     
  79.     Logical         The current logical size of the area, i.e. how much
  80.                     memory the user of the area thinks is being used.
  81.                     
  82.     Physical        The current physical size of the area, i.e. how much real
  83.                     memory is being used to support accesses to area. If the
  84.                     area has not got virtual memory enabled then it will be
  85.                     the same as the logical size.
  86.                     
  87.     VM              An indicator of whether virtual memory is enabled for the
  88.                     area.
  89.  
  90. Unshaded areas may be selected by clicking with SELECT and ADJUST in the
  91. usual manner. Clicking Menu opens a menu that allows various operations to be
  92. performed. The options offered are:
  93.  
  94.     Virtualise      Either enable or disable virtual memory for all of
  95.                     the selected dynamic areas. If any of the selected
  96.                     areas have virtual memory already enabled then a tick
  97.                     appears next to this item. This option is shaded if no
  98.                     areas are selected.
  99.     
  100.     Delete area...  Remove the selected dynamic areas. This option is shaded
  101.                     if no areas are selected. A dialogue box is opened to
  102.                     confirm the deletion.
  103.  
  104.     Show map...     This opens a window for each selecting area showing the
  105.                     status of all the pages of memory within the areas.
  106.                     Double-clicking SELECT on a dynamic area entry has the
  107.                     same effect.
  108.     
  109.     Select all      This selects all of the dynamic areas.
  110.     
  111.     Clear selection This deselects any areas which are selected.
  112.  
  113. The Virtualise and Remove options should obviously be used with care; it is
  114. very easy to crash the computer if these are used carelessly.
  115.  
  116. If an application is dragged into the list window the "Modify application"
  117. dialogue box is opened. This is described in the next section.
  118.  
  119.  
  120. MODIFY APPLICATION DIALOGUE
  121.  
  122. This allows the application to be modified so that it always uses virtual
  123. memory when it is run. A backup of the application should be made before
  124. using this option.
  125.  
  126. The top of the window shows which application will be altered. The centre of
  127. the window controls the operation to perform:
  128.  
  129.     Enable virtual memory by default
  130.     
  131.                     This option modifies the !Run file of the application to
  132.                     automatically enable virtual memory for the dynamic areas
  133.                     which are selected within the dynamic area list window.
  134.                     These should be the dynamic areas that are used by the
  135.                     application being modified. This will take effect the next
  136.                     time that the application is started. This option also
  137.                     copies the Virtualise module into the
  138.                     "!Boot.Choices.Boot.PreDesk" directory to ensure that it
  139.                     is always loaded.
  140.     
  141.     Size limit      This is the maximum size that will be set for the
  142.                     selected dynamic areas.
  143.     
  144.     Restore original !Run file
  145.     
  146.                     This attempts to restore the application to the state it
  147.                     was in before it was modified. Due to the way in which
  148.                     this operates it may not take effect until the next time
  149.                     the computer is reset.
  150.  
  151.     Uninstall module
  152.     
  153.                     Selecting this option removes the Virtualise module from
  154.                     the boot sequence if it was previously installed by the
  155.                     enable virtual memory option.
  156.  
  157. At the bottom of the window are two action buttons:
  158.  
  159.     Cancel          Clicking on this icon aborts the modification, leaving
  160.                     the application unchanged. Pressing Escape has the same
  161.                     effect.
  162.     
  163.     OK              Clicking on this icon performs the selected modification.
  164.                     It is also possible to press Return to have the same
  165.                     effect.
  166.  
  167.  
  168. PAGE STATUS WINDOW
  169.  
  170. Any number of page status windows may be opened. The main part of the window
  171. at the top contains a square for each page of memory within the dynamic area.
  172. The colour of the square indicates the state of that page. Clicking MENU
  173. within the window opens a menu:
  174.  
  175.     Key...          A window showing the meaning of the different colours.
  176.  
  177.     Zoom            A list of the possible scales at which the status display
  178.                     can be shown.
  179.  
  180. The lower part of the window has an Update button which takes a new snapshot
  181. of the state of the dynamic area. Also shown is the dynamic area number and
  182. name.
  183.  
  184. Note that the access count is only meaningful if the NFU page replacement
  185. policy is configured.
  186.  
  187.  
  188. CONFIGURATION WINDOW
  189.  
  190. The configuration window is split into four main sections. There are also
  191. three buttons at the bottom of the window:
  192.  
  193.     Save            Save the values shown. These values will be used by both
  194.                     the Virtualise module and the "!Virtualis" front-end each
  195.                     time they are started in the future.
  196.     
  197.     Read current    Reads the current settings from the Virtualise module.
  198.                     The numerical values are rounded down to 0.1MB multiples
  199.                     before being displayed.
  200.     
  201.     Set new         Sets the values shown in the window. The settings are
  202.                     then read back and window updated.
  203.  
  204. If the Virtualise module is not loaded the last two buttons will produce an
  205. error message.
  206.  
  207. The section of the window entitled "Memory usage" shows each of the values
  208. which can be set using Virtualise_Configure. Note that these values can only
  209. be specified to the nearest 0.1MB due to the way in which the Toolbox system
  210. handles number range gadgets. The items are:
  211.  
  212.     Claim up to     The amount of real memory to claim automatically for the
  213.                     virtual memory pool if it could be useful.
  214.     
  215.     Leave free      The minimum amount of memory to leave free when the size
  216.                     of the virtual memory pool is adjusted.
  217.     
  218.     Size limit      The amount of logical address space reserved for dynamic
  219.                     areas if -1 is specified as the maximum size when they
  220.                     are created.
  221.  
  222. The next section of the window entitled "Swap file directory" allows the
  223. directory used for storing swap files to be set. This sets the system
  224. variable Virtualise$SwapDir as a macro, so system variables (such as
  225. <Wimp$ScrapDir>) may be included. There are three ways of setting the
  226. directory: dragging the directory icon to a directory window, dragging a file
  227. or directory icon into the configuration window, or by typing the required
  228. pathname into the writable icon. Note that a change to the swap file
  229. directory only affects swap files created after the change has been made;
  230. existing swap files are not moved.
  231.  
  232. The third section of the window entitled "Page replacement policy" sets the
  233. algorithm used to select pages to swap to disc. The current options are:
  234.  
  235.     NFU             Not frequently used. This chooses the page that has been
  236.                     accessed the least frequently.
  237.     
  238.     FIFO            First-in, first-out. Pages are swapped out in the order
  239.                     they were originally swapped in. In other words this
  240.                     chooses the oldest page.
  241.     
  242.     Random          A page is chosen at random, irrespective of how recently
  243.                     or frequently it has been used.
  244.  
  245. There are also two option buttons which control whether pages are read and
  246. written individually or grouped into larger file operations (which should
  247. be faster).
  248.  
  249. The final section of the window entitled "Load module" controls whether the
  250. Virtualise module is loaded within the !Boot sequence. The options are:
  251.  
  252.     In !Boot sequence
  253.     
  254.                     When this option is selected, the Virtualise module will
  255.                     be placed into the "!Boot.Choices.Boot.PreDesk" directory
  256.                     to ensure that it is always loaded.
  257.     
  258.     When !Virtualis is run
  259.     
  260.                     When this option is selected, any copy of Virtualise in
  261.                     the "!Boot.Choices.Boot.PreDesk" directory will be
  262.                     deleted. The module will then only be loaded when the
  263.                     !Virtualis front-end is run.
  264.  
  265.  
  266. PAGE FAULTS WINDOW
  267.  
  268. The "Number of page faults" window is opened by selecting the
  269. "Page faults..." option from the icon-bar menu. The window displays the
  270. numbers of virtual memory page faults which were generated by different
  271. classes of instruction since the module was loaded.
  272.  
  273. Note that page faults generated by floating point processor instructions will
  274. only be listed under "Coprocessor data transfer" if a real floating point
  275. unit is being used. If Acorn's Floating Point Emulator is being used then it
  276. will be an instruction within the emulator code which actually generates the
  277. exception.
  278.  
  279.  
  280. AUTOMATIC VIRTUAL MEMORY WINDOW
  281.  
  282. The automatic virtual memory list window is opened by selecting the
  283. "Automatic..." option from the icon-bar menu.
  284.  
  285. The window which is opened lists the names of the dynamic areas for which
  286. virtual memory will be enabled by default. This operates by setting system
  287. variables as described in the "Module" file. This list is updated once per
  288. second on WIMP null-polls. The columns of details are:
  289.  
  290.     Name            The name of the dynamic area as displayed by the
  291.                     TaskManager or returned by OS_DynamicArea 2. If a
  292.                     system variable corresponding to an unknown dynamic
  293.                     area then the capitalisation and special characters
  294.                     may not be exactly the same as the actual dynamic area
  295.                     name.
  296.  
  297.     Size limit      The maximum size (reserved logical address space) that
  298.                     should be allocated for the dynamic area if no limit is
  299.                     specified by the program that creates it.
  300.  
  301. Dynamic area names may be selected by clicking with SELECT and ADJUST in the
  302. usual manner. Clicking Menu opens a menu that allows various operations to be
  303. performed. The options offered are:
  304.  
  305.     Size limit
  306.     
  307.     Add area        The sub-menu lists all the names of dynamic areas that
  308.                     have been seen by the "!Virtualis" front-end. Select
  309.                     the name of a dynamic area to add it to the list. It is
  310.                     initially added with a size limit of 256MB. The list of
  311.                     known dynamic areas is saved betweed sessions.
  312.     
  313.     Remove area     Remove the selected dynamic area names from the list.
  314.                     This also unsets the corresponding system variables.
  315.     
  316.     Save            Save a list of the current settings.  This option also
  317.                     copies the Virtualise module into the
  318.                     "!Boot.Choices.Boot.PreDesk" directory to ensure that it
  319.                     is always loaded. The file of dynamic areas is read by
  320.                     the Virtualise module each time it is loaded. Hence once
  321.                     the use of virtual memory has been configured, it is not
  322.                     necessary to use the "!Virtualis" front-end.
  323.  
  324.     Select all      This selects all of the dynamic areas.
  325.     
  326.     Clear selection This deselects any areas which are selected.
  327.  
  328.  
  329. TASK SWAPPER WINDOW
  330.  
  331. The task swapper window is opened by selecting the "Tasks..." option from the
  332. icon-bar menu.
  333.  
  334. The window which is opened lists the names of the WIMP tasks running within
  335. the computer. The columns of details are:
  336.  
  337.     Task            The name of the task, as displayed in the TaskManager
  338.                     window.
  339.                     
  340.     Size            The size of the task, either in memory or on disc. For
  341.                     active tasks this is the same as the figure displayed by
  342.                     the TaskManager.
  343.  
  344.     Disc            An indicator of whether the task has been swapped to
  345.                     disc.
  346.  
  347. Clicking on a task within the window attempts to suspend the task, and swap
  348. it to disc. Clicking on a suspended task attempts to reload it and resume
  349. execution. If ADJUST is used, instead of SELECT, then the window is also
  350. closed.
  351.  
  352. When a task is suspened, any open windows belonging to the task are closed,
  353. and any icons on the icon-bar are replaced. The task may be resumed by
  354. clicking on any of the replacement icon-bar icons.
  355.  
  356. If it is not possible to restore a task, for example if there is insufficient
  357. memory, then an error is displayed. This offers the following options:
  358.  
  359.     Cancel          Close the error window, and leave the task suspended.
  360.     
  361.     Kill Task       Stop the task immediately. This does not exit the task
  362.                     normally, so should only be used as a last resort.
  363.  
  364. If an attempt is made to exit the desktop while a task is swapped out, an
  365. error dialogue is displayed, and the following options are offered:
  366.  
  367.     Restore         Attempt to swap the task back. The shutdown is aborted.
  368.  
  369.     Abort           Abandon the shutdown, and leave the task suspended.
  370.     
  371.     Shutdown        Kill the task, and resume the shutdown. The task is not
  372.                     exited normally, so this should only be used as a last
  373.                     resort.
  374.  
  375. Not all tasks can be safely swapped out - if in doubt, save any important
  376. data (in all applications) before trying to suspend the task.
  377.