Могу ли я использовать xterm для чтения / записи на ПК без создания другого процесса (например, оболочки)?

У меня есть процесс, который читает и записывает на псевдотерминал. Я хотел бы открыть xterm и открыть ему псевдотерминал и оставить его открытым, чтобы я мог общаться с этим процессом, не создавая еще один процесс.

Сейчас я использую следующий хак. Я создаю тривиальную программу:

void main() {while(1);} 

и затем я открою его в окне xterm следующим образом:

 xterm ~/a.out 

Затем я могу записать другой процесс и прочитать его вывод в окне xterm. Есть ли способ, которым я могу это сделать, не имея xterm, порождает какой-то бесполезный процесс?

Изменить: Процесс, с которым я пытаюсь установить связь, – это операционная система, которая работает внутри эмулятора Bochs. Я пытаюсь подключить последовательный порт к эмулируемой системе с псевдотерминалом в главной системе. Я указываю конкретный псевдотерминал в файле конфигурации Bochs следующим образом:

 com1: enabled=1, mode=term,dev=/dev/pts/4 

Боюсь, вы не можете – на самом деле это рекомендуется на странице руководства bochsrc . Если вас беспокоит дополнительный процесс, вы можете создать это вместо своего тривиального цикла:

 #include <stdio.h> #include <unistd.h> int main(void) { printf("tty: %s\n", ttyname(0)); while (1) sleep(60); return 0; } 

Вы получите имя tty, а sleep() гарантирует, что вы не тратите драгоценное время SPU в тривиальный цикл занятости. Вы также можете использовать pause() вместо sleep() .

Или вы можете исправить Xterm, в любом случае это open-source.