Evgeny_CDАрхитектор (25.12.2012 22:08 - 22:27, просмотров: 8475)
Универсальная среда исполнения будущего. Навеяно -> http://caxapa.ru/377381.html
Есть байт код. _В среднем_ удобный для:
* интерпретатора
* JIT
* железного исполнения.
Код открыт, есть масса средств GPL и проприетарных под него.
VM под него, независимо от способа реализации, позволяет:
* гонять байт-код
* изначально все многопоточное и заточенное под RT - фоновый GC и проч.
* стандартным образом обрашаться к внешним сущностям через универсальное API IPC.
-- асинхронное неблокирующее
-- единые индейцы
-- clib - оно внутри, каждый юзает свое, внешние сущности - это OpenGL и проч.
Вся прикладуха - только в виде байткода.
API поделено на классы и уровни. Т.е. level 1 - API моргания светиком, level 2 - консоль, level 3 - GUI примитивный, level 4 - GUI Аэро и т.д. Чтобы все устройства имели совместимую снизу вверх среду исполнения.
Реализация VM у каждого своя. Трижды закрытая и закопирайченная.
Права доступа на API с современной криптографией. Все открытое и публично аудированное - как GPG, например.
С этого момента пути прикладухи и системщины окончательно расходятся. И открываются возможности для бурного прогресса в языках. Делаешь среду под свой язык с выходом байткода - и вуаля, весь мир - твой.
Все это сильно напоминает джабу, но переосмысленную. Весь вопрос в структуре базовых классов API...
Производители железа с упоением предаются гонке нанометров и ядер, не парясь о ПО. Производители ПО не парятся о железе - байт код пойдет на всем.
Юзера добровольно выбирают то, на что их развели, :), и имеют возможность сохранения своих данных независимо ни от чего.
Переход с устройства на устройство примитивен - засинхрил VM с облаком, на другом устройства рассинхрил - и вот даже не перезагруженные приложения уже идут на другом устройстве, которое тебе больше понравилось в переходе метро возле работы сегодня с утра.
Экспонента как производителей железа, так и ПО, ограничена только физическими возможностями юзеров, помножденная на количество оных на планете :)