LINUX.ORG.RU

Inferno и Plan 9: Часть 2. Построение Grid

 ,


0

1

Inferno не только пригодна для создания систем типа Grid, она годится для этого лучше любой другой операционной системы. В этой статье мы рассмотрим несколько различных Grid-систем для Inferno, особый акцент сделав на Owen – готовом к промышленному использованию комплексу ПО для построения Grid.
И вот какие выводы можем сделать изучив статью:

  • Inferno позволяет сохранить простоту и прозрачность Grid-систем;
  • для создания абсолютно новой Grid-системы для Inferno необходимо совсем немного времени;
  • Inferno позволяет создавать кросс-платформенные Grid-приложения, без модификаций работающие везде, где может работать Inferno.

>>> Подробности

★★★

Проверено: Shaman007 ()
Последнее исправление: cetjs2 (всего исправлений: 1)

Ответ на: комментарий от kernel

kernel

ля этого по факту нужна пара библиотек с утилитами, и включение это всего в дистрибутивы.

Ты говоришь о вещах, в которых ничего не смыслишь.

ugoday ★★★★★
()
Ответ на: комментарий от kernel

> Скажи мне, например, фанат план9, что мешает просто сделать ОС эквивалентную по возможностям план9 на базе линукс?
Хотя бы то, что ядра linux и Plan 9 устроены совершенно по-разному.
Ядро Plan 9 гибридное: оно реализует 9P (он же styx) как общий системный IPC. Доступ к оборудованию предоставляют сервисы, взаимодействие с сервисами происходит через 9P.
В отличии от юниксов, в Plan 9 у каждого процесса есть своё личное пространство имён. Что это даёт? Ну, например, /dev/draw (или как он там) будет работать только для данного приложения, но не потревожит окна других приложений.
И ещё деталь: весь этот набор прозрачно работает через сеть.

Теперь скажи мне: как ты сделаешь всё это с ядром линукс без разнообразных костылей?

anonymous
()
Ответ на: комментарий от anonymous

> Теперь скажи мне: как ты сделаешь всё это с ядром линукс без разнообразных костылей?

Где ты видел линукс без костылей? o_O

Manhunt ★★★★★
()
Ответ на: комментарий от anonymous

Примонтировать пространство имён его файловой системы.

ugoday ★★★★★
()
Ответ на: комментарий от anonymous

и если уж на то, в рамках идеологии plan9 говорить о доступном по сети удалённом сервере некорректно. Здесь нет разницы между тем запущен ли процесс на удалённой машине или на той же самой, взаимодействие будет построено одинаковым образом.

ugoday ★★★★★
()
Ответ на: комментарий от kernel

Ви таки читайте внимательнее. Plan9port это не более, чем портирование _некоторых_ программ и библиотек из плана. mk там, sam, rc и др. Одни они твой любимый линакс планом не сделают.
Кстати, можешь взять 9vx: http://swtch.com/9vx/

anonymous
()
Ответ на: комментарий от kernel

>Наверное, наверное сами разработчики нифига в этом не смыслят?!?!?
Разработчики смыслят. А ты - нет. Портирование утилит - это портирование утилит, а не функционала ядра.

eugene2k
()
Ответ на: комментарий от anonymous

>>а как надо по сети к серверу с plan9 подсоединяться?

а к какому серверу?

exception13 ★★★★★
()
Ответ на: комментарий от anonymous

Не иначе

как Саныч приснопамятный вернулся - слишком уж стиль похож...

zelo ★★
()
Ответ на: комментарий от Gukl

>>Ого, тематический юзерпик в треде. Не ожидал.

а то! =]

exception13 ★★★★★
()
Ответ на: комментарий от xhat

>у плана очень интересная концепция. а то что ты говоришь это как раз причины почему план не стал популярным

Я могу еще более крутую концепцию выдвинуть, однако реализовать ее будет очень проблемно...

vasya_pupkin ★★★★★
()
Ответ на: комментарий от vasya_pupkin

>> Я могу еще более крутую концепцию выдвинуть

употребив пикрелейтед?

exception13 ★★★★★
()
Ответ на: комментарий от anonymous

Хотя бы то, что ядра linux и Plan 9 устроены совершенно по-разному.


Ага, план9 это если вкратце, юникс на стероидах. А ядра win32 систем и линукса тоже устроены по разному. Так же как и ядра OS/2 и win32. Ну и так далее.

Ядро Plan 9 гибридное: оно реализует 9P (он же styx) как общий

системный IPC.


«Общий системный IPC» все равно юзается не напрямую а через libc(ну или через какой нибудь libstyx, как в Hurd).

Доступ к оборудованию предоставляют сервисы, взаимодействие с сервисами происходит через 9P.


Сервисы это всего лишь адрес в IPC. Реализовывать внутреннюю структуру ядра plan9 совершенно не обязательно. Процессу достаточно доступа к IPC и наличие внутри привычных сервисов.

В отличии от юниксов, в Plan 9 у каждого процесса есть своё личное

пространство имён.


man vnamespace. Это не то что в plan9 однако это вполне можно использовать.

Что это даёт? Ну, например, /dev/draw (или как он там) будет

работать только для данного приложения, но не потревожит окна других

приложений.


Это фишка которая реализуется кучей способов в юникс.

И ещё деталь: весь этот набор прозрачно работает через сеть.


Где тут трудности при реализации 9p протокола под Линукс?

Теперь скажи мне: как ты сделаешь всё это с ядром линукс без

разнообразных костылей?


Что мешает написать модуль который предоставляет только сисколлы аналогичные интерфейсу ядра план9 для процесса ? Но ты надеюсь понимаешь что способ «без костылей» на много порядков трудозатратнее чем с «костылями»?

А вот если ты принципиальный враг костылей - тебе придется убится об стену. Белковые формы жизни с ДНК проживающие на планете Земля - это связки костылей. Аналогично весь юникс - если прочитать историю его создания то видно, как создатели создавали его любовно привязывая один костыль к другому.

PS
Термином «костыли» чаще всего неправильно называют эволюционный подход к разработке API ПО.

kernel ★★☆
()
Ответ на: комментарий от ugoday

А никак. Игрушка не более.


Смотри, продолжишь так безумствовать - пойдет пена ртом и мы тебя не спасем.

kernel ★★☆
()
Ответ на: комментарий от eugene2k

Разработчики смыслят. А ты - нет. Портирование утилит - это

портирование утилит, а не функционала ядра.


Тяжелый случай. Вот скажи мне, мой юный друг, wine это портирование функционала ядра или утилит?

А ты в курсе что значительная часть unix api возникло в ядре исключительно как методом постепенного переноса из userlevel? Включая такую штуку как имена файлов в виде текста.

kernel ★★☆
()
Ответ на: комментарий от anonymous

Ви таки читайте внимательнее. Plan9port это не более, чем портирование

_некоторых_ программ и библиотек из плана. mk там, sam, rc и др. Одни

они твой любимый линакс планом не сделают.


Мне не нужен весь план в линуксе. Я изначально говорил про то что если людям нужны *возможности* плана9 - то вполне можно добавить *возможности* плана9 в линукс. При чем даже совместимость нафиг не нужна - нужно удобство разработки систем класса план9 грид под линукс.

А ситуация показывает что никому они не нужны - кроме фанатиков.

Кстати, можешь взять 9vx: http://swtch.com/9vx/


Мне не надо - у меня и так висит большой foss проект на который все время уже давно уходит.

На сколько я понимаю разница в том что 9vx запускает бинари план9 (ненужные нахрен на самом деле) а Plan9port это API plan9 в линуксе. Что то вроде winelib.

То что оно портирует «некоторые» бинари - так и вайн «некоторые» программы пускает. А то что этих программ мало - так это как раз то о чем я толкую. Никому кроме фанатиков план9 не нужен - и это принципиальная позиция всех кто с ним связан. Либо вы с нами - либо ненависть.

kernel ★★☆
()
Ответ на: комментарий от kernel

> Никому кроме фанатиков план9 не нужен - и это принципиальная позиция всех кто с ним связан. Либо вы с нами - либо ненависть.

Слова фанатика. Plan9 нужен тем кому он нужен не более того, а какие у этого причины? ХЗ но жизнь показывает, что plan9 нужен фанатикам не более чем фанатики плану9. Фанатики не способны мыслить конструктивно и в большинстве своем весьма консервативны в рамках предмета обожания а как следствие бесполезны и весьма временны. Быстро перегорают и либо ищут новый предмет «обожания» либо начинают корректировать свои взгляды. При оценке причин определенной популярности Plan9 я бы выставил следующие критерии в порядке убывания:

Академический интерес - живой учебник проектирования от отцов Юникс, мастхэв для изучения.

Концептуальный интерес - основные постулаты юникса возведенные в абсолют и еще не невилированные промышленным использованием.

Некоторая стабильность и целостность - проект координируют люди которым по...й до первых мест на десктопах и т.д. За новомодными маркетологическими закидонами им гонятся неинтересно - у них есть концепт и свое видение реализации оси и они его пилят.

Логичность - тут уже видимо зависит больше от субъективных критериев оценки. И сравнивать Plan9 c linux, всеравно что сравнивать кофейную чашку из кофейного сервиза ручной работы штучной партии с многоцелевым стаканчиком из макдональдса. Я думаю вы понимаете что ничего обидного в этом нет. Мы можем долго восхищатся изяществом и красотой маленькой кофейной чашечки, но в повседневном быту чаще будем использовать нечто более утилитарное, вроде пластикового стаканчика. И во всем этом есть смысл.

iBliss
()

А если к досу добавить достаточное кол-во костылей, можно получить Windows 98.
Plan 9 это отдельная операционная система. Так же, как и Haiku, так же, как и KolibriOS, так же, как и почти любая другая ОС. И нет смысла перепиливать линукс в нечто похожее на эти ОС.
Кроме того, у линукса принципиально устаревшая архитектура ядра — монолитная.
Если тебе нужны фичи плана в линуксе — вот тебе inferno и 9vx.
Если тебе нужна поддержка позикса в плане — есть APE и linuxemu.
Мир ОС не ограничивается линуксом, он даже не ограничивается юниксами.

(http://doc.cat-v.org/plan_9/translations/russian/misc/utah2000 — линкрелейтед)

anonymous
()
Ответ на: комментарий от iBliss

Когда я говорил фанатики, я имел в виду конкретно образ людей которые размахивают план9 на ЛОРе. Вполне красноглазые и безумные. Более того я нигде не говорил что план9 вообще «ненужен». Я говорил что в сколько нибудь мейнстриме, в том числе в области грид систем, линукс его «покроет как бык овцу», при необходимости.

Если более серьезно - ну да, план9 это такая академическая секта. Которая существует как способ получения грантов, публикаций, привлечения студентов и тп. И в этом качестве его «нужность» бесспорна, так как академические ОС, ЯП и пр - обычный инструмент для CS. И даже если они становятся сектами.

Я же про то, в том числе, что непопулярность План9 и его концепций в широких массах связана с сознательной политикой огораживания, это раз, и два - с тем что его концепции сами по себе пока не очень востребованы.

Я утверждаю что при наличии востребованности линукс вполне может проэволюционировать до план9, и этот процесс в важных аспектах будет до смешного коротким. Грубо говоря пара костылей и линукс будет с прикладной точки зрения позволять решать такие же задачи как и план9 с тем же или даже большим удобством и даже меньшими затратами времени/денег. И для этого не надо будет как сейчас переносить на план9 все foss прикладное ПО.

kernel ★★☆
()
Ответ на: комментарий от kernel

Ты ещё скажи, что сообщество Haskell тоже секта. >_>

anonymous
()
Ответ на: комментарий от anonymous

Кроме того, у линукса принципиально устаревшая архитектура ядра — монолитная.


Когда я читаю такую фразу - я сразу понимаю что передо мной человек черезмерно начитавшийся постов с упоминанием фамилии Танненбаум и флеймов на ЛОРе.

Если тебе нужны фичи плана в линуксе — вот тебе inferno 9vx.


У меня тогда будут не фичи плана9 а план9 целиком в линуксе. Со всеми его мелкими неудобствами, патентными и лицензионными вопросами и NIH синдромами. И что то мне подсказывает что разработчики именно этого и хотели. «Ты не можешь получить фичи плана9 без вступления в секту плана9»

Мир ОС не ограничивается линуксом, он даже не ограничивается юниксами.


В мире огромное количество академических ОС. А жизнь ограничена.

kernel ★★☆
()
Ответ на: комментарий от kernel

> Я хочу фичи Хаскеля в Си++

И что то мне подсказывает что разработчики именно этого и хотели. «Ты не можешь получить фичи Haskell без вступления в секту Haskell»

Ну тут уж извините... Конечно, никто не мешает тебе извратиться и впилить фичи плана в линакс, но за корректную работу получившегося костыльдрома я не отвечаю.

Кстати, холивар-вопрос: чем линакс лучше тех же *BSD? Кроме популярности, разумеется.

anonymous
()
Ответ на: комментарий от kernel

> Грубо говоря пара костылей и линукс будет с прикладной точки зрения позволять решать такие же задачи как и план9 с тем же или даже большим удобством и даже меньшими затратами времени/денег.

Тут трудно не согласиться. Учитывая что указанная выше сетевая прозрачность вобщем-то фишка всех юниксов еще с мохнатых времен + линукс уже достаточно распространен как многоцелевая ось чтобы ломание устоявшихся структур было хоть немного оправданным. Как никак оценивается не академическая чистота применения а конечный результат и накладные расходы.

iBliss
()
Ответ на: комментарий от anonymous

> Кстати, холивар-вопрос: чем линакс лучше тех же *BSD? Кроме популярности, разумеется.

Не кернел, но «Широкое распространение а следовательно и разработка и поддержка дешевле (тупо больше рабочей силы)»+«коммерческая заинтересованность в его развитии крупными конторами создающими коммерческие решения на его базе (читай проверка качества идет баблом а не левыми тестами)»

Все остальные критерии необходимо рассматривать только в рамках поставленной задачи.

iBliss
()
Ответ на: комментарий от anonymous

>Хайку жив? Жив.

Потому что BeOS

KolibriOS живо? Живо


Потому что ассемблер

Даже AROS живой.


Потому что amigaaaaa

Plan 9 хуже


Потому что не нужен

devl547 ★★★★★
()
Ответ на: комментарий от anonymous

> Коммерция, коммерция повсюду.

Увы если абстрагироваться от способов то цели прогресса с времен лазания по деревьям не изменились «ЖРАТЬ И УБИВАТЬ» == «Деньги и Военное превосходство».

А иначе творчество не финансируют.

iBliss
()
Ответ на: комментарий от kernel

>Тяжелый случай. Вот скажи мне, мой юный друг, wine это портирование функционала ядра или утилит?
Wine это эмуляция, что бы девелоперы ни говорили. С тем же успехом можно утверждать что линукс все то же самое умеет, достаточно только план9 запустить в qemu.

А ты в курсе что значительная часть unix api возникло в ядре исключительно как методом постепенного переноса из userlevel? Включая такую штуку как имена файлов в виде текста.

Не в курсе. Но... и?

У плана намного более элегантная архитектура. Даже если линукс уже действительно может все, что может план9 (скажем спасибо ребятам из глендикс), сравни сколько всего в него уже понапихали.

eugene2k
()
Ответ на: комментарий от anonymous

Я хочу фичи Хаскеля в Си++ И что то мне подсказывает что разработчики

именно этого и хотели. «Ты не можешь получить фичи Haskell без

вступления в секту Haskell»


Разница между хаскелом и c++ на много порядков больше чем между линукс и план9. Так что аналогия полностью некорректная. Даже между с и с++ и то больше разницы. Тем не менее C++ замышлялся как «C с объектами» и изначально им и был.

Ну тут уж извините... Конечно, никто не мешает тебе извратиться и

впилить фичи плана в линакс, но за корректную работу получившегося

костыльдрома я не отвечаю.


Если впилить именно фичи а не 100% совместимость с план9, то к той куче «костылей» что уже есть постепенно добавится еще несколько абсолютно параллельно остальным. Что позволит получившуюся систему отлаживать с добавлением каждой новой фичи.

Более того, если правильно добавлять - то эти фичи скорее всего будут востребованы совершенно другими проектами которым плевать на сам план9. Те же файловые неймспейсы для процессов в принципе хотят много какие проекты, причем совершенно разных типов - десктопы(гном), сандбоксы, виртуализаторы(точнее системные изоляторы).

Подозреваю что если правильно все переосмыслить, то вообще можно назвать проект Linux Nextgen API, и добавлять туда костыли не только с Плана9 но и из Hurd и пр. Не делать «новую ОС» а именно рассматривать это как среду которая является частью экосистемы линукса. Где вызревают решения которые станут мейнстримом, когда дозреют. Так как просто «крутая ос план15» никому не нужна - нужны приложения которые эти фишки используют. И гораздо проще их делать и внедрять/тестировать набрав «apt-get install ... / yum ...» на обычном линуксе чем переходить целиком на кардинально новую ОС.

kernel ★★☆
()
Ответ на: комментарий от ugoday

> Жава с высока смотрит на моно.

Для начала сравните, сколько времени существует Java, и сколько mono.

cruxish ★★★★
()
Ответ на: комментарий от kernel

> Даже между с и с++ и то больше разницы.
Вы таки недостаточно изучили архитектуру плана.

Ладно. http://v9fs.sourceforge.net/ есть, какая-то поддержка 9p есть, какое-то подобие неймспейсов в линуксе есть. Но то, что в итоге это будет проще — сомнительно, хотя и возможно.
На самом деле, APE или linuxenu позволяют запускать приложения юниксов, так что не требуется портировать каждое приложение.
Возьми http://libs.suckless.org/libixp оно может быть полезно тебе.

anonymous
()
Ответ на: комментарий от eugene2k

Wine это эмуляция, что бы девелоперы ни говорили. С тем же успехом

можно утверждать что линукс все то же самое умеет, достаточно только

план9 запустить в qemu.


Друх, я не знаю что там тебе говорят девелоперы - я читаю исходники. wine это не эмулятор в понимании «как qemu и vmware». Это «подсистема win32» в линуксе. Так же как в MS NT системах есть подсистемы win32 и posix. То есть это реализация API win32 поверх ядра unix. Так же как в винде реализация win32 API поверх NT kernel.

Между qemu plan9 и plan9 в юзерспейсе, огромная разница, хотя и то и другое с точки зрения приложения в виде исходника приблизительно одно и тоже.

9vx не смотрел пока, но учитывая что про него пишут это вообще как раз wine. То есть загрузка бинарей в юзерспейсе, при чем никаких эмуляторов/трансляций опкодов не надо. Если правильно написать будет работать с такой же скоростью или даже выше чем оригинальный план9.

Не в курсе. Но... и?


Но и вот: План9 в юзерспейсе ничем априори не лучше и не хуже для прикладных приложений чем оригинальный план9 который состоит из ядра и юзерспейса. Для прикладных приложений это все детали реализации.

У плана намного более элегантная архитектура. Даже если линукс уже


Это все фапание на техдоки и красивые схемы с презентациями. Знаем мы это. А потом включаем семерочку максимальную и начинаем всем рассказывать что детство прошло.

действительно может все, что может план9 (скажем спасибо ребятам из

глендикс), сравни сколько всего в него уже понапихали.


Ты про что вообще?

kernel ★★☆
()
Ответ на: комментарий от kernel

> Это все фапание на техдоки и красивые схемы с презентациями. Знаем мы это. А потом включаем семерочку максимальную и начинаем всем рассказывать что детство прошло.
Инженер, ты недостаточно математик.

anonymous
()
Ответ на: комментарий от anonymous

Вы таки недостаточно изучили архитектуру плана.


Для меня стакан наполовину полон а не наполовину пуст. Я ее смотрел не с точки зрения поиска разницы, а с точки зрения «можно ли это впихнуть в линукс». Не только можно, а может даже и нужно. А может нужно не это а аналоги. Но приспособленные к реальному миру в котором живет линукс, а не к академическим идеальным случая в вакууме и специфическим нуждам комутаторов для телекомов.

А реальную разницу между C и С++ демонстрирует огромный объем спеков на C++.

Ладно. http://v9fs.sourceforge.net/ есть,


Отметь там в доках " Other applications are described in the following papers:...". Как раз альтернативные применения для проектов которым в общем то по барабану до план9 как ОС, как я и говорил.

какая-то поддержка 9p есть, какое-то подобие неймспейсов в линуксе

есть.


Понимаешь, новые API из которых состоят новые ОС разрабатывают потому что это кому то нужно, так как это решает чьи-то проблемы. Так что неудивительно что такой процесс заимствования фич происходит.

Но то, что в итоге это будет проще — сомнительно, хотя и возможно.


Смотря что считать итогом. Ты действительно думаешь что План9 реально может потеснить линукс? А вот в то что его фичи будут постепенно использоваться я лично сомневаюсь гораздо меньше. Чем больше будет грид/облачных систем, чем больше компутеров будут стоять в среднем офисе/доме, тем чаще будет возникать ситуация когда задача фактически будет формулироваться как «создать специализированную грид систему».

Соответственно простые и базовые API для создания грид систем, правда называть их будут по другому, опять ребрендинг очередной :), войдут в ОС как базовые кирпичики низкого уровня.

На самом деле, APE или linuxenu позволяют запускать приложения

юниксов, так что не требуется портировать каждое приложение.


Вот представь что у тебя продвинутая хфйтех фирма, 500 компутеров под линукс. Ну например студия создания спецэффектов. Ты интегратор или чтото в этом роде. Предположим что в план9(план15, план Б) есть некая киллерфича которую тебе бы хотелось так как она позволит сделать систему с большими возможностями и твой клиент срубит на этом бабло. Как бы тебе было удобно, что бы набрал apt-get/yum и можно эту фичу задействовать в ПО, в in-house разработке. Или переустановить 500 компов на план15 и потом задействовать? А в масштабах всей цивилизации ;)?

Возьми http://libs.suckless.org/libixp оно может быть полезно тебе.


Да , ссылки хорошие, спасибо.

kernel ★★☆
()
Ответ на: комментарий от kernel

> Ты действительно думаешь что План9 реально может потеснить линукс?
Ну ведь даже те же ЯП Go и хаскель немного смогли.

Вот представь что у тебя продвинутая хфйтех фирма, 500 компутеров под линукс...

Ммм... на те 490 я, может быть, таки оставил линукс, но на другие 10 (или другое кол-во...) экспериментальных я бы поставил Plan 9 (в конце-концов, если и там, и там будет 9P, то почему бы и нет?). И если Plan 9 успешно работает, то его можно будет потом установить и на другие компьютеры.

anonymous
()
Ответ на: комментарий от anonymous

Ну ведь даже те же ЯП Go и хаскель немного смогли.


В мире всегда есть место для еще одного ЯП. Именно потому что можно взять линукс и запустить на нем этот любой яп :) И он будет коммуницировать с другими программами под тем же линуксом. Потому что это девиз линукса - внутри линукса мы рады всем, в том числе плану9.

Ммм... на те 490 я, может быть, таки оставил линукс, но на другие 10 (


Это все правильная теория. На практике ты себе очень слабо представляешь расходы по переходу с одной ос на другую в пределах одной организации. А я тебе предложил в качестве альтернативы вообще ничего не сносить и не переустанавливать. Вся работа делается с рабочего места админа, удаленно, фактически без риска чтото порушить. Колоссальная разница в расходах.

kernel ★★☆
()
Ответ на: комментарий от anonymous

И если Plan 9 успешно работает, то его можно будет потом установить и на другие компьютеры.


Забыл спросить, и что, так каждый раз с появлением План Б, План 15, Сингулярити ? Этих эксперементальных ОС вагон и маленькая тележка.

kernel ★★☆
()
Ответ на: комментарий от kernel

> На практике ты себе очень слабо представляешь расходы по переходу с одной ос на другую в пределах одной организации.
Количество расходов зависит во многом от самой организации.

Этих эксперементальных ОС вагон и маленькая тележка.

Но сколь-либо известных из них немного, и можно выбрать наиболее доработанную.
В конце-концов, у тех же IBM и Google есть немного оборудования с Plan 9.

anonymous
()
Ответ на: комментарий от anonymous

> > Это все фапание на техдоки и красивые схемы с презентациями. Знаем мы это. А потом включаем семерочку максимальную и начинаем всем рассказывать что детство прошло.

Инженер, ты недостаточно математик.

Он и инженер недостаточно.

grusha
()
Ответ на: комментарий от anonymous

> > На практике ты себе очень слабо представляешь расходы по переходу с одной ос на другую в пределах одной организации.

Количество расходов зависит во многом от самой организации.

+1. Есть организации, где любое изменение, хоть чем-то несовместимое со старым хламом, недопустимо. Так и городят костыли бесконечно, пока не утонут в них окончательно.

grusha
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.