В вычислениях перебазирование - это процесс изменения данных на основе одной ссылки на другую. Это может быть одно из следующих значений:
Ребазинг - это процесс создания образа разделяемой библиотеки таким образом, чтобы гарантированно использовать виртуальную память без конфликта с любыми другими разделяемыми библиотеками, загружаемыми в систему.
Прерывистые сохраненные сегменты (DCSS) IBM VM / 370 были ранним примером этой техники, хотя и не назывались перебазированием . Этот метод широко используется на платформах Win32, чтобы избежать накладных расходов, связанных с перемещением адресов системных библиотек DLL загрузчиком.
Некоторые расширения безопасности для Linux / x86 используют перебазирование, чтобы принудительно использовать указанные ниже адреса кода 0x00ffffff
, чтобы ввести 0x00
байт во все указатели кода; Это исключает определенный класс переполнения буфера проблем безопасности , связанные с неправильной проверкой завершающего нулем строки , общей в C языке программирования .
Другое использование
- Повторное базирование - это процесс перемещения наборов изменений в другую ветку при использовании системы контроля версий или, в некоторых системах, путем синхронизации ветки с исходной ветвью путем слияния всех новых изменений в последней с первой. Например, это делают Git и Darcs (но Darcs расширяет эту концепцию и называет это «коммутацией патчей»).
- Механизм, который TZMOVE.EXE использует средство переноса летнего времени (DST) Microsoft Exchange или Outlook для пересчета и переноса дат встреч, на которые влияет DST.
Смотрите также
дальнейшее чтение
- Левин, Джон Р. (2000) [октябрь 1999]. Линкеры и загрузчики . Серия Морган Кауфманн в программной инженерии и программировании (1-е изд.). Сан-Франциско, США: Морган Кауфманн . п. 218. ISBN 1-55860-496-0. OCLC 42413382 . Архивировано 05 декабря 2012 года . Проверено 12 января 2020 .Код: [1] [2] Ошибки: [3]
- Чен, Раймонд (2004-12-17). "Как Windows 95 перебазировала библиотеки DLL?" . Старая новая вещь .
- Риемерсма, Тиадмер (2000-12-01). "Перебазирование Win32 DLL" . Журнал доктора Добба .
- Марк Бейкер (2004-03-25). «Оптимизация загрузки DLL» . Журнал доктора Добба .
- Кальдато, Клаудио (февраль 2006 г.). «Улучшение времени запуска приложений» . Журнал MSDN . Корпорация Microsoft .
- Бисвас, Сурупа (май 2006 г.). «Преимущества производительности NGen» . Журнал MSDN . Корпорация Microsoft .
- Пьетрек, Мэтт (март 2002 г.). «Углубленный анализ формата переносимых исполняемых файлов Win32, часть 2» . Журнал MSDN . Корпорация Microsoft .
- Аше, Рюдигер Р. (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 .