МагЛев (программное обеспечение)
В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
Разработчик(и) | Системы GemTalk |
---|---|
Первоначальный выпуск | 2008 год |
Стабильная версия | 1.2.0 Альфа 4
/ 17 мая 2013 г. |
Репозиторий | |
Написано в | Смоллток , Руби |
Операционная система | Кроссплатформенность : Solaris , AIX , Linux , Mac OS X. |
Платформа | Драгоценный камень/S |
Тип | Интерпретатор языка программирования Ruby |
Лицензия | MIT , GPL и другие [1] |
Веб-сайт | маглев |
MagLev — альтернативная реализация языка программирования Ruby , построенная на виртуальной машине GemStone/S от GemTalk Systems . Большая часть Maglev должна была быть написана на Ruby, насколько это возможно, что привело к некоторому сотрудничеству с проектом Rubinius. Начиная с первой бета-версии, проект изначально работает под управлением RubyGems 1.3.5 с поддержкой расширений C и Smalltalk . MagLev имеет особую архитектуру виртуальной машины, которая позволяет ему обмениваться кодом и данными между средами выполнения и циклами выполнения через Ruby API. [2]
Архитектура
[ редактировать ]Maglev работает внутри образа, такого как Smalltalk , обеспечивая сохранение прозрачного объекта. [3] [ не удалось пройти проверку ] [4] объектам и классам Ruby. Сохранение объектов основано на транзакциях ACID , которые позволяют нескольким запущенным экземплярам видеть общий граф объектов. на основе процессов Maglev использует модель параллелизма , сопоставляя потоки Ruby с процессами Smalltalk. [5] [ самостоятельный источник? ] , которые запланированы на виртуальной машине как зеленые потоки . Использование MagLev должно привести к увеличению производительности при использовании Ruby, а также позволить процессам Ruby на нескольких машинах использовать одни и те же объекты одновременно. [6]
Установка
[ редактировать ]MagLev устанавливается вместе с RVM с использованием следующих фрагментов кода, скопированных непосредственно с github maglev. [7]
rvm install maglev rvm use maglev
Статус можно проверить с помощью
$ maglev status
Совместимость с Рубином
[ редактировать ]Maglev нацелен на Ruby 1.8.7 и использует значительное количество RubySpec . Он поддерживает несколько расширений C, включая Nokogiri , JSON и bcrypt .
Ресурсы Gemstone/S
[ редактировать ]- Документация GemStoneS 64 бит 3.1.x , 3 июля 2012 г. , получено 29 июля 2012 г.
Ссылки
[ редактировать ]- ^ «Лицензионные соглашения» . raw.githubusercontent.com . Проверено 21 февраля 2023 г.
- ^ «Распределяемый Ruby с виртуальной машиной MagLev — igvita.com» . www.igvita.com . Проверено 21 февраля 2023 г.
- ^ «Руководство по программированию для GemStone/S 64-битной версии 1» (PDF) , VMware , июль 2012 г. , получено 29 июля 2012 г.
- ^ «MagLev – сохранение объектов с помощью Ruby и Smalltalk» (PDF) , бакалаврская диссертация, Институт Хассо Платтнера , 1 июля 2013 г. , получено 22 февраля 2014 г.
- ^ Феникс, Эван (14 октября 2011 г.), «Ruby, Concurrency и вы» , Engine Yard блог , получено 29 июля 2012 г.
- ^ «Выпущен MagLev Alpha: новая масштабируемая реализация Ruby» . www.rubyinside.com . Проверено 21 февраля 2023 г.
- ^ «Начните с MagLev» .
Внешние ссылки
[ редактировать ]- Фернандес, Оби (30 мая 2008 г.), MagLev is Gemstone/S для Ruby, Huge News , получено 29 июля 2012 г.
- Тафт, Дэррил К. (6 июня 2008 г.), «MagLev Rocks the Ruby House» , eWeek , получено 29 июля 2012 г.
- Григорик, Илья (15 января 2010 г.), Ruby, распространяемый с помощью MagLev VM , получено 29 июля 2012 г.
- Шустер, Вернер (15 ноября 2011 г.), «NoSQL OODB с виртуальной машиной Ruby на базе Smalltalk: выпущен MagLev 1.0» , InfoQ , получено 29 июля 2012 г.