linux内核中的GFP_KERNEL和GFP_ATOMIC区别

  • 作用
  • 区别

作用

用来标记分配内核空间内存时的方式

区别

如果内存不够时,会等待内核释放内存,直到可以分配相应大小的内存,也就意味着会发生阻塞,因此不能使用在中断处理函数中,而GFP_ATOMIC标记正好是用在中断处理函数中的,也就是GFP_ATOMIC用在不能睡眠的场合(中断处理),而GFP_KERNEL用在可以睡眠的场合(使用GFP_KERNEL会引起休眠)

linux内核中的GFP_KERNEL和GFP_ATOMIC区别相关推荐

  1. linux标准c和c编译器6,linux内核中GNU C和标准C的区别

    linux内核中GNU C和标准C的区别 今天看了一下午的linux内核编程方面的内容,发现linux 内核中GNU C与标准C有一些差别,特记录如下: linux 系统上可用的C编译器是GNU C编 ...

  2. 什么是Linux系统调用system call?(Linux内核中设置的一组用于实现各种系统功能的子程序)(区别于标准C库函数调用)核心态和用户态的概念、中断的概念、系统调用号、系统调用表

    文章目录 什么是系统调用? 为什么要用系统调用? 系统调用是怎么工作的? 如何使用系统调用? _syscall*()是什么? errno是什么? 调用性能问题 Linux系统调用列表 进程控制 文件系 ...

  3. Linux内核中内存分配函数

    1.原理说明 Linux内核 中采 用了一种同时适用于32位和64位系统的内 存分页模型,对于32位系统来说,两级页表足够用了,而在x86_64系 统中,用到了四级页表,如图2-1所示.四级页表分别为 ...

  4. 简单谈一点linux内核中套接字的bind机制--数据结构以及端口确定

    众所周知,创建一个套接字可以bind到一个特定的ip地址和端口,实际上套接字这一概念代表了TCP/IP协议栈的应用层标识,协议栈中的应用层就是通过一个ip地址和一个端口号标识的,当然这仅仅是对于TCP ...

  5. 如何放出Linux内核中的链表大招

    前言 上回,我们说到Linux内核中max()宏的终极奥义,Linux内核链表也不甘示弱,那么接下来,让我们看看Linux内核中的链表大招. 如何放出Linux内核中的链表大招 前言 一.链表简介 ( ...

  6. Linux内核中的GPIO系统之(3):pin controller driver代码分析

    一.前言 对于一个嵌入式软件工程师,我们的软件模块经常和硬件打交道,pin control subsystem也不例外,被它驱动的硬件叫做pin controller(一般ARM soc的datash ...

  7. linux内核中链表代码分析---list.h头文件分析(二)【转】

    转自:http://blog.chinaunix.net/uid-30254565-id-5637598.html linux内核中链表代码分析---list.h头文件分析(二) 16年2月28日16 ...

  8. Linux内核中无名管道pipe和有名管道fifo的分析

    1.管道(pipe) 管道是进程间通信的主要手段之一.一个管道实际上就是个只存在于内存中的文件,对这个文件的操作要通过两个已经打开文件进行,它们分别代表管道的两端.管道是一种特殊的文件,它不属于某一种 ...

  9. 如下为利用Linux内核链表创建,Linux内核中链表的实现与应用

    链表(循环双向链表)是Linux内核中最简单.最常用的一种数据结构. 1.链表的定义 struct list_head { struct list_head *next, *prev; } 这个不含数 ...

最新文章

  1. 云计算模型 - 1. 概述
  2. BP神经网络与卷积神经网络(CNN)
  3. python3语法错误-Python3 错误和异常
  4. Markdown的基本语法
  5. 1.EXTJS Row Editor Grid 点取消时插入的新行 的解决方法
  6. 白盒测试不是测试,更不高级
  7. java了解异常_ID检测_Java入门第三季7-1简易扑克牌游戏(自定义玩家个数,玩家个数和ID异常检测)...
  8. 重装Windows后修复Linux引导
  9. Eureka 客户端不注册
  10. python or的用法_python and or用法详解
  11. linux双系统grub引导修复工具,双系统引导grub简单备份及修复
  12. php lwm2m,LwM2M和CoAP及它们之间的关系
  13. IPv4与IPv6的区别
  14. 手机端开发(uni-app、vant、mui)优缺点分析
  15. VMware16虚拟机:安装Windows10系统---超详细教程
  16. 体系结构学习11-VLIW处理器
  17. obsutil相关 (桶相关操作Linux)
  18. 10分钟健身法读书笔记(2/5)
  19. 服务器限制网页只能跳转过来,限制网页只能在微信打开
  20. iOS 重写UIButton

热门文章

  1. 20230419心情随记
  2. 随笔6 崇拜轩昂神有感
  3. Oracle索引与where
  4. 在线运行python的网站-Python在线练习运行平台
  5. java Lambda表达式练习
  6. 一个39岁程序员的应聘被拒 | 文末送书
  7. 织梦dedecms网站如何转移搬家
  8. Java编程:悲观锁、乐观锁的区别及使用场景
  9. 移动通信技术的毫米波波束成形系统构成
  10. Python开发中的接口详解和使用方法