open Virt_mem_gettext.Gettext
open Virt_mem_utils
+open Virt_mem_types
open Virt_mem_mmap
(* The implementation of 'ps' has gone through a number of complete
get_task_struct ~i:0 addr accum
(* This is the directed search function. *)
-let search debug mem lookup_ksym =
+let search debug mem ksymmap =
let ws = get_wordsize mem in
let ws = match ws with W32 -> 32 | W64 -> 64 in
let e = get_endian mem in
let wse = ws, e in
let init_task =
- try lookup_ksym "init_task"
+ try Ksymmap.find "init_task" ksymmap
with Not_found ->
- eprintf "virt-ps: lookup_ksym of init_task failed\n";
+ eprintf "virt-ps: cannot find kernel symbol 'init_task'\n";
exit 1 in
let accum = Accum.empty in
let ts = loop 0 0 in
()
-let run debug (_, _, _, mem, lookup_ksym, _) =
- search debug mem lookup_ksym
+let run debug ({ mem = mem }, ksymmap, _) =
+ search debug mem ksymmap
let summary = s_"list processes in virtual machine"
let description = s_"\