之前写的博客有一个遗留问题,find_get_page函数里指定了gfp_mask是0,这个0代表什么含义呢?
内核的gfp.h文件里其实已经给出了答案:

/** GFP_ZONE_TABLE is a word size bitstring that is used for looking up the* zone to use given the lowest 4 bits of gfp_t. Entries are GFP_ZONES_SHIFT* bits long and there are 16 of them to cover all possible combinations of* __GFP_DMA, __GFP_DMA32, __GFP_MOVABLE and __GFP_HIGHMEM.** The zone fallback order is MOVABLE=>HIGHMEM=>NORMAL=>DMA32=>DMA.* But GFP_MOVABLE is not only a zone specifier but also an allocation* policy. Therefore __GFP_MOVABLE plus another zone selector is valid.* Only 1 bit of the lowest 3 bits (DMA,DMA32,HIGHMEM) can be set to "1".**       bit       result*       =================*       0x0    => NORMAL*       0x1    => DMA or NORMAL*       0x2    => HIGHMEM or NORMAL*       0x3    => BAD (DMA+HIGHMEM)*       0x4    => DMA32 or NORMAL*       0x5    => BAD (DMA+DMA32)*       0x6    => BAD (HIGHMEM+DMA32)*       0x7    => BAD (HIGHMEM+DMA32+DMA)*       0x8    => NORMAL (MOVABLE+0)*       0x9    => DMA or NORMAL (MOVABLE+DMA)*       0xa    => MOVABLE (Movable is valid only if HIGHMEM is set too)*       0xb    => BAD (MOVABLE+HIGHMEM+DMA)*       0xc    => DMA32 or NORMAL (MOVABLE+DMA32)*       0xd    => BAD (MOVABLE+DMA32+DMA)*       0xe    => BAD (MOVABLE+DMA32+HIGHMEM)*       0xf    => BAD (MOVABLE+DMA32+HIGHMEM+DMA)** GFP_ZONES_SHIFT must be <= 2 on 32 bit platforms.*/

gfp_mask是0代表什么?相关推荐

  1. linux获取文件名最后一位,获取出文件最后一位是1 或者0 若果都是1 代表是正确的 如果有0代表错误...

    原文件内容: 要求 如果该文件的最后一位都是1 代表文件内容正常,是成功的,如果最后一位存在0 代表失败,把失败的一行内容展示出来. 直接上代码: riqi=`date +%Y%m%d` arr=($ ...

  2. Java可以使用非0代表true吗?

    对于c/c++,"0代表false,非0代表true",但对于JAVA,只能用布尔类型的true和false代表真假. 另外,boolean是基本数据类型,其包装类为Boolean ...

  3. 【进制运算】计算机的小任性——我说0代表正数,1代表负数,就是对的!

    话说我平时无聊就会想一些奇奇怪怪的问题,今天又突然想到了一个奇怪的问题--为啥计算机里"0"代表的是正数,"1"代表的是负数? 为此,我专门百度了下这个问题的答 ...

  4. 布尔 (boolean) 型变量只能取两个值,True 和 False。当把布尔型变量用在数字运算中,用 1 和 0 代表 True 和 False。

    布尔型变量 List item 布尔 (boolean) 型变量只能取两个值,True 和 False.当把布尔型变量用在数字运算中,用 1 和 0 代表 True 和 False. 除了直接给变量赋 ...

  5. 子网掩码为255.255.255.0代表什么意思?如果一个网络的子网掩码为255.255.255.248,问该网络能够连接多少台主机?

    一.子网掩码为255.255.255.0代表什么意思? 答:有三种含义 1.看作为A类网的子网掩码,对于A类网络的IP地址,前8位表示网络号,后24位表示主机号,使用子网掩码255.255.255.0 ...

  6. 【docker】在容器内部看到ppid为0代表什么

    在docker容器内部,我们常常看到一些进程它的ppid(父进程id)为0.因为docker 集成了pid namspace:所以pid namespace里ppid=0的情况和docker内部一致. ...

  7. 取出礼品盒中的礼品 0代表礼品,()代表包装盒,至少拆几次可以拿到礼品

    取出礼品盒中的礼品 0代表礼品,()代表包装盒,至少拆几次可以拿到礼品 (((0))),3次 (((())(0)())), 3次 思路 去除中间没有0的闭合的括号 及去除(( (()) (0) () ...

  8. Java语言:一辆大巴有9排4列的座位,现模拟客车售票过程(1代表“有票”,0代表“无票”)。

    题目:一辆大巴有9排4列的座位,现模拟客车售票过程(1代表"有票",0代表"无票"). 这个挺有意思的:讲一下思路吧,由于这个问题没有给出具体的空位数据,所以只 ...

  9. 2023-05-13:你现在手里有一份大小为 n x n 的 网格 grid, 上面的每个 单元格 都用 0 和 1 标记好了其中 0 代表海洋,1 代表陆地。 请你找出一个海洋单元格,这个海洋单元格

    2023-05-13:你现在手里有一份大小为 n x n 的 网格 grid, 上面的每个 单元格 都用 0 和 1 标记好了其中 0 代表海洋,1 代表陆地. 请你找出一个海洋单元格,这个海洋单元格 ...

最新文章

  1. 基于Android设备的Kali Linux渗透测试教程第1章渗透测试
  2. 添加右键菜单_添加“复制路径”选项到右键菜单
  3. android配置开发环境ubuntu
  4. 为什么我们总是「习惯性辩解」?
  5. 牛客 怕npy的牛牛(双指针)
  6. VAE【变分自编码器】
  7. Docker04-镜像
  8. XSSFWorkbook 设置单元格样式_openpyxl3.0官方文档(25)—— 使用样式
  9. 电脑微信多开方式(两种实现方案, 适合中文路径)(办公, 生活两不误 / 海王必备)
  10. JAVA缓存机制浅析
  11. 2022年前端面试题加答案
  12. amoeba mysql proxy_mysql-proxy和amoeba 分别实现Mariadb读写分离
  13. 原生JS实现自定义滚动条
  14. 区别:符号变量和常变量
  15. 给博士一年级新生的建议!
  16. spotify mp3_为什么Spotify有那么多怪异的通用艺术家,例如白噪声婴儿睡眠
  17. 绘图杂记【3】Python / R语言 制作峰峦图
  18. PHP互联网工长装修O2O服务平台源码
  19. 留住幸福的办法是不断创造幸福
  20. 标准计算机准备室,各功能室建设要求标准.docx

热门文章

  1. mysql内核架构_热血江湖mysql内核技术之门派数据库表结构说明
  2. JAVA图形界面中的事件处理
  3. win7 电脑如何内外网同时使用
  4. 一位linux强人安装Ubuntu8.04的经验(转)
  5. 为陶崇园争取正义懒人包1.0
  6. 初识C语言#define、指针、结构体
  7. python函数的传参(bert_vocab_from_dataset),函数括号里面含有**是什么意思?
  8. WPS自定义样式功能太弱了
  9. 三极管放大电路参数计算
  10. 基于bootstrap的富文本框——wangEditor【欢迎增加开发】