edf.h
来自「这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易」· C头文件 代码 · 共 55 行
H
55 行
enum { Maxsteps = 200 * 100 * 2, /* 100 periods of 200 procs */ /* Edf.flags field */ Admitted = 0x01, Sporadic = 0x02, Yieldonblock = 0x04, Sendnotes = 0x08, Deadline = 0x10, Yield = 0x20, Extratime = 0x40, Infinity = ~0ULL,};typedef struct Edf Edf;struct Edf { /* All times in µs */ /* time intervals */ long D; /* Deadline */ long Delta; /* Inherited deadline */ long T; /* period */ long C; /* Cost */ long S; /* Slice: time remaining in this period */ /* times (only low-order bits of absolute time) */ long r; /* (this) release time */ long d; /* (this) deadline */ long t; /* Start of next period, t += T at release */ long s; /* Time at which this proc was last scheduled */ /* for schedulability testing */ long testDelta; int testtype; /* Release or Deadline */ long testtime; Proc *testnext; /* other */ ushort flags; Timer; /* Stats */ long edfused; long extraused; long aged; ulong periods; ulong missed;};extern Lock edftestlock; /* for atomic admitting/expelling */#pragma varargck type "t" long#pragma varargck type "U" uvlong/* Interface: */Edf* edflock(Proc*);void edfunlock(void);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?