WikiDer > Ребазинг
Эта статья может быть недостаточно сфокусированным или может касаться нескольких тем.Сентябрь 2016) ( |
В вычислениях перебазирование это процесс изменения данных на основе одной ссылки на другую. Это может быть одно из следующих значений:
Ребазинг - это процесс создания общая библиотека изображение таким образом, чтобы гарантированно использовать виртуальная память не вступая в противоречие с другими общие библиотеки загружается в систему.
IBM VM / 370 прерывистые сохраненные сегменты (DCSS) были ранним примером этой техники, хотя и не назывались перебазирование. Техника широко используется на Win32 платформы, чтобы избежать накладных расходов, связанных с перемещением адресов системы DLL загрузчиком.
Некоторые расширения безопасности для Linux/x86 используйте перебазирование для принудительного использования кодовых адресов ниже 0x00ffffff
чтобы ввести 0x00
байт во все указатели кода; это устраняет определенный класс переполнение буфера проблемы безопасности, связанные с неправильной проверкой строки с завершающим нулем, распространенные в C язык программирования.
Другое использование
- Ребазинг - это акт перемещения наборы изменений к другому ответвляться при использовании контроль версий system, или, в некоторых системах, синхронизируя ветвь с исходной ветвью, объединяя все новые изменения в последней с первой. Например, Git и Darcs сделайте это (но Darcs расширяет эту концепцию и называет это «коммутацией патчей»).
- Механизм, который Microsoft Exchange или же Outlook летнее время (DST) инструмент изменения настроек TZMOVE.EXE используется для пересчета и переноса дат встреч, на которые влияет DST.
Смотрите также
- Переезд (вычисление)
- Независимый от позиции код
- Переносимый исполняемый файл (PE)
- Область высокой памяти (HMA)
- Динамическое устранение мертвого кода
дальнейшее чтение
- Левин, Джон Р. (2000) [октябрь 1999]. Линкеры и загрузчики. Серия Морган Кауфманн в программной инженерии и программировании (1-е изд.). Сан-Франциско, США: Морган Кауфманн. п. 218. ISBN 1-55860-496-0. OCLC 42413382. В архиве из оригинала от 05.12.2012. Получено 2020-01-12. Код: [1][2] Опечатки: [3]
- Чен, Раймонд (2004-12-17). "Как Windows 95 перебазировала библиотеки DLL?". Старая новая вещь.
- Риемерсма, Тиадмер (2000-12-01). "Перебазирование библиотек DLL Win32". Журнал доктора Добба.
- Марк Бейкер (2004-03-25). «Оптимизация загрузки DLL». Журнал доктора Добба.
- Кальдато, Клаудио (февраль 2006 г.). «Улучшение времени запуска приложений». Журнал MSDN. Корпорация Майкрософт.
- Бисвас, Сурупа (май 2006 г.). «Преимущества производительности NGen». Журнал MSDN. Корпорация Майкрософт.
- Пьетрек, Мэтт (Март 2002 г.). «Углубленный анализ формата переносимых исполняемых файлов Win32, часть 2». Журнал MSDN. Корпорация Майкрософт.
- Аше, Рюдигер Р. (18 сентября 1995 г.). "Пересадка Win32 DLL: вся история". Архивировано из оригинал на 2011-07-07.
- Роббинс, Джон (2000). Отладка приложений: Microsoft. Серия программ Microsoft. Microsoft Press. С. 34–36. ISBN 978-0-7356-0886-3.
- Томас, Реджи; Редди, Бхаскер (14 августа 2006 г.). «Динамическое связывание в Linux и Windows, часть вторая». Symantec Corp..