mem.h,v
来自「TCP-IP红宝书源代码」· H,V 代码 · 共 73 行
H,V
73 行
head 1.2;
access;
symbols;
locks
dls:1.2; strict;
comment @ * @;
1.2
date 97.09.21.19.26.19; author dls; state Dist;
branches;
next 1.1;
1.1
date 94.05.10.20.48.46; author dls; state Old;
branches;
next ;
desc
@@
1.2
log
@pre-3e code
@
text
@/* mem.h - freestk, roundew, truncew , roundmb, truncmb */
/*----------------------------------------------------------------------
* roundew, truncew - round or trunctate address to next even word
*----------------------------------------------------------------------
*/
#define roundew(x) (WORD *)( (3 + (WORD)(x)) & ~03 )
#define truncew(x) (WORD *)( ((WORD)(x)) & ~03 )
/*----------------------------------------------------------------------
* roundmb, truncmb -- round or truncate address up to size of mblock
*----------------------------------------------------------------------
*/
#define roundmb(x) (WORD *)( (7 + (WORD)(x)) & ~07 )
#define truncmb(x) (WORD *)( ((WORD)(x)) & ~07 )
/*----------------------------------------------------------------------
* freestk -- free stack memory allocated by getstk
*----------------------------------------------------------------------
*/
#define freestk(p,len) freemem((unsigned)(p) \
- (unsigned)(roundmb(len)) \
+ (unsigned)sizeof(int), \
roundmb(len) )
struct mblock {
struct mblock *mnext;
unsigned int mlen;
};
extern struct mblock memlist; /* head of free memory list */
extern char *maxaddr; /* max memory address */
extern WORD _end; /* address beyond loaded memory */
extern WORD *end; /* &_end + FILLSIZE */
@
1.1
log
@Initial revision
@
text
@@
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?