PAGE_SIZE & PAGE_SHIFT & _AC()

/* PAGE_SHIFT determines the page size */
#define PAGE_SHIFT      12
#define PAGE_SIZE       (_AC(1,UL) << PAGE_SHIFT)
       
_AC 宏被定义在 /inux/const.h 中:
引用
#ifdef __ASSEMBLY__
#define _AC(X,Y)        X
#define _AT(T,X)        X
#else
#define _AC(X,Y)        __AC(X,Y)#define __AC(X,Y)       (X##Y)


一般的,因为可能没有定义 __ASSEMBLY__  ,那么 _AC 就会是 __AC(X,Y) 样式。如此一来,_AC(1,UL) 展开后,就成为 1UL ,这样网左移动 PAGE_SHITF 位后,即为 2^12 = 4096

相关文章:

  • 2021-11-03
  • 2021-09-17
  • 2021-10-15
  • 2021-12-02
  • 2021-07-31
  • 2021-10-30
  • 2021-07-10
  • 2021-06-15
猜你喜欢
  • 2022-12-23
  • 2022-02-08
  • 2021-06-19
  • 2021-05-27
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案