freefixedsizememory.c

来自「zilog的实时操作系统RZK,可以移植到多种处理器上」· C语言 代码 · 共 49 行

C
49
字号
/*
* File				:	RZKFreeFixedSizeMemory.c
*
* Description		:	This file defines RZKFreeFixedSizeMemory API.
* 
* Copyright 2004 ZiLOG Inc.  ALL RIGHTS RESERVED.
*
* This file contains unpublished confidential and proprietary information
* of ZiLOG, Inc.
* NO PART OF THIS WORK MAY BE DUPLICATED, STORED, PUBLISHED OR DISCLOSED 
* IN ANY FORM WITHOUT THE PRIOR WRITTEN CONSENT OF ZiLOG, INC.
* This is not a license and no use of any kind of this work is authorized
* in the absence of a written license granted by ZiLOG, Inc. in ZiLOG's 
* sole discretion 
*/
#include "ZSysgen.h"
#include "ZTypes.h"
#include "ZThread.h"
#include "ZMemory.h"
#include "ZInterrupt.h"

#define pPartition ((RZK_PARTITION_t *) hPartition)
extern RZK_PARTITION_CB_t  nPartition[];
extern UINT MAX_PARTITIONS;

void FreeBuf(RZK_PTR_t pBuf)
{
	UINT nPartitionNum = 0;
	RZK_PTR_t *tempBufStart;
	RZK_PTR_t *tempBufEnd;
	RZK_STATUS_t status = RZKERR_INVALID_ARGUMENTS;
	for(;nPartitionNum < MAX_PARTITIONS;nPartitionNum++)
	{
		RZK_PARTITION_CB_t *pPart = &nPartition[nPartitionNum];
		tempBufStart = (RZK_PTR_t *) ((RZK_PARTITION_t *)pPart)->pStart;
		tempBufEnd = (RZK_PTR_t *) ((RZK_PARTITION_t *)pPart)->pEnd;
		while(tempBufStart != tempBufEnd)
		{
			/* Free fixed size memory by calling RZKFreeFixedSizeMemory */
			status = RZKFreeFixedSizeMemory( pPart,(void *)pBuf ) ;
			tempBufStart ++;
			if(status == RZKERR_SUCCESS)
				break;
		}
		if(status == RZKERR_SUCCESS)
			break;
	}
	return;
}

⌨️ 快捷键说明

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