问题标签 [kernel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
16601 浏览

linux - 如何以编程方式禁用硬件预取?

我想以编程方式禁用硬件预取。

使用硬件实现的预取器优化英特尔® 酷睿™ 微架构上的应用程序性能以及 如何在 32 位英特尔® 架构上选择硬件和软件预取,我需要更新 MSR 以禁用硬件预取。

这是一个相关的片段:

“DPL Prefetch 和 L2 Streaming Prefetch 设置也可以通过编写用于更改IA32_MISC_ENABLE 寄存器中的位的设备驱动程序实用程序以编程方式更改 -MSR 0x1A0此类实用程序提供启用或禁用预取机制的能力,而无需任何服务器停机时间。

下表显示了为了控制和 L2 流预取IA32_MISC_ENABLE MSR而必须更改的位:DPL

我尝试使用http://etallen.com/msr.html但这不起作用。我也尝试过直接使用wrmsrinasm/msr.h但那是段错误。我尝试在内核模块中执行此操作......并杀死了机器。

顺便说一句 - 我使用的是内核 2.6.18-92.el5,它已MSR链接到内核中:

0 投票
1 回答
653 浏览

linux - 使用用户空间进程来辅助内核模块

我正在开发一个在 Linux 下工作的非常高性能的硬件。我们想缓存一些数据,但我们担心内存消耗——所以我们的想法是创建一个用户进程来管理缓存。这样,缓存可以在虚拟内存中,而不是在内核空间中,等等。

问题是:最好的方法是什么?我的第一直觉是让内核模块创建一个字符设备文件,并让一个用户程序打开该文件,然后坐在一个选择语句上等待命令到达它。但我担心这可能不是最佳的。一位朋友提到他知道基于套接字的接口,但是当他按下时他无法提供任何细节......

有什么建议么?

0 投票
3 回答
8677 浏览

windows-xp - 分页池内存或非分页池内存??(windows驱动开发)

我是 Windows 驱动程序开发的新手。我只想知道,驱动程序中的全局变量将使用分页池内存还是非分页池内存?

谢谢并恭祝安康

纳瓦尼思

0 投票
1 回答
480 浏览

debugging - 如何将 OSDictionary 转储(打印)到控制台/日志?

我想从我的 kext 检查 OSDictionary 的内容。有没有方便的方法将内容打印到 system.log 或类似文件?(阿拉CFShow())?

thx->adv,

|K<

0 投票
6 回答
329 浏览

windows - 为 microsoft windows 编写内核的基本要求是什么

作为程序员我应该学习什么来编写像微软windows这样的内核

我知道c和c++,但是我应该怎么写内核是有必要了解linux内核编程的基础知识吗?

如何成为 linux 和 windows 内核编程专家

0 投票
4 回答
3660 浏览

linux - 从零开始强化 BSD

我知道Hardened Linux from Scratch项目,该项目为您提供了完全从源代码构建您自己的定制和强化 Linux 系统的分步说明。我想知道BSD中的等价物是什么?

0 投票
5 回答
44942 浏览

linux - 什么是抢占/什么是可抢占内核?到底有什么好处呢?

用你自己的话解释一下,什么是抢占,它对(linux)内核意味着什么?

拥有可抢占内核的优点和缺点是什么?

0 投票
4 回答
6974 浏览

linux - 为什么我需要在 linux 内核升级后重新编译 vmware 内核模块?

linux 内核升级后,我的 VMWare 服务器无法启动,直到使用 vmware-config.pl 进行一些重新配置工作(包括构建一些内核模块)。

如果我用最新的 Windows Service Pack 更新我的 Windows VMWare 主机,我通常不需要做任何事情来运行 VMWare。

为什么 VMWare 在 Linux 和 Windows 之间的工作方式不同?此重新编译操作是否在 Linux 平台上比 Windows 带来任何好处?

0 投票
4 回答
14506 浏览

c - 如何使用 C 获取 Linux 中打开的套接字列表?

有没有办法在用户空间或内核中使用 C 来获取 Linux 中所有打开的套接字(套接字地址或套接字描述符)的列表?

谢谢

0 投票
2 回答
4491 浏览

linux - 在内核和用户模式之间切换时的时间戳计数器 (TSC)

我想知道当上下文切换发生时,是否有人知道有关 Linux 中时间戳计数器的更多详细信息?到目前为止,我的观点是,TSC 值在每个时钟周期内仅增加 1,无论是在内核模式下还是在用户模式下都是独立的。我现在使用 TSC 测量了一个应用程序的性能,它产生了 5 个 Mio 时钟周期的性能结果。然后,我对调度程序进行了一些更改,这意味着上下文切换需要更长的时间,例如 2 个 Mio 周期而不是 500.000 个周期。有趣的是,当再次测量原始应用程序的性能时,它仍然需要 5 个 Mio 周期......所以我想知道为什么它没有花费更长的时间,因为上下文切换现在需要将近 2 个 Mio 时钟周期?(并且在应用程序执行期间至少出现 3 个上下文)。

时间戳计数器是否在内核模式期间以某种方式停用?还是在比赛切换时保存了 TSC 的内容?谢谢,如果有人能指出我可能是什么问题!