Subversion Repositories HelenOS

Rev

Rev 2031 | Rev 2071 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2031 Rev 2042
Line 146... Line 146...
146
 
146
 
147
    uint64_t ticks;             /**< Ticks before preemption. */
147
    uint64_t ticks;             /**< Ticks before preemption. */
148
   
148
   
149
    uint64_t cycles;            /**< Thread accounting. */
149
    uint64_t cycles;            /**< Thread accounting. */
150
    uint64_t last_cycle;        /**< Last sampled cycle. */
150
    uint64_t last_cycle;        /**< Last sampled cycle. */
-
 
151
    bool uncounted;             /**< Thread doesn't affect accumulated accounting. */
151
 
152
 
152
    int priority;               /**< Thread's priority. Implemented as index to CPU->rq */
153
    int priority;               /**< Thread's priority. Implemented as index to CPU->rq */
153
    uint32_t tid;               /**< Thread ID. */
154
    uint32_t tid;               /**< Thread ID. */
154
   
155
   
155
    thread_arch_t arch;         /**< Architecture-specific data. */
156
    thread_arch_t arch;         /**< Architecture-specific data. */
Line 166... Line 167...
166
extern spinlock_t threads_lock;
167
extern spinlock_t threads_lock;
167
 
168
 
168
extern btree_t threads_btree;           /**< B+tree containing all threads. */
169
extern btree_t threads_btree;           /**< B+tree containing all threads. */
169
 
170
 
170
extern void thread_init(void);
171
extern void thread_init(void);
171
extern thread_t *thread_create(void (* func)(void *), void *arg, task_t *task, int flags, char *name);
172
extern thread_t *thread_create(void (* func)(void *), void *arg, task_t *task, int flags, char *name, bool uncounted);
172
extern void thread_ready(thread_t *t);
173
extern void thread_ready(thread_t *t);
173
extern void thread_exit(void) __attribute__((noreturn));
174
extern void thread_exit(void) __attribute__((noreturn));
174
 
175
 
175
#ifndef thread_create_arch
176
#ifndef thread_create_arch
176
extern void thread_create_arch(thread_t *t);
177
extern void thread_create_arch(thread_t *t);