kmalloc 中 GFP_USER 标志有什么用?

2023-12-14

据我了解,在GFP_USER标志(在调用kmalloc) 用于为用户空间分配内存。这是否意味着分配的页面位于用户可以访问的内核空间中? 这些页面是否需要mmapp'ed 在用户空间中或者用户可以直接访问该地址。 如果他们需要mmapp那么有什么区别GFP_USER and GFP_KERNEL?


简要说明可以在内核中找到sources:

GFP_KERNEL是典型的内核内部分配。呼叫者,召集者 需要 ZONE_NORMAL 或更低的区域才能直接访问,但可以直接 回收。

GFP_USER用于也需要直接进行的用户空间分配 可由内核或硬件访问。它通常由硬件使用 对于映射到用户空间(例如图形)的缓冲区,硬件 还是必须DMA来。这些分配强制执行 cpuset 限制。

#define GFP_KERNEL      (__GFP_RECLAIM | __GFP_IO | __GFP_FS)
#define GFP_USER        (__GFP_RECLAIM | __GFP_IO | __GFP_FS | __GFP_HARDWALL)

From here:

__GFP_HARDWALL 强制执行cpuset内存分配策略。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

kmalloc 中 GFP_USER 标志有什么用? 的相关文章

  • 设置 Vim 背景颜色

    当我尝试更改背景颜色时 vimrc或者直接在 Vim 中使用以下命令 set background dark 这根本不影响我的背景 也没有light选项 不过 当我运行 gvim 时 看起来还不错 有没有办法在不更改 Konsole 设置的
  • “./somescript.sh”和“. ./somescript.sh”有什么区别

    今天我按照一些说明在 Linux 中安装软件 有一个需要首先运行的脚本 它设置一些环境变量 指令告诉我执行 setup sh 但是我执行时犯了一个错误 setup sh 所以环境没有设置 最后我注意到了这一点并继续进行 我想知道这两种调用脚
  • tar.gz 和 tgz 是同一个东西吗? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我创建了 tgz 文件tar czvf filecommand then 我最终得到了一个 tgz 文件 我想知道它和tar gz 之间的
  • 在Linux中创建可执行文件

    我计划做的一件事是编写 非常简单的 Perl 脚本 并且我希望能够在不从终端显式调用 Perl 的情况下运行它们 我明白 要做到这一点 我需要授予他们执行权限 使用 chmod 执行此操作非常简单 但它似乎也是一个稍微费力的额外步骤 我想要
  • 在Linux中使用C/C++获取机器序列号和CPU ID

    在Linux系统中如何获取机器序列号和CPU ID 示例代码受到高度赞赏 Here http lxr linux no linux v2 6 39 arch x86 include asm processor h L173Linux 内核似
  • 我们可以在 Bash 脚本中使用 PHP 吗?

    我有一个 bash 脚本abcd sh bin sh for i in seq 8 do ssh w i uptime ps elf grep httpd wc l free m mpstat done pid sleep 1 kill 9
  • C# - OPC-UA 服务器应用程序尚未在 Linux 计算机中创建 PKI 证书

    当我跑步时OPC UA serverWindows 机器中的 C 应用程序 然后 OPC UA 服务器已创建证书路径C ProgramData OPC Foundation pki own 并在此路径中生成一些证书 但是当我在中安装 OPC
  • python 可以检测它运行在哪个操作系统下吗?

    python 可以检测操作系统 然后为文件系统构建 if else 语句吗 我需要将 Fn 字符串中的 C CobaltRCX 替换为 FileSys 字符串 import os path csv from time import strf
  • Linux mremap 不释放旧映射?

    我需要一种方法将页面从一个虚拟地址范围复制到另一个虚拟地址范围 而无需实际复制数据 范围很大 延迟很重要 mremap 可以做到这一点 但问题是它也会删除旧的映射 由于我需要在多线程环境中执行此操作 因此我需要旧映射能够同时使用 因此稍后当
  • X 服务器使用什么像素格式?

    X 服务器使用什么像素格式 RGBA ARBG BGRA 如果有任何特定格式的话 Update 我专门寻找有关颜色分量顺序和位模式的信息 你的意思是帧缓冲区格式 或者所有支持的像素图格式 无论是哪一种 都取决于您的图形硬件 驱动程序和配置
  • Laravel 内存问题?

    各位 我在 DO 服务器上遇到这样的问题 我已经尝试了一切 整个网站在使用 Homestead 的 Linux 服务器上 100 正常工作 但上传后 它只能工作一次 在重新加载或刷新页面后会多次下降 我尝试增加 apache 服务器的内存
  • _dl_runtime_resolve -- 共享对象何时加载到内存中?

    我们有一个对性能要求很高的消息处理系统 最近我们注意到第一条消息比后续消息花费的时间要长很多倍 当它通过我们的系统时 会发生大量转换和消息增强 其中大部分是通过外部库完成的 我刚刚描述了这个问题 使用 callgrind 将仅一条消息的 运
  • 有没有办法让 Linux CLI IO 重定向持久化?

    我有多个管道命令 如下所示 find options grep options xargs grep options 它们中的每一个都可能产生我不感兴趣的错误 权限错误 文件名空格错误等 因此 我想将所有错误重定向到 dev null 我知
  • 如何修复 /usr/bin/env 参数处理?

    我遇到了一个奇怪的问题 usr bin env 我设计了一个简单的脚本来显示问题 该脚本使用 Ruby 编写 但使用 Python 编写的类似脚本也会发生同样的情况 这是脚本 usr bin env ruby p ARGV 还有一个没有 u
  • Tk 初始化失败:无显示名称且无 $DISPLAY 环境变量

    我试图从 Ubuntu 终端调用 Centos 服务器上的工具 我收到以下错误 Tk 初始化失败 没有显示名称 也没有 DISPLAY 环境变量 请帮我解决这个问题 提前致谢 连接到你的 CentOS 机器ssh Y其中 每man ssh
  • 在 4.x 内核上的 64 位内存中查找系统调用表

    我正在尝试编写一个简单的内核模块来查找 Linux 中的 sys call table 但遇到了一些麻烦 我在这里找到了 32 位 Linux 的基本指南 https memset wordpress com 2011 03 18 sysc
  • 如何使用 shell 脚本解压所有 .tar.gz?

    我试过这个 DIR path tar gz if ls A DIR 2 gt dev null then echo not gz else tar zxvf path tar gz C path tar fi 如果该文件夹有一个 tar 则
  • 在linux中使用setcap [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 要将 cap net raw 功能添加到 例如 bin ping 我们使用以下命令 setcap cap net raw ep bin ping ep
  • C 标准库函数与系统调用。哪个是“open()”?

    I know fopen 在C标准库中 所以我绝对可以调用fopen C 程序中的函数 我感到困惑的是为什么我可以打电话给open 功能也一样 open 应该是系统调用 所以它不是标准库中的C函数 因为我能够成功地调用open 函数 我调用
  • 我可以告诉 Linux 不要交换特定进程的内存吗?

    有没有办法告诉 Linux 它不应该将特定进程的内存交换到磁盘 它是一个 Java 应用程序 所以理想情况下我希望有一种方法可以从命令行执行此操作 我知道您可以将全局交换性设置为 0 但这明智吗 您可以通过以下方式执行此操作姆洛克尔 2 h

随机推荐

  • 任务“:app:transformDexArchiveWithExternalLibsDexMergerForDebug”执行失败

    我在运行应用程序时在 android studio 中遇到错误 app mergeDebugJniLibFolders universalimageloader compileDebugNdk NO SOURCE universalimag
  • https 调用未连接到服务器

    我正在研究Windows Service在 Visual Studio 2017 中 在其余 api 调用中 在调试代码时出现异常 有时 前 2 3 个调用在出现异常之后起作用 System Net WebException 远程服务器返回
  • 网站上的链接,可以使用令牌登录应用程序或回退到网站

    有一个请求添加到我们的网站之一的链接 该链接可以在 iOS 或 Android 上打开我们的移动应用程序 并通过传递身份验证令牌登录到该应用程序 如果应用程序在任一平台上都不存在 我需要它返回到相关网站 根据我对通用链接或深度链接的理解 它
  • 矩阵的平均行

    我正在尝试使用mean A 1 获取矩阵的平均行A 但出现错误 例如 尝试运行命令mean eye 3 1 这给出了错误no method mean Array Float64 2 Int32 我能找到的唯一文档mean函数在这里 http
  • 在 div 中保留 jQuery 对话框

    我正在尝试创建许多 jQuery 对话框 但我想将它们的位置限制在父 div 内 我使用以下代码来创建它们 顺便说一句 不透明度选项也不起作用 var d div title Title goes here div dialog autoO
  • ABNewPersonViewController 可以用来编辑现有记录吗?

    我正在尝试使用ABNewPersonViewController编辑现有记录 我设置了displayedPerson属性 它显示所有信息都很好 如果我打Save 一切都按预期进行 但是 如果我击中Cancel 记录为从地址簿中删除 我认为唯
  • 64 位进程上的 ReadProcessMemory 始终返回错误 299

    我在 ReadProcessMemory 方面遇到一些问题 我的代码是64位的 我可以读取任何 32 位进程的内存 但 ReadProcessMemory 总是失败 错误代码 299 部分读取 返回 0 字节读取 完成我的研究 大多数答案都
  • 服务器无效。读取服务器凭据时发生错误。如果重新创建域,则 Eclipse 中的服务器实例也必须重新创建

    任何人都可以帮我解决这个问题吗 我将在 Eclipse 中使用 Oracle Weblogic 服务器 使用jdk 1 6 45版本 The server is invalid Error occurred reading server c
  • Linux 中对 vtable、Qt 的未定义引用

    我试图在 Ubuntu 10 04 中的 Code Blocks 下编译 Qt 和 OpenGL 程序 我收到 对 GLWidget 的 vtable 的未定义引用 ifndef GLWIDGET H define GLWIDGET H i
  • 如何在bigquery表的所有列中搜索关键字?

    我正在使用大查询来查看我的谷歌云中的数据 我想在特定表的所有列中搜索关键字 例如 我正在搜索迪拜 我需要任何列中出现迪拜一词的条目结果 以下是 BigQuery 标准 SQL 并假设列名称不包含搜索词 也可以进行调整以解决此问题 stand
  • iOS:让应用程序在离开屏幕时终止

    我已经构建了一个简单的应用程序来激活硬件中的某些东西 这并不重要 现在我只希望应用程序在用户离开屏幕 切换应用程序 接到电话 按主页按钮等时完全终止 我对所有应用程序状态都感到困惑 我找不到合适的地方来处理它 我想我需要监听 要睡觉 事件并
  • 使用 Redshift 作为 Spring 批处理作业存储库以及 Redshift 中 SEQUENCE 的替代方案

    我的项目中的要求之一是将 Spring Batch 架构放置在 Amazon Redshift 数据库上 我计划从 schema postgresql sql 作为基线开始 因为 redshift 基于 postgres 查看 Spring
  • 如何用C语言制作分钟和秒计时器

    我正在努力用 c 语言制作一个可以计算分钟和秒的计时器 我试图通过将时间打印到控制台来测试它 但它似乎没有显示任何内容 我的代码看起来有什么问题吗 include
  • 您可以使用具有自签名证书的 Service Worker 吗?

    我有用于测试的开发人员服务器 他们拥有 SSL 自签名证书 使我们能够通过 HTTPS 测试 Web 应用程序 但会出现明显的警告 表明证书不可验证 没关系 但我有一个 Service Worker 抛出错误navigator servic
  • Adobe Socket 策略文件服务器问题

    有没有人能够成功实现一项服务来为 FlashPlayer 提供所需的套接字策略文件 我正在运行 Adob e 提供的服务的 Python 实现 http www adobe com devnet flashplayer articles s
  • Jquery 无法理解这个问题

    The alert i onclick 绑定线在 3 个 div 上运行 但所有这些在单击时都会提醒最后设置的值i 我希望我所做的事情是有意义的 这很难解释 它不是警报 1 2 或 3 而是警报 3 3 3 Updates bar prev
  • 是否可以检查所有 Java 8 流元素是否满足给定谓词之一?

    使用流 API 我可以轻松检查所有元素是否满足给定条件 使用allMatch e gt predicate e 方法 我还会检查是否满足多个条件中的任何一个allMatch e gt predicateA e predicateB e pr
  • 蛇吃掉一个方块后如何让更多的敌人出现

    所以我做了一个蛇游戏 但为了让它变得更难 我添加了一个用户必须避免的敌人 红色方块 但我想要它 所以当蛇吃掉它的一种食物时 另一个敌人会随机产生 一个例子是 如果他吃了 5 个食物 那么游戏中将会有 6 个敌人 所以我想知道如何让另一个敌人
  • QT下载大文件错误

    When I try to downloading file up to 50mb example no problem but with a big files give the following error void MainWind
  • kmalloc 中 GFP_USER 标志有什么用?

    据我了解 在GFP USER标志 在调用kmalloc 用于为用户空间分配内存 这是否意味着分配的页面位于用户可以访问的内核空间中 这些页面是否需要mmapp ed 在用户空间中或者用户可以直接访问该地址 如果他们需要mmapp那么有什么区