如何提高用户空间netfilter队列的处理性能?
我想知道如何加速基于 libnetfilter_queue 的数据包过滤程序,该库允许处理用户空间 netfilter 队列中的数据包。 我认为关键是用户空间和内核空间之间…
递归禁用 Linux 内核构建上的 CONFIG 依赖项
配置 Linux 内核时,我通常从发行版的内核配置文件开始。我经常想关闭一些条目,但它们有时是不可更改的,因为依赖于它的其他 CONFIG 选项已启用。 我…
如何使用 O_DIRECT 将内核空间内存(物理地址)写入文件?
我想将物理内存写入文件。内存本身不会再次被触及,因此我想使用O_DIRECT来获得最佳的写入性能。 我的第一个想法是打开 /dev/mem 并映射内存并将所有…
从用户进程的mm_struct或vm_area_struct读取数据
我想知道如何在内核模式下从用户进程的页面复制数据。我可以访问进程的 mm_struct 和所有 vm_area_structs。在 vm_ops 中,我看到了访问方法,但我不…
vmsplice() 和 TCP
在最初的 vmsplice() 实现中,建议如果您有用户态缓冲区是管道中可容纳的最大页面数的 2 倍,缓冲区后半部分成功的 vmsplice() 将保证内核使用缓冲区…
如何让 android 打印出崩溃系统应用程序的核心转储?
我正在系统库的美妙世界中编写一些东西,但我在 libc 中崩溃了,我的库显然传递了错误的值。 有什么方法可以让 Android 为崩溃的应用程序生成核心转储…
在 Linux 内核中包装函数时遇到问题
我编写了一个 LKM,可以在内核中实现可信路径执行 (TPE): https://github.com /cormander/tpe-lkm 当我将 WRAP_SYSCALLS 定义为 1 时,我偶尔会遇到…
XP启动过程中最早可以在哪一点设置断点?
只是用 WinDbg 搞了一下。我设置了几个虚拟机,因此我可以尝试在 Windows XP 虚拟机上进行一些内核调试。 如果我想在启动过程中尽早捕获系统,我需要…
TLB 命中会导致内存页错误吗?
在网络上提供的 UC Berkley 大学 John Kubiatowicz(Kuby 教授)关于操作系统的视频讲座中,他提到 TLB 命中并不意味着相应的页面位于主内存中。页面…
如何访问用户态内存?
我正在尝试读取 notepad.exe 的 PEB 目前,我正在尝试通过注册 ProcessCreation 回调来访问 PEB,然后等待创建 notepad.exe。创建记事本后,我使用它…