Автор Тема: Про модульность  (Прочитано 14017 раз)

Оффлайн Koi

  • alt linux team
  • ***
  • Сообщений: 1 893
  • валар дохаэрис
    • Канал на youtube
Re: Про модульность
« Ответ #180 : 03.12.2015 01:02:21 »
Лично я включился в беседу, что бы ответить на тезисы которые приводились  против модульного подхода.
Так тут нет никого против. Уже давно сказали хочется, делайте. Можно взять что-то из тестовых регулярок типа lxqt, она маленькая и ее переделать и показать, что получится.
Вообще, концепция модульности мне нравилась, в то смысле, что загружается и работает только нужное. ТОлько когда познакомился с таким построением системы, понял: пока не потяну (все модули приходилось собирать самому, а и скать тогда нужные либы было еще то себе занятие). Это было году в 2008 или около того. Возможно, в будущем пригляжусь подробнее.
Ведь с одной стороны, хочется попробовать, но  другой - надо работать и временами становится даже не до компутера.
Линукс же и так модульный и он не подгружает что попало или все в подряд, а только то что нужно, ну и самому можно подгрузить что-то интересное.
Разница только что в Магос модули запаковываются в макромодули, что тот же архив и ОС при обращении к ним распаковывает нужные пути и работает с ними. Такой дистрибутив занимает меньше места на диске.
ИМХО

Оффлайн neobht

  • Участник
  • *
  • Сообщений: 390
Re: Про модульность
« Ответ #181 : 03.12.2015 03:45:03 »
Модули - организация структуры, другими словами - это то что хранится в пакете с примененной процедурой установки или наоборот удаления.
Ну, в в любом пакете есть процедура его установки и удаления.

Я об этом и говорю.
Различие в том, что в пакете процедура выполняется в процессе установки, а в модуле она уже применена и "гальванически", посредством слоев aufs/overlayfs, отвязана от других модулей.


Инфлэйм

  • Гость
Re: Про модульность
« Ответ #182 : 03.12.2015 11:40:39 »
Такой дистрибутив занимает меньше места на диске.
В моем случае это не давно не критично. Когда винт от 500 гиг, не заморачиваешься относительно выделения лишнего места под корень.

Оффлайн Юра Римский

  • Участник
  • *
  • Сообщений: 138
Re: Про модульность
« Ответ #183 : 03.12.2015 11:51:51 »
Я всё равно не понимаю достоинства модульной архитектуры. Какую проблему она решает? Почему решили, что вот так будет лучше? Сложность управления пакетами?

За новым термином я вижу старую добрую винду.

Там есть общая библиотека dll-ок в system32, но можно для каждого приложения положить необходимые библиотеки в папку с исполняемым файлом и тогда цепляться будут именно они, а не системные.

Запросто можно сделать любое(!) приложение полностью независимым от системы: всё своё ношу с собой, разве что реестр будет общим, но даже это решается пунктом меню "Запуск от имени".

У неё будет свой собственный реестр, даже если она его испортит на остальные программы это не повлияет. Было бы желание такое сделать :) Это отличается чем-нибудь от модульной архитектуры, которую предлагаете вы?

Оффлайн betcher

  • Участник
  • *
  • Сообщений: 10
Re: Про модульность
« Ответ #184 : 03.12.2015 12:10:13 »
Я всё равно не понимаю достоинства модульной архитектуры
Ну давайте попробую обрисовать.
1. Неубиваемость. Системные изменения хранятся отдельно от системы по этому у модульных систем очень высокая живучесть. Вы можете сломать базу рпм, и даже удалить к примеру весь /bin после перезагрузки все будет работать.
2. Хранилищ с системными изменениями может быть несколько.  Один профиль содержит софт для работы, второй для дома. Они не пересекаются и сломать дома рабочий профиль нельзя, опять же даже удалив /bin. Каталоги с изменениями могут подключаться инкрементно, тогда получаем систему отката до предыдущего состояния.
3. Сохранять можно только те каталоги, которые вам нужны. Например только хомяк.
4. Модульная система не обязательно состоит из модулей. Подключать в качестве слоев можно iso, img, обычные каталоги, сетевые папки (httpfs,cifs,ftp и так далее) То есть система может состоять одновременно из модулей исошников и сетевых папок. Все это объединяется в общую корневую систему и Ваш линукс даже не знает, что унего такая сложная корневая фс.  (это не у всех модульных систем реализовано, но у нас в uird есть :) https://github.com/neobht/uird/ )
5. Простота установки, скопировал папочки, установил загрузчик скриптиком и в путь.
6. Да много всего. Почитайте напрмер это, как раз альт+магос: http://habrahabr.ru/post/270337/
« Последнее редактирование: 03.12.2015 12:17:15 от betcher »

Инфлэйм

  • Гость
Re: Про модульность
« Ответ #185 : 03.12.2015 12:25:38 »
to betcher
Спасибо за пост, на мой взгляд - он самый вменяемый в этой теме, расписанной на 13 страницах. В любом случае, буду держать в уме возможности модульности, хотя сейчас не вижу в этом для себя смысла на домашнем дестопе, который, кроме всего прочего используется и для работы. Выше я уже писал, что порой уже нет никакого времени и возможности для перехода на такую систему. Нужно работать.
« Последнее редактирование: 03.12.2015 12:27:51 от Инфлэйм »

Оффлайн betcher

  • Участник
  • *
  • Сообщений: 10
Re: Про модульность
« Ответ #186 : 03.12.2015 12:28:57 »
С "модульной" точки зрения "обычный линукс дистр" это система с одним rw слоем :)
А слоев то может быть много, это как с измерениями  в физике. То есть у вас 1D линукс, а МагОС - 3D.
Шучу конечно :)

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: Про модульность
« Ответ #187 : 03.12.2015 14:04:23 »
Я так понял - концепция модульности используется в LiveFlash? Тоже слои, только два.

Оффлайн neobht

  • Участник
  • *
  • Сообщений: 390
Re: Про модульность
« Ответ #188 : 03.12.2015 14:25:13 »
Я так понял - концепция модульности используется в LiveFlash? Тоже слои, только два.

Да. И в livecd.

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 6 046
Re: Про модульность
« Ответ #189 : 03.12.2015 14:27:22 »
Подключать в качестве слоев можно iso, img, обычные каталоги, сетевые папки (httpfs,cifs,ftp и так далее) То есть система может состоять одновременно из модулей исошников и сетевых папок.
А разве в обычном линуксе так нельзя?

Я монтирую в один каталог А другой каталог Б (исошку, сетевую "папку") и у меня после перегрузки снова родной каталог А :)

dango

  • Гость
Re: Про модульность
« Ответ #190 : 03.12.2015 15:17:17 »
Да это же базис для "песочниц".

Оффлайн neobht

  • Участник
  • *
  • Сообщений: 390
Re: Про модульность
« Ответ #191 : 03.12.2015 15:28:30 »
Подключать в качестве слоев можно iso, img, обычные каталоги, сетевые папки (httpfs,cifs,ftp и так далее) То есть система может состоять одновременно из модулей исошников и сетевых папок.
А разве в обычном линуксе так нельзя?

Я монтирую в один каталог А другой каталог Б (исошку, сетевую "папку") и у меня после перегрузки снова родной каталог А :)

Конечно можно. Ведь все это делается в Linux :)
Разница лишь в том, что режим сборки корня через монтирование - основной в модульных дистрах. Это и делает такие дистры очень гибкими.

Оффлайн betcher

  • Участник
  • *
  • Сообщений: 10
Re: Про модульность
« Ответ #192 : 03.12.2015 15:36:54 »
    Я монтирую в один каталог А другой каталог Б (исошку, сетевую "папку") и у меня после перегрузки снова родной каталог А :)


Конечно можно. Ведь все это делается в Linux :)
Разница лишь в том, что режим сборки корня через монтирование - основной в модульных дистрах. Это и делает такие дистры очень гибкими.

Все же не совсем так. Куда вы к примеру смонтируете полностью настроенное дерево какого нибудь файрфокса? Часть файлов должна попасть в /usr/bin, часть в /usr/lib, часть  /usr/share/applications и  так далее. Без aufs/unionfs никак.

Оффлайн Юра Римский

  • Участник
  • *
  • Сообщений: 138
Re: Про модульность
« Ответ #193 : 03.12.2015 16:10:08 »
Ну давайте попробую обрисовать.
Теперь стало понятнее. Спасибо.

Цитировать
1. Неубиваемость. Системные изменения хранятся отдельно от системы по этому у модульных систем очень высокая живучесть. Вы можете сломать базу рпм, и даже удалить к примеру весь /bin после перезагрузки все будет работать.
Для этого не нужна какая-то особая модульная архитектура. Сама операционка вполне может это обеспечить. Тут основная проблема в том, что трудно определить, какие изменения в системе сохранять, а какие нет. Сломанную базу рпм сохранять не нужно, а обновлённую из репозиториев? Как решается этот вопрос? Если я захочу удалить что-нибудь из /bin специально?

Оффлайн betcher

  • Участник
  • *
  • Сообщений: 10
Re: Про модульность
« Ответ #194 : 03.12.2015 16:33:17 »
Если я захочу удалить что-нибудь из /bin специально?
Глубоко копаете :) Я задался этим вопросом только через год после того как подсел на магос :) На самом деле проблемы такой нет. Aufs умеет сохранять информацию об удаленных файлах. Эта инфа хранится в обычных файлах  (.wh.bla-bla  как то так выглядят). Если вы эти файлы любым способом сохраните, файл на который они указывают для aufs будет считаться удаленным.
По базе рпм вопрос не просек. В Магос есть скрипт rpmdbreset, который приводит базу в соответствие чистому магос. Если вы об этом конечно.
« Последнее редактирование: 03.12.2015 17:48:36 от betcher »