问题标签 [linux-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 回答
895 浏览

linux - 如何说服我的同事 linux 内核代码是可重入的?

是的,我知道......有些人有时很难说服我们其他人听起来很自然,我现在需要你的帮助 SO社区(或者我很快就会去邮寄......)

我的一位同事确信 linux 内核代码不会重入,因为他可能在 7 年前最后一次对它感兴趣时在某个地方读到它。可能当时它的阅读是正确的,请记住,多核架构在前一段时间并没有广泛普及,并且 linux 项目在其开始时左右并没有完全写好并且完全成熟并具有所有花哨的功能。

今天不一样了。很明显,从在相同架构上并行运行的不同进程调用相同的系统调用不会导致未定义的行为。Linux 内核现在很普遍,即使在多核架构上运行,它也以其可靠性而闻名。这是我现在的论点。但是你有什么可以客观地证明这一点呢?

我想向他展示 linux 内核中的一些功能(在lxr 网站上)作为 mutex_lock() 系统调用。一切都经过调整以使其在并发环境中工作。但是对于新手(就像我一样)来说,代码可能并不那么明显。

请帮我.. ;-)

0 投票
3 回答
2095 浏览

c - 内核编译错误

我试图编译Linux内核。

我收到以下错误:-

“没有规则来制作目标arch/x86/kernel/entry_32.o', needed byarch/x86/kernel/built-in.o'。”

在此之前我配置了内核(除了默认选项之外没有做任何额外的事情)。使用“make gconfig”配置内核。配置已生成。我正在使用 x86 32 位机器(Fedora 9)内核版本 2.6.30。

最后我用 :- "make bzImage" 来编译。

试图在网上搜索解决方案,但没有成功。如何修复这些错误?请帮忙。

谢谢,

苏拉布

0 投票
2 回答
9062 浏览

sockets - socketpair 和一对未命名的管道有什么区别吗?

我不仅想知道用户端的差异,还想知道 Linux 内核实现中的差异/共同部分。

0 投票
4 回答
1756 浏览

linux-kernel - 从 Windows 远程调试 Linux 内核?

我想知道是否有人知道远程调试在 VMWare 下运行的 Linux 内核的方法(如果是这样,是否有办法在 Windows 中做到这一点,因为 linux 有点让我害怕......)。两者都是x86。我知道 VMWare 对此有支持(我看到一篇关于通过 gdb 进行远程调试的帖子),但如果有办法从 Windows(即 Eclipse CDT 或其他东西)做到这一点,那就太棒了。

谢谢!-罗伯特

0 投票
2 回答
10229 浏览

linux-kernel - linux 内核 2.6.18 中的 sys_call_table

我正在尝试将 sys 退出调用设置为变量

但是,当我尝试制作时,控制台给了我错误

任何提示将不胜感激:)谢谢

0 投票
2 回答
1054 浏览

c++ - 无法解释的 Linux System V IPC 共享内存段被标记为销毁

我有一个 Linux System V IPC 共享内存段,它由一个进程填充并由许多其他进程读取。所有进程都以类的形式使用共享内存段的接口,该类负责查找、附加和分离到段,作为其构造函数/析构函数方法的一部分。

这里的问题是,我不时看到该段已“拆分”。我的意思是,查看“ipcs -m -s”输出,我看到我列出了两个部分:一个已标记为销毁但仍附加一些进程,另一个似乎获取所有新尝试附加到该段。但是,我从来没有真正要求内核销毁该段。这里发生了什么事?!

需要注意的另一件事是,不幸的是,运行此系统的系统在内存部门中严重过度使用。有 1 GB 的物理内存,没有交换,/proc/meminfo 中的 Committed_AS 报告大约 2.5 GB 的已提交内存。幸运的是,系统进程实际上并没有使用这么多内存......他们只是要求它(我仍然有大约 660MB 的“空闲”内存,正如 vmstat 报告的那样)。虽然我知道这远非理想,但目前我对过度使用的内存无能为力。但是,浏览内核/libc 源代码时,除了用户请求之外,我没有看到任何将共享内存段标记为删除的内容(但也许我错过了隐藏在某处的地方)。

以下是共享内存接口类的构造函数供参考:

这是我的 uname 输出:Linux 2.6.18-5-686 #1 SMP Fri Jun 1 00:47:00 UTC 2007 i686 GNU/Linux

0 投票
4 回答
10450 浏览

linux - pgpgin 和 pgpgout - /proc/vmstat 中的 Linux 计数器

我正在编写一个收集整个系统 I/O 统计信息的应用程序。我想知道页面输入和页面输出的两个计数器是否,

在 /proc/vmstat 中包括写入和读取连接到系统的所有基于磁盘的块设备的页面。

如果可以的话,请告诉我!

0 投票
1 回答
5944 浏览

operating-system - 什么是阶梯调节器和菜单调节器?

它们在操作系统中扮演什么角色?

0 投票
7 回答
529 浏览

.net - 基于 .NET Framework 构建的 Linux 发行版

我是一名计算机科学工程专业的学生,​​我已经在 .NET Framework 上进行了 2-3 年的编程,但我没有使用过 Linux。我想,对于我最后一年的项目,Linux 发行版会很好。

当我想到这个疯狂的想法时,我正在考虑一些实现它的方法:

我们可以先在 Linux 内核上实现 .NET Framework 并使用它构建其余部分吗?

这可能是最奇怪的问题,但如果我提出的问题是正确的,请给我一个方法,如果我错了,请纠正我。

0 投票
11 回答
365015 浏览

c - bool 是原生 C 类型吗?

我注意到 Linux 内核代码使用 bool,但我认为 bool 是 C++ 类型。bool 是标准 C 扩展(例如 ISO C90)还是 GCC 扩展?