能否不重新起動而使用新遍譯好的內核
时间:2005-08-01
来源:互联网
但是內核跟進程不同,每逢有新遍譯好的內核,都必定要先設置好bootloader,再重新起動才能夠生效.
大家可有想過,是否有方法能夠不重新起動而使用新遍譯好的內核呢?
作者: d00m3d 发布时间: 2005-08-01
可以看看user mode linux,不过这已经不好称作kernel了
作者: phyma 发布时间: 2005-08-01
作者: hj_18 发布时间: 2005-08-02
作者: hj_18
有的,ibm的人正在研究中,他们的developer网站上有介绍。
|
Tks!
作者: d00m3d 发布时间: 2005-08-02
运行grub
然后输入grub命令,用新编译的kernel启动,这里的启动并不是真正的启动,只是把新内核加载
作者: cobranail 发布时间: 2005-08-04
作者: cobranail
我以前装nvidia驱动的时候试过:
运行grub 然后输入grub命令,用新编译的kernel启动,这里的启动并不是真正的启动,只是把新内核加载 |
作者: gradetwo 发布时间: 2005-08-04
找到了
http://www-128.ibm.com/developerwork...y/l-kexec.html
作者: hj_18 发布时间: 2005-08-04
作者: lilyerr 发布时间: 2005-08-22
作者: cobranail
我以前装nvidia驱动的时候试过:
运行grub 然后输入grub命令,用新编译的kernel启动,这里的启动并不是真正的启动,只是把新内核加载 |
作者: homesp 发布时间: 2005-08-22
作者: hj_18
那是去年的事了,当时也没放在心上,他是直接在当前内核运行时切换的。
找到了 http://www-128.ibm.com/developerwork...y/l-kexec.html |

http://www.linuxsir.org/bbs/thread335331.html
作者: d00m3d 发布时间: 2008-09-26
作者: bones7456 发布时间: 2008-09-30
可是根据这个思路,想解决一个一直没有解决的问题,不知道能不能行,还请DOOM兄多多指教啊~~
问题是这样的,家里有个LINKSYS的路由器,带有USB接口,可以使用OPENWRT,然后CHROOT到USB连接的移动硬盘上的系统去。但是这样,实际上还是用的FLASH里边的库文件和内核,在想,是否可以通过l-kexe,去把原先的OPENWRT当作X86系统中的bios,去引导移动硬盘上的Debian-mips版本。
主要想解决的问题就是CFE(Common Firmware Environment) ,不能够直接引导移动硬盘上的系统,想通过这种变通的方式完成。(CFE+kernel+jffs+nvram=Flash里边的数据)
不知道有没有这种可能性?望指教
作者: bailiang27 发布时间: 2008-10-09
kexec 本身只是切换内核而非切换操作系统,估计用 kexec 是不行的。也许 kboot 及 kexec-loader 或者可以,但这方面实在外行,如不行请勿掷鸡蛋。
见 http://www.linuxsir.org/bbs/thread335331.html 第 10 帖
作者: d00m3d 发布时间: 2008-10-09
作者: camelguo 发布时间: 2008-10-11
作者: camelguo
kexec的作用是在内核出现panic的时候,启动备用内核。因为这个时候内存里面还保留先前内核的运行现场,所以,新启动的内核可以收集这些信息用于诊断调试。这就是CGL Linux中的临终遗言。不过这个时候已经算是重新启动机器了。
|
不是太明白,能否再详细解释一下,谢谢。
作者: d00m3d 发布时间: 2008-10-11
关于这个问题的具体细节请参见http://lkcd.sourceforge.net/
作者: camelguo 发布时间: 2008-10-12
http://user-mode-linux.sourceforge.net/
作者: hanchao3c 发布时间: 2008-10-13
作者: bailiang27
强帖啊~~~~~
可是根据这个思路,想解决一个一直没有解决的问题,不知道能不能行,还请DOOM兄多多指教啊~~ 问题是这样的,家里有个LINKSYS的路由器,带有USB接口,可以使用OPENWRT,然后CHROOT到USB连接的移动硬盘上的系统去。但是这样,实际上还是用的FLASH里边的库文件和内核,在想,是否可以通过l-kexe,去把原先的OPENWRT当作X86系统中的bios,去引导移动硬盘上的Debian-mips版本。 主要想解决的问题就是CFE(Common Firmware Environment) ,不能够直接引导移动硬盘上的系统,想通过这种变通的方式完成。(CFE+kernel+jffs+nvram=Flash里边的数据) 不知道有没有这种可能性?望指教 |
1 chroot后,实用kexec执行新的内核。
2 重新mount新的磁盘作为根分区(类似linux启动时候的场景)
可能的难题。实际上kexec后,内核已经可能丢失了之前的所有信息。但是现在linux也在研究休眠技术,可以结合起来保存原来的现场信息,等新内核起来以后在恢复使用。
在linux里面没有什么不可能的。只是简单和繁琐的区别罢了。
呵呵,纯粹个人乱诌,不对的地方,大家指点。
作者: qqdao 发布时间: 2008-11-01
貌似grub有一个fallback参数,可以指定在内核启动失败后自动切换到正常的内核,不知道这个有没有帮助:
如何更新远程主机上的linux内核
http://oss.lzu.edu.cn/blog/blog.php?.../tid_1728.html
作者: hellofalcon 发布时间: 2008-11-02
作者: d00m3d 发布时间: 2008-11-04
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28