Terminaaliemulaattori
Terminaali- eli pääte-emulaattori (kuten xterm, Konsole tai GNOME Terminal) on ohjelma, joka komentoriviltä ajettavalle ohjelmalle näkyy päätteenä, emuloiden jotakin päätetyyppiä. Yleensä pääte-emulaattori ajetaan X:n ikkunassa, josta silloin usein käytetään nimitystä pääteikkuna. Unixien komentotulkit, perustyökalut ja useat editorit, sähköpostiohjelmat yms. on ensisijaisesti suunniteltu ajettaviksi päätteeltä, pääteikkunasta tai vastaavasta tekstitilaa muistuttavassa ympäristössä.
Termillä pääte tarkoitetaan tietokoneeseen esimerkiksi sarjakaapelilla liitettyä laitetta, jolla ei itsellään ole kykyä ajaa sovellusohjelmia, vaan se vain toimii eräänlaisena ylimääräisenä näyttö/näppäimistö-parina. Päätteet kokivat kukoistustaan ennen mikrokokoisten PC-koneiden aikaa, jolloin tietokoneita käytettiin yleensä juuri päätteiden kautta. Vaikka PC-koneet ovatkin syrjäyttäneet perinteiset päätteet lähes kokonaan, on Unix-järjestelmissä säilynyt tuki niiden käyttämiselle. Nykyaikainen versio päätteistä on esimerkiksi LTSP:n avulla toteutettu X-pääte, joissa etäkoneilla voidaan ajaa myös graafisia ohjelmia.
Termeihin terminaaliemulaattori ja pääte liittyvät läheisesti käsitteet konsoli ja virtuaalikonsoli. Konsolilla tarkoitetaan tietokoneen näyttö- ja syöttölaitteiden yhdistelmää (yleensä näyttö ja näppäimistö), johon järjestelmän ilmoitukset ensisijaisesti lähetetään. Konsoliksi voidaan paikallisten näyttö- ja syöttölaitteiden lisäksi määritellä myös pääte, jolloin esimerkiksi järjestelmän käynnistysilmoitukset näkyvät päätteen näytöllä. Käsitteellä virtuaalikonsoli tarkoitetaan Unix-järjestelmien tapaa jakaa fyysinen konsoli useiksi virtuaalisiksi konsoleiksi, joissa jokaisessa voidaan ajaa omia ohjelmiaan. Tämä on huomattava etu suhteessa esimerkiksi Windows/DOS-järjestelmiin, jotka eivät tue kuin yhtä konsolia/työtilaa.
Vaikka pääte-emulaattori periaatteessa emuloikin jotakin päätettä, päätteen tarkka malli ei useinkaan ole keskeistä. Oleellista on että päätteen tarpeeksi hyvä kuvaus löytyy päätetietokannasta ja että emulaattori tämän kuvauksen perusteella tukee keskeisiä toimintoja. Useimmat emulaattorit tukevat päätetyyppejä vt52, vt100, vt102, vt220 ja ansi (jotka keskeisiltä ominaisuuksiltaan muistuttavat toisiaan). Huono kuvauksen ja emuloinnin yhteensopivuus aiheuttaa joissakin tilanteissa "roskan" jäämistä kuvaruudulle. Tämän saa pois painamalla CTRL-L.
Jotkut pääteemulaattorit emuloivat mahdollisimman tarkkaan tiettyä päätettä, jotta sen kanssa toimivaksi kirjoitettu ohjelma toimisi kuten päätteen kanssa. Esimerkkejä tästä on xtermin tektronix-tila ja IBM 3270 -emulaattorit.
Laitetiedostot
Terminaaliemulaattorit näkyvät järjestelmässä laitetiedostoina
/dev/pts/<juokseva_numero>
kuten /dev/pts/0 tai /dev/pts/27014. Nämä laitetiedostot ovat siihen liitetyn terminaaliemulaattorin käyttäjän omistuksessa. Niihin voi syöttää ja niistä lukea dataa aivan samalla tavalla kuin mihin tahansa muihinkin laitetiedostoihin. Näitä ns. pseudoterminaaleiksi kutsuttuja laitetiedostoja käyttävät myös ssh:n, rsh:n tai telnetin kautta tehdyt etäkirjautumiset. Varsinaisten (sarja)päätteiden laitetiedostot taas ovat muotoa /dev/ttySX tai /dev/tts/X, jossa X on juokseva numero. Virtuaaliterminaalien laitetiedostot ovat muotoa /dev/ttyX ja konsolin laitetiedosto on /dev/console. Konsolin laitetiedostoon syötetty data tulostuu aina kulloinkin aktiivisena olevaan virtuaalikonsoliin.
Katso myös
$ Komentorivi | |
Terminaaliemulaattorit | Alacritty | Aterm | eDEX-UI | GNOME pääte | Kitty | Konsole | Tilda | Xterm | Yakuake |
---|---|
Terminaalimultiplekserit | Byobu | GNU Screen | Tmux |