Здравствуйте, WolfHound, Вы писали:
WH>Здравствуйте, FR, Вы писали:
AF>>>Я думаю, вообще не появится. Управляемый код рулит FR>>Угу только парочка небольших и малозаметных аппаратных улучшений может его зарулить WH>Никакие аппаратные улучшение не смогут гарантировать защиту внутри процесса. WH>Для того чтобы гарантировать защиту внутри процесса необхождима прорва метаинформации. Эту метаинформацию нужно гдето взять. (Где?) Далие по этой метаинформации нужно постоянно все контролировать что приведет к очень сильному усложнению железа. WH>Короче это тупиковый путь.
Наверно, но вот только есть ли гигантская необходимость в защите внутри процессса? К тому же для этого вполне достаточно неуправляемой OS с запущенными на ней процессами написанными на управляемых языках.
WH>Гораздо эффективней сделать тупую железку (ну можетбыть оставить предсказатель ветвлений) которая только и умеет что быстро считать, а контролировать целостность рантайм проверками которые раставлены только там где они реально нужны(все остальые можно убрать статическим анализом кода).
А может гораздо эффективней просто использовать имеющиеся железки. И даже немного их модернизировать для ускорения.
FR>>Вообще подумай какой должна быть песочница для управляемых OS в которой будут запускатся неуправляемые приложения, если согласно генеральной линии партии аппаратная подержка это зло, то будет очень грустное зрелище. WH>Ну эту линию партии ты сам придумал... пока есть гигатонны легаси железа управляемые ОС вполне могут создавать аппаратно изолированные песочници для неуправляемого софта.
Ну тут полный тупик, пока есть эти гигатонны железок (а еще важнее гигатонны софта) у управляемых OS нет больших преимуществ и стимула переходиь на них тоже.
WH>Также нужно учесть что управляемые ОС могут легко исполнять бинарники .NET'а и жабы (если там нет unsafe и JNI) сюда же относятся всевозможные скрипты типа питона, перла, руби итп WH>Те подавляющие большинство веб серверов можно будет очень легко перенести на эту ОС. Причем они получат неплохую прибавку к производительности.
Получат ли ускорение это еще под большим вопросом.
WH>Еще у управляемых ОС есть одна весьма циничная особенность... по началу они могут работать по верх классических ОС в том же стиле что .NET и жаба...
И что это даст? По моему только умножение недостатков обоих сторон. Да и вообще зачем приложениям на NET и java еще какая-то прокладочная OS, когда они и так неплохо себя чувствуют и в существующих операционках.
Здравствуйте, Privalov, Вы писали:
AVC>>Может, я чего не понимаю. AVC>>Но мне всегда нравилось, что в Обероне защиту внутри процесса гарантировал компилятор.
P>Эта тема как-то уже обсуждалась здесь
. Причем практически в этих же формулировках. Есть ли смысл бегать по кругу?
Повторение — мать учения.
(В разумных пределах, конечно.)
В принципе, я просто отвечаю на мысль, которую высказал WolfHound.
А именно: что для защиты внутри процесса нужна прорва метаинформации; мол, где ее взять?
А я отвечаю: как где, а компилятор?
Мне кажется верной мысль Вирта, что возможность программирования без лазеек (loopholes) является самым значительным достижением языков программирования за последние 40 лет.
Но существует одно качество, которое нельзя купить, — это надежность. Цена надежности — погоня за крайней простотой. Это цена, которую очень богатому труднее всего заплатить.
Здравствуйте, AndreiF, Вы писали:
AF>Здравствуйте, FR, Вы писали:
FR>>У них не было из-за этого проблем и потери приличного куска рынка?
AF>У тебя есть точные данные, что причина финансовых потерь — это именно выпуск новой ОСи?
нет конечно
FR>>Ну и какова цена внедрения 64 разрядности в x86?
AF>За такую информацию вообще-то немаленькие деньги аналитикам платят
AF>А вообще, интересное место — форум философии. Никогда бы не подумал, что найдется человек, который будет доказывать, что внести изменения в железо — проще, чем в софт
А не надо настолько обобщать.
Заменить OS гораздо дороже чем внести пару не таких уж и больших изменений в процессоры.
FR>>При просадке на порядок (для обыкновенного эмулятора без jit и тех оптимизации которые будут невозможны на управляемой OS без потери контроля над безопасностью выполнения кода) закон Мура слабое утешение.
AF>Всё зависит от степени различия у исходной и целевой платформ. Делать какие-то догадки даже о величине порядка — брать цифры просто с потолка.
Угу, только управляющие OS вносят дополнительные тормоза.
Здравствуйте, AVC, Вы писали:
AVC>Повторение — мать учения. AVC>(В разумных пределах, конечно.)
Меня всю жизнь волнует вопрос, а кто отец учения?
AVC>Мне кажется верной мысль Вирта, что возможность программирования без лазеек (loopholes) является самым значительным достижением языков программирования за последние 40 лет.
Ключевое слово — возможность.
В общем, это, сдается мне, тоже обсуждалось. Опять начнется "верификация vs тестирование" и т. п.
Вот читал я где-то, что линейка Windows NT построена на непротиворечивой модели обеспечения безопасности, и что?
Здравствуйте, FR, Вы писали:
FR>Наверно, но вот только есть ли гигантская необходимость в защите внутри процессса?
Несомненно. FR>К тому же для этого вполне достаточно неуправляемой OS с запущенными на ней процессами написанными на управляемых языках.
А саму ОСь кто защищать будет?
FR>А может гораздо эффективней просто использовать имеющиеся железки. И даже немного их модернизировать для ускорения.
Никто не мешает управляемым ОС работать на существующих железках.
FR>Ну тут полный тупик, пока есть эти гигатонны железок (а еще важнее гигатонны софта) у управляемых OS нет больших преимуществ и стимула переходиь на них тоже.
Железо со временем выходит из строя...
Софт тоже иногда переписывают.
FR>Получат ли ускорение это еще под большим вопросом.
Однозначно получат. Говорю тебе как человек который пишет серверы которые работают под оооочень большой нагрузкой.
FR>И что это даст? По моему только умножение недостатков обоих сторон.
Это даст возможность использовать новый софт совместно со старым тем кому это нужно. FR>Да и вообще зачем приложениям на NET и java еще какая-то прокладочная OS, когда они и так неплохо себя чувствуют и в существующих операционках.
Если не считать того что распределенку будет делать проще и под новые процессоры будет проце портировать и неуправляемая ОСь под ногами не будет путатся...
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, AVC, Вы писали:
AVC>В принципе, я просто отвечаю на мысль, которую высказал WolfHound. AVC>А именно: что для защиты внутри процесса нужна прорва метаинформации; мол, где ее взять? AVC>А я отвечаю: как где, а компилятор?
С, С++ и куча других страшных слов... в них все упирается... Так что твой обероновский компилятор идет лесом ибо если бы была возможность переписать весь софт то это бы сделали точно не на обероне ибо это угребище имеет очень много фундаментальных недостатков.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, WolfHound, Вы писали:
AVC>>В принципе, я просто отвечаю на мысль, которую высказал WolfHound. AVC>>А именно: что для защиты внутри процесса нужна прорва метаинформации; мол, где ее взять? AVC>>А я отвечаю: как где, а компилятор? WH>С, С++ и куча других страшных слов... в них все упирается... Так что твой обероновский компилятор идет лесом ибо если бы была возможность переписать весь софт то это бы сделали точно не на обероне ибо это угребище имеет очень много фундаментальных недостатков.
Ну, вылил ведро помоев; полегчало?
Пусть это будет не компилятор Оберона, а компилятор другого (вероятно, промежуточного) языка.
Если он в принципе в состоянии обеспечить надежность, зачем требовать дополнительного усложнения аппаратуры?
Но существует одно качество, которое нельзя купить, — это надежность. Цена надежности — погоня за крайней простотой. Это цена, которую очень богатому труднее всего заплатить.
Здравствуйте, AVC, Вы писали:
AVC>Ну, вылил ведро помоев; полегчало? AVC>Пусть это будет не компилятор Оберона, а компилятор другого (вероятно, промежуточного) языка. AVC>Если он в принципе в состоянии обеспечить надежность, зачем требовать дополнительного усложнения аппаратуры?
Ты это у FR и Cyberax страшивай. А я именно об этом и говорю.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, _rasta, Вы писали:
_>является ли линуксом то, что сделано по образу и подобию линукса?
Нет. Иначе тога мы договоримся до того, что Винщдовс является Юниксом.
_>из той же серии: является ли женщина человеком, если была сделана по образу и подобию человека?
Это, прости, просто блед и демагогия.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
AVC wrote: > Если он в принципе в состоянии обеспечить надежность, зачем требовать > дополнительного усложнения аппаратуры?
Потому как он заставит ВСЕ писать на своем собственном языке. А это
нереально.
WolfHound wrote: > FR>К тому же для этого вполне достаточно неуправляемой OS с запущенными > на ней процессами написанными на управляемых языках. > А саму ОСь кто защищать будет?
Вроде аппаратная защита вполне с этим справляется.
Здравствуйте, Cyberax, Вы писали:
>> Если он в принципе в состоянии обеспечить надежность, зачем требовать >> дополнительного усложнения аппаратуры? C>Потому как он заставит ВСЕ писать на своем собственном языке. А это C>нереально.
Почему нереально, если язык промежуточный?
(Просто промежуточное представление, вроде синтаксических деревьев.)
Но существует одно качество, которое нельзя купить, — это надежность. Цена надежности — погоня за крайней простотой. Это цена, которую очень богатому труднее всего заплатить.
AVC wrote: > C>Потому как он заставит ВСЕ писать на своем собственном языке. А это > C>нереально. > Почему нереально, если язык *промежуточный*?
Например, GC будет в таких системах обязательным.
Ну и что если потребуется примитив, который этим промежуточным языком не
поддерживается?
Здравствуйте, Cyberax, Вы писали:
>> на ней процессами написанными на управляемых языках. >> А саму ОСь кто защищать будет? C>Вроде аппаратная защита вполне с этим справляется.
А ну-ну... то-то постоянно всякие уязвимости в ядрах ОС находят...
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, VladD2, Вы писали:
_>>из той же серии: является ли женщина человеком, если была сделана по образу и подобию человека?
VD>Это, прости, просто блед и демагогия.
Здравствуйте, Cyberax, Вы писали:
>> Почему нереально, если язык *промежуточный*? C>Например, GC будет в таких системах обязательным.
C>Ну и что если потребуется примитив, который этим промежуточным языком не C>поддерживается?
Мы пока что говорим о защите внутри процесса. Другие процессы в принципе могут быть и ненадежными, так что причин для волнения нет.
Тот же Оберон (для примера) сейчас так в основном и используется на других системах: грузится в отдельном процессе.
И обеспечивает защиту в рамках этого процесса без всяких дополнительных требований к аппаратуре.
(В сущности, рантайм таких обероновских программ — это просто ОС Оберон поверх другой ОС.)
Я просто оспариваю мнение, что защита внутри процесса требует каких-то особых аппаратных наворотов.
Но существует одно качество, которое нельзя купить, — это надежность. Цена надежности — погоня за крайней простотой. Это цена, которую очень богатому труднее всего заплатить.
Здравствуйте, Cyberax, Вы писали:
>> Мы пока что говорим о защите *внутри* процесса. C>Нет. Singularity ОБЯЗАНА быть глобально незащищенной.
Кому обязана?
C>Возможность запуска unmanaged-процессов в ней может быть достигнуто только созданием параллельной классической OS.
Нет. Читай отчет по сингулярити ftp://ftp.research.microsoft.com/pub/tr/TR-2006-43.pdf
Смотри раздел 4 Performance там тестируют 6 конфигураций сингулярити. От полного отсутствия какой бы то нибыло изоляции и даже с выключеной виртуальной памятью до все кроме ядра сидит в своем пространстве в третьем кольце.
А теперь ответь что мешает выность в третье кольцо только неуправляемые процессы?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
S>Недостатков я не вижу — стоимость кросс-процессных вызовов настолько низка, что никаким реальным плагинным системам это не помешает.
Угу, пока речь не пойдет об GUI. Тут и настанет сказочке конец. Покажи сегодня хоть одну большую прогу с богатым GUI, которая не на плагинной системе сделана. Под тысячу переданных сообщений GUI м/у процессами в секунду? Это круто.