README revision e2023f721b66db48cc8a0f4ab6519460093c2cf1
1Each operating system must have a subdir here, with a Makefile
2The first target of that Makefile must build a file "sysdep.o" in this
3directory.
4The "clean" target of that Makefile must undo all the efects of the
5first target, and must remove "sysdep.o" in this dir.
6
7Files "sysdep.h", "signalent.h" and "syscallent.h" must be present
8inside the directory after invoking the first target of the Makefile.
9
10-----------
11"sysdep.o" must export the following functions:
12
13struct event * next_event(void);
14void continue_after_breakpoint(struct process * proc, struct breakpoint * sbp, int delete_it);
15void continue_after_signal(pid_t pid, int signum);
16void continue_enabling_breakpoint(pid_t pid, struct breakpoint * sbp);
17void continue_process(pid_t pid);
18void enable_breakpoint(pid_t pid, struct breakpoint * sbp);
19void disable_breakpoint(pid_t pid, struct breakpoint * sbp);
20int fork_p(int sysnum);
21int exec_p(int sysnum);
22int syscall_p(struct process * proc, int status, int * sysnum);
23void * get_instruction_pointer(pid_t pid);
24void * get_stack_pointer(pid_t pid);
25void * get_return_addr(pid_t pid, void * stack_pointer);
26long gimme_arg(enum tof type, struct process * proc, arg_type_info*);
27int umovestr(struct process * proc, void * addr, int len, void * laddr);
28int umovelong(struct process * proc, void * addr, long * result);
29char * pid2name(pid_t pid);
30void trace_me(void);
31int trace_pid(pid_t pid);
32void untrace_pid(pid_t pid);
33