Mi az a TTY és mi köze a linuxomhoz ?

Az első vitathatatlanul komoly fordulat az emberek közötti kommunikációban a távíró feltalálása volt.
A világ érezhetően kisebb hely lett attól kezdve.

Erről bővebben olvashatunk a wikipédián: https://hu.wikipedia.org/wiki/T%C3%A1v%C3%ADr%C3%B3

Az elektromos jeltovábbításra képes távírót Samuel Finley Breese Morse (1791-1872) találta fel és szabadalmaztatta.
1837. szeptember 4-én mutatta be hivatalos nevén a telegráfot: munkatársa fél kilométerrel távolabbról kezdte adni a jeleket és a New York-i előadóteremben álló készülék ingája titokzatos tüskéket rajzolt a papírszalagra. A kódokat fejből ismerő Morse már mondta is a szöveget: “Sikeres kísérlet a távíróval 1837. szeptember 4-én.”

A villamos távíró vonalat 1845. április 1-jén nyitották meg hivatalosan a nagyközönség számára. (Magyarország első távíró vonala néhány évvel később, 1847. december 27-én nyílt meg Bécs és Pozsony között.)

Émile Baudot (1845. szeptember 11 -én született Magneux, Haute-Marne , Franciaország)
Egy gazdálkodó fiaként született, aki később a helyi polgármester lett egyébként.
Egyetlen iskolai végzettsége a helyi általános iskola, ezt követően apja farmján végzett mezőgazdasági munkát, mielőtt 1869-ben tanulóként a francia postai és távirati igazgatósághoz került.

A távirati szolgálat betanította a morse táviratba és négy hónapos tanfolyamra is elküldte a Hughes nyomtató távíró rendszerről és mindez arra ösztönözte Baudot-t, hogy kifejlesszen egy saját rendszert több távíróüzenet egyidejű továbbítására (idő-multiplexelésére) Hughes– nyomtatók segítségével.

Rájött, hogy a vonal legtöbbször tétlen, eltekintve a karakter továbbításának rövid időintervallumaitól.

Baudot kidolgozta az időosztásos multiplexelés egyik első alkalmazását a táviratban.

Szinkronizált óraművel működő kapcsolók segítségével az adó és a fogadó végén öt üzenetet tudott egyszerre továbbítani; a rendszert öt évvel később hivatalosan is átvette a Francia Posta- és Távirati Igazgatóság., 1870-ben találta fel saját távíró kódját , majd 1874-ben szabadalmaztatta.

Ez egy 5 bites kód, azonos be- és kikapcsolási időközökkel, amely lehetővé tette a latin ábécé, az írásjelek és a vezérlőjelek távíró általi továbbítását.
1874-re vagy 1875-re (különböző források mindkét dátumot megadják) az elektromechanikus hardvert is tökéletesítette kódja továbbításához.
Találmányai a Bernard Meyer által 1871-ben feltalált forgalmazó Hughes készülékének nyomtatási mechanizmusára , valamint Carl Friedrich Gauss és Wilhelm Weber ötötös kódjára épültek . Baudot ezeket, saját eredeti ötleteivel együtt, egy teljes multiplex rendszer előállításához hozta létre .

blank

A Baudot távíró-rendszert fokozatosan alkalmazták Franciaországban, majd más országokban is elfogadták, Olaszország elsőként vezette be belvízi szolgálatában 1887-ben. Hollandia 1895-ben, Svájc 1896-ban, Ausztria és Brazília követte 1897-ben. A brit postahivatal 1897-ben a London és Párizs közötti szimplex körútra vette át, majd 1898-tól általánosabb célokra használta fel. 1900-ban Németország, Oroszország 1904-ben, a Brit Nyugat-India 1905-ben, Spanyolország 1906, Belgium 1909-ben, Argentína 1912-ben és Románia 1913-ban.

Baudot végül 1903. március 28-án Párizs mellett, Sceaux-ban 57 éves korában meghalt, ám egy mértékegység megőrizte a nevét: a jelsebesség mértékegysége az SI rendszerben a Baud, amit Bd-vel rövidítenek. A Baud az egy másodperc alatt átvitt jelek számát adja meg.
Innen el is érkeztünk a történetünk lényegi részéhez, valakinek az az ötlete támadt, hogy jobb lenne egy másik billentyűzet.
Donald Murray (1865 – 1945) villamosmérnök és a feltaláló – “a távoli írógép édesapja”.
Murray ötlete az volt, hogy írógépet olyan eszközzel kösse össze, amely a szöveg minden karakterénél fordította a Baudot-kódot küldéskor. A fogadó végén egy másik mechanizmus nyomtatja a kódolt karaktereket a papír szalagra és / vagy perforált másolatot készít az üzenetből. Ez a rendszer lehetővé tette az üzenetek továbbítását anélkül, hogy a betanított üzemeltetőknek szükségük lett volna bármilyen kódolási tudásra.

Abban az időben nagy számban képezték ki egyébként a gépírókat a QWERTY elrendezésű gépeken.

blank

Murray elment New York -ba 1899-ben találmányának ötletével és támogatókat keresett, miközben benyújtotta a szabadalmát, a telex rendszerre.
Sikerrel is járt végül, támogatást kapott a Postal Telegraph Cable Company -tól, majd hamarosan meg is indult a gyártás.
Ezzel lényegében el is dőlt a billentyűzetkiosztások harca a QWERTY javára.

blank

A gépeket világszerte használni kezdték, a rendszereket elsőként New York-ban a Western Union Társaság és a Londoni posta.

Murray hamarosan Londonba költözött, és ott maradt, amíg 1925-ben el nem adta találmánya jogait és nyugdíjba vonult Monte Carlo -ban majd később Svájcba költözött, ahol tanult és filozófiai műveket írt.

Tehát megszületett a géptávíró. Ezt a gépet hívták még úgy, hogy teleprinter, teletypewriter, teletype és ennek rövidített verziójaként: TTY

blank

A gépek hálózatba kötésével megszületett a TELEX.

A telex (hivatalos megnevezéssel: géptávíró) nyilvános kapcsolt hálózaton működő távközlési rendszer géppel írt szövegek valós idejű átvitelére. A név rövidítés az angol teletypewriterexchange („távírógépes információcsere”) kifejezés előtagjainak összevonásából. Az angolban a telex eredetileg a hálózatot ill. az átviteli rendszert jelentette, de később az ilyen módon továbbított szöveget, nálunk pedig a végberendezést, magát a telexgépet is így nevezték.

A rendszer a telefonhálózathoz hasonló volt: az előfizetők egy központon keresztül tárcsázhatták egymást és küldhették el a begépelt szöveget (pl. a hírügynökségek így továbbították a híreket, tudósításokat, akár egész riportokat). A végberendezés – a telexgép – tárcsaegységből, billentyűzetből és nyomtatóból állt; a telexgépek többségében lyukszalag is volt, beépített perforátorral és olvasóval. A bemeneti (szövegbeviteli) oldalon lévő telexgép – az adó – mint írógép a leütött betűknek megfelelő jeleket szükség szerint lyukszalagra rögzítve a központon keresztül juttatta el a vevőkészülékhez, amely azokat papírra nyomtatta (és az adattárolás érdekében ugyancsak képes volt lyukszalagra rögzíteni).

blank

A telefonnal ellentétben a telex nem analóg, hanem digitális jeleket használt az információ továbbítására. A korszerű telexgép a bináris jelekből mátrixképet is tudott nyomtatni. A telex- és telefonhálózat egymástól függetlenül működött, eltérő szabványokkal és hívószámrendszerrel.

blank

A telex német találmány, amely 1926-ban a távíróhálózat továbbfejlesztésével jött létre. 1933-ban a Reichspost(birodalmi posta) vezette be és üzemeltette a világon az első hálózatszerű telexszolgáltatást, mely 50 baudos vonalon percenként kb. 66 szó átvitelére volt alkalmas. 1942-ben a Harmadik Birodalom (Németország–Ausztria és a Cseh–Morva Protektorátus), Svájc, Franciaország, Anglia, Hollandia, Dánia, Belgium, Szlovákia és Magyarország telexrendszereit egységes hálózatba kötötték.

Bővebben a telex történetéről a wikin: https://hu.wikipedia.org/wiki/Telex

A Teleprinter, avagy Teletype angolul a wikin:
https://en.wikipedia.org/wiki/Teleprinter

A géptávíró hálózat és a telefonhálózat terjedésével azonban hamarosan megjelenik az igény a fejlettebb berendezések közötti hatékony kommunikációra és megjelenik az igény a csatlakoztatható eszközökre.

1960 -ban bemutatásra kerül a Recommended Standard 232, a szószerinti fordításban a javasolt szabvány 232 a soros adatátvitelre.
Formálisan meghatározza a DTE (adatvégberendezés), mint például egy számítógépes terminál, és egy DCE (adatáramkört lezáró berendezés vagy adatkommunikációs berendezés), mint például egy modem, közötti összeköttetést biztosító jeleket.

Nagyon sok tankönyv teljesen tévesen tartalmazza, hogy az IBM meg a Microsoft és még néhány nagy cég fejlesztette ki 1980 -ban, de ez óriási tévedés, ami még szomorúbb, hogy sokan ezt így is oktatják, így sokszor már szóba sem kerül az, hogy kezdetben még csak nem is monitort kötöttek a számítógépekre.

Az RS-232 a wikipédián angolul: https://en.wikipedia.org/wiki/RS-232

A helyzet az, hogy az 1960 -as években elképesztő mennyiségű és típusú teletype gép volt jelen a piacon és gyakorlatilag a nyolcvanas évek közepéig szinte teljesen zavartalan sikernek örülhettek, amíg a fax és az olcsó mikroszámítógépek megjelenése végleg le nem taszította azokat trónjukról.

Ám volt egy kis probléma, ez pedig a kódolás.

Néhány kivételtől eltekintve még mindig az 1870 -es évek közepén kifejlesztett 5 bites Baudot féle ITA2 kódrendszert használták, a hatvanas években megjelenő eszközök viszont már az új, az Amerikai Szabványügyi Hivatal ASCII kódolását támogatták.

A Teletype hálózat teljesen függetlenül működő, önálló infrastruktúra volt, ám a telefon elterjedésének köszönhetően egyre többen akarták valahogy a telefonhálózatot is használni a kommunikációra, elérhetőve téve ezzel gyakorlatilag az egész világot.

Na itt húzott egy nagyot a Teletype cég az ASR 33 -as gépével, ami immáron az ASCII kódrendszert is támogatta, persze nem az első kiadások, hanem a későbbi berendezéseik.

Így lett többek között ez a masina a világon a legtöbbet eladott távíró és ebből egyértelműen következik az is, hogy a legolcsóbb, hiszen egy sikeres, tömeggyártott terméket mindig olcsóbban lehet előállítani. Persze ezt most ne úgy képzeljük el, hogy pár forintért adták a sarki fűszeresnél, de egy korabeli 3-4000$ áron kapható géphez képest mondjuk a maga 1000$ körüli árával igen kedvezőnek hatott, bár ez mai viszonylatban is igen borsosnak tűnhet, akkoriban ez rengeteg pénz volt, mégis egészen 1981 -ig forgalmazták ezt a modellt.

A Teletype cég wiki oldala: https://en.wikipedia.org/wiki/Teletype_Corporation

Egy fontos évszám következik, 1957 – megalakul a DEC, a Digital Equipment Corporation.

Kevés cégnek volt talán ekkora hatása az informatika történelmére, akár az első webes keresőt nézzük vagy az első hálózatba kötött gépeket a DECnet -en keresztül vagy az általuk gyártott készülékeket.

Amit viszont most szeretnék a kismillió dolog közül kiemelni, az a minicomputer korszak és a PDP sorozat. Ezekről bővebben az alábbi wiki linken lehet olvasni angolul:
https://en.wikipedia.org/wiki/Programmed_Data_Processor

1960 -ban rukkolt elő a cég az első termékével, a PDP-1 minicomputerrel és ezek után szépen sorban jött a többi is.
Az operációs rendszer már a kezdetektől fogva időosztásos, ami a többfelhasználós és többfeladatos rendszerek alapvető feltétele (multitasking és multiuser) !

Érdekesség, hogy ebben az időben nem létezett standard szóhossz, így volt lehetséges, hogy a DEC termékei között előfordult vegyesen 12, 18, 24, 32 és 36 bites számítógép is 😀

A fenti linken lépésről lépésre lehet is követni a generációs lépéseket, érdemes egy kis időt szánni rá.

PDP-11 minicomputer
A PDP-11 minicomputer

Ami ebből számunkra és a cikk szempontjából lényeges, az a PDP-8 és PDP-11. Ezek a gépek lettek aztán ténylegesen is messze földön híresek és itt jön a képbe a távíró.

Egészen pontosan a Teletype ASR 33 -as model, ami ugyanis ASCII kompatibilis, időosztásos multiplexeléssel dolgozó RS-232 porton kommunikálni képes be és kimeneti eszköz volt egyaránt, illetve a lyukkártya révén az adattároló szerepét is betöltötte, tehát egyfajta óccó öszvér.

Pár érdekes tény:

  • BASIC programozási nyelvet úgy tervezték, hogy egy alacsony sebességű Teletype Model 33-as gépen lehessen írni és szerkeszteni.
    A Teletype Model 33 lassú sebessége befolyásolta a miniszámítógépek operációs rendszereinek felhasználói felületét, beleértve a UNIX-ot is.
  • Bill Gates első számítástechnikai tapasztalatait egy Teletype Model 33 szolgáltatta.
  • 1971-ben Ray Tomlinson a Teletype Model 33 ASR billentyűzetén a @ szimbólumot választotta a hálózati e-mailben való használatra.
  • A soros portok neve a Unixban és a Linuxban “/dev/tty…”, ami a “Teletype” rövidítése.

blank

Ken Thompson és Dennis M. Ritchie egy PDP-7 -es gépen megírja az első UNIX rendszert majd egy év múlva átírja PDP-11 -re, ami szinte minden nagyobb egyetemen megtalálható és így elég gyorsan elterjed és megszületik a C programozási nyelvis időközben. A képen látható, hogyan dolgoztak valamint a papírhengeres teletypewriter is, el tudjátok képzelni, mennyi papír fogyott abban az időben 😀

Egy PDP-10-es gépen, nagyjából hasonló körülmények között akészíti el első céges (ekkor még a sebtében alapítottMicro-Soft névvel) termékét Paul Allen és Bill Gates az Altair BASIC -et.

A DEC wikipédia oldala: https://en.wikipedia.org/wiki/Digital_Equipment_Corporation

Természetesen hamar elérkezett az igény a papírhengeres távíró leváltására és megszülettek az első katódsugárcsöves, azaz CRT monitoros buta kliensek, ezek processzorokat sem tartalmaztak többnyire, csak egyszerű áramköri kapukból álltak, az első ilyen terminálokat gyakran csúfolták GlassTeletype, vagy GlassTTY -nak.

A DataPoint 3300 volt a Computer Terminal Corporation(későbbi nevénDatapoint Corporation) társaság által gyártott első számítógép-terminál.
1967-ben jelentették be és 1969-ben kezdték szállítani. Mivel ez a terminál a teleprintereket, például a Teletype Corporation által gyártott berendezéseket volt hivatott felváltani, ez volt a valaha gyártott legelső üveges TTY.

Saját márkanevén kívül DEC VT06 és HP 2600A néven is forgalmazták (ez utóbbi 1972-ben volt bemutatva).

Eredeti bejegyzés: https://hu.wikipedia.org/wiki/Datapoint_3300

Az alábbi wikipédia oldalon rengeteg információt találunk a terminálokról, érdemes belenézni:
https://en.wikipedia.org/wiki/Computer_terminal

A mai modern unix és linux rendszerekben sokszor találkozunk azzal a kifejezéssel, hogy VT100 és VT220, aki szokott kézi szkennereket, mini számítógépeket konfigurálni raktári, logisztikai alkalmazásokat, az már biztosan találkozott vele, illetve tapasztaltabb linux felhasználók is egészen biztosan, nost ez az alábbi linken szintén megtalálható – a DEC VT100 már Intel 8080 procival érkezett és igen mutatós is volt:

blank

https://en.wikipedia.org/wiki/VT100

Az x86-os architektúra születése

A Computer Terminal Corporation elhatározta, hogy készít egy új, nagyon egyedi és különleges terminált, ez lesz a Datapoint 2200. Hát nem pont úgy sikerült, ahogy tervezték.

A gép eredeti tervei szerint a CPU egység egyetlen 8 bites mikroprocesszor-csipben kapott volna helyet, és nem diszkrét TTL áramkörökkel való kiépítésben szerepelt, mint a végül gyártásba került változat. 1969-ben a CTC két számítástechnikai céggel, az Intel-lel és a Texas Instruments-szel szerződött a chip gyártására. A Texas Instruments nem tudta megbízhatóan elkészíteni a csipet és így kiszállt az üzletből. Az Intel viszont nem tudta tartani a CTC határidejét. A két cég újratárgyalta a szerződést, aminek a végeredménye az lett, hogy a CTC megtartotta a pénzét (és újraterveztette a processzort TTL elemekből), az Intel pedig megtartotta a végül mégiscsak elkészült mikroprocesszort, amelyet forgalmazhatott is.

A CTC kibocsátotta a Datapoint 2200-as modellt, amely egy mikroprocesszor helyett kb. 100 TTL komponensből (SSI/MSI csipekből) épült föl, míg az Intel egycsipes kialakítása, amely az Intel 8008-as jelölést kapta, elkészült és 1972 áprilisában jelent meg végleges formájában. A 8008 alapvető jelentősége abban rejlik, hogy ez lett az őse az Intel többi 8 bites mikroprocesszorának, amelyet az assembly nyelv szintjén kompatibilis 16 bites CPU-k követtek – az x86család első tagjai; az utasításkészlet ezen a néven vált ismertté később. Ezáltal elmondható, hogy a CTC mérnökei voltak a nagyszülei a világon az 1980-as évek közepétől mind a mai napig legnagyobb számban használt és emulált utasításkészlet-architektúrájának.
Eredeti bejegyzés: https://hu.wikipedia.org/wiki/Datapoint_2200

blankNegyven évvel ezelőtt megjelenik az
Altair 8800 számítógép,
tényleg olyan, mint egy mérőműszer
blankÁlomkonfig ADM-3A (piszoár) terminállal és
floppy-meghajtóval
(forrás: http://www.classiccmp.org/dunfield/)

Mindenkinek, aki érdeklődik a téma iránt, itt egy fantasztikus cikk a logout -on, Negyven éves az Altair 8800 számítógép címmel:
https://logout.hu/cikk/negyven_eves_az_altair_8800_szamitogep/bevezetes.html

A cikkben van egy videó, ez egy ALTAIR 8800 számítógép egy Teletype ASR 33 -as géppel összekötve, ahol a távíró egyben monitor, háttértár és billentyűzet is.

Tehát, mintegy összefoglalva az eddig olvasottakat, a TTY a Teletype rövidítése és nagyon fontos részét képezik a UNIX és a Linux rendszerek születésének, hiszen alapvető ki és bemeneti egységként és tárolóként is szolgáltak a korai számítógépeken.

Tehát amikor telepítettünk egy minimál linuxot grafikus felület nélkül és az fogad minket, hogy login on tty0 és ezt ugye léptethetjük az alt+F2, F3…stb…billentyűkkel vagy az alt+jobbra és balra billentyűkombinációkkal, akkor ez a már tanultak alapján a TTY kapcsolatot jelenti és a terminál sorszámát.

Grafikus felületről ehhez külön ki kell lépni a konzol felületre, ez Puppy linux esetén ctrl+alt+backspace billentyűkkel lehetséges.

Ha elfelejtettük volna, hogy hol vagyunk, a tty paranccsal kérdezhetjük le, de a ps -a parancs is megadja, milyen processzek használnak terminált.

Mivel alapvetően az akkor megalkotott soros porton csatlakoztak a gépre, így a /dev/ttyS0 vagy a /dev/ttyS1 a soros portot jelöli, a tty a kapcsolat típusa, mostmár azt is tudjuk, hogy miért ez a neve 😀

Példa automatikus engedélyezett, jelszó kérés nélküli beléptetésre az 1 -es terminálon:

/etc/init/tty1.conf

exec /sbin/getty --autologin tanulo    -8 38400 tty1

Amikor engedélyezzük a konzolos hozzáférést az eszközünkhoz a soros porton akkor hasonló beállításokat találunk, mint például az /etc/inittab fájlban egy ilyen bejegyzés:

T0:123:respawn:/sbin/getty -L ttyS0 115200 vt100

Ez a COM1 és a VT100 terminál funkcióival kompatibilis működést emulálja 115200 baud sebességen és persze ha valamiért kihal a folyamat, akkor automatikusan újraindul.
Az /etc/inittab fájlban konfigurálhatjuk a konzolos belépéseket.

Mielőtt bárkinek eszébe jutna, hogy ez úgysem kell, csak halkan megsúgom, hogy szinte az összes managelhető hálózati eszközben, routerek, switchek -ben van konzol port és sokszor ez COM port…

Grafikus környezetben már kicsit más a leányzó fekvése, ott ugyanis van egy pseudo multiplexer (pseudotty, PTY ) és ehhez tartozóan master és slave kiszolgálás.

Általában a master egy terminál emulátorhoz (például xterm), a slave pedig egy futó programhoz, leggyakrabban egy shellhez (például bash) csatlakozik, így a slave pontosan úgy viselkedik, mint egy klasszikus terminál.
Amikor a master oldalt megnyitjuk, a megfelelő slave device ugyanúgy használható, mint bármelyik TTY eszköz.
A master és a slave device-t a kernel köti össze. Így ez egy kétirányú csőnek megfelelő TTY képességekkel rendelkező kapcsolat.

Master pseudo terminál: /dev/ptmx – egy karakteres eszközfájl, amely egy álterminál master-slave páros létrehozására szolgál. Eszközfájl a master álterminálokhoz.
Slave pseudo terminál: /dev/pts – ez az a könyvtár, ahol létrejönnek az adott fájlok, pölö: /dev/pts/4
Az álterminálokat többek között a hálózati bejelentkezési szolgáltatások (ssh, rlogin, telnet) és a terminálemulátorok (például xterm, script, screen, tmux, unbuffer, expect) implementálására használják. A suvagy passwd számára történő adatküldésre is használhatók (ezek nem hajlandóak a pipe -ból olvasni).

 

A végére maradt a legütősebb dolog, a pseudoterminál-multiplexer, ami azt teszi lehetővé, hogy egy bejelentkezési ablakban, tipikusan például egy szerverre ha be vagyunk lépve SSH -n keresztül, akkor több álterminál login session -t indít, amelyeket a fő bejelentkezési ablakunktól teljesen függetlenül tudunk kezelni.

 

Ha véletlenül menet közben megszakadna a net kapcsolat, semmi gond, onnan tudjuk folytatni a munkát, ahol abbahagytuk, mivel multiplexer esetén nem kap SIGHUP jelzést.
Több különböző folyamatot tudunk indítani egymástól teljesen függetlenül és ezt akár meg is tudjuk osztani a kollégánkkal, aki egy másik gépről belépve tud nekünk segíteni vagy akár több képernyőn tudunk mi is dolgozni.

 

A SIGHUP wikipédia leírása: https://en.wikipedia.org/wiki/SIGHUP
Bővebben angol nyelven a multiplexerről: https://en.wikipedia.org/wiki/Terminal_multiplexer

 

Hát ennyi lett volna az én kis összefoglalóm, remélem hogy hasznosnak találjátok.
Legyen szép napotok és jó linuxozást !


Vélemény, hozzászólás?

Translate »