home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 11 Util / 11-Util.zip / monitr01.zip / readme.txt < prev   
Text File  |  1999-02-22  |  14KB  |  315 lines

  1.  
  2.                   MonitorDaemon v0.1
  3.                   by Nenad Milenkovic
  4.  
  5.  
  6. What is this?
  7.  
  8.    This is simple and effective resource monitoring add-on for
  9.    excelent monitoring utility called Pipe Monitor (part of
  10.    SysBar/2 package). It uses practicaly no CPU power (it sits
  11.    idle most of the time) and uses as much of RAM as it's needed
  12.    to open CMD.EXE shell to start the script (about 500k in
  13.    total, but most of it is idle and swaped away as soon as other
  14.    application requires RAM).
  15.  
  16.    It's implemented as a backgound process (daemon) written in
  17.    Rexx that works as a supplement to monitoring utility from
  18.    SysBar/2 package. It uses Rexx interfaces provided by IBM's
  19.    Theseus/2 memory analysis program and Stefan Milcke's StHWMon
  20.    motherboard monitoring application.
  21.  
  22.    It can be used as a template for adding more Rexx based
  23.    real-time reporting to SysBar/2's Pipe monitor.
  24.  
  25.  
  26. What is SysBar/2?
  27.  
  28.    SysBar/2 is a great set of small but powerfill utilites made
  29.    by Dmitry I. Platonoff with some help and cooperation from
  30.    others. Aside from "nothing but the look" digital clock and
  31.    nifty (and soon to be very powerfull) CD player it contains
  32.    two really usefull components: "Task Switcher" and "Pipe
  33.    Monitor".
  34.  
  35.    The first one alows you one-click task switching, minimizing
  36.    and restoring windows and closing applications, but also
  37.    filtering of task-list and it's own content. It allows you to
  38.    directly access "system" menus of every application from it's
  39.    icon and it's very customizable in it's look and behaviour.
  40.  
  41.    The second one (Pipe Monitor) is the one you need for Monitor
  42.    Daemon to work. It started as pipe listener (it would listen
  43.    for OS/2 named pipes, used for inter-process communication,
  44.    and displaying that traffic), but during the time author(s)
  45.    added more and more functionality, tranforming it into very
  46.    usefull monitoring application. It now has "integrated" CPU
  47.    load meter, free RAM monitor, IP traffic measures, etc. It can
  48.    also show free space on HDs, number and size of specified
  49.    files, battery status, number of new mails (POP3), system
  50.    uptime, number of processes, threads, etc.
  51.  
  52.    However, one of it's most interesting features remains named
  53.    pipe listener. Writing to named pipe under OS/2 is very easy,
  54.    doing it from your own application or even command shell (OS/2
  55.    treats pipes like files in \PIPE direcectory). Authors of
  56.    web/ftp server could easily add monitoring and status
  57.    reporting with simple writing to pre-defined pipes in
  58.    SysBar/2's Pipe Monitor. By providing Rexx interfaces to their
  59.    programs they'll allow others to do the same.
  60.  
  61.    That is exactly what Monitor Daemon does.
  62.  
  63.  
  64. Do I need Monitor Daemon?
  65.  
  66.    No. It's main purpose is to show you how easily you can bring
  67.    monitoring capabilities to your OS/2 Desktop for those
  68.    functions SysBar/2 has no native support and/or are not
  69.    supported (exposed) by OS/2 by default.
  70.  
  71.    However, if you need excatly what it does, you can use it
  72.    "out-of-the-zip". It will (with the help of DLLs from other
  73.    programs) show current temperature of CPU (provided you have
  74.    supported motherboard) and _actual_ usage of swap file (how
  75.    much of prealocated swap space is _actually_ used). It can
  76.    help you prevent "burning" of your CPU or motherboard because
  77.    of fan mailfunction or OS/2 dying because of overflowed swap
  78.    space. It can also help you determine the optimal prealocated
  79.    swap size, the one that will be mostly used and rarely grow.
  80.  
  81.    I use it in it's current form and works OK for me, but you can
  82.    add more functions to it, simmilar ones or something
  83.    completely different. It's good idea to add functions to it
  84.    rather than implementing your own monitoring services in order
  85.    to avoid overhead of starting multiple processes.
  86.  
  87.  
  88. What do I need to run Monitor Daemon?
  89.  
  90.     You will need one of two programs (or both of them) it uses
  91.     to see any benefit from Monitor Daemon. Those are:
  92.  
  93.     Theseus/2 from IBM
  94.  
  95.          Theseus/2 is OS/2 memory analisys program from IBM. It's
  96.          not supported ("for internal use unly"), but it
  97.          reportedly works OK and it's widely used (mostly by
  98.          programmers and system administrators) to determine
  99.          memory usage, memory leaks, RAM requirements for
  100.          system's typical usage patterns, etc. In order to access
  101.          low-level informations about other running processes it
  102.          requires support device driver to be installed (OS/2
  103.          protects it's processes one from each other). Once that
  104.          device driver (THESEUS2.SYS, which runs in privileged
  105.          mode) is active, you can use it's GUI to access all it's
  106.          functions. However, it has rather clumsy and
  107.          non-intiutive user interface, which is not sutable for
  108.          real-time monitoring of limited number of interesting
  109.          data. Good thing is that Theseus/2 (named after Greek
  110.          mythology hero who killed Minotaur and found his way out
  111.          of Labyrinth) is flexible and "open" - you can access
  112.          it's features from your own programs. In addition to
  113.          programmers library intended for compiled languages, it
  114.          offers Rexx interface, which I used from Monitor Daemon
  115.          in order to get information about how much swap space is
  116.          _really_ used in alocated swap file.
  117.  
  118.          Theseus/2 v2.01m is available from Hobbes at the moment
  119.          of this writing, and should work with both Warp 3 and
  120.          Warp 4. I expect that IBM will provide simmilar utility
  121.          for upcoming Warp 5 (Aurora), but from what I heard,
  122.          this version doesn't work with it (Aurora has some
  123.          serious changes in kernel). Maybe it will work with GA
  124.          version.
  125.  
  126.          Please reffer to instructions included with Theseus/2
  127.          for full installation, but note that you will only need
  128.          THESEUS2.SYS installed and THESEUS0.DLL available
  129.          somewhere in the LIBPATH in order to use Monitor Daemon.
  130.  
  131.     StHWMon from Stefan Milcke
  132.  
  133.          StHWMon is a monitoring utility that gathers data from
  134.          on-board chips that provide information about hardware
  135.          "health" and status. Most modern motherboards include
  136.          that functionality, and most of them include only
  137.          Windows versions of monitoring tools.
  138.  
  139.          StHWMon is a PM (GUI) program that brings that functions
  140.          to OS/2 Desktop. It displays current temperatures of CPU
  141.          and motherboard, rotating speed of CPU and power supply
  142.          fans, current voltage of CPU (core and external),
  143.          motherboard and devices power supply.
  144.  
  145.          StHWMon allows configuring of "correction values" for
  146.          all those data, althogh this is really needed only for
  147.          temperature monitors. This is required because StHWMon
  148.          is intended for "generic" use and not for any specific
  149.          motherboard or system. Utilities shipped with those
  150.          equipment usually have presetted those correction
  151.          values, so you must compare data shown by StHWMon (which
  152.          is actual data read from monitoring HW logic) with data
  153.          shown by those supplied utilities or shown by BIOS setup
  154.          utility. When you determine those correction values,
  155.          simply enter them into StHWMon configuration and it will
  156.          provide the for both PM (GUI) version and Rexx interface
  157.          (through INI).
  158.  
  159.          You can run StHWMon all the time, but I beleive that CPU
  160.          temperature is the only one that really needs constant
  161.          attention. Therefore, I implemented only that in my
  162.          Daemon.
  163.  
  164.  
  165. How to install it?
  166.  
  167.          Simply: unzip and run. However, it will require some
  168.          additional work in order to achieve intended
  169.          functionality.
  170.  
  171.          0. Prerequisites
  172.  
  173.          Have SysBar/2, Theseus/2 and StHWMon properly installed.
  174.          Make sure you have rebooted in order for THESEUS2.SYS
  175.          device driver to be loaded.
  176.  
  177.          1. Making Monitor Daemon work
  178.  
  179.          The main issue is that Monitro Daemon needs access to
  180.          Rexx "support" DLLs from aforementioned applications in
  181.          order to work. Those DLLs must reside somewhere in
  182.          LIBPATH (settable in CONFIG.SYS). There are few ways of
  183.          doing that, like:
  184.  
  185.              - adding Theseus and StHWMon directories to LIBPAH
  186.              - coping required DLLs to \MYDLLs directroy, or any
  187.                other place you keep those frequently needed
  188.                libraries (like EMX, VROBJ, etc.)
  189.  
  190.          Personally, I copied THESEUS0.DLL to c:\MYDLLs, but run
  191.          MonitorD.CMD from the directory where I installed
  192.          StHWMon. This is because STHEALTH.DLL is not the only
  193.          DLL needed for StHWMon's Rexx interface -- that one
  194.          needs and accesses some others for itself. Since StHWMon
  195.          is updated rather frequently, it was bad idea to keep
  196.          those DLLs in two different places, resulting in
  197.          conflicts and problems. Theseus is not so frequently
  198.          updated, and has only one DLL for it's Rexx interface.
  199.  
  200.          2. Configuring SysBar/2
  201.  
  202.          You must configure SysBar/2's Pipe Monitor to expect,
  203.          accept and display data it receives from Monitor Daemon.
  204.  
  205.          Configuring "CPU Temperature" cell:
  206.  
  207.              - right-click with your mouse on Pipe Monitor and
  208.                select "Properties"
  209.              - go to "Cells" page of "Properties" notebook
  210.  
  211.              - click on "New" button
  212.              - from "Type" drop-box select "pipe listener"
  213.              - make sure that "Enable cell" check-box is
  214.                activated
  215.              - in the "Name" entry-field enter: "CPU Temperature"
  216.              - select color for this cell from "Color" drop-box
  217.              - in "Prefix" entry-field enter: " t="
  218.              - in "Empty" entry-field enter: "ERROR"
  219.              - select "Expire timeout" check-box and enter 100 in
  220.                "seconds" number field
  221.              - in "Pipe" entry-field enter: "\PIPE\tempmon"
  222.  
  223.              - go to "Programs" page of cell's "Properties"
  224.                notebook
  225.              - in "On mouse double-click" entry-field enter full
  226.                path of your StHWMon application, for example:
  227.                "D:\util\StHWMon\StHWMon.exe"
  228.              - make sure that "Enable" check-box is activated
  229.  
  230.              - select "OK" button
  231.              - close "Properties" notebook
  232.  
  233.  
  234.          Configuring "Swap file size" cell:
  235.  
  236.              - right-click with your mouse on Pipe Monitor and
  237.                select "Properties"
  238.              - go to "Cells" page of "Properties" notebook
  239.  
  240.              - click on "New" button
  241.              - from "Type" drop-box select "pipe listener"
  242.              - make sure that "Enable cell" check-box is
  243.                activated
  244.              - in the "Name" entry-field enter: "Swap file size
  245.                (used)"
  246.              - select color for this cell from "Color" drop-box
  247.              - in "Prefix" entry-field enter: " Swp: "
  248.              - in "Empty" entry-field enter: "ERROR"
  249.              - select "Expire timeout" check-box and enter 100 in
  250.                "seconds" number field
  251.              - in "Pipe" entry-field enter: "\PIPE\swapmon"
  252.  
  253.              - go to "Programs" page of cell's "Properties"
  254.                notebook
  255.              - in "On mouse double-click" entry-field enter full
  256.                path of your StHWMon application, for example:
  257.                "D:\util\theseus\THESEUS2.exe"
  258.              - make sure that "Enable" check-box is activated
  259.  
  260.              - select "OK" button
  261.              - close "Properties" notebook
  262.  
  263.          3. Making sure Monitor Daemon is started on system
  264.             startup
  265.  
  266.          You can start Monitor Daemon from any startup folder or
  267.          STARTUP.CMD file. I have made "Program Object" for it
  268.          and put that object into XFolder's "Enhanced Startup"
  269.          folder. Once you are sure that Monitor Daemon works OK,
  270.          you can detach it and forget about it's existence.
  271.  
  272.          4. Stopping Monitor Daemon
  273.  
  274.          To stop Monitor Daemon just press Ctrl-C in it's window
  275.          or close the window itself. If you use some enhanced
  276.          shoutdown procedure, you can mark Monitor Daemon's task
  277.          as safe to kill without prompting first.
  278.  
  279.  
  280. Conclusion
  281.  
  282.          If this program or any other that it requires ruins your
  283.          computer, house or fammily, it's your own fault. Next
  284.          time don't use non-MS software on non-MS operating
  285.          system, especially not on dead operating systems such as
  286.          OS/2. Don't mess with zombies, daemons or any other
  287.          creature out of this world and practice safe hex.
  288.  
  289.          But don't forget why are you using OS/2 at the first
  290.          place: because it works the way you want it to work.
  291.  
  292.  
  293. Price
  294.  
  295.          It's free, off course, but if you use it or like it, I
  296.          would appreciate if you let me know and tell me where
  297.          have you downloaded it from. My e-mail address is below.
  298.  
  299.  
  300. Contact
  301.  
  302.          If you have any questions, suggestions, donations or
  303.          marriage offerings you can reach me via e-mail:
  304.  
  305.          nenad@fon.fon.bg.ac.yu.
  306.  
  307.          Please use "Monitor Daemon" inside your subject line so
  308.          your message can be properly processed by my mail
  309.          filters and redirectors.
  310.  
  311.          Good luck.
  312.  
  313.  
  314.                                               Nenad Milenkovic
  315.