【问题标题】:Patch / replace linux kernel in memory修补/替换内存中的linux内核
【发布时间】:2013-06-04 12:48:46
【问题描述】:

我有板载 linux 的基于 ARM 的设备。由于某些原因,很难刷新自定义内核(uBoot 无法通过 tftp 或其他方式加载内核)

我需要测试我的自定义内核。 所以,想法是 - 替换内存中的内核。你怎么看,有可能吗?

请告诉我任何建议。

【问题讨论】:

  • 你试过kexec
  • 已安装内核中没有 kexec 系统调用。可能我必须编写具有所需功能的内核模块吗?
  • 即使您成功地将内核加载到内存中,您也必须在不重新启动主板的情况下从它启动...这是一个相当大的成就...希望您可以看看它们是如何实现的正是用 kexec 做到了这一点。可能会给你一些想法。
  • 我想我应该尝试从内核模块覆盖内核内存,然后进行软重置。 (处理器有软重置)希望它会工作=) kexec 看起来工作类似

标签: linux memory patch


【解决方案1】:

看看这个link

它适用于一个名为 Ksplice 的项目,它允许修补正在运行的内核。

在某一时刻,这段代码是开放的,但甲骨文买下了它......所以他们可能已经关闭了它并让它花钱。如果是这种情况,请环顾四周,看看是否可以在野外找到以前开放的代码...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-02-11
    • 2016-07-13
    • 2020-03-16
    • 2012-01-07
    • 1970-01-01
    • 2014-02-15
    • 2016-04-05
    相关资源
    最近更新 更多