gpt4 book ai didi

linux - 如何修改linux内核中的kvm模块?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:58:26 31 4
gpt4 key购买 nike

我想在我的 Linux 内核中的 kvm 模块中做一些修改。为此,我做了以下事情:

  1. 获得内核源代码:
    apt-get source linux-image-source-$(uname-r)
  2. 修改了文件中的函数emulate.c - 更改了一些变量并添加了 printk 语句。
  3. 构建内核:
    fakeroot debian/rules clean
    fakeroot debian/rules binary-headers 二进制通用
  4. 安装了构建结果产生的包:
    sudo dpkg -i linux*(version)*.deb
  5. 重新启动系统。
  6. 在启用kvm 的情况下执行QEMU

然而,当我尝试在 QEMU 中测试它们时,我所做的更改似乎并没有反射(reflect)出来。当我用 dmesg 检查时,printk 语句也没有执行。

谁能指出我哪里错了?

最佳答案

安装一个新的内核并不一定能让它启动,您可能需要更改引导加载程序中的默认值。 (例如蛴螬)

您可以检查您刚刚编译和安装的内核是否与您使用的引导相同:

cat /proc/version

如果这不是预期的,那么您需要调整您的 Grub 配置和/或重新启动并手动选择正确的内核。

建立正确的内核后,您可能需要更改内核报告消息的级别(通过 dmesg)

这是由内核 proc 文件控制的。您可以通过打印此文件来查看当前值:

cat /proc/sys/kernel/printk

示例输出:

4 4 1 7

第一个参数 - 严重性 < 4 的消息(即 0、1、2 或 3)将被记录。第二个参数 - 没有指定严重性的消息默认为 4,因此在上面的示例中系统看不到。

因此以下将更改日志,以便看到所有内核消息:

echo 8 > /proc/sys/kernel/printk

参见(例如)http://www.makelinux.net/books/lkd2/ch18lev1sec3了解更多信息。

关于linux - 如何修改linux内核中的kvm模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23304440/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com