home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: OtherApp / OtherApp.zip / ellie03.zip / ReadMeV3.txt < prev    next >
Text File  |  1999-07-30  |  20KB  |  435 lines

  1. Ellie03.readme.  Draft 1.  [for version r2a]
  2. --------------------------
  3.  
  4. Ellie is a multi-threaded application to monitor a running setihome.exe process
  5. on OS/2.
  6.  
  7. Ellie has been designed with the multitasking abilities of OS/2 in mind.  This
  8. means that she is not only multi-threaded but unobtrusive, elegant and quite 
  9. happy sitting neatly somewhere on your screen while you go about your work on
  10. your computer.
  11.  
  12. So, with OS/2, setihome.exe and Ellie, you can crunch the WU while working with
  13. Ellie only taking up as much or as little of the screen as you want.  The 
  14. program revolves around the 'Elliebar', an unobtrusive bar graph that you can 
  15. place anywhere on your desktop.
  16. ______________________________________________________________________________
  17.  
  18. Installation:
  19.  
  20. Unzip the ellie(version ID).zip to a directory of your choice.
  21. DO NOT INSTALL into the same directory as your setihome client.
  22.  
  23. If you are upgrading over an old version you may install into
  24. the same directory ensuring that all files are replaced by the unzip
  25. program.  Your ELLIE.INI file will be left intact and will be automatically
  26. upgraded as you use the program.
  27.  
  28. [Step 1] Run INSTALL.CMD.
  29.  
  30. Follow the instructions presented to you.
  31.  
  32. The script will install a folder on your Desktop containing the Ellie program
  33. object, a shadow of a folder containing WAV files for use with certain alarm
  34. features of Ellie (especially for future versions), a shadow of this readme file
  35. and a shadow of the seti.exe client document.
  36.  
  37. [Step 2] Please ensure to close your setihome.exe client session if it is
  38. running (unless you are running the client through a previous version of Ellie.)
  39.  
  40. Double-click on the Ellie object in the Ellie folder.
  41.  
  42. In the lower left of you screen you will find Ellie, quietly awaiting further
  43. setup.  Right-click on the graph and select 'Settings' from the pop-up menu.
  44.  
  45. Make you way to the 'Client Control' tab.  At the top of the page is a grouping
  46. called 'Client Location'.  We need to inform Ellie where your setihome.exe
  47. client resides.  So, 
  48.  
  49. 1. click on the button '..'  on the righthand side of the entry field and, from
  50.    the file selector make your way to where setihome.exe is on your hard disk.
  51.  
  52. 2. Select any file in the directory..  it doesn't matter which one as Ellie
  53.    will discard any filename you select and use only the drive and path
  54.    information.
  55.  
  56. 3. Press Save.
  57.  
  58. You may notice an LED on the EllieBar illuminate bright red.  This is because
  59. Ellie may have suddenly found data she can use and finds interesting (before you
  60. told her where to find seti data she was idly scanning nowehere in particular!).
  61. So, don't worry.  More information on this LED later.
  62.  
  63. You should hear a beep or two as Ellie reinitializes the threads to point at the
  64. directory you selected.
  65.  
  66. The items below this section, namely SETIHOME Client Control, should now be
  67. enabled.
  68.  
  69. If you want Ellie to be able to control the setihome.exe sessions,
  70. choose 'Create SETI Client Object'.  This will create a WPS object in your
  71. Ellie folder and copy the SETI.EXE in Ellie's directory file to your seti@home
  72. directory.  (This file does not intefere with the setihome.exe client program
  73. but, as the object that gets created in your Ellie folder has an Object ID,
  74. it can be launched via the Workplace Shell.)
  75.  
  76. If this process was successful, further options should avail themselves to
  77. you which take affect immediately.
  78.  
  79. You can choose to start and stop the s@h client via the Workplace Shell and
  80. have Ellie automatically start and/or stop it whenever she herself is started
  81. or stopped.
  82.  
  83. You can get straight to this notebook page by right-clicking on the leftmost
  84. LED and selecting 'Setup Client Control' from the popup menu.
  85.  
  86. Ellie has now been setup.
  87. ______________________________________________________________________________
  88.  
  89. Usage:
  90.  
  91. The first time you run Ellie, the bargraph will be in the lower corner.  I
  92. shall refer to this window as the EllieBar from now on.
  93.  
  94. The Elliebar is the 'console' or 'main menu'.  It occupies little room and so
  95. allows some feedback for the user despite whatever they're doing.  If you move
  96. the Elliebar or change some of its settings, they will be remembered between
  97. sessions.
  98.  
  99.  
  100. There are two LEDs beside the graph.
  101.  
  102. The leftmost one signifies whether Ellie has control of the setihome client
  103. session.  Right-clicking on the LED will bring up a popup as you would expect
  104. that allows you to start and stop the client or go straight to relevant pages
  105. in the Settings notebook.  Remember, at this juncture, if you manually close
  106. down the client, Ellie will not know so the LED may still glow green (or
  107. conversly, not at all).  Future versions of Ellie will be notified by the
  108. client but it depends on other matters right now.  Right now, it informs you
  109. if Ellie has been configured to control the client or not and, if so, whether
  110. Ellie has launched a client (green) or closed it (off).
  111.  
  112. The rightmost LED is 'live' that is, under the control of a thread scanning
  113. data that the client writes to disk.  If the LED is dark (ie off) it means that
  114. no data has been found in the current WU being processed.  If it is yellow,
  115. that means that the WU does contain 'interesting data'.  You may notice that an
  116. alarm may sound and the LED glows red.  This means that more interesting data
  117. has been found since the last poll.  The LED will eventually revert to yellow
  118. in this case.  Double-clicking on the LED will interrupt the thread for it to
  119. install the correct LED.
  120.  
  121. (This 'Interesting Data' (or rather Spikes and Gaussians) is subject to various
  122. design and data massaging at this stage of the game.  Expect to see more
  123. functionality in (near) future releases of Ellie.)
  124.  
  125. Right click on the Elliebar or around it and up will come another popup menu
  126. offering further options:-
  127.  
  128. POPUP MENU:
  129.  
  130. The Settings notebook:
  131.  
  132. WU Alarms:
  133. ---------
  134. This notebook page allows you to allocate alarms to sound at a defined
  135. percentage achieved value (say, at 50%) and/or at a defined 'minutes
  136. to go' value by using the slider object or spin buttons to set up values
  137. accordingly.  The types of alarm include (and are not exclusive of each 
  138. other) a flashing clock, a flashing bargraph and a beep.  Furthermore,
  139. the length of times these alarms sound for can be chosen (so, for
  140. example, you could have the clock flash for one minute with the bargraph
  141. flashing for an extra minute while the computer beeps all the while and
  142. for another ten minutes thereafter).  One can also elect to have a logfile
  143. generated by ticking the respective tick box and entering a filename in
  144. the entry field supplied.  The alarms take affect on closing the
  145. notebook or pressing the Apply/Reset button for them to reinitialize
  146. immediately.
  147.  
  148. Pressing Alt-Space on any of Ellie's windows with silence a sounding alarm
  149. as will double-clicking the clock icon on the Progress Window or using
  150. the popup menu presented from right-clicking on it.  For windows with
  151. a system menu, you will have to press Alt-Space quicly in succession otherwise
  152. OS/2 will offer you its standard System Window menu list.
  153.  
  154. Please Note:  Ellie gathers its information from files written periodically
  155. to disk by the setihome.exe client.  While I have witnessed the odd
  156. 100% complete, usually all data updates seem to stop at the 97% mark.  This
  157. seems to be a bug with the client in that it stops writing to disk at about
  158. this period for reasons of its own despite it continuing to process the WU.
  159. As a result, alarms to sound at or near the end of a WU process will sometimes
  160. never sound.  As far as I am aware, this is not a limitation of Ellie.. she
  161. just hasn't been given the relevant information by the client!
  162.  
  163. Polltimes:
  164. ---------- 
  165. Changing the value for the WU Progress slider will change how quickly Ellie
  166. syncs with setihome.exe.  The poll time is reflected in a button which you
  167. must click to set the polltime you may have selected.  Changes take
  168. affect immediately.
  169.  
  170. You can also choose how often Ellie looks to see if setihome has found any
  171. 'Interesting Data'.  Similarly, there is a button to have changes take affect
  172. immediately.
  173.  
  174. Beside the 'ID' poll setup is the alarm setup for this thread.  You can disable
  175. all alarm noises, opt for a beeping from the PC's speaker or use a WAV.  If
  176. there is no WAV in the container, double- clicking there will automatically
  177. open the EllieWavs folder.  Drag a WAV file from there (or anywhere else, of
  178. course).  Once a WAV is in place, double-clicking it will play it through the
  179. OS/2's multimedia subsystem.
  180.  
  181.  
  182. Client Session: 
  183. ---------------
  184.  
  185. This is where you can setup the client's priority and how it reacts after the
  186. WU is finished with.
  187.  
  188. Pressing the Advanced button brings a window up for you to specify what batch
  189. files/programs/scripts are run before (PreProcess) and after (PostProcess) each
  190. client session controlled by Ellie.  You may also enter the name of a logfile
  191. where detailed information is written.
  192.  
  193. The 'mini-VIO' tickbox controls the size of the client session.  Unticking it
  194. leaves the VIO screen at default, ticking it reduces it to 40x10 (my
  195. preference).  I have a few ideas (especially for 4OS2 users which seticlient
  196. detects) but if you would prefer a different size etc, let me know.
  197.  
  198. You may instruct the client to run minimized.
  199.  
  200. If you opt to run the client as a seamless session (setihome v1.3 and above
  201. only), you can see the output of the program by selecting 
  202. 'Open.. client session' from the Elliebar popup menu (which can also be
  203. accessed by double-clicking on the clock).  This window is sizeable and will
  204. remember dropped colours and fonts.  A seamless session will be launched and
  205. terminated along with Ellie.
  206.  
  207.  
  208. Changing any of these settings requires you to select 'Apply'.  This will
  209. update the Seticlient object with new paramters for subsequent client sessions.
  210. I have plans to automatically recycle the client but for now, if you want
  211. changes to take effect, click on the Client Control tab, stop the client and
  212. restart it.
  213.  
  214. 'Version information' displays the version information of the client.
  215.  
  216.  
  217. Misc:
  218.  
  219. If you have SysBar/2 installed on your system, you can configure a Pipe
  220. Listener which Ellie will output to.
  221.  
  222. You can also create an URL to go straight to your stats page at seti@home.
  223.  
  224.  
  225. Titlebar Display:
  226. -----------------
  227. Will display a submenu enabling you to choose what data is displayed in the
  228. title bar of the progress window which updates in realtime.  This information
  229. is also reflected in the Window List or the Minimized Windows folder.
  230.  
  231. If you select Name, the titlebar simply displays 'Ellie'.  This is to
  232. accomodate users with virtual desktops that rely on information in the
  233. Windows List not changing.
  234.  
  235. You can choose to display:
  236.  
  237. o The current progress percentage of the current WU,
  238. o The estimated time it will take to complete the current WU at current system
  239.   load,
  240. o How long it will be before the current WU is completed at current system load,
  241. o How much time the CPU has spent crunching the current WU.
  242. o The percentage per hour rating for your machine and WU.
  243.  
  244. Show Clock:
  245. -----------
  246. This brings up an analogue clock showing today's time.  This menu item changes
  247. to Hide Clock if the clock is showing.  Ellie will remember the fact you had a
  248. clock showing or not when you close her down.  You can also double-click the 
  249. clock to quickly (re)display the Progress Window.
  250.  
  251. Refresh:
  252. -------
  253. This interrupts the WU status thread and updates information here on the
  254. titlebar and elsewhere in the program.  Remember, it can sometime take the
  255. setihome.exe client up to 60 seconds before it updates its status for Ellie so
  256. if you ask Ellie to refresh her data and the s@h client hasn't written anything
  257. new to disk, Refresh will have no affect.
  258.  
  259. Pressing F5 here (and elsewhere in the program) will cause a refresh too.
  260.  
  261. Open..:  (This menu can also be displayed by double-clicking on the clock).
  262. -------
  263. You can find lost windows by surfacing them from this menu ( Ellie will remember
  264. where you position her windows and if they were open you close her down).
  265.  
  266. A submenu will display giving you the choice to display various information
  267. regarding the current WU process.
  268.  
  269. Progress Information Window:
  270.  
  271. This window displays time orientated information for the WU being
  272. processed.
  273.  
  274. Right-clicking on the clock icon in the bottom left of this window will present
  275. a menu with the following options:-
  276.  
  277.     - Calibrate - Use SETI timings
  278.                 - Use Ellie timings.
  279.  
  280. All timings are calculated directly from the data written out by the client.
  281. However, switching over to Ellie's timing mean actual times are compared through
  282. the course of many polls and thus present a more indicative representation of
  283. how system workload affects the time it takes to process a WU in its entirety.
  284.  
  285. On a completely idle machine the SETI timings and the Ellie timings should
  286. settle down be practically identical.  However, as a machine is used you should
  287. see the Ellie timings start to represent the fact that clock cycles have been
  288. taken away from the client.  Let's find out if the theory holds :) .
  289.  
  290. Status Window:
  291.  
  292. This is really a leftover from v01.  Expect to see more 'sweetened' data in
  293. subsequent releases of Ellie.  Currently, it simply shows a view of the state.txt
  294. file as being updated by the s@h client.
  295.  
  296. Percentage Per Hour graph:
  297.  
  298. This window will display an updating graph of the percentage per hour progress
  299. of the cureent WU process.  Currently, the graph has two scales: 100% where the
  300. height of the graph represents 100%; and 10% where the height of the graph is
  301. 10% thereby 'zooming' in on the plot so as to allow a more detailed view of
  302. fluctuations.  I shall incorprate more 'zoom' scales if this proves popular
  303. and/or useful.
  304.  
  305. By selecting 'Show Progress', another graphical representation of the percentage
  306. done value is superimposed on the graph in a different colour.
  307.  
  308. The text values in the top left of the graph are of the same colour as the plots
  309. themselves.
  310.  
  311. Double-clicking the graph will bring up a small window to allow you to choose
  312. what colours you want the graph and its lines to be.  Unfortunately, as of now
  313. you will have to close the window and re-open it for the colours (mainly the
  314. background colour) to take effect.  I hope to address this soon.
  315.  
  316. Client Session:
  317.  
  318. This window will display the output of a seamless client session.  Ellie
  319. will remember where you place it and what colours and fonts you drop into it.
  320. Right-clicking will bring up a popup menu allowing you to save the contents of
  321. the window to a file, clear the contents and stop and start the client.
  322.  
  323. Closing this window does not affect the running of the client.
  324.  
  325. Skymap:
  326.  
  327. This will display a map of the night's sky along with a flashing yellow cross icon
  328. representing the origination of the data in your current WU.
  329.  
  330. Right-clicking on the map will present a menu to choose different sizes (from quite
  331. small to rather large) of skymaps and a (basic as of now) WU information window.
  332.  
  333. If the titlebar of the Skymap somehow finds its way out of your reach outside the
  334. boundaries of the monitor, there is an option to centre the window on your desktop.
  335.  
  336. Expect some seriously fun things to occur with this map in (near) future releases
  337. of Ellie...  !!:)
  338.  
  339. You can also gain access to Ellie's desktop folder and her URL folder.
  340.  
  341.  
  342. About:
  343. ------
  344. Displays version information for this program.  Double-clicking the SETI logo
  345. will close this window as will pressing ESCape (the Escape key will close
  346. almost all of Ellie's windows).
  347.  
  348. ______________________________________________________________________________
  349.  
  350. Author's Note: This is Version 0.03 of Ellie.  There are plenty of other
  351. features awaiting activation.  The important issue for me at this moment in 
  352. time has been getting the thread engine stable and the design personality of 
  353. the program in place.  If this candidate appears stable, I can add further 
  354. features safe in the knowledge that the core functionality of the program is 
  355. solid.  It is so easy to chase the 'eye candy' while ignoring the actual 
  356. internal design of a program.
  357.  
  358. SETI.EXE This is a 'wrapper' program I have written to provide mutex
  359. semaphoring of the actual client and so prevent monitor apps launching
  360. multiple instances of the client.  It also allows logging of sessions to a
  361. definable logfile and the running of scripts/programs/batch files before and
  362. after a client session.
  363.  
  364. By using seti.exe, 3rd party apps can detect whether a 
  365. setihome.exe client is already running.  If you prefer to launch 
  366. the client by means other than various monitor apps, please run seti.exe 
  367. without any parameters for a usage guide or see the Seti.txt file in Ellie's
  368. folder.
  369.  
  370. If you want to incorporate seti.exe into a application/script/etc you
  371. are writing, please contact me.
  372.  
  373. I have further plans for Seti but would welcome involvement from others. 
  374.  
  375. Currently supported apps:
  376.  
  377. Ellie v02 or higher
  378. CQ verson 1.3 or higher.
  379.  
  380. ______________________________________________________________________________
  381.  
  382. NOTE:  There is an inherent problem with having any application other than the
  383. setihome.exe client opening a file that it expects only to be opened by itself.
  384. As the client and various monitors are running in 'realtime', if one
  385. application is reading a file while, =at the same precise time=, another
  386. program is writing to the same file, a conflict can arise.  Ellie will simply
  387. wait and try again for a few times, however setihome.exe will die gracefully.
  388.  
  389. SETIHOME.EXE v1.2 was not designed with 3rd-party realtime monitors in mind
  390. therefore if it attempts to write an important file while finding it in use by
  391. another application it will 'fall over'.  This is not a reflection on either
  392. the people who wrote the setihome.exe client or the authors of any 3rd party
  393. monitor application.  It is simply because the situation was not anticipated at
  394. the design stage of the setihome.exe client and precautions were not written
  395. into the setihome.exe code.
  396.  
  397. There are ways around this.  If setihome would wait for a while and try a few
  398. times without falling over when it finds its files 'owned' by someone else it
  399. would help enormously.  But there is a failsafe method.  OS/2 itself offers a
  400. developer very fast system semaphores to protect against exactly this kind of
  401. situation.  With semaphores, it is OS/2 who decides when data can be
  402. read/written.  It is hoped that the next version of the setihome client will
  403. support 32bit system semaphores.  This will practically guarantee one hundred
  404. percent stability as OS/2 would be allocating access with microsecond accuracy.
  405.  
  406. The other method open at this stage is for any third party app be
  407. extremely swift about opening/reading/closing data from files that, basically,
  408. do not 'belong' to it.  Ellie has been designed to be as fast as possible in
  409. obtaining data from the setihome client's files.  It currently takes a hundred
  410. times longer to =display= data than to read it.
  411.  
  412. For systems with Fixpack 6 or higher applied there is another method.  I shall
  413. be integrating this into Ellie 03.
  414. ______________________________________________________________________________
  415.  
  416. I hope the program works for you.  KEEP ME INFORMED!!!  If it breaks, looks
  417. nothing like my screenshots I need to know!!  If you can think of a feature,
  418. let me know!!
  419.  
  420. Clive (et or ellie@Cee3.demon.co.uk )
  421. ______________________________________________________________________________
  422. Ellie ?  The program name comes from the book Contact by the late Carl Sagan.
  423. A film was made of the book but, as you would expect from Hollywood, many key
  424. points from the books were ommited.  If you're running SETI@Home, I urge you to
  425. read the book (and =maybe= see the film..  the opening minute is tremendous).
  426. ______________________________________________________________________________
  427.  
  428. Disclaimer:  the program is only guaranteed to take up disk space (I'm a Brit
  429. dealing with Americans so you cannot blame me!!  :-) ).
  430.  
  431.  
  432. DEREG.CMD will unregister Ellie's OS2.ini file references and objects from the
  433. Desktop.
  434.  
  435.