|
|
3c50ef |
From cc9f1f9d8f17e8ac5a6a73af830c132d916fd6e0 Mon Sep 17 00:00:00 2001
|
|
|
3c50ef |
From: "Richard W.M. Jones" <rjones@redhat.com>
|
|
|
3c50ef |
Date: Mon, 27 Mar 2017 12:30:01 +0100
|
|
|
3c50ef |
Subject: [PATCH 08/17] Refresh HACKING file.
|
|
|
3c50ef |
|
|
|
3c50ef |
Fixes commit b7c3ef13cbd9c9cd49005a32ffb70faf6f5bbe8c.
|
|
|
3c50ef |
---
|
|
|
3c50ef |
HACKING | 72 ++---------------------------------------------------------------
|
|
|
3c50ef |
1 file changed, 2 insertions(+), 70 deletions(-)
|
|
|
3c50ef |
|
|
|
3c50ef |
diff --git a/HACKING b/HACKING
|
|
|
3c50ef |
index bce40a9..3cd266b 100644
|
|
|
3c50ef |
--- a/HACKING
|
|
|
3c50ef |
+++ b/HACKING
|
|
|
3c50ef |
@@ -7,75 +7,7 @@ General OCaml advice:
|
|
|
3c50ef |
|
|
|
3c50ef |
(2) Emacs users: use tuareg-mode for editing OCaml.
|
|
|
3c50ef |
|
|
|
3c50ef |
-(3) http://www.ocaml-tutorial.org/
|
|
|
3c50ef |
+(3) https://realworldocaml.org/ is the definitive book which is also
|
|
|
3c50ef |
+ available online in full.
|
|
|
3c50ef |
|
|
|
3c50ef |
(4) http://camltastic.blogspot.com/2008/08/3-things-that-will-confuse-you-when.html
|
|
|
3c50ef |
-
|
|
|
3c50ef |
-The code is structured into these files:
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- virt_top_utils.mli / virt_top_utils.ml
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- String functions and other small utility functions. This is
|
|
|
3c50ef |
- included directly into virt_top.ml.
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- virt_top_version.ml
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- The version number (automatically generated by configure).
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- virt_top.mli / virt_top.ml
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- This is the virt-top program.
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- The two interesting functions are called 'collect' and 'redraw'.
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- 'collect' collects all the information about domains, etc.
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- 'redraw' updates the display on each frame.
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- Another interesting function is 'start_up' which handles all
|
|
|
3c50ef |
- start-up stuff, eg. command line arguments, connecting to the
|
|
|
3c50ef |
- hypervisor, enabling curses.
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- The function 'main_loop' runs the main loop and has sub-functions
|
|
|
3c50ef |
- to deal with keypresses, help screens and so on.
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- virt_top_xml.ml
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- Any code which needs the optional xml-light library goes
|
|
|
3c50ef |
- in here. Mainly for parsing domain XML descriptions to get
|
|
|
3c50ef |
- the list of block devices and network interfaces.
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- The reason for having it in a separate file is so that we
|
|
|
3c50ef |
- don't depend on xml-light.
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- virt_top_csv.ml
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- Any code which needs the optional ocaml-csv library goes
|
|
|
3c50ef |
- in here. This implements the --csv command line option.
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- virt_top_calendar1.ml
|
|
|
3c50ef |
- virt_top_calendar2.ml
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- Any code which needs the optional ocaml-calendar library
|
|
|
3c50ef |
- goes in here. This implements the --end-time command line
|
|
|
3c50ef |
- option. Note there are two incompatible versions of the
|
|
|
3c50ef |
- ocaml-calendar library, which is why we have two
|
|
|
3c50ef |
- implementations. The Makefile works out which one to use.
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- virt_top_gettext.ml
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- Gettext interaction (this is generated by ./configure).
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- virt_top_main.ml
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- This is just a small bit of code to glue the modules above
|
|
|
3c50ef |
- together.
|
|
|
3c50ef |
-
|
|
|
3c50ef |
-The man-page is generated from the single file:
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- virt-top.pod
|
|
|
3c50ef |
-
|
|
|
3c50ef |
-which generates (using perldoc) the following:
|
|
|
3c50ef |
-
|
|
|
3c50ef |
- virt-top.1
|
|
|
3c50ef |
- virt-top.txt
|
|
|
3c50ef |
--
|
|
|
3c50ef |
2.9.3
|
|
|
3c50ef |
|