Резервное копирование
Бэкпортирование — это действие по взятию частей из более новой версии или программной системы программного компонента и переносу их в более старую версию того же программного обеспечения. Он является частью этапа обслуживания в процессе разработки программного обеспечения и обычно используется для устранения проблем безопасности в старых версиях программного обеспечения, а также для предоставления новых функций в старых версиях.
Обзор
[ редактировать ]Самая простая и, вероятно, наиболее распространенная ситуация резервного копирования — это исправление дыры в безопасности в новой версии программного обеспечения. Рассмотрим этот упрощенный пример:
- В программном обеспечении версии 2.0 имеется уязвимость безопасности , которая устраняется путем изменения текста «is_unsecured» на «is_secured».
- Такая же дыра в безопасности существует в программном обеспечении версии 1.0, из которого получена кодовая база для более новой версии, но там текст может читаться как «is_notsecure».
Взяв модификацию, исправляющую программное обеспечение версии 2.0, и изменив ее так, чтобы она применялась к программному обеспечению версии 1.0, можно фактически перенести исправление обратно. [1]
В реальных ситуациях изменения, которым подвергся один аспект программного обеспечения, могут быть как простыми ( всего несколько строк кода изменилось ), так и тяжелыми и масштабными (многие модификации распространяются на несколько файлов кода). В последнем случае резервное копирование может стать утомительным и неэффективным, и его следует предпринимать только в том случае, если более старая версия программного обеспечения действительно необходима в пользу более новой (если, например, новая версия все еще имеет проблемы со стабильностью , которые препятствуют ее использованию в миссии). -критические ситуации). [2]
Процедуры
[ редактировать ]Процесс резервного копирования можно условно разделить на следующие этапы: [1]
- выявление проблемы в старой версии ПО, которую необходимо исправить с помощью бэкпорта
- выяснить, какая (обычно недавняя) модификация кода устранила проблему
- адаптация модификации к ситуации со старым кодом (правильный бэкпорт)
- один или несколько уровней контроля качества — проверка того, поддерживает ли перенесенная версия предыдущую функциональность, а также правильно ли она реализует новую функциональность.
входит несколько таких модификаций Обычно в набор патчей .
Резервные порты могут быть предоставлены основной группой разработчиков программного обеспечения. Поскольку для бэкпортирования требуется доступ к исходному коду части программного обеспечения, это единственный способ выполнения бэкпортирования для программного обеспечения с закрытым исходным кодом : бэкпортирование обычно включается в двоичные обновления старой версии программного обеспечения. В случае программного обеспечения с открытым исходным кодом резервные копии иногда создаются дистрибьюторами программного обеспечения , а затем отправляются вверх по течению (то есть передаются основным разработчикам уязвимого программного обеспечения). [2]
Примеры
[ редактировать ]- Многие функции Windows Vista были перенесены в Windows XP , когда для Windows XP был выпущен пакет обновления 3, что облегчило совместимость приложений (в основном игр), изначально с Vista в качестве минимального требования, для запуска на XP SP3 в качестве минимального требования. [3]
- Проект Debian с сентября 2010 г. [4] предоставил официальную службу резервного копирования для некоторых пакетов программного обеспечения Debian Linux , а Ubuntu Linux также поддерживает резервное копирование. [5]
- В 2024 году YouTuber по имени MattKC перенес версии .NET Framework 2.0 и 3.5 на Windows 95 , которая официально не поддерживала эту платформу. [6] [7]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Перейти обратно: а б «Резервное копирование исправлений безопасности» . Красная шляпа . Архивировано из оригинала 12 мая 2020 г. Проверено 11 мая 2020 г.
- ^ Перейти обратно: а б Рахул Сундарам (14 января 2016 г.). «Оставаясь рядом с добывающими проектами» . Проект Федора . Архивировано из оригинала 5 августа 2011 г. Проверено 11 мая 2020 г.
- ^ Дональд Мелансон (9 октября 2007 г.). «Microsoft поддерживает функции Vista для новой бета-версии Windows XP SP3» . Engadget . Архивировано из оригинала 4 марта 2016 г. Проверено 11 мая 2020 г.
- ^ «Сервис бэкпортов становится официальным» . Проект Дебиан . 05 сентября 2010 г. Архивировано из оригинала 3 сентября 2011 г. Проверено 11 мая 2020 г.
- ^ «УбунтуБэкпортс» . Проект Убунту . 29 ноября 2015 г. Архивировано из оригинала 3 мая 2019 г. Проверено 11 мая 2020 г.
- ^ Харпер, Кристофер (14 апреля 2024 г.). «Двадцать восемь лет спустя тысячи приложений перенесены обратно в Windows 95 — порт .NET Framework обеспечивает обратную совместимость с современным программным обеспечением» . Аппаратное обеспечение Тома . Архивировано из оригинала 31 мая 2024 г. Проверено 1 июля 2024 г.
- ^ Пош, Майя (14 апреля 2024 г.). «Портирование современных приложений Windows на Windows 95» . Хакадей . Архивировано из оригинала 1 июля 2024 г. Проверено 1 июля 2024 г.