Changeset 9dae191e in mainline for kernel/generic/include
- Timestamp:
- 2010-04-18T00:24:40Z (16 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- a80687e5
- Parents:
- d8e3467
- Location:
- kernel/generic/include
- Files:
-
- 4 deleted
- 5 edited
- 2 moved
-
mm/frame.h (modified) (1 diff)
-
proc/task.h (modified) (4 diffs)
-
proc/thread.h (modified) (1 diff)
-
ps/load.h (deleted)
-
ps/meminfo.h (deleted)
-
ps/ps.h (deleted)
-
ps/taskinfo.h (deleted)
-
syscall/syscall.h (modified) (2 diffs)
-
sysinfo/abi.h (moved) (moved from kernel/generic/include/ps/cpuinfo.h ) (3 diffs)
-
sysinfo/stats.h (moved) (moved from kernel/generic/include/ps/uptime.h ) (2 diffs)
-
sysinfo/sysinfo.h (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/include/mm/frame.h
rd8e3467 r9dae191e 169 169 extern bool zone_merge(size_t, size_t); 170 170 extern void zone_merge_all(void); 171 extern uint64_t zone _total_size(void);172 extern void zone _busy_and_free(uint64_t *out_busy, uint64_t *out_free);171 extern uint64_t zones_total_size(void); 172 extern void zones_stats(uint64_t *, uint64_t *, uint64_t *, uint64_t *); 173 173 174 174 /* 175 175 * Console functions 176 176 */ 177 extern void zone _print_list(void);177 extern void zones_print_list(void); 178 178 extern void zone_print_one(size_t); 179 179 -
kernel/generic/include/proc/task.h
rd8e3467 r9dae191e 56 56 #include <ipc/kbox.h> 57 57 #include <mm/as.h> 58 59 #include <ps/taskinfo.h> 58 #include <sysinfo/abi.h> 60 59 61 60 struct thread; … … 81 80 task_id_t taskid; 82 81 /** Task security context. */ 83 context_id_t context; 82 context_id_t context; 84 83 85 84 /** Number of references (i.e. threads). */ … … 89 88 90 89 /** Task capabilities. */ 91 cap_t capabilities; 90 cap_t capabilities; 92 91 93 92 /* IPC stuff */ 94 93 answerbox_t answerbox; /**< Communication endpoint */ 95 94 phone_t phones[IPC_MAX_PHONES]; 96 task_ipc_info_t ipc_info;/**< IPC statistics */95 stats_ipc_t ipc_info; /**< IPC statistics */ 97 96 /** 98 97 * Active asynchronous messages. It is used for limiting uspace to … … 120 119 mutex_t futexes_lock; 121 120 /** B+tree of futexes referenced by this task. */ 122 btree_t futexes; 121 btree_t futexes; 123 122 124 123 /** Accumulated accounting. */ -
kernel/generic/include/proc/thread.h
rd8e3467 r9dae191e 69 69 #define THREAD_FLAG_NOATTACH (1 << 3) 70 70 71 /* We need state_t enum definition */ 72 #include <ps/taskinfo.h> 71 /** Thread states. */ 72 typedef enum { 73 /** It is an error, if thread is found in this state. */ 74 Invalid, 75 /** State of a thread that is currently executing on some CPU. */ 76 Running, 77 /** Thread in this state is waiting for an event. */ 78 Sleeping, 79 /** State of threads in a run queue. */ 80 Ready, 81 /** Threads are in this state before they are first readied. */ 82 Entering, 83 /** After a thread calls thread_exit(), it is put into Exiting state. */ 84 Exiting, 85 /** Threads that were not detached but exited are Lingering. */ 86 Lingering 87 } state_t; 73 88 74 89 /** Thread structure. There is one per thread. */ -
kernel/generic/include/syscall/syscall.h
rd8e3467 r9dae191e 71 71 SYS_IPC_REGISTER_IRQ, 72 72 SYS_IPC_UNREGISTER_IRQ, 73 73 74 74 SYS_EVENT_SUBSCRIBE, 75 75 … … 89 89 SYS_DEBUG_ENABLE_CONSOLE, 90 90 SYS_DEBUG_DISABLE_CONSOLE, 91 92 SYS_PS_GET_CPU_INFO, 93 SYS_PS_GET_MEM_INFO, 94 SYS_PS_GET_TASKS, 95 SYS_PS_GET_TASK_INFO, 96 SYS_PS_GET_THREADS, 97 SYS_PS_GET_UPTIME, 98 SYS_PS_GET_LOAD, 99 91 100 92 SYS_IPC_CONNECT_KBOX, 101 93 SYSCALL_END -
kernel/generic/include/sysinfo/abi.h
rd8e3467 r9dae191e 1 1 /* 2 * Copyright (c) 2010 Stanislav Kozina2 * Copyright (c) 2010 Martin Decky 3 3 * All rights reserved. 4 4 * … … 33 33 */ 34 34 35 #ifndef KERN_PS_CPU_H_ 36 #define KERN_PS_CPU_H_ 35 #ifndef KERN_ABI_H_ 36 #define KERN_ABI_H_ 37 38 #define LOAD_STEPS 3 39 #define TASK_NAME_BUFLEN 20 37 40 38 41 typedef struct { … … 41 44 uint64_t idle_ticks; 42 45 uint64_t busy_ticks; 43 } uspace_cpu_info_t; 46 } stats_cpu_t; 47 48 typedef struct { 49 uint64_t total; 50 uint64_t unavail; 51 uint64_t used; 52 uint64_t free; 53 } stats_physmem_t; 54 55 typedef struct { 56 uint64_t call_sent; 57 uint64_t call_recieved; 58 uint64_t answer_sent; 59 uint64_t answer_recieved; 60 uint64_t irq_notif_recieved; 61 uint64_t forwarded; 62 } stats_ipc_t; 63 64 typedef struct { 65 char name[TASK_NAME_BUFLEN]; 66 size_t virtmem; 67 size_t threads; 68 uint64_t ucycles; 69 uint64_t kcycles; 70 stats_ipc_t ipc_info; 71 } stats_task_t; 72 73 typedef uint32_t load_t; 44 74 45 75 #endif -
kernel/generic/include/sysinfo/stats.h
rd8e3467 r9dae191e 1 1 /* 2 * Copyright (c) 2010 Stanislav Kozina2 * Copyright (c) 2010 Martin Decky 3 3 * All rights reserved. 4 4 * … … 33 33 */ 34 34 35 #ifndef KERN_ PS_UPTIME_H_36 #define KERN_ PS_UPTIME_H_35 #ifndef KERN_STATS_H_ 36 #define KERN_STATS_H_ 37 37 38 extern int sys_ps_get_uptime(uint64_t *user_load); 38 extern void kload(void *arg); 39 extern void stats_init(void); 39 40 40 41 #endif -
kernel/generic/include/sysinfo/sysinfo.h
rd8e3467 r9dae191e 59 59 typedef unative_t (*sysinfo_fn_val_t)(struct sysinfo_item *); 60 60 typedef void *(*sysinfo_fn_data_t)(struct sysinfo_item *, size_t *); 61 typedef struct sysinfo_item *(*sysinfo_fn_subtree_t)(const char *);62 61 63 62 typedef struct { … … 73 72 } sysinfo_item_val_t; 74 73 74 typedef struct { 75 sysinfo_item_val_type_t tag; 76 union { 77 unative_t val; 78 sysinfo_data_t data; 79 }; 80 } sysinfo_return_t; 81 82 typedef sysinfo_return_t (*sysinfo_fn_subtree_t)(const char *); 83 75 84 typedef union { 76 85 struct sysinfo_item *table; 77 sysinfo_fn_subtree_t find_item;86 sysinfo_fn_subtree_t get_data; 78 87 } sysinfo_subtree_t; 79 88 … … 90 99 } sysinfo_item_t; 91 100 92 typedef struct {93 sysinfo_item_val_type_t tag;94 union {95 unative_t val;96 sysinfo_data_t data;97 };98 } sysinfo_return_t;99 100 extern void sysinfo_init(void);101 102 101 extern void sysinfo_set_item_val(const char *, sysinfo_item_t **, unative_t); 103 102 extern void sysinfo_set_item_data(const char *, sysinfo_item_t **, void *, 104 103 size_t); 105 extern void sysinfo_set_item_ val_fn(const char *, sysinfo_item_t **,104 extern void sysinfo_set_item_fn_val(const char *, sysinfo_item_t **, 106 105 sysinfo_fn_val_t); 107 extern void sysinfo_set_item_ data_fn(const char *, sysinfo_item_t **,106 extern void sysinfo_set_item_fn_data(const char *, sysinfo_item_t **, 108 107 sysinfo_fn_data_t); 109 108 extern void sysinfo_set_item_undefined(const char *, sysinfo_item_t **); 110 109 111 extern sysinfo_return_t sysinfo_get_item(const char *, sysinfo_item_t **); 112 extern void sysinfo_dump(sysinfo_item_t **, unsigned int); 110 extern void sysinfo_set_subtree_fn(const char *, sysinfo_item_t **, 111 sysinfo_fn_subtree_t); 112 113 extern void sysinfo_init(void); 114 extern void sysinfo_dump(sysinfo_item_t *); 113 115 114 116 unative_t sys_sysinfo_get_tag(void *, size_t);
Note:
See TracChangeset
for help on using the changeset viewer.
