⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sched.h

📁 自己做的交叉编译工具!gcc-3.4.5,glibc-2.3.6在ubuntu8.04上做的面向kernel-2.6.28的交叉编译工具
💻 H
字号:
#ifndef _LINUX_SCHED_H#define _LINUX_SCHED_H#include <asm/param.h>	/* for HZ */#include <linux/capability.h>#include <linux/threads.h>#include <linux/kernel.h>#include <linux/types.h>#include <linux/rbtree.h>#include <asm/page.h>#include <asm/ptrace.h>#include <linux/sem.h>#include <linux/signal.h>#include <linux/securebits.h>#include <linux/fs.h>struct exec_domain;/* * cloning flags: */#define CSIGNAL		0x000000ff	/* signal mask to be sent at exit */#define CLONE_VM	0x00000100	/* set if VM shared between processes */#define CLONE_FS	0x00000200	/* set if fs info shared between processes */#define CLONE_FILES	0x00000400	/* set if open files shared between processes */#define CLONE_SIGHAND	0x00000800	/* set if signal handlers and blocked signals shared */#define CLONE_PTRACE	0x00002000	/* set if we want to let tracing continue on the child too */#define CLONE_VFORK	0x00004000	/* set if the parent wants the child to wake it up on mm_release */#define CLONE_PARENT	0x00008000	/* set if we want to have the same parent as the cloner */#define CLONE_THREAD	0x00010000	/* Same thread group? */#define CLONE_NEWNS	0x00020000	/* New namespace group? */#define CLONE_SYSVSEM	0x00040000	/* share system V SEM_UNDO semantics */#define CLONE_SETTLS	0x00080000	/* create a new TLS for the child */#define CLONE_PARENT_SETTID	0x00100000	/* set the TID in the parent */#define CLONE_CHILD_CLEARTID	0x00200000	/* clear the TID in the child */#define CLONE_DETACHED		0x00400000	/* Unused, ignored */#define CLONE_UNTRACED		0x00800000	/* set if the tracing process can't force CLONE_PTRACE on this clone */#define CLONE_CHILD_SETTID	0x01000000	/* set the TID in the child */#define CLONE_STOPPED		0x02000000	/* Start in stopped state *//* * List of flags we want to share for kernel threads, * if only because they are not used by them anyway. */#define CLONE_KERNEL	(CLONE_FS | CLONE_FILES | CLONE_SIGHAND)/* * These are the constant used to fake the fixed-point load-average * counting. Some notes: *  - 11 bit fractions expand to 22 bits by the multiplies: this gives *    a load-average precision of 10 bits integer + 11 bits fractional *  - if you want to count load-averages more often, you need more *    precision, or rounding will get you. With 2-second counting freq, *    the EXP_n values would be 1981, 2034 and 2043 if still using only *    11 bit fractions. */extern unsigned long avenrun[];		/* Load averages */#define FSHIFT		11		/* nr of bits of precision */#define FIXED_1		(1<<FSHIFT)	/* 1.0 as fixed-point */#define LOAD_FREQ	(5*HZ)		/* 5 sec intervals */#define EXP_1		1884		/* 1/exp(5sec/1min) as fixed-point */#define EXP_5		2014		/* 1/exp(5sec/5min) */#define EXP_15		2037		/* 1/exp(5sec/15min) */#define CALC_LOAD(load,exp,n) \	load *= exp; \	load += n*(FIXED_1-exp); \	load >>= FSHIFT;#define CT_TO_SECS(x)	((x) / HZ)#define CT_TO_USECS(x)	(((x) % HZ) * 1000000/HZ)#include <sys/time.h>#include <linux/param.h>#include <linux/resource.h>#define TASK_RUNNING		0#define TASK_INTERRUPTIBLE	1#define TASK_UNINTERRUPTIBLE	2#define TASK_STOPPED		4#define TASK_TRACED		8#define EXIT_ZOMBIE		16#define EXIT_DEAD		32#define __set_task_state(tsk, state_value)		\	do { (tsk)->state = (state_value); } while (0)#define set_task_state(tsk, state_value)		\	set_mb((tsk)->state, (state_value))#define __set_current_state(state_value)			\	do { current->state = (state_value); } while (0)#define set_current_state(state_value)		\	set_mb(current->state, (state_value))/* Task command name length */#define TASK_COMM_LEN 16/* * Scheduling policies */#define SCHED_NORMAL		0#define SCHED_FIFO		1#define SCHED_RR		2struct sched_param {	int sched_priority;};#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -