Введение

Технологическая способность взаимодействовать с более старыми технологиями

В телекоммуникациях и вычислительной технике обратная совместимость (или ретросовместимость) — это свойство операционной системы, программного обеспечения, реального продукта или технологии, позволяющее взаимодействовать со старыми, унаследованными системами или с данными, предназначенными для таких систем. Изменение системы таким образом, что она теряет обратную совместимость, иногда называют "нарушением" обратной совместимости. Такое нарушение обычно влечет за собой различные издержки, например, затраты на переход. Взаимодополняющей концепцией является перспективная совместимость; конструкция, обладающая перспективной совместимостью, обычно предусматривает план обеспечения совместимости с будущими стандартами и продуктами.

В оборудовании

Простым примером совместимости как в будущее, так и в прошлое является введение стерео FM-радио. Изначально FM-радио было моно, с одним аудиоканалом, представленным одним сигналом. С появлением двухканального стерео FM-радио у многих слушателей были только моно FM-приемники. Обеспечение совместимости в будущее для моноприемников со стереосигналами было достигнуто путем передачи суммы левого и правого аудиоканалов в одном сигнале, а разницы – в другом. Это позволяет моно FM-приемникам принимать и декодировать суммарный сигнал, игнорируя разностный, который необходим только для разделения аудиоканалов. Стерео FM-приемники могут принимать моносигнал и декодировать его без необходимости во втором сигнале, а также разделять суммарный сигнал на левый и правый каналы при приеме обоих сигналов – суммарного и разностного. Если бы не требовалась обратная совместимость, можно было бы выбрать более простое решение. Полная обратная совместимость особенно важна в архитектуре наборов команд компьютеров, и наиболее успешными примерами являются семейства мейнфреймов IBM 360/370/390/Z и семейство микропроцессоров Intel x86. IBM представила первые модели 360 в 1964 году и с тех пор постоянно обновляла серию, переходя на протяжении десятилетий от 32-битных регистров и 24-битных адресов к 64-битным регистрам и адресам. Intel представила первые процессоры Intel 8086/8088 в 1978 году, также с переходом на протяжении десятилетий с 16 бит до 64 бит. (Процессоры 8086/8088, в свою очередь, были разработаны с учетом простоты машинного перевода программ, написанных для их предшественника, хотя они не были совместимы по набору команд с 8-битным процессором Intel 8080 1974 года. Однако Zilog Z80 был полностью обратно совместим с Intel 8080.) Полностью обратно совместимые процессоры могут обрабатывать те же бинарные исполняемые инструкции, что и их предшественники, позволяя использовать более новый процессор без необходимости приобретать новые приложения или операционные системы. Успех стандарта цифровой связи Wi-Fi также объясняется его широкой совместимостью в будущее и в прошлое; он стал популярнее других стандартов, не обеспечивающих обратную совместимость.

В программном обеспечении

В разработке программного обеспечения обратная совместимость – это общее понятие обеспечения взаимодействия между программными компонентами, которое не приводит к ошибкам при вызове функциональности через API. Программное обеспечение считается стабильным, когда его API, используемый для вызова функций, остаётся неизменным в разных версиях. В компиляторах обратная совместимость может означать способность компилятора новой версии языка обрабатывать исходный код программ или данные, которые корректно работали в предыдущей версии. Формат данных считается обратно совместимым, если новая версия программы может открывать его без ошибок, как и предыдущая версия.

Преимущества

Для компании существует несколько стимулов для внедрения обратной совместимости. Обратную совместимость можно использовать для сохранения старого программного обеспечения, которое в противном случае было бы утеряно, когда производитель решает прекратить поддержку устаревшего оборудования. Классические видеоигры – распространенный пример, используемый при обсуждении ценности поддержки старого программного обеспечения. Культурное влияние видеоигр является важной частью их непрерывного успеха, и некоторые считают, что игнорирование обратной совместимости приведет к исчезновению этих игр. Обратная совместимость также служит аргументом в пользу покупки нового оборудования, поскольку существующая база игроков может более доступно перейти на последующие поколения консолей. Это также помогает компенсировать недостаток контента на старте новых систем, позволяя пользователям использовать библиотеку игр предыдущей консоли, пока разработчики переходят на новое оборудование. Более того, исследования, проведенные в середине 1990-х годов, показали, что даже потребители, которые никогда не играют в старые игры после покупки новой системы, считают обратную совместимость очень желательной функцией, ценя саму возможность продолжать играть в существующую коллекцию игр, даже если они не планируют этого делать. Обратная совместимость с оригинальными дисками и периферийными устройствами PlayStation (PS) считалась ключевым фактором продаж PlayStation 2 (PS2) в первые месяцы после выхода на рынок. Несмотря на отсутствие на старте, Microsoft постепенно добавила обратную совместимость для избранных игр на Xbox One в течение нескольких лет жизненного цикла продукта. Игроки провели более миллиарда часов, играя в игры с обратной совместимостью на Xbox, и новейшие поколения консолей, такие как PlayStation 5 и Xbox Series X/S, также поддерживают эту функцию. Значительная часть успеха и реализации этой функции заключается в том, что аппаратное обеспечение в консолях нового поколения достаточно мощное и похоже на устаревшие системы, чтобы старые игры можно было адаптировать и перенастроить для работы на Xbox One. Эта программа оказалась невероятно популярной среди игроков Xbox и противоречит недавней тенденции к ремастерам классических игр, создавая, по мнению некоторых, важный сдвиг в стратегии производителей консолей. Можно снизить некоторые аппаратные затраты. В ранних версиях PS2 ядро процессора, идентичное процессору PS, выполняло двойную функцию: либо как основной процессор в режиме PS, либо с повышением тактовой частоты для разгрузки операций ввода-вывода в режиме PS2. Однако такой подход может оказаться контрпродуктивным, как в случае с Super Nintendo Entertainment System (Super NES), которая выбрала необычный 65C816 вместо более популярных 16-битных микропроцессоров, полагая, что это обеспечит легкую совместимость с оригинальной NES, но совместимость с NES в конечном итоге оказалась неработоспособной после разработки остальной архитектуры Super NES. Обратная совместимость создает риск того, что разработчики будут отдавать предпочтение разработке игр, совместимых как со старой, так и с новой системой, поскольку это дает им более широкую базу потенциальных покупателей, что приведет к дефициту программного обеспечения, использующего передовые функции новой системы. С сокращением продаж физических копий игр и ростом цифровых магазинов и загрузок некоторые считают, что обратная совместимость скоро устареет. Многие игровые студии переиздают свои самые популярные игры, улучшая качество графики и добавляя новый контент. Эти ремастеры оказались успешными, привлекая как ностальгирующих игроков, помнящих оригинальные версии, так и новичков, у которых, возможно, не было оригинальной системы. Для большинства потребителей цифровые ремастеры более привлекательны, чем сохранение устаревшего оборудования. Для производителей консолей цифровые переиздания классических игр – большая выгода. Это не только устраняет финансовые недостатки поддержки устаревшего оборудования, но и перекладывает все расходы на обновление программного обеспечения на разработчиков. Производитель получает новое дополнение к своей системе с узнаваемым названием, а студии не нужно разрабатывать новую игру.