Vcore mapping and idle core management
[akaros.git] / kern / include / monitor.h
1 #ifndef ROS_KERN_MONITOR_H
2 #define ROS_KERN_MONITOR_H
3 #ifndef ROS_KERNEL
4 # error "This is a ROS kernel header; user programs should not #include it"
5 #endif
6
7 // Activate the kernel monitor,
8 // optionally providing a trap frame indicating the current state
9 // (NULL if none).
10 void ( monitor)(trapframe_t *tf);
11
12 // Functions implementing monitor commands.
13 int mon_help(int argc, char *NTS *NT COUNT(argc) argv, trapframe_t *tf);
14 int mon_kerninfo(int argc, char *NTS *NT COUNT(argc) argv, trapframe_t *tf);
15 int mon_backtrace(int argc, char *NTS *NT COUNT(argc) argv, trapframe_t *tf);
16 int mon_reboot(int argc, char *NTS *NT COUNT(argc) argv, trapframe_t *tf);
17 int mon_showmapping(int argc, char *NTS *NT COUNT(argc) argv, trapframe_t *tf);
18 int mon_setmapperm(int argc, char *NTS *NT COUNT(argc) argv, trapframe_t *tf);
19 int mon_cpuinfo(int argc, char *NTS *NT COUNT(argc) argv, trapframe_t *tf);
20 int mon_nanwan(int argc, char *NTS *NT COUNT(argc) argv, trapframe_t *tf);
21 int mon_kfs_ls(int argc, char *NTS *NT COUNT(argc) argv, trapframe_t *tf);
22 int mon_kfs_run(int argc, char *NTS *NT COUNT(argc) argv, trapframe_t *tf);
23 int mon_manager(int argc, char *NTS *NT COUNT(argc) argv, trapframe_t *tf);
24 int mon_procinfo(int argc, char *NTS *NT COUNT(argc) argv, trapframe_t *tf);
25
26 #endif  // !ROS_KERN_MONITOR_H