ZeroVM - ZeroVM

ZeroVM
Оригинальный автор (ы)Камуил Гилядов, Константин Пересыпкин и Дмитрий Борток
Разработчики)LiteStack, который был приобретен Rackspace
Предварительный выпуск
0.9.4 / 26 ноября 2013 г.; 6 лет назад (2013-11-26)
Репозиторий Отредактируйте это в Викиданных
Написано вC, сборка
Операционная системаLinux
Платформаx86-64
ТипВиртуализация приложений
ЛицензияЛицензия Apache 2.0
Интернет сайтзеровм.org

ZeroVM является Открытый исходный код легкий виртуализация и песочница технологии. Он виртуализирует отдельный процесс с помощью Собственный клиент Google Платформа. Поскольку виртуализируется только один процесс (вместо полной операционной системы), накладные расходы на запуск составляют порядка 5 мс.[1][требуется сторонний источник ]

Песочница

ZeroVM создает песочницу вокруг одного процесса,[2]используя технологию, основанную на Собственный клиент Google (NaCl). Песочница гарантирует, что выполняемое приложение не может получить доступ к данным в операционной системе хоста, поэтому можно безопасно выполнять ненадежный код. Программы, выполняемые в ZeroVM, сначала должны быть скомпилированы на платформе NaCl. ZeroVM может выполнять только код NaCl, скомпилированный для x86-64 платформа, а не портативный собственный клиент (PNaCl) формат.

Код, выполняемый в ZeroVM, не может вызывать нормальный системные вызовы и изначально не может взаимодействовать с хост-средой. Всякое общение с внешним миром происходит через каналы, который должен быть объявлен до запуска программы. Вне песочницы канал может быть подключен к локальному файлу, каналу или другому экземпляру ZeroVM.[3]Внутри песочницы программа видит канал как дескриптор файла. Изолированная программа может читать / записывать данные из / в канал, но не знает, где канал подключен на хосте.

Программы, скомпилированные для ZeroVM, могут дополнительно использовать библиотеку времени выполнения ZeroVM под названием ZRT. Эта библиотека призвана предоставить программе POSIX Окружающая среда.[4]Это достигается путем замены частей Стандартная библиотека C. В частности, ZRT заменяет Ввод / вывод файла C такие функции как fopen и опендир с версиями, которые работают с файловой системой в памяти. Корневая файловая система предоставляется в виде архива. Это позволяет программе «видеть» обычную среду Unix.

ZRT также заменяет C функции даты и времени такие как время дать программам фиксированный и детерминированный Окружающая среда. С фиксированными входами каждое выполнение гарантированно дает одинаковый результат. Даже нефункциональный программы становятся детерминированными в этой ограниченной среде.[5]Это упрощает отладку программ, поскольку их поведение исправлено.

Интеграция со Swift

ZeroVM интегрирован с Swift, компонент хранилища распределенных объектов OpenStack.[6]Когда промежуточное ПО ZeroCloud установлено в Swift, клиент может сделать запрос к Swift, содержащий программу ZeroVM. Затем программа выполняется непосредственно на узлах хранения. Это означает, что программа имеет прямой доступ к данным.

История

ZeroVM был разработан израильским стартапом LiteStack. Первая фиксация в зеровм Git Репозиторий добавлен в ноябре 2011 года.[7]LiteStack был куплен Rackspace в октябре 2013 г.[1][8][9]ZeroVM участвовал в Techstars Программа инкубатора Cloud 2013 и получила 500 000 долларов в качестве начального финансирования.[10][11]Первый саммит ZeroVM Design Summit прошел в январе 2014 г. Техасский университет в Сан-Антонио.[12]

Смотрите также

использованная литература

  1. ^ а б Линдберг, Ван. «ZeroVM: меньше, легче, быстрее». Блог Rackspace. Получено 14 апреля 2014.
  2. ^ Егулалп, Сердар (23 октября 2013 г.). «ZeroVM виртуализирует приложения, а не машины». InfoWorld. Получено 14 апреля 2014.
  3. ^ "Каналы ZeroVM". Получено 14 апреля 2014.
  4. ^ "ZRT Readme". Получено 14 апреля 2014.
  5. ^ «Архитектура ZeroVM». Получено 14 апреля 2014.
  6. ^ «ZeroCloud». Получено 14 апреля 2014.
  7. ^ Гилядов, Камуэль. «Первая фиксация». GitHub. Получено 18 апреля 2014.
  8. ^ Шама, Давид (24 октября 2013 г.). «Rackspace использует гипервизор ZeroVM, созданный специально для облака». ZDNet. Получено 14 апреля 2014.
  9. ^ Кларк, Джек (25 октября 2013 г.). «Rackspace едет в Израиль, берет новое блестящее оружие для облачных войн». Реестр. Получено 14 апреля 2014.
  10. ^ Идан, Хенн (3 ноября 2013 г.). "Израильский ZeroVM приобретен RackSpace". Geektime. Получено 14 апреля 2014.
  11. ^ Лорек, Лаура (19 апреля 2013 г.). «ZeroVM создает программное обеспечение для облачных вычислений». Новости Silicon Hills. Получено 14 апреля 2014.
  12. ^ Rackspace. "Саммит дизайна ZeroVM". YouTube. Получено 18 апреля 2014.

внешние ссылки