Мультиплексор термінала () — це програмний застосунок, який можна використовувати для мультиплексування кількох окремих сеансів входу, заснованих на псевдотерміналах, усередині одного термінального дисплея, вікна емулятора термінала, системної консолі ПК/робочої станції або віддаленого сеансу входу, а також для від'єднання та повторного приєднання сеансів від термінала. Він корисний для роботи з кількома програмами з інтерфейсу командного рядка та для відокремлення програм від сеансу командної оболонки Unix, яка запустила програму, особливо для того, щоб віддалений процес продовжував працювати навіть після від'єднання користувача.
Можливості Термінальний мультиплексор можна розглядати як текстову версію графічних менеджерів вікон або як спосіб приєднання віртуальних терміналів до будь-якого сеансу входу. Це обгортка, яка дозволяє одночасно запускати кілька текстових програм і надає функції, що дають змогу користувачеві продуктивно працювати з програмами в межах одного інтерфейсу.
Збереження сеансу Подібно до Virtual Network Computing, багато термінальних мультиплексорів дозволяють користувачеві запускати застосунки на одному комп'ютері, а потім підключатися з іншого комп'ютера та продовжувати використовувати той самий застосунок без необхідності запускати його знову. Це спрощує доступ до одного й того самого сеансу з різних місць, наприклад із роботи та дому. Такі мультиплексори зазвичай забезпечують функціональність, незалежну від типу термінала, тому користувачі можуть від'єднуватися та повторно підключатися, використовуючи різні типи терміналів, дозволяючи застосункам продовжувати працювати, не знаючи про зміну терміналів. Конкретно, мультиплексор запускає сеанс (із пов'язаними процесами), а потім або не приєднує до нього термінал, або приєднує термінал, але згодом може від'єднати його (наприклад, якщо мережеве з'єднання розірвано). Оскільки сеанс не завершується, процесам не надсилається сигнал «від'єднання» (SIGHUP) і вони не завершуються, тому продовжують працювати; згодом до сеансу можна повторно приєднати термінал і продовжити взаємодію або просто залишити сеанс без приєднаного термінала.
Кілька вікон Можна створити кілька термінальних сеансів, кожен із яких зазвичай запускає один застосунок. Вікнам призначаються номери, і користувач може перемикатися між ними за допомогою клавіатури. Деякі графічні емулятори термінала надають вкладки або іншу подібну функціональність. Кожне вікно має власний буфер прокручування назад, тому виведення зберігається навіть тоді, коли вікно не відображається активно, а цю історію можна зберегти навіть під час перенесення на інший комп'ютер. Вікна можна розділяти на частини екрана. Хоча деякі текстові застосунки мають таку функціональність вбудованою, термінальний мультиплексор дозволяє розділити екран для будь-якого застосунку разом із будь-якою кількістю інших застосунків.
Спільне використання сеансу Термінальні мультиплексори дозволяють кільком комп'ютерам одночасно підключатися до одного сеансу, уможливлюючи спільну роботу кількох користувачів. Один і той самий комп'ютер також можна використовувати для встановлення кількох одночасних з'єднань, забезпечуючи альтернативну функціональність розділення екрана, особливо для комп'ютерів із кількома моніторами.
Реалізації Byobu: утиліта профілів і конфігурації для GNU Screen та tmux. dvtm: тайлове керування вікнами для консолі. GNU screen: прототиповий термінальний мультиплексор, уперше випущений у 1987 році. Herdr: термінальний мультиплексор із підтримкою агентів, написаний мовою Rust, призначений для паралельного запуску кількох ШІ-агентів для програмування з відстеженням стану кожного агента. mtm: представлений як «можливо, найменший корисний термінальний мультиплексор у світі». neercs: («screen», написане навпаки) — аналог GNU screen. Він підтримує створення мініатюр вікон та графічні анімовані заставки. Також він підтримує тривимірне перемикання консолей (перемикання між консолями, відображеними на гранях куба) за допомогою бібліотеки libcaca для ASCII-арту. splitvt: утиліта для розділення термінала. TD/SMP: представлений DEC у їхніх терміналах VT330/340, TD/SMP був пропрієтарним і широко підтримувався лише їхніми власними термінальними серверами. tmux: сучасний аналог GNU Screen, випущений у 2007 році; поширюється за ліцензією BSD, дозволяє використовувати кілька панелей (з необов'язковою підтримкою миші Xterm) і має інтерфейс команд, придатний для написання сценаріїв. tmux був розроблений для забезпечення спільного використання одного вікна кількома терміналами, водночас залишаючи інші вікна того самого сеансу повністю окремими. tmux входить до базової системи OpenBSD починаючи з версії 4.6, випущеної у 2009 році. Twin («Text mode WINdow environment»): повноцінний менеджер вікон для текстових вікон. Спочатку розроблявся як проєкт для MS-DOS, а пізніше був портований на Linux. Also in Zellij: термінальне робоче середовище з усіма необхідними функціями. Termlets: легковагий термінальний мультиплексор та робочий стіл, написаний мовою C.
Див. також pkexec
Примітки