有没有办法在启动时找到传递给内核(/ proc/cmdline)的参数,而无需读取proc中的任何文件?我可能有一个需要在/ proc挂载之前读取引导参数的进程。读取Linux内核参数
回答
看起来内核会将引导行上的任何内容作为参数传递给init,除非存在'='或''。 '
我敢肯定有一个更好的办法,但我看到它在dmesg的
humm ...我不认为这也可以。我希望在C库中有一个函数可以提供信息。也许我应该将C标签添加到问题中。需要此信息的进程将作为init(它将是第一个进程)运行,并且需要在exec()真正的init进程之前消化信息。 – tMC 2011-05-09 01:01:36
@tMC:首先想到的。让你的程序挂载'/ proc'。 :-) – Mikel 2011-05-09 01:13:27
@mikel - 它可能也有。但我希望以不同的方式对启动过程进行分组。我只是希望在libs中有一个函数可以通过ctypes或我可以在启动启动过程之前启动的接口执行。 – tMC 2011-05-09 01:17:36
我想了解您的需求更好,因为你几乎保证有/proc
安装。安装/proc
是init
所做的第一件事情之一。
与Ubuntu的新贵:/etc/init/mountall.conf
,在startup
事件
的Fedora与启动脚本的一部分:/etc/rc.sysinit
,第二件事情它(设置主机名之后)
您的代码几乎可以肯定在此之后运行。
看到,因为您要更换init
,看看init
是怎么做的。 init git repo。
似乎有一个全球性的符号叫做boot_command_line
。
我正在用中断语言(python)重写init。我想将路径传递给python中断程序作为引导选项,但由于init将是一个python脚本,我需要知道中断程序的路径在exec()init过程之前的位置。 – tMC 2011-05-09 01:14:18
LOL,Python作为*中断*语言 - 使我的一天:) – 2011-05-09 01:36:24
- 1. Linux内核写入()和读取()函数
- 2. 使用C读取linux内核版本?
- 3. 其中是tcp_delack_min linux tcp内核参数?
- 4. Linux内核中的nr_cpus启动参数
- 5. linux dirty_writeback_centisecs内核参数没有效果
- 6. 被忽略的linux内核参数'rootwait'
- 7. Linux内核sendpage函数
- 8. linux内核函数page_address()
- 9. 如何在Linux内核模块中读取/写入文件?
- 10. 在Linux内核中读取和写入原子操作实现
- 11. 从Linux内核中读取文件系统事件(不带Inotify)
- 12. 使用C/C++在Linux中读取内核信息
- 13. 如何在Linux内核空间读取环形缓冲区?
- 14. 无缓冲misc_device读取-linux内核驱动程序
- 15. 内核的参数
- 16. OpenCL内核参数
- 17. CUDA内核参数
- 18. 在运行时从linux内核模块获取内核版本
- 19. 读取内核内存无需驱动
- 20. Linux网络内核
- 21. asm__volatile()在Linux内核
- 22. 配置Linux内核
- 23. setscheduler()在Linux内核
- 24. glib和linux内核
- 25. Linux内核调试
- 26. linux内核的config.h
- 27. Linux内核调度
- 28. 构建Linux内核
- 29. Linux内核调度
- 30. Linux内核编程
我相信init会将它们设置为一个环境变量。 – 2011-05-10 13:42:45