如何从终端分离程序并将其附加回来?

前端之家收集整理的这篇文章主要介绍了如何从终端分离程序并将其附加回来?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发一个嵌入式项目,我需要一个没有外部依赖项的程序,它可以像screen或tmux一样工作.这两个程序并不好,因为它们需要其他库.

因为我只需要分离一个程序,当我再次登录时能够注销并取回它,我想知道我是否可以为此编写一个小程序.

你知道我需要做哪些调用(在C中)来分离程序并将其恢复吗?

解决方法

如果我理解你的要求,你理论上可以使用termios struct和ioctl来实现这一点.
ioctl(0,TIOCNOTTY,NULL);

分离和

ioctl(0,TIOCSCTTY,1);

附加到终端.但是,它实际上并没有执行这项工作.

以下解决方案描述了一个不太好但实际的工作

tty demulsified

主要目的是将程序附加到另一个终端,但我相信这也是你实现目标的方式.

关于您提到的嵌入式平台,您可以从busybox找到一些帮助

它使用相当小的二进制文件编译嵌入式Linux,并包含大多数常用的linux实用程序,如getty,stty等.

猜你在找的C&C++相关文章