Все изложенное ниже не имеет отношения к реальности и является фантастикой :0)
Интересная система - Solaris 10. Изменения появившиеся в ней в 10 версии по сравнению с предыдущими, навели на мысль меня, человека в руках солярис не державшего, на мысль дурную, а может и интересную. Поскольку я биолог, а не программист, и использую линь только для биоинформатики, то сам я сделать ничего не могу, кроме как поделиться идеей. Чтобы понять ее суть, для начала прочитайте wiki Solaris 10
Прочитали? Или пропустите, если хорошо с ней знакомы. Так вот....
Представим себе главный контейнер юниксподобной системы как окружающую среду. Тогда пользователь, а именно - его субъективная оценка, будет фактором искусственного отбора, а среда главного контейнера - естественным. В главном контейнере пусть существует n-вложенных, причем имеется:
1) Набор виртуальных машин (матричный).
2) Набор виртуальных ОС (внутренних контейнеров) (матричный)
3) Набор процессов (приложений и утилит) для каждого контейнера (матричный).
(элементы пункта 1-3 могут занимать в сумме терабайты и должны храниться на сервере в репозиториях двух типов: матричный и юзер. В матричном репозитории исходные, а в юзер - может добавлять каждый в зависимости от рейтингов его системы)
4) Объединяясь, эти наборы будут создавать Live единицу, все ее параметры (от софта до железа) записаны в файле.... назовем его - Live file (типа хромосома :-) ). Причем (!) Live file Хранится в нескольких копиях, последняя копия - рабочая.
5) Live unit способна:
- Существовать, обслуживать юзера, как обычная ОС с приложениями.
- Создавать свои копии по желанию юзера.
- Каждая Live unit имеет свой рейтинг 1-1000, чем выше тем лучше. Рейтинг отчасти формируется путем опроса ее юзера, так и путем реакции на Live unit главного контейнера (окружающей среды).
- Live unit способна "размножаться" двумя способами: а) Простое точное копирование Live file. б) Live file обмен (это когда обмениваются частями два Live file из двух систем, как хромосомы при половом процессе. Особенности обмена: меняются только равные по логическим категориям части файла, а именно - железо на железо, софт на софт. Обмен может происходить как путем добавления так и путем обмена и исключения) Причем Live unit для обмена выбирает другой Live unit с более высоким или равным себе рейтингом (согласитесь, почти как женщины в нашем бренном мире :-))
)
6) "Размножение" запускается только юзером
7) Внешний контейнер (среда) может уничтожать live unit с минимальным рейтингом, освобождая ресурсы (типа вымирание)
8) В случае если ваш live unit потерял рейтинг в результате обмена и ему грозит уничтожение вы можете "переехать" на конфигурацию заданную более старым Live file.
а) Общий вид live unit при запуске "мира" выбирает пользователь путем введения абстрактных команд, типа "хочу десктоп и чтобы мультимедиа было получше..."
На что наш LiveLinux реагирует семантическим анализом фразы юзера, запускает варианты нескольких виртуальных машин, с выполняемыми в них внутренними контейнерами. Итак... жизнь зародилась (:-0)
б) Юзер начинает пользоваться.... и возможны два варианта:
б-1 Он не удовлетворен работой контейнера i на виртуальной машине z - рейтинг этого live unit понижается в результате анализа опроса юзера Live-linux-ом
б-2 Юзер доволен работой своего live unit , среда опрашивает юзера, рейтинг возрастает.
( Не забываем, что среда выставляет сама баллы по техническим параметрам, а именно - насколько юнит бесконфликтен, не опасен, функционален, стабилен, насколько много "ест" рессурсов... и т.д. - эти баллы рейтинга отсчитываются вместе с юзерскими в общий рейтинг)
в) Юзер хочет улучшить систему: начинается файлообмен частями live file, причем он возможен с live unit, существующими в главном контейнере на этой или на других машинах или кластерах. Может идти обмен с матричными или юзерскими live unit. Матричные стабильны, но консервативны. юзерские - наоборот. (кстати, в этом смысл двойного отбора - юзер выбирает более новое, система главного контейнера следит за жизнеспособностью нового, и уничтожает слишком нестабильное) Перед каждым обменом происходит копирование live file, если среда главного контейнера "убъет" важего "питомца" после обмена, вы просто откатитесь на прежний вариант. В результате файлообмена возникает новый live unit, создаваемый на базе гибридного live file, полученного в результате файлообмена.
г) В случае улучшения рейтинга юзер может добавить свой live file в репозиторий "юзер", если он написал новый компонент - его можно добавить тоже. Теперь он будет доступен для файлообмена. В противном случае, если рейтинг падает (низкая стабильность) желателен файлообмен с матричным live unit, если падает функциональность - с юзерским с высшим рейтингом. В матричный репозиторий добавляют файлы только разработчики.
д) Система LiveLinux скорее всего будет по аналогии с Amazon - облачной и кластерной...
Цель этой всей мешанины - создание стабильных и функциональных под конкретные наборы задач live unit-s на базе данных репозиториев виртуального железа, ОС и ПО, в условиях такого-то внешнего контейнера (среды виртуализации).
Вот такие пироги. Не забываем, что это фантастика, кто хочет пофантазировать на эту тему - присоединяйтесь. Если кому не нравиться - я читать не заставлял, критики в стиле -" это тупо" не надо, проходите молча. если что конструктивное и интересное в плане критики, или сами еще чего придумали - пишите, обсудим. :-)))
LiveLinux (Обсуждение в стиле IT-фантастики)
Модератор: Модераторы разделов