Добрый день. Вашему вниманию представляется публикация о роли терминалов в истории развития компьютерной индустрии. Данная статья основана на личном опыте, размышлениях автора и анализе литературных источников. В дальнейшем содержание статьи может уточняться.

Терминал — электронное или электромеханическое устройство [1], используемое для организации диалогового взаимодействия пользователя с компьютером, как правило состоящее из клавиатуры и дисплея, подключённое через сетевой интерфейс к удалённому серверу. Первые варианты таких терминальных систем появились в то время, когда ещё не существовало понятия персонального компьютера ввиду огромных размеров ранних ЭВМ. До 70-x годов прошлого века в качестве монитора многими пользователями использовался [2] принтер, на котором распечатывалась реакция ЭВМ на команды, вводимые с клавиатуры.

image


Многотерминальные системы [3] позволяли одновременную работу с ЭВМ нескольких пользователей, каждый из которых получал собственный терминал для работы с компьютером, а их количество определялось его вычислительной мощностью. Такие многотерминальные системы стали прообразом современных вычислительных сетей. В 13 лет Билл Гейтс был буквально загипнотизирован [4] компьютерным терминалом, установленным в здании школы, и каждую свободную минуту он и его друзья проводили рядом с ним. «Мы жили в параллельной вселенной» — говорил потом об этом времени сам Билл Гейтс.

image

В 1978 году компания DEC выпустила терминал VT100 [5], который использовал для соединения с сервером линию связи с последовательной передачей данных, при которой данные передаются последовательно по одному биту за один промежуток времени. Стандарт последовательного интерфейса RS-232 (RS расшифровывается, как Recommended Standard) был разработан [6] и предложен в 1962 году ассоциацией электронной промышленности (Electronic Industries Associations, EIA) для связи аппаратных средств передачи данных (Data Communication Equipment – DCE), например, компьютеров, с аппаратными средствами приёма данных (Data Terminal Equipment – DTE) такими, как терминалы, принтеры, модемы и другие периферийные устройства. В последующих изменениях стандарта RS-232B и RS-232C была изменена величина амплитуды напряжения передаваемого сигнала: в первоначальном стандарте она равнялась 25 Вольт, и была уменьшена до 12 и 5 Вольт соответственно. Версия стандарта RS-232C [7], принятая в 1969 году, стала стандартом для производителей компьютерной техники, многие из которых, включая таких производителей, как National Instruments [8], опустили букву «С» в стандарте и обозначают его просто как RS-232. Последующие версии стандарта RS-232D и RS-232E содержат небольшие изменения [6]. Следует отметить, что не все производители всегда [9] строго следовали спецификации.

image

Для контролирования потока данных последовательный интерфейс использует [10] счётчик времени (сигнал синхронизации, clock). Передатчик и приёмник используют этот счётчик для определения моментов времени, в которые необходимо посылать и считывать соответствующий бит данных. Существует два формата последовательной передачи данных — синхронный и асинхронный.

При синхронной передаче данных передатчик и приёмник используют общий счётчик времени, генерируемый общим источником. Генерация передаваемых бит на стороне приёмника синхронизируется с этим счётчиком, а приёмник использует этот счётчик для определения моментов времени, в которые следует считывать принимаемые биты. Синхронные интерфейсы применяются для коротких линий связи длиной порядка 15 футов (около 4.5 метров) или менее того, или между компонентами одной печатной платы. Для более длинных линий связи синхронные методы последовательной передачи данных оказываются менее эффективны ввиду необходимости передачи синхронизирующего сигнала, требующего отдельной линии связи и подверженного шуму.

image

При асинхронной передаче данных такая линия cвязи не требуется, т.к. приёмник и передатчик генерируют свои собственные синхронизирующие сигналы. Каждому переданному байту данных предшествует стартовый бит для синхронизации счётчиков, а за переданным байтом следует один или два стоповых бита для обозначения конца переданного байта данных. Одним из наиболее известных форматов асинхронной последовательной передачи данных является формат 8-N-1, при котором посылается один стартовый бит, далее следует байт передаваемых данных, а за ним следует один стоповый бит. Символ N обозначает, что передаваемые данные не включают бит паритета (parity bit), используемый для коррекции ошибок. Например, в формате 7-E-1 посылается один стартовый бит, семь бит данных, один бит паритета и один стоповый бит. Бит паритета может быть чётным (Even), нечётным (Odd), установаленным (Mark) и сброшенным (Space). Чётный бит паритета устанавливается таким, что биты данных вместе с битом паритета содержат чётное количество единичных бит. Нечётный бит паритета устанавливается таким, что биты данных вместе с битом паритета содержат нечётное количество единичных бит. Установленный (Mark) бит паритета всегда равен единице, а сброшенный (Space) всегда равен нулю. Бит паритета позволяет определить только ошибку в одном бите. Например, последовательность бит 0110000, переданная с чётным битом паритета 0, может измениться из-за шума телефонной линии на 0111100, однако приёмник не определит наличие ошибки, так как чётность сохранится.

image


«Я был блестящим инженером. Hewlett-Packard пять раз отклоняла мою идею создания персонального компьютера. Позже, когда они увидели Apple II, то сказали, что это лучший продукт, который они когда-либо видели.» Стив Возняк

image


С развитием компьютерной техники терминальные комплексы стали вытесняться персональными компьютерами, эмуляторы терминалов стали популярным способом эмуляции дисплейных терминалов в какой-либо другой системе отображения информации, а набор ASCII символов и управляющих последовательностей терминала VT100 стал стандартом для таких эмуляторов, как Teraterm и пр. Информация на дисплее и управляющая информация, вводимая с устройства ввода пользователем, могут быть преобразованы в последовательные сигналы и переданы междy подключённым устройством и терминалом. Клавиатура используется для передачи кодов. Некоторые клавиши посылают один или несколько кодов немедленно при нажатии. Другие клавиши такие, как CTRL и SHIFT, не посылают коды при нажатии, но модифицируют коды, посылаемые при нажатии других клавиш. Клавиатура содержит четыре клавиши со стрелками в четырёх разных направлениях. Эти клавиши передают управляющие последовательности. При получении таких последовательностей терминалом курсор сместится на один символ вверх, вниз, направо или налево.

Пользователи могут использовать эмуляторы терминалов, установленные на персональных компьютерах (ПК), включающих экран и устройства ввода такие, как мышь и клавиатура, для проверки и управления устройствами. Эмулятор терминала можно, например, использовать для отладки работы операционной системы компьютера. Для обработки сообщений об ошибках некоторые операционные системы посылают их на последовательный порт компьютера. Для обработки сообщений об ошибках к последовательному порту компьютера подключается терминал (или компьютер с эмулятором терминала), который интерпретирует сигнал на выходе последовательного порта в виде последовательности команд терминала. Эти команды позволяют отображать текст на экране терминала. В качестве другого примера можно привести маршрутизаторы, предоставляющие возможность настройки подключением эмулятора терминала через порт с поддержкой интерфейса командной строки (Command line interface, cli). Ещё одной областью применения таких программ является настройка и управление различными платами, релейными модулями и т.д.

RS-232 интерфейс хорошо зарекомендовал себя и прослужил около двух десятилетий как один из основных портов для подключения перифирийных устройств. Использование существовавших интерфейсов вместо создания новых позволяло производителям IBM и др. ускорить разработку новых компьютеров и дать возможность пользователям подключать к ним принтеры и модемы, уже выпущенные на рынок. Однако с увеличением производительности вычислительной техники и разнообразия перефирийных устройств старые интерфейсы стали затруднять их использование и ограничивать коммуникацию. Это послужило созданию новых аппаратных портов таких, как USB-порт [11], первая спецификация которого была опубликована в январе 1996 года. Каждое USB устройство должно реализовывать USB протокол, определяющий, как устройство регистрирует и отвечает на запросы и другие события USB порта, посылает и принимает данные. Обычно эти функции выполняет микроконтроллер или интегральная схема специального назначения (application-specific integrated circuit, ASIC), входящая в состав устройства. Типичный USB контроллер включает USB приёмопередатчик, механизм последовательного интерфейса (Serial Interface Engine), буферы для USB данных, и регистры для хранения конфигурации, статуса, и усправляющей информации USB связи. Механизм последовательного интерфейса — интерфейс, берующий на себя выполнение основных функций протокола USB спецификации. ASIC может требоваться для крупномасштабных приложений, требующих высокой производительности.

image

Развитие компьютерной индустрии сделало массово доступными множество электронных устройств, поддерживающих различные аппаратные порты для их настройки и передачи информации. Помимо таких контактных подключений, как последовательный (RS-232, COM-порт) и USB-порт, появились различные варианты портов для бесконтактных подключений на основе таких беспроводных технологий, как Wi-Fi, Bluetooth и пр.

Хотя рост объемов передаваемой информации привёл к появлению таких новых высокоскоростных интерфейсов, как USB, интерфейс RS-232 по-прежнему находит своё применение, что можно объяснить, например, его надёжностью и легкой программируемостью. Одновременно с быстрым развитием программируемых терминалов становятся всё более популярными электронные устройства с сенсорными экранами (например смартфоны, планшетные компьютеры и т.д.), позволяющие пользователям вводить информацию через дисплей. Эмуляция терминалов на таких устройствах является одним из направлений дальнейшего развития терминалов.

image


Ссылки и сноски
[1] А.В. Ильин, В.Д. Ильин Большая российская энциклопедия.
[2] А. Петропавловский, С. Филлипов «Терминальные системы в России» Виртуальный Компьютерный Музей
[3] В. Олифер, Н. Олифер «Компьютерные Сети»
[4] А. Уолтер «Инноваторы. Как несколько гениев, хакеров и гиков совершили цифровую революцию»
[5] «The DEC VT100 Terminal» Columbia University Computing History.
www.columbia.edu/cu/computinghistory/vt100.html
[6] T. Schultz «C and the 8051»
[7] А.Ю. Кузьминов «Интерфейс RS232 Связь между компьютером и микроконтроллером от DOS к Windows98/XP»
[8] NI RS-232C Standard Conformance digital.ni.com/public.nsf/allkb/1C8F13D0806056F886256FAC00649176
[9] B. Glass «RS-232 Serial Interface Spec Is Anything But Standard», Info World, May 22, 1989
[10] J. Axelson «Serial Port Complete. Programming and Circuits for RS-232 and RS-485 Links and Networks»
[11] J. Axelson «USB Complete. Everything You Need to Develop Custom USB Perfipherals»

Комментарии (22)


  1. maxzhurkin
    20.02.2018 18:43

    А как в статью попало упоминание ASIC?


    1. udevterm Автор
      20.02.2018 18:52

      Так и попало. В чём вопрос? В тексте есть ссылки на литературу.


      1. udevterm Автор
        20.02.2018 20:43

        .


    1. maisvendoo
      20.02.2018 21:51

      Спокойно, термин ASIC употреблен в статье не в контексте майнинга, а по другому поводу

      application-specific integrated circuit

      учим матчасть…


  1. dk_spb
    21.02.2018 00:07
    +2

    Простите, а о чем статья?
    Какая-то попытка впихнуть в два абзаца сразу и DEC, и Билла, и USB ;-) Автору удалось, в смысле впихнул. Жаль только смысл повествования утратился.
    И где тут роль терминалов? У Вас они (терминалы) на VT100 начались и тут же закончились.
    И логика вообще непонятна: начали с VT100 (1978), потом про RS-232 (1960), потом легким движением руки с RS-232 на USB (который к терминалам вообще никаким боком). Вы видите роль терминалов в появлении RS-232 и USB?
    Ну и в конце вообще феерично: смешаны в кучу все терминалы — и тебе VT100, и смартфоны туда же. Автор явно забыл терминалы INMARSAТ и погрузо-разгрузочные терминалы. Или по Вашему VT100 и смартфон — «терминалы» в одном значении этого термина?

    Ну и непонятно у Вас описка или ошибка:
    «Последовательный интерфейс RS-232 был разработан [6] и предложен в 1969 году»
    Вообще-то год 1960. А в 69 уже 3-я ревизия (RS-232C).


    1. udevterm Автор
      21.02.2018 12:00

      Уважаемый Читатель, спасибо за замечание, я уточнил изложение истории принятия стандарта RS-232 в статье, здесь отмечу, что стандарт RS-232C, принятый в 1969 году, стал стандартом для производителей компьютерной техники, многие из которых, включая таких производителей, как National Instruments [8], опустили букву «С» в стандарте и обозначают его просто как RS-232. NI RS-232C Standard Conformance digital.ni.com/public.nsf/allkb/1C8F13D0806056F886256FAC00649176


    1. udevterm Автор
      21.02.2018 12:06

      Что касается Вашего высказывания «легким движением руки с RS-232 на USB (который к терминалам вообще никаким боком)», приведу цитату из книги T. Schultz «C and the 8051», 2004: «Today, the most common serial communication standard remains RS-232 although we may be approaching a point where USB will replace it» Конец цитаты.


      1. dk_spb
        21.02.2018 13:17

        А какое отношение эта цитата имеет к теме статьи (к терминалам)?


    1. udevterm Автор
      21.02.2018 12:40

      «Вы видите роль терминалов в появлении RS-232 и USB?» Терминалы сыграли важную роль в истории развития компьютерной техники, что можно видеть на примере биографии того же Билла Гейтса, и по-прежнему находят своё применение. Порты связи являются тем, без чего ни один терминал, ни одна компьютерная система существовать не может, они определяют те возможности коммуникации, которые даёт то или иное устройство, в том числе терминал. Развитие компьютерной техники [11] потребовало создание новых стандартов связи. Терминалы тоже относятся к этой технике.


    1. udevterm Автор
      21.02.2018 12:45

      «Ну и в конце вообще феерично: смешаны в кучу все терминалы — и тебе VT100, и смартфоны туда же.» Речь идёт об «электронных устройствах с сенсорными экранами», примерами которых являются массово доступные смартфоны, планшетные компьютеры. Эти устройства дают принципиально новые возможности взаимодействия пользователя с устройством, которые не были доступны до их появления.


      1. dk_spb
        21.02.2018 13:19

        Вы продолжаете настаивать на Вашем заблуждении. Терминалы, о которых Вы начинаете статью, являются устройством ввода-вывода информации.
        Смартфоны — не являются устройствами ввода-вывода. Это принципиально ДРУГИЕ устройства.


      1. dk_spb
        21.02.2018 13:41

        Вы еще скажите что на первом фото у Вас компьютерный терминал ;-)


        1. udevterm Автор
          21.02.2018 17:40

          Уважаемый Читатель. Согласно определению терминал — электронное или электромеханическое устройство, используемое для организации диалогового взаимодействия пользователя с компьютером. К таковым устройствам относятся и электромеханические телетайпы, и другие устройства. Электронное или электромеханическое устройство, выполняющие функции, свойственные компьютерному терминалу (в том числе путём эмуляции видеотерминала), по определению является компьютерным терминалом.


          1. dk_spb
            21.02.2018 17:50

            Вы думаете я буду с Вами спорить?
            Вы или давайте пруфы, либо не надо смешных определений.

            Есть многие устройства, которые можно использовать в качестве терминала, но они не становятся от этого терминалами. Ни «по определению», ни по Вашему желанию, ни по факту.


            1. udevterm Автор
              21.02.2018 19:05

              Уважаемый Читатель. Можете посетить вот этот компьютерный музей. Там Вы найдёте интересующее Вас фото с подписью.
              pcmuseum.tripod.com/bgate.htm


  1. dk_spb
    21.02.2018 19:16

    уважаемый автор. Это Вы создатель этой странички, которую Вы так гордо называете «вот этот компьютерный музей». Вы, конечно, извините, но что-то Вы совсем заврались.
    На всякий случай я Вам переведу часть подписи под фото: «1968: Билл Гейтс (стоит) и Пол Аллен...» Так вот, упомянутым персонажам в 1968 году было 13 и 15 лет. Или Вы будете утверждать что детине, которая сидит за телетайпом на фото 15 лет?
    В общем предлагаю дискусс закончить. Я свой вывод сделал: Вы ничего не понимаете в теме, про которую пишите. И, к сожалению, копируете из интернета информацию не то что не проверяя, а даже не задумываясь.
    Нет, мне, конечно, приятно что после моим указаний на подобные «клюквы» Вы оперативно правите свою «статью», но дальше уже сами…


    1. udevterm Автор
      21.02.2018 19:37

      Всего доброго.


      1. udevterm Автор
        21.02.2018 19:56

        image


    1. udevterm Автор
      21.02.2018 21:09

      .


    1. udevterm Автор
      21.02.2018 21:23

      Уважаемый Читатель, Ваша мания величия зашкаливает. Сравните год первой спецификации RS-232 в моей статье и Вашем комментарии. Всего доброго.


      1. udevterm Автор
        22.02.2018 12:02

        .


  1. udevterm Автор
    23.02.2018 10:26

    image