我在我的应用程序中使用Linux framebuffer,并设置ioctl(tty0_fd, KDSETMODE, KD_GRAPHICS)
以防止底层终端显示任何光标或文本,然后在正常的程序终止时清理。
但异常终止时保持KD_GRAPHICS
模式是一件坏事,因为它让系统无法响应,我想知道如何解决这个问题。
注册atexit()
的函数仅在正常终止时调用,因此无济于事。我可以为任何可以杀死应用程序的信号注册我自己的处理程序,但SIGKILL
不能被捕获。
窗口环境和其他程序如何处理这种情况?