我正在研究“在 Linux 平台上创建事后数据记录器”。我之前也发布了一个关于这个项目的问题。在那里,我得到了 RHEL 版本中创建核心转储文件的调用流程机制:2.6.18.128-el5。
如下:
File Function called
1.source/ arch/i386/kernel/signal.c -----> do_signal( )
2.source/kernel/signal.c ----------> get_signal_to_deliver( )
3.source/fs/exec.c -------------> do_coredump( )
4.source/fs/binfmt_elf.c -------------> elf_core_dump( )
现在,根据项目要求,我需要使用我自己的用户定义的信号处理程序来修改默认信号处理程序定义,该处理程序处理各种导致核心转储的异常(、、等SIGSEGV
)SIGFPE
。SIGABRT
此外,我需要构建内核以使用我的处理程序替换默认处理程序来保持内核中的更改。
任何人都可以分享进行这些操作的程序吗?
提前感谢所有回复者:)
感谢 vlc