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

📄 cma_init.h

📁 这个是LINUX下的GDB调度工具的源码
💻 H
字号:
/*  * (c) Copyright 1990-1996 OPEN SOFTWARE FOUNDATION, INC. * (c) Copyright 1990-1996 HEWLETT-PACKARD COMPANY * (c) Copyright 1990-1996 DIGITAL EQUIPMENT CORPORATION * (c) Copyright 1991, 1992 Siemens-Nixdorf Information Systems * To anyone who acknowledges that this file is provided "AS IS" without * any express or implied warranty: permission to use, copy, modify, and * distribute this file for any purpose is hereby granted without fee, * provided that the above copyright notices and this notice appears in * all source code copies, and that none of the names listed above be used * in advertising or publicity pertaining to distribution of the software * without specific, written prior permission.  None of these organizations * makes any representations about the suitability of this software for * any purpose. *//* *	Header file for CMA initialization */#ifndef CMA_INIT#define CMA_INIT/* *  INCLUDE FILES */#include <dce/cma_host.h>#include <cma_errors.h>/* * CONSTANTS AND MACROS */#define cma__c_env_maxattr	0#define cma__c_env_minattr	1#define cma__c_env_maxcond	2#define	cma__c_env_mincond	3#define cma__c_env_maxmutex	4#define cma__c_env_minmutex	5#define cma__c_env_maxthread	6#define cma__c_env_minthread	7#define cma__c_env_maxcluster	8#define cma__c_env_mincluster	9#define cma__c_env_maxvp	10#define cma__c_env_multiplex	11#define cma__c_env_trace	12#define cma__c_env_trace_file	13#define cma__c_env_count	13/* * cma__int_init * * Initialize the main body of CMA exactly once. * * We raise an exception if, for some odd reason, there are already threads * in the environment (e.g. kernel threads), and one of them is trying to * initialize CMA before the  first thread got all the way through the actual * initialization. This code maintains the invariants: "after successfully * calling CMA_INIT, you can call any CMA function", and  "CMA is actually * initialized at most once". *//*#ifndef _HP_LIBC_R */#if  defined _HP_LIBC_R  ||(defined(SNI_SVR4) && !defined(CMA_INIT_NEEDED))# define cma__int_init()#else# define cma__int_init() { \    if (!cma__tac_isset(&cma__g_init_started)) { \	if (!cma__test_and_set (&cma__g_init_started)) { \	    cma__init_static (); \	    cma__test_and_set (&cma__g_init_done); \	    } \	else if (!cma__tac_isset (&cma__g_init_done)) { \	    cma__error (cma_s_inialrpro); \    }}}#endif/* * TYPEDEFS */typedef enum CMA__T_ENV_TYPE {    cma__c_env_type_int,    cma__c_env_type_file    } cma__t_env_type;typedef struct CMA__T_ENV {    char		*name;		/* Name of environment variable */    cma__t_env_type	type;		/* Type of variable */    cma_t_integer	value;		/* Numeric value of the variable */    } cma__t_env;/* *  GLOBAL DATA */extern cma__t_env		cma__g_env[cma__c_env_count];extern cma__t_atomic_bit	cma__g_init_started;extern cma__t_atomic_bit	cma__g_init_done;extern char			*cma__g_version;/* * INTERNAL INTERFACES */extern voidcma__init_static (void);	/* Initialize static data */#if _CMA_OS_ != _CMA__VMSextern void cma__init_atfork (void);#endif#endif

⌨️ 快捷键说明

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