Здравствуйте, Воронков Василий, Вы писали:
ВВ>Честно говоря не очень понятно как связаны необходимость полной компиляции и отсуствие рефлекшина. Собственно, он-то как с джитом связан? Отсюда:
Another run-time source of new code is dynamic code generation, commonly encapsulated
in a reflection interface. This feature allows a running program to examine existing code and data,
and to produce and install new methods. Reflection is commonly used to produce marshalling
code for objects or parsers for XML schemas. Singularity’s closed SIPs do not allow run-time
code generation.
Instead, Singularity provides compile-time reflection (CTR), which provides similar
functionality that executes when a file is compiled. Normal reflection, which has access to runtime
values, is more general than CTR. However, in many cases, the class to be marshaled or the
schemas to be parsed are known ahead of execution. In these cases, CTR produces code during
compilation. In the other cases, Singularity will support a mechanism for generating code and
running it in a separate SIP.
ВВ>Честно говоря не очень понятно как связаны необходимость полной компиляции и отсуствие рефлекшина. Собственно, он-то как с джитом связан?
Нет статической ссылки на метод — метод не будет включен. Метод не включен — ты не можешь вызвать его через Reflection.
Непонятно, как в отсутствии reflection или других подобных механизмов (позднего связывания) строить динамичные системы.
Вообще, изложенные идеи настолько кардинальны, что следование им может потребовать в корне менять всю идеологию не только разработки ПО, но и идеологию самого ПО. Что не факт, что хорошо.
Re: Singularity — первожу на русски
От:
Аноним
Дата:
12.01.06 09:47
Оценка:
Если я не ошибаюсь, идея системы, свойства которой в значительной мере являются следствием свойств единого языка, на котором пишется весь код, идет еще от бабаяновского Эльбруса. Или еще раньше были преНценденты?
Мол, заглянул по одному делу в Ерошенковский подвал, там и приключился такой
кошмарный прецендент. — Инцидент, — механически поправил Эраст Петрович. Лоб у ...
По крайней мере Чхартишвили не слишком опозорился, ведь его герой поправляет прецеНдент на что-то другое.
К сожалению, тут всё-таки неприятная безграмотность
Впрочем, в другом источнике этот же текст содержит всё-таки "прецедент": http://www.insoft.ru/nick/library/frei/lab9.htm
Но на официальном сайте лежит файл Word, который рушит все надежды. Похоже, некоторые издатели внимательно вычитывали и исправляли ошибки автора.
Здравствуйте, Igor Trofimov, Вы писали:
ВВ>>Честно говоря не очень понятно как связаны необходимость полной компиляции и отсуствие рефлекшина. Собственно, он-то как с джитом связан?
iT>Нет статической ссылки на метод — метод не будет включен. Метод не включен — ты не можешь вызвать его через Reflection.
Гм, неубедительно. В то что описывается я не вижу особой разницы с NGEN-ом, разве оптимизации крутые производятся.
Singularity — это будущее Windows, когда уже не будет самого Windows
В Singularity нет ни одной строки кода, взятой из Windows
Весь код в Singularity выполняется в рамках одного "физического" процесса, к тому же в режиме ядра
Singularity не является микроядерной ОС
Singularity невозможно попробовать в России и Украине
Это скорее не факты, а заблуждения. Пойдем по порядку:
Singularity — это будущее Windows, когда уже не будет самого Windows
В Singularity нет ни одной строки кода, взятой из Windows
Singularity не является будущим чего бы то нибыло. Singularity — это исследовательский проект. Идеи из него могут быть испльзованы где угодно. Так в процессе работы над Singularity был придуман "драйвер верифаер".
О том, что на базе Singularity будет разрабватываться какие-то коммерческие варианты ОС пока вроде как не сообщеается.
Весь код в Singularity выполняется в рамках одного "физического" процесса, к тому же в режиме ядра
Совсем не правда. Код в Singularity выполняется в рамках SIP (Software Isolated Process, программно изолированные процессы). В Singularity нет аппоратной защиты адресных простанств процессов. Вместо этого используются свойства языковой безопасности обеспечивающие программную изоляцию процессов. Вместо понятия "аппартно защищенное ардесное пространство" появляется "программно защещенное объектное пространство".
Singularity не является микроядерной ОС
Тоже не правда. Singularity — это именно что микроядерная ОС. Все драйверы Singularity выполняются в рамках отдельных SIP и пишутся в режиме полной типобезопасности. Так что ни один драйвер не может повредить ядро или другие процессы и может быть выгружен/перезагружен в случае сбоя.
Singularity невозможно попробовать в России и Украине
Пожалй что это скорее всего пока что правда. Но ведь никто не мешает обратиться к создателям проекта и попросить ОС под определенные гарантии. Вот только запустить ее будет не просто. Дров то ведь почти нет.
... << RSDN@Home 1.2.0 alpha rev. 628>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
VD>О том, что на базе Singularity будет разрабватываться какие-то коммерческие варианты ОС пока вроде как не сообщеается.
Если об этом не сообщается, это еще не значит, что это не так.
VD>
Весь код в Singularity выполняется в рамках одного "физического" процесса, к тому же в режиме ядра
VD>Совсем не правда. Код в Singularity выполняется в рамках SIP
Ну да, внутри Singularity есть своё понятие процесса. Но если говорить об общепринятых процессах, таких, как в Windows — то в Singularity код действительно в одном общем "процессе".
VD>
Singularity не является микроядерной ОС
VD>Тоже не правда. Singularity — это именно что микроядерная ОС. Все драйверы Singularity выполняются в рамках отдельных SIP и пишутся в режиме полной типобезопасности. Так что ни один драйвер не может повредить ядро или другие процессы и может быть выгружен/перезагружен в случае сбоя.
Под микроядерными ОС обычно подразумевают нечто более материальное. Не просто возможность выгрузки драйверов. Если хочешь, я скажу так: Singularity не является микроядерной ОС в классическом понимании.
VD>
Singularity невозможно попробовать в России и Украине
VD>Пожалй что это скорее всего пока что правда. Но ведь никто не мешает обратиться к создателям проекта и попросить ОС под определенные гарантии. Вот только запустить ее будет не просто. Дров то ведь почти нет.
Думаю, этот вопрос как раз решается проще всего. Как ты думаешь, почему в Singularity видеодрайвер S3 Trio?
Похоже, они используют Virtual PC.
Здравствуйте, mihailik, Вы писали:
VD>>О том, что на базе Singularity будет разрабватываться какие-то коммерческие варианты ОС пока вроде как не сообщеается.
M>Если об этом не сообщается, это еще не значит, что это не так.
Я бы не стал делать каких либо заявлений до тех пор пока их не сделают офицальные представители МС. Тмемболее, что вероятность того о чем ты говоришь и так стремится к нулю.
VD>>
Весь код в Singularity выполняется в рамках одного "физического" процесса, к тому же в режиме ядра
VD>>Совсем не правда. Код в Singularity выполняется в рамках SIP
M>Ну да, внутри Singularity есть своё понятие процесса.
Оно не свое. Оно очень даже стандартное. Ничем не отличающееся от процессов Виндовс или Линкус. Там только принципы защиты другие.
M> Но если говорить об общепринятых процессах, таких, как в Windows — то в Singularity код действительно в одном общем "процессе".
Нет. Ты ошибашся. Еще раз повторю. Не в едином процессе, а в едином адресном пространстве.
VD>>Тоже не правда. Singularity — это именно что микроядерная ОС. Все драйверы Singularity выполняются в рамках отдельных SIP и пишутся в режиме полной типобезопасности. Так что ни один драйвер не может повредить ядро или другие процессы и может быть выгружен/перезагружен в случае сбоя.
M>Под микроядерными ОС обычно подразумевают нечто более материальное. Не просто возможность выгрузки драйверов. Если хочешь, я скажу так: Singularity не является микроядерной ОС в классическом понимании.
Опять же изучи, что такое Microkernel
А вот выдержка и упомянутой тобой статьи:
3 Архитектура Singularity
На рисунке 1 приведена архитектура ОС Singularity, построенная вокруг трех ключевых абстракций: ядра, SIP и каналов. Ядро содержит основную функциональность системы, включая управление памятью, создание и завершение процессов, работу каналов, планирование (scheduling) и ввод/вывод. Как и в случае других микроядер, большая часть функциональности системы находится в процессах вне ядра.
... 7.1 Архитектура ОС
Singularity – это ОС на основе микроядра, во многом отличающаяся от предшествующих микроядерных систем, таких, как Mach, L4, SPIN, Vino и Exokernel [2, 8, 17, 25, 46]. В микроядерных ОС монолитное ядро разделено на компоненты, исполняемые в отдельных процессах. Предыдущие системы, за исключением расширений ядра в SPIN, были написаны на не безопасных языках программирования и использовали в качестве механизма изоляции аппаратное управление памятью и кольца защиты процессора. Singularity использует для изоляции процессов и предотвращения доступа к аппаратным ресурсам языковую безопасность и коммуникации посредством передачи сообщений.
M>Думаю, этот вопрос как раз решается проще всего. Как ты думаешь, почему в Singularity видеодрайвер S3 Trio? M>Похоже, они используют Virtual PC.
Они точно использовали Virtual PC. Но наверно смотреть новую ОС из под нее не так интересно. Хотя конечно вариант.
... << RSDN@Home 1.2.0 alpha rev. 628>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, mihailik, Вы писали:
VD>> Но ведь никто не мешает обратиться к создателям проекта и попросить ОС под определенные гарантии.
M>"Не верю!" Попробуй попроси код Windows.
Ну, код Windows так доступен в России. Наше правительство подписало что-то там с МС по кторому код Виндовс предоставляется нашим гос-учереждениям.
M>Я думаю, в данном случае гарантии начинают становится "определёнными" с восьми нулей. Баксов.
Ты что-то путашь. Сингулярити — это исследовательская ОС создаваемая в институте. Без признания научной общественности эта работа и яйца выеденного не стоит для ее создателей. Так что если их что и ограничивает, то только неготовность системы к публичному показу.
... << RSDN@Home 1.2.0 alpha rev. 628>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Воронков Василий, Вы писали:
ВВ>Здравствуйте, mihailik, Вы писали:
M>>Если есть интерес, можно оформить это в виде статьи в RSDN. По большому счёту, текст уже готов
ВВ>Честно говоря не очень понятно как связаны необходимость полной компиляции и отсуствие рефлекшина. Собственно, он-то как с джитом связан?
Создатели Сингулярити довольно странно понимают термин "рефлексия". Они почему-то связывают его с возможностью генерации кода в рантайме. Их термин CTR (Compile Time Reflection) ни что иное, как некий механизм генерации кода во время компиляции (на основе текстовых шаблонов).
Возможно, что Сингулярити сейчас не поддерживает и более простых механизвом рефлексии, как то динамический вызов методов или считывание метаинформции, но это всего лишь недореализованность (асли вообще это есть). Никаких идеологических проблем с этим нет.
... << RSDN@Home 1.2.0 alpha rev. 628>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Igor Trofimov, Вы писали:
ВВ>>Честно говоря не очень понятно как связаны необходимость полной компиляции и отсуствие рефлекшина. Собственно, он-то как с джитом связан?
iT>Нет статической ссылки на метод — метод не будет включен. Метод не включен — ты не можешь вызвать его через Reflection.
Это ты об опимизации компилятора? Дык он может не удалять публичные методы.
iT>Непонятно, как в отсутствии reflection или других подобных механизмов (позднего связывания) строить динамичные системы.
Очень просто. Процессы Сингулярити очень дешевы. Предпологается, что динамическое расширение систем будет происходить путем подгрзуки процессов.
Ну, и так же поддерживается расширение времени компиляции, когда в код приложения впрыскивается нужные расширения. Они это назвали CTR — рефлексия времени компиляции.
iT>Вообще, изложенные идеи настолько кардинальны, что следование им может потребовать в корне менять всю идеологию не только разработки ПО, но и идеологию самого ПО. Что не факт, что хорошо.
Да не так чтобы координальны. Но лично мне они очень понравились. Если развитие управляемых сред пойдет по этому пути, то лично я буду очень рад. Подобный подход решает массу пролем.
... << RSDN@Home 1.2.0 alpha rev. 628>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Singularity — первожу на русски
От:
Аноним
Дата:
12.01.06 17:18
Оценка:
Вообще, изложенные идеи настолько кардинальны, что следование им может потребовать в корне менять всю идеологию не только разработки ПО, но и идеологию самого ПО. Что не факт, что хорошо.
Так думал изобретатель палки-копалки: Если мы начнем лошадь использовать для вспашки полей и сажать сами а не выковыривать из грязи что нам природа приготовила! Что же это получится! Моя семья лишится доходов от продажи патента на палку-копалку! Соплеменники не будут больше уважительно уступать место у костра. Того и глядишь начнут есть больше (ведь самому вырастить можно много больше чем влесу выкопать). Безобразие!
Надо изобретателя плуга забить камнями. Решено. Соберу камней и в путь!