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

📄 tkminit.c

📁 日本著名的的嵌入式实时操作系统T-Kernel的源码及用户手册。
💻 C
字号:
/* *---------------------------------------------------------------------- *    T-Kernel * *    Copyright (C) 2004 by Ken Sakamura. All rights reserved. *    T-Kernel is distributed under the T-License. *---------------------------------------------------------------------- * *    Version:   1.01.00 *    Released by T-Engine Forum(http://www.t-engine.org) at 2004/6/28. * *---------------------------------------------------------------------- *//* *	@(#)tkminit.c (libtk) * *	Memory allocation library  *	T-Kernel initialization sequence  * *	_tkm_init is always linked as it is called from the startup *	sequence part.  *	Note that adding too many processing can make the program *	size quite large, irrespective of whether malloc is required *	or not. */#include <basic.h>#include <tk/tkernel.h>#include <sys/memalloc.h>/* * Memory allocation  */LOCAL VP getblk( INT nblk, UINT mematr ){	VP	ptr;	ER	err;	err = tk_get_smb(&ptr, nblk, mematr);	if ( err < E_OK ) return NULL;	return ptr;}/* * Memory release  */LOCAL void relblk( VP ptr ){	tk_rel_smb(ptr);}/* * MACB initialization  */EXPORT ER _tkm_init( UINT mematr, MACB *_macb ){	MACB	*macb = AlignMACB(_macb);	T_RSMB	rsmb;	ER	err;	/* Initialize memory allocation management information */	macb->pagesz   = 0;	/* 0 indicates not available for use*/	macb->mematr   = mematr;	macb->testmode = 0;	macb->getblk   = getblk;	macb->relblk   = relblk;	QueInit(&macb->areaque);	QueInit(&macb->freeque);	/* Get memory information */	err = tk_ref_smb(&rsmb);	if ( err < E_OK ) return err;	macb->pagesz = rsmb.blksz;	return E_OK;}

⌨️ 快捷键说明

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