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

📄 vmalloc.c

📁 T-kernel 的extension源代码
💻 C
字号:
/* *---------------------------------------------------------------------- *    T-Kernel / Standard Extension * *    Copyright (C) 2006 by Ken Sakamura. All rights reserved. *    T-Kernel / Standard Extension is distributed  *      under the T-License for T-Kernel / Standard Extension. *---------------------------------------------------------------------- * *    Version:   1.00.00 *    Released by T-Engine Forum(http://www.t-engine.org) at 2006/8/11. * *---------------------------------------------------------------------- *//* *	vmalloc.c (libtkse) * *	Allocation of non-resident system memory * *	For system process *	Cannot be used in ordinary processes */#include "libtkse.h"#include <extension/memory.h>Inline	void	Vmeminit( void );#ifndef VMALLOCTESTEXPORT MACB	_Vmacb;		/* Vmalloc management information */#elseIMPORT MACB	_Vmacb;		/* Vmalloc management information */#endifInline void Vmeminit( void ){	if ( AlignMACB(&_Vmacb)->pagesz == 0U ) {		(void)_mem_init(M_SYSTEM, &_Vmacb);	}}#ifndef VMALLOCTESTEXPORT void* Vmalloc( size_t size ){	void	*p;	MEMLOCK( return NULL )	Vmeminit();	p = _mem_malloc(size, &_Vmacb);	MEMUNLOCK()	return p;}EXPORT void* Vcalloc( size_t nmemb, size_t size ){	void	*p;	MEMLOCK( return NULL )	Vmeminit();	p = _mem_calloc(nmemb, size, &_Vmacb);	MEMUNLOCK()	return p;}EXPORT void* Vrealloc( void *ptr, size_t size ){	void	*p;	MEMLOCK( return NULL )	Vmeminit();	p = _mem_realloc(ptr, size, &_Vmacb);	MEMUNLOCK()	return p;}EXPORT void Vfree( void *ptr ){	MEMLOCK( return )	Vmeminit();	_mem_free(ptr, &_Vmacb);	MEMUNLOCK()}#else /* VMALLOCTEST */EXPORT void Vmalloctest( int mode ){	MEMLOCK( return )	Vmeminit();	_mem_malloctest(mode, &_Vmacb);	MEMUNLOCK()}EXPORT BOOL Vmalloccheck( void *ptr ){	BOOL	b;	MEMLOCK( return FALSE )	Vmeminit();	b = _mem_malloccheck(ptr, &_Vmacb);	MEMUNLOCK()	return b;}#endif /* VMALLOCTEST */

⌨️ 快捷键说明

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