~kris/9p

9hist

ref: 684b0400aefc0efee89a6a7d74af95ca20760ea3 9hist/port/devrealtime.h -rw-r--r-- 835 bytes
684b0400 — David du Colombier Plan 9 from Bell Labs 2002-04-14 24 years ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
typedef vlong	Time;
typedef struct	Schedevent Schedevent;

#define Onemicrosecond			((Time)1000ULL)
#define Onemillisecond			((Time)1000*Onemicrosecond)
#define Onesecond				((Time)1000*Onemillisecond)

enum SEvent {
	SAdmit,		/* new proc arrives*/
	SRelease,		/* released, but not yet scheduled (on qreleased) */
	SRun,		/* one of this task's procs started running */
	SPreempt,		/* the running proc was preempted */
	SBlock,		/* none of the procs are runnable as a result of sleeping */
	SResume,		/* one or more procs became runnable */
	SDeadline,	/* proc's deadline */
	SYield,		/* proc reached voluntary early deadline */
	SSlice,		/* slice exhausted */
	SExpel,		/* proc is gone */
};
typedef enum SEvent	SEvent;

struct Schedevent {
	ushort	tid;		/* Task ID */
	SEvent	etype;	/* Event type */
	Time		ts;		/* Event time */
};