Vx32 - Vx32
Эта статья не цитировать любой источники.Сентябрь 2009 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
Разработчики) | Брайан Форд, Расс Кокс |
---|---|
Стабильный выпуск | 0.12 |
Операционная система | FreeBSD, Linux, Mac OS X |
Тип | Виртуальная машина уровня приложения |
Интернет сайт | http://pdos.csail.mit.edu/~baford/vm/ |
В Vx32 виртуальная среда расширения - это виртуальная машина уровня приложения реализована как обычная библиотека пользовательского режима и предназначена для запуска собственных x86 код. Приложения могут связываться с Vx32 и использовать его для создания безопасных, Операционные системы -независимые среды выполнения, в которых можно запускать ненадежные плагины или другие расширения, написанные на любом языке, который компилируется в код x86.
С точки зрения хост-процессора плагины, работающие под Vx32 монитор виртуальной машины запускается в контексте самого процесса приложения, но библиотека Vx32 использует динамическая перекомпиляция для предотвращения доступа кода «гостевого» плагина к памяти или перехода к инструкциям за пределами назначенной им песочницы. Библиотека Vx32 перенаправляет любые системные вызовы подключаемый модуль влияет на само приложение, а не на операционную систему хоста, тем самым предоставляя приложению исключительный контроль над API и среда безопасности, в которой выполняется код подключаемого модуля.
Таким образом, Vx32 предоставляет возможность расширения приложений, сравнимую по функциям с Виртуальная машина Java (JVM) или общеязыковая среда выполнения (CLR), но с меньшими накладными расходами и с возможностью запуска кода, написанного на любой язык, безопасный или небезопасно. Основным недостатком Vx32 является то, что его труднее заставить работать на хост-процессорах, отличных от x86.
Критика
Есть некоторые недостатки, которые были предложены критиками Vx32:
- Vx32 тесно привязан к Набор инструкций IA-32, что затрудняет использование на архитектурах, отличных от x86.
- Режим IA-32e (AMD64) не может использоваться гостями (хост все еще может работать в 64-битном режиме) из-за использования сегментации, которая присуща дизайну Vx32.
внешняя ссылка
- Виртуальная среда расширения Vx32
- Vx32: легкая песочница на уровне пользователя на x86 - Доклад представлен на USENIX 2008
- 9vx - Порт План 9 от Bell Labs в vx32.
- vx32 для Win32