Re[3]: Очередная русская ОС
От: elmal  
Дата: 17.07.10 07:23
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>У Завалишина, по-моему, проблема в другом: у него нет ясного ответа, зачем нужна новая ОС, какие проблемы она должна решать.

Собственно, насколько я понимаю, он хочет сделать ОС на управляем коде. Ничего нейтивного вообще — нейтив только после JIT компиляции, это уровень виртуальной машины, а не ОС. Проблемы — плохая ситуация с компонентностью в существующих системах. В юниксах каша, а винде ситуация получше, но тоже не очень хорошо. Соответственно 2 мегафичи у него, насколько я понимаю — персистентность очень оригинальная, и прекрасная компонентность и реюз существующих компонентов. Не очень уверен, что я правильно понял за счет чего она достигается, но насколько я понимаю — все просто. Программа — это обычный объект виртуальной машины. Память линейная, процессы не изолированы, адресное пространство едино, потому — если что кому понадобилось — может без проблем обратиться, причем никаких маршаллингов и тому подобное не требуется. Согласен, что такое решение выглядит очень спорно, но чтоб осуждать это — надо получше понимать концепцию, про детали я не знаю, возможно у него и есть решение относительно проблем безопасности и надежности, тут надо у него спрашивать. Помню спрашивали у него на конференции, он что-то отвечал на этот счет, но уже не помню детали, как обойти проблемы у него вроде есть решение. Лично мне представить это все на десктопе крайне сложно, а вот для нишевых решений плюсы могут перевесить минусы. Безопасность далеко не факт, что у него продумана, возможно идеи у него есть на этот счет, но я не в курсе.
Re[3]: Очередная русская ОС
От: Mr.Cat  
Дата: 17.07.10 09:39
Оценка:
Здравствуйте, Nik_1, Вы писали:
N_>когда лет десять назад появилась Java
Какбы намекает на дату написания текста.
Re[7]: Очередная русская ОС
От: Pzz Россия https://github.com/alexpevzner
Дата: 17.07.10 12:08
Оценка:
Здравствуйте, elmal, Вы писали:

E>Зависит все от реализации на деле. Но если сошла с ума — программа может имплементить интерфейс рестарта, например. Соответственно, в случае проблем — дернул этот интерфейс, и все ок. Не знаю как Завалишин это рассматривает, но я б просто для таких случае интерфейс рестарта имплементировал.


Настоящий рестарт тем и хорош, что туда разработчики программы не могут сунуть свои грязные пальчики. Поэтому он работает с гарантией. А "интерфейс рестарта", я представляю, чего туда будут совать. Из лучших побуждений, разумеется.
Re: Очередная русская ОС
От: WolfHound  
Дата: 17.07.10 12:08
Оценка: +1 :)
Здравствуйте, Nik_1, Вы писали:

N_>http://www.computerra.ru/interactive/546249/

Интересно а автору не приходило в голову что файлы на диске как правило занимают много меньше места чем тоже самое в памяти программы.
Наиболее яркий пример это сжатые медиаформаты.
Еще очень хороший пример это исходный код и то сколько памяти выжерает IDE для того чтобы обеспечить навигацию итп.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[4]: Очередная русская ОС
От: Pzz Россия https://github.com/alexpevzner
Дата: 17.07.10 12:16
Оценка:
Здравствуйте, elmal, Вы писали:

Pzz>>У Завалишина, по-моему, проблема в другом: у него нет ясного ответа, зачем нужна новая ОС, какие проблемы она должна решать.

E>Собственно, насколько я понимаю, он хочет сделать ОС на управляем коде.

Осей на управляемом коде хоть попом кушай. Среди них есть и поинтереснее, чем завалишинских hibernate на стероидах. Та же Inferno, например. Но никакую революцию они не произвели. Так что нафиг-нафиг.

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


Для нишевых решений хочется производительности, надежности, массштабируемости в обе стороны и т.п. А не того, с чем носится Завалишин
Re: Очередная русская ОС
От: Vlad ABC Россия  
Дата: 19.07.10 05:14
Оценка:
Здравствуйте, Nik_1, Вы писали:

N_>http://www.computerra.ru/interactive/546249/


Еще ссылка
http://code.google.com/p/phantomuserland

Да только все это, походу ... так. Просто, хочется чуда, типа и мы можем софт писать.
Re[5]: Очередная русская ОС
От: Mamut Швеция http://dmitriid.com
Дата: 19.07.10 06:32
Оценка:
N_>

N_> Можно считать, что C++ сейчас не существует,


N_>Т.е. тебя совсем не смущает эта фраза и в твоей реальности его давно уже нет?

N_>На нече так что 90% используемого нами ежедневно софта написаны на несуществующем языке

Потому что 90% этого софта использует код, написаный как раз лет 10-15 тому назад, когда Java только появлялась. Legacy такой legacy.


dmitriid.comGitHubLinkedIn
Re[6]: Очередная русская ОС
От: мыщъх США http://nezumi-lab.org
Дата: 19.07.10 15:10
Оценка:
Здравствуйте, FR, Вы писали:

FR>Здравствуйте, мыщъх, Вы писали:


М>>тут написано, что "Основное know how Фантома состоит именно

М>>в умении дёшево создавать мгновенные снимки состояния системы,
FR>Не в OS как уже писали выше это все давно уже реализовано,
а тут говорится, что реализовано в ОС, то есть дается понять, что ОС знает как себя вести с железом. современное железо формально поддерживает сохранение/восстановление своего состояния при усыплении/пробуждении, но глючным образом и далеко не дешево и тем более не мгновенно.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re[3]: Очередная русская ОС
От: Lever Россия www.compassplus.ru
Дата: 23.07.10 12:39
Оценка:
Здравствуйте, ononim, Вы писали:
O>Человек, с нулевым системным бэкграундом, совсем не производит впечатление, даже борода не спасает.

Даже не надо задавать вопрос: А судьи кто?.
Человек с НЕ нулевым ... бэкграундом ни когда не напишет цитируемого поста.
Такой человек прекрасно понимает, что сделано, и что такое, хоть что-то сделать.

Знаком с DZ, мало того, идея "персистентности" лежит в основе разработанной нами технологии программирования Флора.
Правда у нас не ОС, а среда разработки и исполнения приложений. Есть много идеи и проблем, которые мы одинаково понимаем.
Понимаем их значимость и сложность.

В идеале было бы интересно сделать среду разработки для Фантома основываясь на Флоре.
Re[4]: Очередная русская ОС
От: Lazy Cjow Rhrr Россия lj://_lcr_
Дата: 27.07.10 04:56
Оценка:
Lever,

L>В идеале было бы интересно сделать среду разработки для Фантома основываясь на Флоре.


Скажи пожалуйста, где можно почитать про Флору (я так понял это IDE вкупе с компилятором). Интересует, какие задачи она решает, и какие подходы применяются для решения задач и в чём отличия от существующих подходов, скажем IBM/Rational. Читал http://www.inno.ru/project/14757/ но не нашёл ответов на вопросы выше.
Спасибо.
quicksort =: (($:@(<#[),(=#[),$:@(>#[)) ({~ ?@#)) ^: (1<#)
Re[2]: Очередная русская ОС
От: Ночной Смотрящий Россия  
Дата: 27.07.10 06:05
Оценка:
Здравствуйте, Vlad ABC, Вы писали:

VA>Да только все это, походу ... так. Просто, хочется чуда, типа и мы можем софт писать.


А вы это кто? И почему для вас возможность написания софта является чудом?
Re[5]: Очередная русская ОС
От: Lever Россия www.compassplus.ru
Дата: 28.07.10 04:33
Оценка: 21 (2)
Здравствуйте, Lazy Cjow Rhrr, Вы писали:

LCR>Скажи пожалуйста, где можно почитать про Флору (я так понял это IDE вкупе с компилятором).


Лет десять назад мы активно пропагандировали Флору: выступали на конференциях, писали статьи, делали презентации...
Это было время, когда мы надеялись, распространять Флору как самостоятельный продукт, как технологию, как среду разработки.
По многим причинам, зависящим не только от нас, это не получилось. Просто сложно тогда было, да и сейчас тоже, продавать среду разработки и продвигать технологию, которые требовали кардинального изменения представления о программировании и процессе создания программ.
Поэтому было принято решение продвигать не технологию Флора, а продукты созданные с ее помощью.
По большому счету Флора — это технология одного продукта — TranzWare, интересующихся отсылаю на наш сайт.
Технология одного продукта — это с одной стороны не совсем лестная характеристика. С другой стороны, если Флора развивается в течении полутора десятка лет, а продукт, созданный с ее помощью, конкурентный на столько, что позволяет ее развивать, то вернее всего, при проектировании Флоры были выбраны удачные решения.

Рассказывать про Флору просто НЕпрограммистам, потому что процесс проектирования приложений и сам вид приложений соответствуют представлениям этих людей. Создание приложений происходит методом сборки с помощью специальных редакторов, эти приложения это в чистом виде Объектная модель. Весь жизненный цикл эти приложения находятся под полным контролем проектировщика, доступны любые данные, можно выполнить с приложением любые действия.

Рассказывать про Флору сложно программистам, потому что процесс проектирования приложений и сам вид приложений НЕ соответствуют их представлениям и знаниям.
Примером может служить цитата: IDE вкупе с компилятором. И да, и нет.
Это среда разработки и среда исполнения, а видимая часть IDE сама создана на Флоре и работает под ее управлением.
Да в ядре есть компилятор, но компиляция это только оно из действий, доступное над некоторыми объектами. Программы как таковой нет, есть объекты, которые отвечают за поведение Объектной модели. Некоторые из этих объектов содержат текст на неком С — подобном языке, у которого нет декларативной части.

Одной фразой. Флора — это НЕязыковая реализация Объектной парадигмы.
Флора похожа на Smalltalk своей НЕпохожестью на другие.

Можно найти много общих черт у Флоры и Фантома. Некоторые общие основополагающие концепции мы применили во Флоре, можно посмотреть что они дали и во что обошлись.
Можно об этом поговорить, если будет спокойная атмосфера.
Re[6]: Очередная русская ОС
От: Курилка Россия http://kirya.narod.ru/
Дата: 28.07.10 04:58
Оценка: :)
Здравствуйте, Lever, Вы писали:

L>Здравствуйте, Lazy Cjow Rhrr, Вы писали:


LCR>>Скажи пожалуйста, где можно почитать про Флору (я так понял это IDE вкупе с компилятором).


L>Лет десять назад мы активно пропагандировали Флору: выступали на конференциях, писали статьи, делали презентации...

[cut]

Мне одному показалось, что сказано довольно много, но практически ничего похожего на ответ на конкретный вопрос(просьбу)?
Re[7]: Очередная русская ОС
От: Lever Россия www.compassplus.ru
Дата: 28.07.10 05:41
Оценка:
Здравствуйте, Курилка, Вы писали:

К>Мне одному показалось, что сказано довольно много, но практически ничего похожего на ответ на конкретный вопрос(просьбу)?


Просто на конкретный вопрос не ответишь. Ответить можно, но на сколько у спрашивающего увеличится объем информации о Флоре?
Своим постом я хотел показать, что я с удовольствием буду рассказывать про Флору. С другой стороны я хотел показать, что при разговоре о Флоре нужно помнить о ее принципиальных отличиях. В свете этих отличий большинство общепризнанных терминов и понятий имеют совершенно другую окраску.
Аналогия прослеживается, после отбрасывания нетехнических вопросов, и в дискуссии о Фантоме. DZ говорит о персистентности пытаясь сказать как много это значит для процесса проектирования, а слышат ли его?
К стати, на примере Флоры можно это увидеть воочию. Тоже можно и сказать об управлении объектами, действия над ними не сводятся только к конструктору и деструктору и, само собой, вызовам методов.
Пример с компонентностью, на древовидной управляемой памяти она, компонентность, реализуется в легкую.
Re: Очередная русская ОС
От: okman Беларусь https://searchinform.ru/
Дата: 28.07.10 11:54
Оценка:
Здравствуйте, Nik_1, Вы писали:

N_>http://www.computerra.ru/interactive/546249/


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

С другой — трудно представить работоспособную архитектуру, которая не поддерживается
аппаратно и вообще базируется на виртуальных машинах. А как же драйверы устройств и
вообще системные сервисы типа переключения контекстов или управление виртуальной
памятью ? Это тоже отдается Java ? Наверное, я отстал от жизни.
Нет ни безопасности, ни переходов в режим ядра. Ну и что в этом хорошего ?
Разработчики современных архитектур тоже не дураки ведь.

И мне кажется, что идея персистентности, если она вообще математически корректна,
способна работать только в теории, ибо на практике это означает требование обеспечения
возможности любого устройства или программы свободно прерывать и восстанавливать поток
данных в произвольный момент времени, причем согласованно и единообразно, как транзакция.
Короче, требование полной когерентности.
Как на таких архитектурах смогут работать асинхронные механизмы или
кэширование ? Что, если состояние приложения A напрямую зависит от состояния приложения B,
а их "commit-ы" относится к разным "ревизиям" ?

В моей программе в каждый момент времени крутятся десятки циклов, сотни переменных постоянно
меняют значение, происходит обращение к внешним данным и происходит много всего другого.
Реален ли сценарий, при котором процесс операционной системы без существенных потерь
будет фиксировать все происходящее, да так, чтобы связанные компоненты оставались в согласованном состоянии ?
Ну открыл я сокет, отправил по нему данные и жду. Тут система падает и ответ сервера приходит,
пока она восстанавливается. Собственно, должны восстановиться не только такие данные,
как валидный дескриптор сокета или содержимое буфера, но и показания тайм-аута,
состояние ожидание какого-нибудь объекта синхронизации, различных структур ядра,
внутренние состояния сетевого адаптера, стек TCP-пакетов и еще много-много другого.

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

Тут нужна конкретная смена парадигмы программирования и вообще, вся эта "кухня" должна
поддерживаться аппаратно, поставщиками устройств и разработчиками драйверов.
Но даже на современных, проверенных десятилетиями архитектурах, ситуация такая, что завалиться можно
даже на банальном hibernate или броске питания, как точно отметил мыщъх.

Так что время покажет.
Re[2]: Очередная русская ОС
От: Ведмедь Россия  
Дата: 28.07.10 12:05
Оценка:
Здравствуйте, okman, Вы писали:

O>Здравствуйте, Nik_1, Вы писали:


N_>>http://www.computerra.ru/interactive/546249/


O>Очень неоднозначные впечатления от прочитанного.

O>С одной стороны, это амбициозный проект с интересными архитектурными решениями.

O>С другой — трудно представить работоспособную архитектуру, которая не поддерживается

O>аппаратно и вообще базируется на виртуальных машинах. А как же драйверы устройств и
O>вообще системные сервисы типа переключения контекстов или управление виртуальной
O>памятью ? Это тоже отдается Java ? Наверное, я отстал от жизни.
O>Нет ни безопасности, ни переходов в режим ядра. Ну и что в этом хорошего ?
O>Разработчики современных архитектур тоже не дураки ведь.

Ну кстати предложенный вариант очень сильно напоминает Singularity от МС.

O>Так что время покажет.
Да пребудет с тобой Великий Джа
Re[2]: Очередная русская ОС
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 28.07.10 12:17
Оценка:
Здравствуйте, okman, Вы писали:

O>С другой — трудно представить работоспособную архитектуру, которая не поддерживается

O>аппаратно и вообще базируется на виртуальных машинах. А как же драйверы устройств и
O>вообще системные сервисы типа переключения контекстов или управление виртуальной
O>памятью ? Это тоже отдается Java ? Наверное, я отстал от жизни.
O>Нет ни безопасности, ни переходов в режим ядра. Ну и что в этом хорошего ?
O>Разработчики современных архитектур тоже не дураки ведь.

Главное преимущество managed кода знаешь?
Это простая верифицируемость на клиенте. То есть непосредственно перед исполнением можно статически проверить что код не делает ничего криминального. Таким образом не нужны становятся аппаратные средства защиты, так как они рассчитаны на отлов тех же самых проблем, но в процессе исполнения.


Остается в таком случае одна проблема, которая сродни первенству яйца или курицы. Драйверы должны подниматься до виртуальных машин, но для управляемого кода нужна та самая виртуальная машина. Это решается статической компиляцией в нативный код (с той же самой верификацией) при установке драйвера. В итоге драйвер нативный, но при этом гарантированно не делает ничего криминального (и не может порушить работу системы и других драйверов).

Конечно часть ОС останется написана на низкоуровневом языке, но довольно малая часть по сравнению с современными ОС.

Так работает Singularity.
Re[2]: Очередная русская ОС
От: rfq  
Дата: 28.07.10 14:22
Оценка:
Здравствуйте, batu, Вы писали:

B>Первое впечатление, что декларируемая задача в императивной парадигме не решаема.

...
B>Реально создать такую фишку в функциональной парадигме.
Поддерживаю 100%.

B>Как быть с языками типа Си, джавы.. они ж императивные..

ПисАть на них чистые функции. Скажем, компилятор легко оформляется в виде функции текст->код.
Конечно, мы не сможем сохранять промежуточное состояние в процессе компиляции (точнее сможем с большим трудом и негрантированым результатом — так что лучше и не пытаться). Но зачем, если компиляция одного текста длится миллисекунды, максимум — секунды.
При перезапуске начнем снова. А утилиту make (или ant) — напишем заново.
Собственно, этот пример не совсем удачный, так как связка make — компилятор и сейчас обеспечивает сохранение основного объема работы при сбоях. Но эта функциональность базируется на шатком основании — времени модификации файлов. Дело за тем, чтобы найти более прочный фундамент. Можно, например, оттолкнуться от баз данных и встроенных процедур.
Re[3]: Очередная русская ОС
От: Aleх  
Дата: 28.07.10 14:53
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Здравствуйте, okman, Вы писали:


O>>С другой — трудно представить работоспособную архитектуру, которая не поддерживается

O>>аппаратно и вообще базируется на виртуальных машинах. А как же драйверы устройств и
O>>вообще системные сервисы типа переключения контекстов или управление виртуальной
O>>памятью ? Это тоже отдается Java ? Наверное, я отстал от жизни.
O>>Нет ни безопасности, ни переходов в режим ядра. Ну и что в этом хорошего ?
O>>Разработчики современных архитектур тоже не дураки ведь.

G>Главное преимущество managed кода знаешь?

G>Это простая верифицируемость на клиенте. То есть непосредственно перед исполнением можно статически проверить что код не делает ничего криминального. Таким образом не нужны становятся аппаратные средства защиты, так как они рассчитаны на отлов тех же самых проблем, но в процессе исполнения.


G>Остается в таком случае одна проблема, которая сродни первенству яйца или курицы. Драйверы должны подниматься до виртуальных машин, но для управляемого кода нужна та самая виртуальная машина. Это решается статической компиляцией в нативный код (с той же самой верификацией) при установке драйвера. В итоге драйвер нативный, но при этом гарантированно не делает ничего криминального (и не может порушить работу системы и других драйверов).


G>Конечно часть ОС останется написана на низкоуровневом языке, но довольно малая часть по сравнению с современными ОС.


G>Так работает Singularity.


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

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

Некоторые (не помню кто) на этом форуме считают, что и x86 код можно верифицировать, но это не правда.

Так что по любому в драйвере будут потенциально опасные места.
Re[4]: Очередная русская ОС
От: FR  
Дата: 28.07.10 14:58
Оценка:
Здравствуйте, Aleх, Вы писали:

A>Некоторые (не помню кто) на этом форуме считают, что и x86 код можно верифицировать, но это не правда.


Можно верифицировать жестко ограниченное подмножество x86 кода и это уже сделано например тут
http://code.google.com/p/native-nt-toolkit/ но боюсь драйверы на таком подмножестве тоже не особо попишешь.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.