Комментарии 1
мне кажется, рантайм раздаёт ядро, пишем либо оболочку, либо терминал, тоесть все концы сегодня мы получаем от ядра и сессии при входе всёо
тоесть закольцовывая вопрос что такое оболочка, это та штука которая связывает в рантайм поставляемые утилиты в ОС, терминал это штука которая даёт возможность общаться с ядром по протоколу, который задокументирован
тоесть у вас есть выбор, либо терминальная tty протокольная оболочка, либо gui, которая включает в себя допольнительные возможности оболочки, и это будет ключом к понимаю как организовать обвязку как обработать ту или иную ситуацию скриптом внутри запроса
тоесть где-то тут по середине емакс еще который может вызвать в себе терминал, и который может дополнить языковой адресацией(просто возможности языка, язык общается с адресами потомучто - типо может запоминать, получается можно языком написать оболочку, которая связывая в рантайм исполнение комманд даёт уникальный нужный связующий еффект от связки гуй-+протокол) возможности
старая концепция джоб и прочее можно скипнуть, я бы советовал посмотреть на этот протокол как на каналы, это более новая ситуация, она из-за протокола и так из-за ABI так будет требовать по протоколу работы от разработчика так что лучше сразу на каналы прыгать sync/mpsc
там не далеко и zfs там тоже есть каналы получается они разгружают работу и делают нужную обвязку

Mini-Shell: Часть 2 — Pipes, фоновые процессы и управление задачами