Terminal multiplexer
En terminalmultiplexer är en mjukvaruapplikation som kan användas för att multiplexera flera separata pseudoterminalbaserade inloggningssessioner inuti en enda terminalskärm, terminalemulatorfönster , PC/arbetsstations systemkonsol eller fjärrinloggningssession , eller för att koppla bort och återkoppla sessioner från en terminal . Det är användbart för att hantera flera program från ett kommandoradsgränssnitt och för att separera program från sessionen i Unix-skalet som startade programmet, särskilt så att en fjärrprocess fortsätter att köras även när användaren är frånkopplad.
Funktioner
En terminalmultiplexer kan ses som en textversion av grafiska fönsterhanterare , eller som ett sätt att koppla virtuella terminaler till valfri inloggningssession. Det är ett omslag som låter flera textprogram köras samtidigt, och ger funktioner som gör att användaren kan använda programmen inom ett enda gränssnitt produktivt.
- Persistens
- I likhet med Virtual Network Computing tillåter många terminalmultiplexorer användaren att starta applikationer från en dator och sedan återansluta från en annan dator och fortsätta använda samma applikation utan att behöva starta om den. Detta gör det enkelt att komma åt samma session mellan olika platser som arbete och hem. Dessa multiplexorer tillhandahåller i allmänhet terminalagnostiska funktioner så att användare kan koppla från och återansluta med olika terminaltyper, vilket gör att applikationer kan fortsätta köras utan att vara medvetna om förändringen i terminaler.
- Konkret startar multiplexern en session (med tillhörande processer), och kopplar sedan antingen ingen terminal till den, eller kopplar en terminal men kan sedan koppla loss den (till exempel om nätverksanslutningen bryts). Eftersom sessionen inte slutar skickas inte processerna en "hänga"-signal ( SIGHUP ) och avslutas inte, så de fortsätter att köras, och man kan därefter (åter)koppla en terminal till sessionen och fortsätta interagera, eller helt enkelt lämna sessionen obunden.
- Flera fönster
- Flera terminalsessioner kan skapas, som var och en vanligtvis kör ett enda program. Fönstren är numrerade och användaren kan använda tangentbordet för att växla mellan dem. Vissa GUI- terminalemulatorer tillhandahåller flikar eller andra liknande funktioner till detta. Varje fönster har sin egen rullningsbuffert, så att utdata fångas även när fönstret inte visas aktivt, och den historiken kan sparas även när man migrerar till en annan dator. Fönster kan vara delad skärm. Medan vissa textapplikationer har den här funktionen inbyggd, tillåter en terminalmultiplexer att alla applikationer delas upp tillsammans med valfritt antal andra applikationer.
- Session Sharing
- Terminal-multiplexer tillåter flera datorer att ansluta till samma session samtidigt, vilket möjliggör samarbete mellan flera användare. Samma dator kan också användas för att göra flera samtidiga anslutningar, vilket ger alternativ funktionalitet till skärmdelning, särskilt för datorer med flera bildskärmar.
Genomföranden
- Byobu : Ett profil- och konfigurationsverktyg för GNU Screen och tmux.
- dvtm : Fönsterhantering för konsolen.
- GNU Screen : den prototypiska terminalmultiplexern, släpptes först 1987
- mtm : faktureras som "kanske den minsta användbara terminalmultiplexern i världen"
- neercs : neercs ("skärm" stavat baklänges) är en GNU-skärm som fungerar likadant. Den stöder fönsterminiatyrer och grafiska animerade skärmsläckare. Den stöder också 3D-konsolväxling (växling mellan konsoler mappade till ytorna på en kub) via libcaca ASCII-konstbiblioteket .
- splitvt : delat terminalverktyg.
- TD/SMP : introducerades av DEC på deras VT330/340 -terminaler, TD/SMP var proprietär och endast allmänt stödd av deras egna terminalservrar
- tmux : En modern GNU-skärm, släppt 2007; den är BSD-licensierad , tillåter flera rutor (med valfritt stöd för Xterm- mus) och har ett skriptbart kommandogränssnitt. tmux syftade till att tillåta delning av ett enda fönster mellan flera terminaler, samtidigt som de andra fönstren i samma session hölls helt åtskilda. tmux har varit en del av OpenBSD- bassystemet sedan 2009 års version 4.6.
- Twin ("Textläge WINdow-miljö"): en fullfjädrad fönsterhanterare för textfönster. Från början startade det som ett MS-DOS- projekt, men portades senare till Linux.