Кіріспе

Кейбір операциялық жүйелерде, Unix сияқты жүйелерді қоса алғанда, псевдотерминал, псевдо-тти немесе ПТЫ – екі немесе одан көп процестер арасында асинхронды, екі бағытты коммуникация (IPC) арнасын (екі портпен) құратын екі жалған құрылғы нүктесінен (файлдардан) тұратын жұп. Осы жұптың бірінші жалған құрылғысы, мастер, терминал эмуляторы немесе қашықтан кіру сервері (мысалы, Telnet, rlogin немесе Secure Shell сервері) үшін POSIX және Single Unix Specification API-ді 1998 жылдан бері функция түрінде ұсынады.

Тарих

Псевдотерминалдар кем дегенде 1967 жылдан бастап DEC PDP 6 уақыт бөлісу мониторында болған және пакеттік өңдеуді іске асыру үшін қолданылған. Олар PDP 10-дағы келесі TOPS 10 құжаттамасында сипатталған. Басқа DEC операциялық жүйелерінде де PTY болды, соның ішінде PDP 11 үшін RSTS/E, сондай-ақ PDP 10 үшін үшінші тараптың TENEX операциялық жүйесі. Unix псевдотерминалдарының іске асырылуы 1970 жылдардың соңында RAND және BBN желі арқылы қашықтан қол жеткізуді қолдау үшін 6-шы нұсқаға енгізген өзгерістерге байланысты. Қазіргі заманғы Unix псевдотерминалдары 1983 жылы Unix-тің сегізінші нұсқасын әзірлеу кезінде пайда болды және TENEX-тегі ұқсас мүмкіндікке негізделген. Олар BSD-нің 4.2 нұсқасының құрамына кірді, пайдалану үшін анықталған бірқатар қиын интерфейске ие болды. AT&T-нің System V-і өздерінің STREAMS құрылғы моделінде драйвер ретінде псевдотерминалдарды қолдауды және псевдотерминалдық мультиплексорді қамтыды. Бұл кейіннен Unix98 стиліне дамыды.

Нұсқалар

BSD PTY жүйесінде, әдетте /dev/tty[pzae][09af] нысанындағы атауы бар құл құрылғы файлы, мәтіндік терминал құрылғыларына қолданылатын барлық жүйелік шақыруларды қолдайды. Осылайша, ол кіру сессияларын қолдайды. Әдетте /dev/pty[pzae][09af] нысанындағы атауы бар бас құрылғы файлы терминал эмуляторымен байланыс жасау үшін пайдаланылады. Осы атау схемасы бойынша, ең көп дегенде 256 tty жұбы болуы мүмкін. Сонымен қатар, егер құлыптау схемасы қолданылмаса, бос pty бас құрылғысын табуда бәсекелестік туындауы мүмкін. Осы себепті, FreeBSD сияқты жаңа BSD операциялық жүйелері Unix98 PTY-ді қолданады. BSD PTY-лер Unix98 pty-лермен толыққанды ескірді, олардың атау жүйесі псевдотерминалдар санын шектемейді және оларға қауіпсіз түрде қол жеткізуге болады. /dev/ptmx – «жалған терминал бас мультиплексі». Оны ашу бас түйіндің файл дескрипторын қайтарады және оған сәйкес құл түйін /dev/pts/N құрылады.