Кроссплатформенная виртуализация
Межплатформенная виртуализация — это форма компьютерной виртуализации , которая позволяет программному обеспечению, скомпилированному для определенного набора команд и операционной системы , работать без изменений на компьютерах с разными процессорами и/или операционными системами посредством сочетания динамической двоичной трансляции и сопоставления вызовов операционной системы.
Поскольку программное обеспечение работает на виртуализированном эквиваленте исходного компьютера, оно не требует перекомпиляции или портирования , что экономит время и ресурсы разработки. Однако накладные расходы на обработку двоичной трансляции и сопоставления вызовов снижают производительность по сравнению с программным обеспечением, скомпилированным в собственном коде. По этой причине кросс-платформенная виртуализация может использоваться в качестве временного решения до тех пор, пока не появятся ресурсы для переноса программного обеспечения. Альтернативно, кросс-платформенная виртуализация может использоваться для поддержки устаревшего кода, который, работая на более новой и более быстрой машине, по-прежнему сохраняет адекватную производительность даже с учетом накладных расходов на виртуализацию.
Создавая уровень абстракции, способный запускать программное обеспечение, скомпилированное для другой компьютерной системы, кроссплатформенная виртуализация характеризует требования к виртуализации Попека и Голдберга, изложенные Джеральдом Дж. Попеком и Робертом П. Голдбергом в их статье 1974 года «Формальные требования к виртуализуемым архитектурам третьего поколения». ". [1] Межплатформенная виртуализация отличается от простой эмуляции и двоичной трансляции , которые включают прямую трансляцию одного набора команд в другой, поскольку включение сопоставления вызовов операционной системы обеспечивает более полную виртуализированную среду. Кроссплатформенная виртуализация также дополняет решения по виртуализации серверов и настольных компьютеров , поскольку они обычно ограничиваются одним набором инструкций, например x86 или Power ISA . Современные варианты кроссплатформенной виртуализации могут использовать методы аппаратного ускорения. [2] чтобы компенсировать часть затрат, связанных с переводом системы с гостевой системы на хост.
См. также
[ редактировать ]- Симулятор набора команд
- Виртуализация платформы
- Виртуальная машина
- Эмулятор
- Портирование
- Кросс-платформенный
Ссылки
[ редактировать ]- ^ Джеральд Дж. Попек и Роберт П. Голдберг (1974). «Формальные требования к виртуализируемым архитектурам третьего поколения» . Коммуникации АКМ . 17 (7): 412–421. дои : 10.1145/361011.361073 . S2CID 53302633 .
- ^ Спинк, Том; Вагстафф, Гарри; Франке, Бьёрн (28 декабря 2016 г.). «Аппаратно-ускоренная межархитектурная полносистемная виртуализация» . Транзакции ACM по оптимизации архитектуры и кода . 13 (4): 36. дои : 10.1145/2996798 . ISSN 1544-3566 .