syscall_table 在 x86_64 内核中的什么位置?

2024-03-07

我正在尝试向 Linux 内核(x86_64)添加新的系统调用。基于本文 http://techeclipse.com/how-to/linux-kernel/其中解释了如何将系统调用添加到内核(x86)。该文章说我需要在名为的文件中定义我的系统调用名称syscall_table_32.S它位于src/arch/x86/syscall_table_32.S.

但就我而言,没有名为syscall_table_32.S or syscall_table_64.S在内核源码中!甚至没有 x64 系统调用表的目录src/arch/.

那么,哪里是syscall_table_64.S在内核 3.13.0-14-generic (x86_64) 中定义? 在哪里可以定义新的系统调用?


3.3 及以上版本与指南使用的 2.X 不同。你应该寻找syscalls目录中,在arch/x86/目录。也是如此:

cd /kernel-src/arch/x86/syscalls/syscall_64.tbl

kernel-src是内核源代码所在的目录。一个好主意是阅读这个答案 https://stackoverflow.com/a/10052600/792066SO 并将其与您的资源进行比较。

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

syscall_table 在 x86_64 内核中的什么位置? 的相关文章

  • 使用Linux虚拟鼠标驱动

    我正在尝试实施一个虚拟鼠标驱动程序根据基本 Linux 设备驱动程序书 有一个用户空间应用程序 它生成坐标以及内核模块 See 虚拟鼠标驱动程序和用户空间应用程序代码 http www embeddedlinux org cn Essent
  • “do { ... } while (0)”在内核代码中到底做了什么? [复制]

    这个问题在这里已经有答案了 可能的重复 当我们定义宏时 do while 0 有什么用 https stackoverflow com questions 923822 whats the use of do while0 when we
  • 如何在 Linux x86_64 上模拟 iret

    我正在编写一个基于 Intel VT 的调试器 由于当 NMI Exiting 1 时 iret 指令在 vmx guest 中的性能发生了变化 所以我应该自己处理vmx主机中的NMI 否则 guest会出现nmi可重入错误 我查了英特尔手
  • Linux内核页表更新

    在linux x86 中分页 每个进程都有它自己的页面目录 页表遍历从 CR3 指向的页目录开始 每个进程共享内核页目录内容 假设三个句子是正确的 假设某个进程进入内核 模式并更新他的内核页目录内容 地址映射 访问 权利等 问题 由于内核地
  • R 抑制系统或 shell 命令的控制台输出

    我有这个 Windows 批处理文件 我使用 R 从 R 调用该文件shell 命令 该批处理文件执行一些计算并将它们写入磁盘上 也写入屏幕上 我只对磁盘输出感兴趣 我无法更改批处理文件 批处理文件可能有点愚蠢 例如 echo off ec
  • 动态更改 eBPF 映射大小

    在内核中 eBPF 映射可以定义为 struct bpf map def SEC maps my map type BPF MAP TYPE HASH key size sizeof uint32 t value size sizeof s
  • 同步 I/O 是否会使线程繁忙?

    假设我正在同步 I O 套接字上执行 I O 该套接字已准备好read or write手术 这意味着调用线程不会在操作上被阻塞 无论非阻塞 SOCK NONBLOCK 套接字的阻塞性质 但以下事情我不清楚 实际转移何时发生 当套接字标记为
  • 内存调试:如何获取 Linux 用户空间/内核空间中的锁定页面信息

    有什么方法可以获取Linux用户空间 内核空间中的锁定页面 虚拟内存页面 信息 我想了解详细信息 例如 谁锁定了页面 有多少页被锁定 进程名称 谁锁定了页面 还让我了解内核空间和用户空间的内存调试技术 对于内存中的每个页面 都会为其分配标志
  • Linux中的CONFIG_OF是什么?

    我看到它在很多地方被广泛使用 但不明白在什么场景下我需要使用它 What is 配置 OF OF 的全名是什么 打开固件 这是很久以前发明的 当时苹果公司正在生产基于 PowerPC CPU 的笔记本电脑 而 Sun Microsystem
  • 有谁知道在哪里定义硬件、版本和序列号。 /proc/cpuinfo 的字段?

    我想确保我的 proc cpuinfo 是准确的 目前它输出 Hardware am335xevm Revision 0000 Serial 0000000000000000 我可以在代码中的哪里更改它以给出实际值 这取决于 Linux 的
  • 为什么这段代码会死锁?

    我在可加载模块中创建了 2 个 Linux 内核线程 并将它们绑定到在双核 Android 设备上运行的单独 CPU 内核 运行几次后 我注意到设备重新启动并重置了硬件看门狗定时器 我一直在解决这个问题 什么可能导致僵局 基本上 我需要做的
  • 当 mov 指令导致页面错误并且在 x86 上禁用中断时会发生什么?

    我最近在自定义 Linux 内核 2 6 31 5 x86 驱动程序中遇到一个问题 其中 copy to user 会定期不将任何字节复制到用户空间 它将返回传递给它的字节数 表明它没有复制任何内容 经过代码检查 我们发现代码在调用 cop
  • 编译内核进行页表遍历时出现错误

    我正在执行页表遍历 当我准备更新内核时出现错误 kernel sys c In function do sys get page info kernel sys c 2745 23 error passing argument 1 of p
  • 为什么 call_usermodehelper 大多数时候都会失败?

    从内核模块中 我尝试使用 call usermodehelper 函数来执行可执行文件 sha1 该可执行文件将文件作为参数并将文件的 SHA1 哈希和写入另一个文件 名为输出 可执行文件完美运行 int result 1 name hom
  • 在用户程序中使用 或在驱动程序模块代码中使用 ...这有关系吗?

    我正在开发一个设备驱动程序模块和关联的用户库来处理ioctl 来电 该库获取相关信息并将其放入一个结构中 该结构被传递到驱动程序模块中并在那里解压 然后进行处理 我省略了很多步骤 但这就是总体思路 一些数据通过结构体传递ioctl is u
  • 在构建内核模块时为什么需要 /lib/modules? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 在Kbuild树中 当我们编写一个简单的hello ko程序时 为什么我们需要在构建规则中使用 C lib module 为什么需要这样做
  • 如何在C程序中直接改变显存映射来绘制像素(无需库函数)

    是否可以通过使用 C 程序更改 RAM 中屏幕 视频即监视器 内存映射中的值来显示黑点 我不想使用任何库函数 因为我的主要目标是学习如何开发简单的操作系统 我尝试访问起始屏幕内存映射 即 0xA0000 在 C 中 我尝试运行该程序 但由于
  • 如何从外部模块导出符号?

    我在内核源代码树之外进行编码 有两个模块 第一个printt有一个功能printtty 将字符串打印到当前 tty 以及第二个模块hello这会调用printtty 在初始化期间 我已经添加了EXPORT SYMBOL printtty 在
  • Linux 内核运行稀疏失败 - /bin/sh: 1:稀疏: 未找到

    我在 Linux 内核上运行稀疏 但它会抛出以下错误 在 Linux 上运行稀疏 lovegcy knltest VirtualBox git root linux make C 2make 1 不对 all 执行任何操作 HOSTCC a
  • 在 Linux 内核中使用断言

    我有一个问题assert 在Linux中 我可以在内核中使用它吗 如果不是 例如 如果我不想输入 NULL 指针 您通常会使用什么技术 对应的内核宏是BUG ON and WARN ON 前者适用于当您想让内核恐慌并使系统崩溃 即不可恢复的

随机推荐

  • 大写连字符的名称

    我在用WordUtils来自 apache commons 来正确规范人们的名字 例如 AnGEl lEe gt Angel Lee 而且效果很好 现在我提出的测试用例之一是连字符名称 通常 连字符的每个部分的第一个字母都大写 所以我期望
  • 如何在 Rmarkdown 中添加跨块的行号?

    我想将代码行编号添加到 Rmarkdown 文件的 HTML 输出中 我会对任何方法感到满意uniquely标识输出中的每一行代码 例如 在整个文档中递增的连续行号 或者代码块由它们自己的索引标识 并且在这些代码块中行号从 1 开始 我一直
  • Kubectl 还记得我吗?

    我已经在我的 kubernetes api 服务器上实现了基本身份验证 现在我正在尝试配置我的 kube config以我可以简单运行的方式文件 kubectl get pods kubectl config set cluster dig
  • 使用 Rack::Test 测试 AJAX POST - 如何传入数据?

    我在用着机架 测试 https github com brynary rack test测试我的应用程序并需要测试通过 AJAX 发布数据 我的测试看起来像 describe POST user do include Rack Test M
  • 如何从单词列表中查找 DF 中的匹配单词并在新列中返回匹配的单词[重复]

    这个问题在这里已经有答案了 我有一个包含 2 列的 DF 并且有一个单词列表 list of words lt c tiger elephant rabbit hen dog Lion camel horse df lt tibble ti
  • 模拟内部 axios.create()

    我在用着jest and axios mock adapter去测试axiosAPI 调用redux异步动作创建者 当我使用时我无法让它们工作axios创建的实例axios create 像这样 import axios from axio
  • iptables 模式下的 kube-proxy 不起作用

    I have Kubernetes v 1 1 1 iptables v1 4 21 内核 4 2 0 18 generic Ubuntu wily 自带 网络通过交换机上终止的 L2 VLAN 完成 没有云提供商 我做什么 我正在尝试 k
  • 修改与在 SQL Server 2005 中调用的表不同的表上的多行的触发器

    我尝试对由其他表上的更新触发的表执行更新 但收到错误消息 更新或删除的行值要么不会使该行变得唯一 要么会更改多行 例如我有这个表 table 1 int id primary key identity nchar 10 state name
  • iOS 以编程方式为表视图单元格内容创建 NSLayoutConstraint

    我想在 cellForRowAtIndexPath 中添加一些视图到我的单元格内容视图及其约束 但没有任何效果 我有这样的事情 NSLayoutConstraint constraint NSLayoutConstraint constra
  • PHP - preg_match() 一个接一个的单词

    我有一篇这样的文字 The cat was born on 1980 and lives 所以我想用正则表达式获取猫的年龄 文本中可能出现超过 1 次的 4 位数字 我正在尝试这个preg match born on 0 9 4 text
  • 如何在 MySQL 5.7 中创建六字符密码

    我需要在 Mac 上的新 MySQL 中创建一个具有六字符密码的用户 我知道 5 7 中的最低设置只允许八个字符 有什么办法可以解决这个问题吗 我输入CREATE USER newsier localhost IDENTIFIED BY s
  • 如何从mysql获取分层菜单

    我有一个带有分层菜单的表 例如 id parent id name 1 0 menu 2 1 item1 3 2 item1 1 4 1 item2 5 4 item2 1 我这里有数百个菜单项 为了获取数组中的所有项目 我必须编写一个像这
  • 更改 Firebase 实时数据库中的值时如何查看 flutter 应用程序的变化?

    每当我在 Firebase 实时数据库中进行任何更改时 我都会尝试使这些滚动开关更改其值 更具体地说 每当我将 Relay1 Data 的值更改为 0 时 我希望该开关变为非活动状态 我已经尝试并到处寻找 但找不到任何解决方案 bool r
  • 在本地主机上运行的 asp.net 应用程序上使用 https

    我创建了一个 asp net Web 应用程序 其中包含一个名为 Main aspx 的 Web 表单 我正在尝试通过 https 运行该应用程序 由于我没有 SSL IIS 等方面的经验 我在 google 上搜索了如何实现这一目标 但每
  • 如何通过Windows Defender SmartScreen保护? [复制]

    这个问题在这里已经有答案了 我试图防止我的应用程序 安装程序 不会被阻止Windows 智能屏幕保护 我使用 BitRock 并手动签署了我的安装程序 但我总是遇到这个问题 我购买了有效的证书 并且带有时间戳的签名没问题 这是一个商业应用程
  • HTTP 中的 POST 和 PUT 有什么区别?

    背景资料分析 根据RFC 2616 第 9 5 节 https www rfc editor org rfc rfc2616 section 9 5 POST习惯于create资源 POST 方法用于请求源服务器接受请求中包含的实体 作为请
  • 如何从 Base64 编码字符串构造 java.security.PublicKey 对象?

    我有一个来自外部源 Android Store 的 bse64 编码字符串公钥 我需要用它来验证签名内容 如何将字符串转换为 java security PublicKey 接口的实例 如果这有什么区别的话 我正在使用 Java 6 密钥
  • Cocos2d-x:可以使用HTML(UIWebView)吗?

    我正在尝试cocos2d x现在我可以为 Android 构建 Javascript 示例并在浏览器中运行它们 现在我想创建自己的游戏 但由于有 HTML 背景 我宁愿使用 HTML 标签和 CSS 也不愿使用 Javascript 来设置
  • PHPExcel 检查工作表是否存在

    我正在使用 phpExcel 但找不到任何内容来检查工作表是否存在 我想要完成的是这样的事情 if excel gt sheetExists 1 excel gt createSheet 1 sheet excel gt setSheet
  • syscall_table 在 x86_64 内核中的什么位置?

    我正在尝试向 Linux 内核 x86 64 添加新的系统调用 基于本文 http techeclipse com how to linux kernel 其中解释了如何将系统调用添加到内核 x86 该文章说我需要在名为的文件中定义我的系统