page.h

来自「自己做的交叉编译工具!gcc-3.4.5,glibc-2.3.6在ubuntu8」· C头文件 代码 · 共 31 行

H
31
字号
/* *  linux/include/asm-arm/page.h * *  Copyright (C) 1995-2003 Russell King * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */#ifndef _ASMARM_PAGE_H#define _ASMARM_PAGE_H#include <unistd.h>#define PAGE_SIZE (getpagesize())static __inline__ int getpageshift(){    int pagesize = getpagesize();#if (__GNUC__ >= 4) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 4))    return (__builtin_clz(pagesize) ^ 31);#else    register int pageshift = -1;    while (pagesize) { pagesize >>= 1; pageshift++; }    return pageshift;#endif}#define PAGE_SHIFT (getpageshift())#define PAGE_MASK    (~(PAGE_SIZE-1))#endif

⌨️ 快捷键说明

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