VIRTUTECH CONFIDENTIAL    Previous - Up - Next

tracker_unix

Implemented By
linux-process-tracker, ppc32-linux-process-tracker, ppc64-linux-process-tracker, x86-linux-process-tracker
Description


Note: This interface is not supported, and may change in the future.

Interface for trackers. This is an interface implemented by process trackers for UNIX-like operating systems. Such trackers should also implement the basic tracker interface.

typedef struct {
        trackee_unix_type_t (*trackee_type)(conf_object_t *NOTNULL tracker,
                                            integer_t tid);
        integer_t (*tid_to_pid)(conf_object_t *NOTNULL tracker, integer_t tid);
        integer_t (*pid_to_tid)(conf_object_t *NOTNULL tracker, integer_t pid);
} tracker_unix_interface_t;
#define TRACKER_UNIX_INTERFACE "tracker_unix"

trackee_type returns the type of the trackee that has the given tid. The types are defined by the following enum:

typedef enum {
        Sim_Trackee_Invalid = 0,
        Sim_Trackee_Kernel,
        Sim_Trackee_Process
} trackee_unix_type_t;

tid_to_pid and pid_to_tid map tids to pids and pids to tids.

In addition to these interface functions, the tracker should trigger the Core_Trackee_Exec hap when a process calls the exec syscall.

VIRTUTECH CONFIDENTIAL    Previous - Up - Next