Alexey Feldgendler (feldgendler) wrote,
Alexey Feldgendler
feldgendler

Category:

Последовательности для эскапистов

Если запустить ssh и установить соединение с удалённым компьютером, возникает иллюзия, что сидишь непосредственно за её монитором и клавиатурой. Но эту иллюзию легко отличить от действительности: как правило, об этом будет свидетельствовать заголовок консольного окна и, самое главное, существует множество способов «оторваться» от удалённой клавиатуры и перейти к управлению собственным, локальным компьютером. Один из них — завершить сеанс работы с удалённым сервером командой logout. Но всегда есть и другие способы — вдруг удалённый компьютер «завис», и нет возможности набрать logout? Для ssh, к примеру, для принудительного отключения достаточно набрать с новой строки последовательность символов ~. (тильда, затем точка). Эта последовательность, вместе с несколькими другими, является escape-последовательностью, интерпретируемой особым образом. Это важно: любые символы передаются на удалённый компьютер «как есть», а escape-последовательность обрабатывается самим средством коммуникации и никогда не доходит до удалённого сервера. Если всё-таки нужно набрать именно эту последовательность на удалённой «клавиатуре», для этого есть другая последовательность: удвоенная тильда передаёт одинарную тильду. Всё это означает, что «в районе тильды» прозрачность ssh нарушается, и иллюзия нахождения за консолью удалённого компьютера уже неполна.

Сеанс ssh, конечно, даёт довольно слабую иллюзию. Куда натуральнее выглядит соединение с удалённым компьютером по протоколам VNC, Remote Desktop и аналогичным. При этом можно работать с графическим интерфейсом удалённого компьютера, а в некоторых подобных системах — и слышать звук, выводимый удалёнными программами. Если перейти в полноэкранный режим, иллюзия становится почти полной… но основные свойства остаются неизменными: непременно есть хотя бы одна escape-последовательность (по меньшей мере, для разрыва соединения), которая не дойдёт до удалённого компьютера, а будет обработана средством коммуникации. Часто это бывает такая последовательность, которая, скорее всего, не встретится при нормальной работе, что-нибудь вроде Ctrl-Alt-Shift-Esc, так что случайно на неё не наткнуться. Поэтому тому, кто не знает об escape-последовательностях, приходится использовать «естественный» способ разрыва соединения, завершая сеанс связи средствами удалённой операционной системы. Но бывают, конечно, случаи, когда это невозможно.

Напрашивается очевидная аналогия с системами виртуальной реальности. Простейший вид виртуальной реальности — трёхмерное изображение на экране компьютера, например, в играх. Отличить его от настоящего проще простого: достаточно посмотреть вокруг. Escape-последовательности, как правило, очевидны. Шлем виртуальной реальности создаёт гораздо лучшую иллюзию, особенно в сочетании с сенсорными перчатками и прочими датчиками, считывающими положение тела. Тем не менее, и такую имитацию легко распознать, а escape-последовательностью является, например, снимание шлема. А если пойти дальше? Если система будет имитировать и объёмное изображение, и звук, и вкус, и запах, и положение тела в пространстве, да настолько натурально, что не отличить от настоящего? Какими тогда должны быть escape-последовательности?

Во-первых, это должны быть редкие последовательности, такие, которые не сделать случайно. Иначе мы наблюдали бы внезапно замирающих или исчезающих людей, которые всего лишь хотели, к примеру, почесать пятку. Во-вторых, эти последовательности должны быть доступны во всех ситуациях, в том числе, когда движения тела сильно ограничены, или когда некоторые части тела отсутствуют — ведь именно в этих случаях скорее может потребоваться выйти из этого мира. А уж куда таким путём можно вернуться, мы все узнаем, даже если никогда не найдём потайных escape-последовательностей: выйти отсюда естественным путём, с помощью logout, рано или поздно доведётся каждому.

In English: Escapist Sequences
Tags: existence, programming, psychology
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 54 comments