Совместимость ошибок - Википедия - Bug compatibility

Компьютерное оборудование или программное обеспечение называется ошибка совместимая если он точно воспроизводит даже нежелательную функцию[1] предыдущей версии. Фраза находится в Файл жаргона.[2]

Аспект сохранения Обратная совместимость со старой системой заключается в том, что клиентские программы таких систем часто зависят не только от их указанных интерфейсов, но и ошибки и непреднамеренное поведение. Это также должно быть сохранено с помощью более новой замены. Помимо значительно более высокой сложности, которую необходимо поддерживать во время естественной эволюции кода или интерфейса, это иногда может вызывать проблемы с производительностью или безопасностью, а несоответствия в поведении интерфейсов могут иногда приводить к новым ошибкам в используемом им программном обеспечении, создавая трудно разрешить разнонаправленные перекрестные зависимости между различными частями кода.[3]

Примеры можно найти в MS-DOS /ПК DOS; при работе на процессорах 286 и выше резидентный исполняемый загрузчик содержит код, специально разработанный для обнаружения и исправления некоторых широко распространенных приложений и загрузчиков заглушек (например, программ, связанных со старыми версиями Microsoft EXEPACK или же Рациональные системы '386 DOS extenders) путем исправления загруженного образа программы перед ее выполнением,[4] или где DOS патчит Windows (WINA20.386 )[5] В процессе разработки DR-DOS также пришлось изменить, чтобы не только имитировать многие недокументированные особенности MS-DOS и ПК DOS, но также и фактические ошибки в ядре и нескольких драйверах, чтобы некоторые другие драйверы и приложения работали в DR-DOS, когда они тестировались только на определенных версиях MS-DOS.[6][4][7]

Windows, который традиционно имитировал многие старые системные ошибки, чтобы позволить запускать более старые низкоуровневые программы, является еще одним примером. Как результат, Вино, который позволяет запускать многие приложения Windows на других платформах, также необходимо поддерживать совместимость ошибок с Windows.[8]

При разработке своего IBM PC совместимый, Compaq инженеры обнаружили, что Симулятор полета Microsoft не побежал из-за чего ПОДЛОГИКА с Брюс Артвик описывается как "ошибка в одном из Intel "чипы", вынуждая их сделать свой компьютер совместимым с IBM PC.[9] Другой пример оборудования можно найти в конструкции Персональный компьютер IBM / AT Адресная строка A20 имитировать поведение старых процессоров.[4][7]

Майкрософт Эксель всегда имел преднамеренный ошибка високосного года, который ошибочно рассматривает 29 февраля 1900 г. как фактическую дату, чтобы обеспечить обратную совместимость с Лотос 1-2-3.[10]

Смотрите также

Рекомендации

  1. ^ "ошибка за ошибкой". catb.org. То же, что и совместимость с ошибками, но с дополнительным подтекстом, требующим больших утомительных усилий для обеспечения репликации каждой (известной) ошибки.
  2. ^ "Совместимость с ошибками - www.jargon.net". Получено 2010-02-03.
  3. ^ Понтин, Джейсон (1994-12-26). "Третья задержка Windows 95; требует доработки". InfoWorld. InfoWorld Media Group, Inc. 16 (52): 18.
  4. ^ а б c Пол, Маттиас Р. (2002-10-07). "Re: masm .com (PSP) проблема, связанная с". alt.lang.asm. В архиве из оригинала от 03.09.2017. Получено 2017-09-03.
  5. ^ Шульман, Эндрю; Браун, Ральф Д.; Макси, Дэвид; Michels, Raymond J .; Кайл, Джим (1994) [ноябрь 1993]. Недокументированная DOS: руководство программиста по зарезервированным функциям и структурам данных MS-DOS - расширено за счет включения MS-DOS 6, Novell DOS и Windows 3.1 (2-е изд.). Ридинг, Массачусетс: Эддисон Уэсли. ISBN  0-201-63287-X. (xviii + 856 + vi стр., 3,5-дюймовая дискета) Исправления: [1][2]
  6. ^ Пол, Матиас Р. (20 февраля 2002 г.). "Нужна DOS 6.22 (не OEM)". alt.msdos.programmer. В архиве из оригинала на 09.09.2017. Получено 2006-10-14.
  7. ^ а б Пол, Матиас Р. (2002-02-02). "Treiber Dynamisch nachladen (Внутрисегментное смещение-перемещение с использованием TSR в HMA)" [Загрузка драйверов динамически (перемещение внутрисегментного смещения для загрузки TSR в HMA)]. de.comp.os.msdos (на немецком). В архиве из оригинала на 09.09.2017. Получено 2017-07-02. (NB. Дает исчерпывающий обзор истории и «природы» HMA и неочевидные конструктивные ограничения, которые необходимо соблюдать при разработке расширений резидентной системы, загружаемых в HMA.)
  8. ^ "WineFeatures - Официальная винная вики". Получено 2010-02-03.
  9. ^ Якал, Кэти (январь 1985 г.). «Брюс Артвик / Разработчик Flight Simulator II». Бюллетень Compute!. п. 32. Получено 2014-07-06.
  10. ^ Excel ошибочно предполагает, что 1900 год високосный. Проверено 1 мая 2019.