Патч (компьютерный)
Эта статья включает список общих ссылок , но в ней отсутствуют достаточные соответствующие встроенные цитаты . ( февраль 2018 г. ) |
Патч — это данные , которые предназначены для изменения существующего программного ресурса, такого как программа или файл , часто для исправления ошибок и уязвимостей безопасности . [1] [2] Исправление может быть создано для улучшения функциональности, удобства использования или производительности . Исправление обычно предоставляется поставщиком для обновления предоставляемого им программного обеспечения.
Патч можно создать вручную, но обычно он создается с помощью инструмента, который сравнивает две версии ресурса и генерирует данные, которые можно использовать для преобразования одной в другую.
Обычно патч необходимо применить к конкретной версии ресурса, который он предназначен изменить, хотя есть и исключения. Некоторые инструменты исправления могут определить версию существующего ресурса и применить соответствующее исправление, даже если он поддерживает несколько версий. По мере выпуска новых патчей их совокупный размер может значительно вырасти, иногда превышая размер самого ресурса. Чтобы справиться с этим, количество поддерживаемых версий может быть ограничено или вместо этого может быть предоставлена полная копия ресурса.
Исправление позволяет изменять скомпилированную ( машинную ) программу, когда исходный код недоступен. Это требует глубокого понимания внутренней работы скомпилированного кода, что сложно без доступа к исходному коду.
Исправления позволяют вносить изменения в программу без ее пересборки из исходного кода. Для небольших изменений может оказаться более экономичным распространять патч, чем распространять весь ресурс.
Хотя плохо разработанный патч часто предназначен для устранения проблем, он может создать новые проблемы (см. Регрессии программного обеспечения ). В некоторых случаях обновления могут сознательно нарушить функциональность или вывести из строя устройство, например, удалив компоненты, на которые у поставщика обновлений больше нет лицензии.
Управление исправлениями является частью управления жизненным циклом и представляет собой процесс использования стратегии и плана того, какие исправления следует применять к каким системам в определенное время.
Обычно исправление применяется посредством программного управления к памяти компьютера , чтобы оно оставалось постоянным. В некоторых случаях исправление применяется программистом с помощью такого инструмента, как отладчик, к памяти компьютера , и в этом случае изменение теряется при перезагрузке ресурса из хранилища.
Типы
[ редактировать ]
Бинарные патчи
[ редактировать ]Патчи для проприетарного программного обеспечения обычно распространяются в виде исполняемых файлов, а не исходного кода . При выполнении эти файлы загружают в память программу, которая управляет установкой кода исправления в целевую программу(ы) на диске.
Исправления для другого программного обеспечения обычно распространяются в виде файлов данных, содержащих код исправления. Они считываются утилитой исправлений , которая выполняет установку. программы Эта утилита изменяет исполняемый файл целевой программы — машинный код — обычно путем перезаписи его байтов байтами, представляющими новый код исправления. Если новый код помещается в пространство (количество байтов), занимаемое старым кодом, его можно разместить путем перезаписи непосредственно поверх старого кода. Это называется встроенным патчем. Если новый код больше старого, утилита исправления добавит загрузочные записи, содержащие новый код, в объектный файл исправляемой целевой программы. При запуске исправленной программы выполнение направляется на новый код с инструкциями ветвления (переходами или вызовами), исправленными в том месте старого кода, где требуется новый код. На ранних 8-битных микрокомпьютерах, например Radio Shack TRS-80 , операционная система включает в себя утилиту PATCH/CMD, которая принимает данные исправлений из текстового файла и применяет исправления к исполняемым двоичным файлам целевой программы.
Код исправления должен иметь место в памяти для выполнения во время выполнения. Встроенные исправления не представляют сложности, но когда требуется дополнительное пространство памяти, программисту приходится импровизировать. Естественно, если программист патчей — это тот, кто первым создал код, подлежащий исправлению, это проще. Опытные программисты заранее планируют эту необходимость, резервируя память для последующего расширения, которая остается неиспользованной при создании последней итерации. Другие программисты, не участвующие в исходной реализации и стремящиеся внести изменения позже, должны найти или освободить место для любых необходимых дополнительных байтов. Наиболее благоприятным обстоятельством для этого является ситуация, когда подпрограмма, подлежащая исправлению, представляет собой отдельный модуль. В этом случае программисту патчей нужно просто настроить указатели или индикаторы длины, которые сообщают другим компонентам системы о пространстве, занимаемом модулем; затем он может свободно заполнить это пространство памяти своим расширенным кодом исправления. Если подпрограмма, подлежащая исправлению, не существует в виде отдельного модуля памяти, программист должен найти способы сжать подпрограмму, чтобы освободить достаточно места для расширенного кода исправления. Типичные тактики включают сокращение кода путем поиска более эффективных последовательностей инструкций (или путем перепроектирования с использованием более эффективных алгоритмов), сжатие строк сообщений и других областей данных, перенос программных функций в запоминающее устройство (например, наложение дисков) или удаление программных функций, которые считаются менее важными. важнее, чем изменения, которые будут установлены вместе с патчем.
Небольшие исправления машинного кода в памяти можно применять вручную с помощью утилиты системной отладки, такой как CP/M отладчики DDT MS-DOS или отладчики DEBUG . Программисты, работающие на интерпретируемом BASIC, часто использовали команду POKE, чтобы изменить функциональность системной службы или самого интерпретатора.
Исправления исходного кода
[ редактировать ]Патчи также могут распространяться в виде модификаций исходного кода. В этом случае патчи обычно состоят из текстовых различий между двумя файлами исходного кода, называемых « diffs ». Эти типы исправлений обычно создаются в рамках проектов программного обеспечения с открытым исходным кодом . В этих случаях разработчики ожидают, что пользователи сами скомпилируют новые или измененные файлы.
Большие патчи
[ редактировать ]Поскольку слово «исправление» означает небольшое исправление, для крупных исправлений может использоваться другая номенклатура. Объемные исправления или исправления, которые существенно изменяют программу, могут распространяться как « пакеты обновлений » или «обновления программного обеспечения». Microsoft Windows NT и ее преемники (включая Windows 2000 , Windows XP , Windows Vista и Windows 7 ) используют терминологию «пакета обновления». [3] Исторически IBM использовала термины «FixPaks» и «Corrective Service Diskette» для обозначения этих обновлений. [4]
История
[ редактировать ]Этот раздел нуждается в дополнительных цитатах для проверки . ( Ноябрь 2020 г. ) |
Исторически сложилось так, что поставщики программного обеспечения распространяли патчи на бумажной ленте или на перфокартах , ожидая, что получатель вырежет указанную часть исходной ленты (или колоды) и вставит (отсюда и название) заменяющий сегмент. В более поздних версиях патчей использовалась магнитная лента. Затем, после изобретения съемных дисковых накопителей, исправления поступали от разработчика программного обеспечения на диске или, позднее, на компакт-диске по почте . Благодаря широкодоступному в Интернет доступу загрузка разработчика исправлений с веб-сайта конечным пользователям часто стала доступна или посредством автоматических обновлений программного обеспечения. Начиная с Mac OS 9 от Microsoft от Apple и Windows ME , операционные системы ПК получили возможность автоматически получать обновления программного обеспечения через Интернет.
Компьютерные программы часто могут координировать исправления для обновления целевой программы. Автоматизация упрощает задачу конечного пользователя – ему нужно только запустить программу обновления, после чего эта программа гарантирует, что обновление цели происходит полностью и правильно. Пакеты обновлений для Microsoft Windows NT и ее преемников, а также для многих коммерческих программных продуктов используют такие автоматизированные стратегии.
Некоторые программы могут обновляться через Интернет практически без вмешательства пользователя. Обслуживание серверного программного обеспечения и операционных систем часто происходит таким образом. В ситуациях, когда системные администраторы контролируют несколько компьютеров, такая автоматизация помогает поддерживать согласованность. Установка исправлений безопасности обычно происходит таким образом.
С появлением носителей большего размера и более высокой пропускной способности Интернета стало обычным явлением заменять целые файлы (или даже все файлы программы), а не изменять существующие файлы, особенно для небольших программ.
Приложение
[ редактировать ]Размер патчей может варьироваться от нескольких байт до сотен мегабайт ; таким образом, более существенные изменения подразумевают больший размер, хотя это также зависит от того, включает ли патч целые файлы или только измененные части файлов. В частности, патчи могут стать довольно большими, когда изменения добавляют или заменяют непрограммные данные, такие как графические и звуковые файлы. Такие ситуации обычно возникают при обновлении компьютерных игр . По сравнению с первоначальной установкой программного обеспечения, применение исправлений обычно не занимает много времени.
В случае операционных систем и серверного программного обеспечения исправления играют особенно важную роль в устранении дыр в безопасности. Некоторые критические исправления связаны с проблемами с драйверами. [5] Исправления могут требовать предварительного применения других исправлений или могут требовать предварительного или одновременного обновления нескольких независимых компонентов программного обеспечения. Чтобы облегчить обновления, операционные системы часто предоставляют средства автоматического или полуавтоматического обновления. Полностью автоматические обновления не смогли получить широкую популярность в корпоративных вычислительных средах, отчасти из-за вышеупомянутых сбоев, но также и потому, что администраторы опасаются, что компании-разработчики программного обеспечения могут получить неограниченный контроль над своими компьютерами. [ нужна ссылка ] Системы управления пакетами могут предлагать различные степени автоматизации исправлений.
Использование полностью автоматических обновлений стало гораздо более распространенным на потребительском рынке, во многом благодаря [ нужна ссылка ] к тому, что в Microsoft Windows добавлена их поддержка [ когда? ] , а пакет обновления 2 для Windows XP (доступный в 2004 году) включил их по умолчанию. Осторожные пользователи, особенно системные администраторы, склонны откладывать установку исправлений до тех пор, пока не проверят их стабильность. Microsoft (W)SUS поддерживает это. В случае крупных исправлений или значительных изменений дистрибьюторы часто ограничивают доступность исправлений квалифицированным разработчикам в качестве бета-тестирования .
Применение исправлений к прошивке сопряжено с особыми трудностями, поскольку зачастую требует предоставления совершенно новых образов прошивки, а не применения только отличий от предыдущей версии. Патч обычно состоит из образа прошивки в виде двоичных данных вместе со специальной программой, предоставляемой поставщиком, которая заменяет предыдущую версию новой версией; Обновление материнской платы BIOS является примером распространенного исправления прошивки. Любая непредвиденная ошибка или сбой во время обновления, например отключение питания, может привести к невозможности использования материнской платы. Производители материнских плат могут предусмотреть меры предосторожности для предотвращения серьезных повреждений; например, процедура обновления может создать и сохранить резервную копию прошивки на случай, если она определит, что основная копия повреждена (обычно с помощью контрольной суммы , такой как CRC ).
Видеоигры
[ редактировать ]Видеоигры получают исправления для устранения проблем совместимости после их первоначального выпуска, как и любое другое программное обеспечение, но их также можно применять для изменения правил или алгоритмов игры . Эти исправления могут быть вызваны обнаружением уязвимостей в многопользовательской игре, которые можно использовать для получения несправедливого преимущества над другими игроками. Часто можно добавить дополнительные функции и настройки игрового процесса. Подобные патчи распространены в шутерах от первого лица с возможностью многопользовательской игры , а в MMORPG , которые обычно очень сложны и содержат большое количество контента, почти всегда в значительной степени зависят от патчей, следующих за первоначальным выпуском, где патчи иногда добавляют новый контент и доступные возможности. игрокам. Поскольку баланс и справедливость для всех игроков MMORPG могут быть серьезно нарушены за короткий промежуток времени из-за эксплойта, серверы MMORPG иногда отключаются в короткие сроки, чтобы установить критический патч с исправлением.
Иногда компании выпускают игры, зная, что в них есть ошибки. Computer Gaming World из журнала Журнал Scorpia в 1994 году осудил «компании — их слишком много, чтобы их перечислять, — которые выпускают некачественные продукты, зная, что им можно обойтись патчами и обновлениями, и которые делают « платных тестеров» для своих клиентов». [6]
В разработке программного обеспечения
[ редактировать ]Исправления иногда становятся обязательными для устранения проблем с библиотеками или частями исходного кода часто используемых или обслуживаемых программ. Обычно это происходит в очень крупномасштабных проектах программного обеспечения, но редко при мелкомасштабной разработке.
В проектах с открытым исходным кодом авторы обычно получают исправления, или многие люди публикуют исправления, которые устраняют определенные проблемы или добавляют определенные функции, например поддержку местных языков за пределами локали проекта. В примере из ранней разработки ядра Linux (известного публикацией полного исходного кода) Линус Торвальдс , первоначальный автор, получил сотни тысяч патчей от многих программистов для применения к его исходной версии.
изначально HTTP-сервер Apache развивался как ряд патчей, которые Брайан Белендорф сопоставил для улучшения NCSA HTTPd , отсюда и название, подразумевающее, что это набор патчей ( «патч-сервер» ). В FAQ на официальном сайте проекта указано, что название «Апачи» было выбрано из уважения к индейскому племени апачей . Однако объяснение «неоднородного сервера» изначально было дано на веб-сайте проекта. [7]
Варианты
[ редактировать ]Исправление
[ редактировать ]Исправление или обновление Quick Fix Engineering (обновление QFE) — это единый накопительный пакет, включающий информацию (часто в виде одного или нескольких файлов), используемую для устранения проблемы в программном продукте (т. е. ошибки программного обеспечения). Обычно исправления создаются для решения конкретной ситуации клиента. Microsoft когда-то использовала этот термин, но остановилась в пользу новой терминологии: выпуск для общего распространения (GDR) и выпуск для ограниченного распространения (LDR). Blizzard Entertainment , однако, определяет исправление как «изменение, внесенное в игру, которое считается настолько критическим, что его нельзя отложить до регулярного обновления контента».
Точка выпуска
[ редактировать ]Точечный выпуск — это второстепенный выпуск программного проекта, особенно предназначенный для исправления ошибок или небольших исправлений, а не для добавления существенных функций . Часто в одном основном или второстепенном выпуске слишком много ошибок, которые невозможно исправить, что создает необходимость в точечном выпуске.
Временное исправление программы
[ редактировать ]Временное исправление программы или временное исправление продукта (PTF), в зависимости от даты, — это стандартная терминология IBM для обозначения одного исправления ошибки или группы исправлений, распространяемых в форме, готовой к установке для клиентов. ПТФ иногда называли «ЗАП». [8] Клиенты иногда иронически объясняют эту аббревиатуру как постоянное временное исправление или, что более вероятно, это исправление , потому что у них есть возможность сделать PTF постоянной частью операционной системы, если исправление устранит проблему.
Исправления безопасности
[ редактировать ]Исправление безопасности — это изменение, вносимое в актив для устранения слабости, описанной уязвимостью. Это корректирующее действие предотвратит успешную эксплуатацию и устранит или уменьшит способность угрозы использовать конкретную уязвимость в активе. Управление исправлениями является частью управления уязвимостями – циклической практики выявления, классификации, устранения и смягчения уязвимостей.
Исправления безопасности — это основной метод устранения уязвимостей безопасности в программном обеспечении. В настоящее время Microsoft выпускает свои исправления безопасности раз в месяц (« вторник исправлений »), а в других операционных системах и проектах программного обеспечения есть команды по безопасности, которые выпускают наиболее надежные исправления программного обеспечения как можно скорее после объявления об уязвимости. Обновления безопасности тесно связаны с ответственным раскрытием информации .
Эти исправления безопасности имеют решающее значение для обеспечения того, чтобы бизнес-процессы не были затронуты. В 2017 году компании столкнулись с программой-вымогателем WannaCry , которая шифрует файлы в определенных версиях Microsoft Windows и требует выкуп через BitCoin. В ответ на это Microsoft выпустила патч, останавливающий запуск программы-вымогателя.
Пакет обновлений
[ редактировать ]Пакет обновления, SP или пакет функций (FP) включает в себя набор обновлений, исправлений или улучшений программного обеспечения, поставляемых в виде одного устанавливаемого пакета. Компании часто выпускают пакет обновлений, когда количество отдельных исправлений для данной программы достигает определенного (произвольного) предела или когда выпуск программного обеспечения оказывается стабилизированным с ограниченным количеством оставшихся проблем на основе отзывов пользователей и отслеживания ошибок, таких как Багзилла . В крупных программных приложениях, таких как офисные пакеты, операционные системы, программное обеспечение баз данных или управление сетью, нередко пакет обновлений выпускается в течение первого или двух лет после выпуска продукта. Установка пакета обновления проще и менее подвержена ошибкам, чем установка множества отдельных исправлений, особенно при обновлении нескольких компьютеров по сети, где пакеты обновлений являются обычным явлением.
Неофициальные патчи
[ редактировать ]Неофициальный патч — это патч для программы, написанной третьей стороной вместо оригинального разработчика . Подобно обычному патчу, он устраняет ошибки или недостатки. Примером могут служить исправления безопасности, вносимые специалистами по безопасности, когда официальный патч, выпущенный самими производителями программного обеспечения, занимает слишком много времени. [9] [10] Другими примерами являются неофициальные патчи, созданные игровым сообществом для видеоигры , которая перестала поддерживаться. [11] [12]
Патчи с обезьянками
[ редактировать ]Исправление обезьян означает локальное расширение или изменение программы (затрагивающее только работающий экземпляр программы).
Горячее исправление
[ редактировать ]Горячее исправление , также известное как оперативное исправление или динамическое обновление программного обеспечения , представляет собой применение исправлений без выключения и перезапуска системы или соответствующей программы. Это решает проблемы, связанные с недоступностью услуги, предоставляемой системой или программой. [13] Метод можно использовать для обновления ядра Linux без остановки системы. [14] [15] Патч, который можно применить таким образом, называется горячим патчем или живым патчем . Это становится обычной практикой в сфере мобильных приложений. [16] Такие компании, как Rollout.io, используют метод swizzling для доставки горячих исправлений в экосистему iOS. [17] Еще один метод горячего исправления приложений iOS — JSPatch. [18]
Поставщики облачных услуг часто используют «горячие» исправления, чтобы избежать простоев у клиентов при обновлении базовой инфраструктуры. [19]
Слипстриминг
[ редактировать ]В вычислительной технике слипстриминг — это процесс интеграции исправлений (включая пакеты обновлений ) в установочные файлы исходного приложения, чтобы в результате можно было напрямую установить обновленное приложение. [20] [21]
Природа слипстриминга означает, что он предполагает первоначальные затраты времени и труда, но может сэкономить много времени (и, соответственно, денег) в долгосрочной перспективе. Это особенно важно для администраторов, которым поручено управлять большим количеством компьютеров, где типичной практикой установки операционной системы на каждый компьютер является использование исходного носителя, а затем обновление каждого компьютера после завершения установки. Это займет гораздо больше времени, чем начинать с более актуального (дополненного) исходного кода и необходимости загружать и устанавливать несколько обновлений, не включенных в дополнительный исходный код.
Однако не все исправления можно применять таким образом, и одним из недостатков является то, что, если обнаруживается, что определенное исправление является причиной последующих проблем, такое исправление нельзя удалить без использования исходного, не включенного в процесс источника установки.
Системы обновления программного обеспечения
[ редактировать ]Системы обновления программного обеспечения позволяют пользователям и разработчикам программного обеспечения управлять обновлениями. Сообщается, что во время киберпандемии Petya в 2017 году система обновлений финансового программного обеспечения MeDoc была скомпрометирована с целью распространения вредоносного ПО через его обновления. [22] [23] В блоге Tor эксперт по кибербезопасности Майк Перри утверждает, что детерминированные распределенные сборки, вероятно, являются единственным способом защиты от вредоносных программ, которые атакуют процессы разработки и сборки программного обеспечения и заражают миллионы машин в одном, официально подписанном, мгновенном обновлении. [24] Менеджеры обновлений также позволяют быстро и широко применять обновления безопасности. Менеджеры обновлений Linux, такие как Synaptic, позволяют пользователям обновлять все программное обеспечение, установленное на их компьютере. Такие приложения, как Synaptic, используют криптографические контрольные суммы для проверки исходных/локальных файлов перед их применением, чтобы гарантировать устойчивость к вредоносному ПО. [25] [26]
См. также
[ редактировать ]- Жизненный цикл выпуска программного обеспечения
- Обслуживание программного обеспечения
- Резервное копирование
- посуда
- Патч (Unix)
- Портирование
- База данных уязвимостей
- Дельта-кодирование
- СМП/Э
- Автоматическое исправление ошибок
- Shavlik Technologies
- Белая шляпа (компьютерная безопасность)
Ссылки
[ редактировать ]- ^ «Microsoft выпустила самый крупный за всю историю патч для программного обеспечения» . Рейтер. 14 октября 2009 г. Архивировано из оригинала 16 октября 2009 года . Проверено 14 октября 2009 г.
- ^ «Что такое исправление ошибок? – Определение из Techopedia» . techopedia.com . Архивировано из оригинала 3 июля 2018 г. Проверено 29 июля 2015 г.
- ^ «Центр пакетов обновлений и обновлений» . windows.microsoft.com . Архивировано из оригинала 1 июня 2015 г. Проверено 1 июня 2015 г.
- ^ «Словарь терминов» . www.tavi.co.uk. Архивировано из оригинала 1 декабря 2016 г. Проверено 23 ноября 2016 г.
- ^ Лю, Ашок (июнь 2012 г.). Учебное пособие по ремонту ноутбуков Computercare: 300 случаев устранения неполадок и ремонта классических ноутбуков . АвторДом (опубликовано в 2012 г.). п. 591. ИСБН 9781477205402 . Проверено 8 января 2015 г.
Удалите патчи драйвера High Definition Audio KB835221 и KB888111 [...]
- ^ Скорпион (апрель 1994 г.). «Так ты хочешь стать героем?» . Взгляд Скорпиона. Мир компьютерных игр . стр. 54–58.
- ^ «Проект HTTP-сервера Apache» . 15 июня 1997 года. Архивировано из оригинала 15 июня 1997 года.
{{cite web}}
: CS1 maint: bot: исходный статус URL неизвестен ( ссылка ) - ^ «SPZAP (он же Superzap): динамически обновлять программы или данные» . Центр знаний IBM . Архивировано из оригинала 24 мая 2020 г. Проверено 23 февраля 2020 г.
- ^ Барвайз, Майк (16 октября 2007 г.). «Неофициальный патч для проблемы с URI Windows» . Служба безопасности H. Архивировано из оригинала 29 апреля 2021 г. Проверено 29 января 2012 г.
- ^ «Еще один неофициальный патч для IE, призванный устранить критический недостаток» . Компьютерный еженедельник . 30 марта 2006 г. Архивировано из оригинала 2 мая 2021 г. Проверено 9 июля 2013 г.
Еще один неофициальный патч был выпущен для устранения критической ошибки в браузере Microsoft Internet Explorer.
- ^ Вэнь, Ховард (10 июня 2004 г.). «Сохранение мифов» . linuxdevcenter.com. Архивировано из оригинала 6 апреля 2013 г. Проверено 22 декабря 2012 г.
[...] поклонники трилогии Myth пошли дальше в этой идее: у них есть официальный доступ к исходному коду игр Myth. Эта группа добровольцев, состоящая из программистов, художников и других талантливых людей, организованная под названием MythDevelopers, посвящает свое время улучшению и поддержке дальнейшего развития серии игр Myth.
- ^ Белл, Джон (01 октября 2009 г.). «Открытие источника искусства» . Обзор управления технологическими инновациями. Архивировано из оригинала 30 марта 2014 г. Проверено 30 декабря 2012 г.
[...] что никаких дальнейших исправлений к названию не будет. Сообщество было предсказуемо расстроено. Вместо того, чтобы отказаться от игры, пользователи решили, что если Activision не собирается исправлять ошибки, то они это сделают. Они хотели спасти игру, заставив Activision открыть исходный код, чтобы ее можно было сохранить после того момента, когда Activision потеряла интерес. С некоторой помощью членов команды разработчиков, которые активно участвовали в фан-форумах, им в конечном итоге удалось убедить Activision выпустить исходный код Call to Power II в октябре 2003 года.
- ^ «Журнал Оракул» . Oracle.com. Архивировано из оригинала 14 мая 2008 г. Проверено 4 января 2013 г.
- ^ «Живое исправление ядра Linux» . Архивировано из оригинала 28 октября 2020 г. Проверено 25 октября 2020 г.
- ^ «Живое исправление ядра Linux: что это такое и кому оно нужно» . 6 марта 2020 года. Архивировано из оригинала 28 октября 2020 года . Проверено 25 октября 2020 г.
- ^ «Горячо или нет? Преимущества и риски удаленного горячего исправления iOS «Блог об исследовании угроз» . Огненный Глаз . Архивировано из оригинала 26 октября 2016 г. Проверено 26 октября 2016 г.
- ^ Перес, Сара (22 сентября 2015 г.). «Rollout.io возвращает разработчикам мобильных приложений контроль над своими приложениями» . ТехКранч . Архивировано из оригинала 27 ноября 2016 г. Проверено 26 октября 2016 г.
- ^ "bang590/JSPatch" . Гитхаб . Архивировано из оригинала 4 января 2017 г. Проверено 26 октября 2016 г.
- ^ «Горячее обновление ядра SQL Server в базе данных SQL Azure» . Техносообщество Microsoft . 11 сентября 2019 г. Архивировано из оригинала 13 сентября 2019 г. Проверено 15 сентября 2019 г.
- ^ Карп, Дэвид (14 июля 2008 г.). «Создание диска восстановления XP SP3» . Журнал ПК . Зифф Дэвис . Архивировано из оригинала 9 января 2018 года . Проверено 7 сентября 2017 г.
- ^ Терротт, Пол (7 мая 2008 г.). «Совмещение Windows XP с пакетом обновления 3 (SP3)» . Суперсайт для Windows . Пентон . Архивировано из оригинала 11 декабря 2016 года . Проверено 3 декабря 2016 г.
- ^ Томсон, Иэн. «Вирус (кхе-кхе, Петя) отправляется по почте в FedEx, акции остановлены» . Регистр . Архивировано из оригинала 1 июля 2017 года . Проверено 29 июня 2017 г.
- ^ «Новые векторы распределения Petya выходят на поверхность» . Угроза. 28 июня 2017 года. Архивировано из оригинала 28 июня 2017 года . Проверено 29 июня 2017 г.
- ^ «Детерминистические построения, часть первая: Кибервойна и глобальный компромисс | Блог Tor» . blog.torproject.org . Архивировано из оригинала 23 июня 2017 года . Проверено 11 июля 2017 г.
- ^ Проффитт, Брайан (2008). Представляем Ubuntu: настольный Linux . Cengage Обучение. ISBN 978-1598637656 . Проверено 11 июля 2017 г.
- ^ Журналы, SPH (2007). ХВМ . Журналы SPH . Проверено 11 июля 2017 г.
Внешние ссылки
[ редактировать ]- Запись в файле жаргона для патча
- Подробная магистерская диссертация, посвященная исправлениям безопасности.
- Официальный формат патча ядра Linux
- Обновление нулевого дня – раскрытие производительности (не)безопасности поставщиков . Архивировано 31 января 2014 г. в Wayback Machine . Показатель, сравнивающий производительность исправлений Microsoft и Apple.