информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
За кого нас держат?Сетевые кракеры и правда о деле ЛевинаSpanning Tree Protocol: недокументированное применение
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / miscellaneous
Имя Пароль
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Мне было бы гораздо спокойнее если бы у людей вообще не... 13.03.08 13:30  Число просмотров: 2216
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
> Давайте не будем принимать частное за типичное.
>
> Сколько операционных систем написано на C#?

Мне было бы гораздо спокойнее если бы у людей вообще не возникало мысли писать ОС на шарпе. И особенно, если бы таких мыслей не возникало в Макрософте.

> > (а какие фишки предоставляет шарп?)
> >
> Навскидку, первое что пришло в голову:LINQ to Objects; LINQ
> to SQL

Поверхностно просмотрел про linq. Довольно удобный syntactic sugar. С другой стороны то же самое довольно просто делается и в плюсах (хотя вынужден признать не настолько синтаксически красиво) при помощи std::remove_copy_if и бустовых лямбда функций.

> > Я экономлю. В смысле был очень не против, если бы
> проги не
> Если я правильно понял, то приложения-то нативные, нет?

Не всегда. Суть в том, что если я могу запустить десяток нативных приложений до того момента, как они начинают свопить, то я смогу запустить только 2-3 аналогичных менеджед приложения.

> > Хм. Никаких противоречий не видно? Зачем в цепочке
> > исходник->байткод->машинный код звено "байткод",
> если
> > результат один (хотя GC все равно скорее всего будет
> тормозить)
> >
> Нет, мне не видно.
> После ngen.exe -- код оптимизируется для конкретного CPU.
> Причем это делается автоматом в процессе инcталляции .NET
> приложения, а не при его построении.

А какая разница? Я уже писал, что ни разу не видел проблем с деплойментом НУЖНЫХ нативных приложений.

> > Для плюсов этого добра еще больше.
> >
> И что - все это встроено прямо в язык?
> Написано и протестировано лучшими разработчиками Microsoft?

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

> Или все-таки надо где-то искать, вытаскивать, прикручивать,
> разбираться - как это все работает, выбирать какой из
> нескольких компонент лучше.
> A?

> Скажем так. SxS -- бледный аналог того, как это реализовано
> в .NET Framework
> Притом что SxS есть только в WinXP SP2 и выше.
> А .NET можно поставить хоть на Win2K.

SxS есть в XP RTM. Винтукей - порядка 4% рынка. Причем это очень консервативные пользователи, которые не ставят практически ничего нового и следовательно dll hell им не грозит. Кстати, за мою почти 10-летнюю девелоперскую практику я ни разу не сталкивался с этим самым хеллом (даже не используя SxS). Скажем так, размеры этой проблемы слегка преувеличены (примерно как с y2k - ору было больше, чем по поводу dll hell, а все вылилось пшиком).

> Я имею в виду систему безопасности .NET Framework, при
> которой неавторизованный код
> не может вызвать Ваш код и не может заставить его выполнять
> какие-либо действия.

Вот тут возможно мне не хватает кругозора, но я не вижу применения этому. Ну то есть конечно такую систему можно реализовать и нативно, но я не представляю зачем это реализовывать. В принципе большинство удачных парадигм из других языков программирования доступны для C++ в виде third-party библиотек.

> > Каким образом дотнет спасет от червей?
> >
> Вы -- не совсем поняли.

Да нет. То что сама виртуальная машина написана на нативе автоматически делает ее уязвимой (я слышал о нескольких выходах из периметра безопасности в случае джавы, с дотнетом не слышал но и не особо интересовался) для всех тех же проблем, что и скажем с сетевыми программами. Ведь по сети передаются данные, если "правильно" подготовить эти данные, то возможно, скажем, сорвать стек сетевой службе. Точно так же и байткод является данными и если их "правильно" подготовить, то можно сорвать стек виртуальной машине. Дотнет никоим образом не снимает проблему безопасности ибо проблемы с безопасностью всегда были не в АРХИТЕКТУРЕ, а в РЕАЛИЗАЦИИ. И тут уже не важно, насколько защищенной ВЫГЛЯДИТ архитектура, главное насколько она защищенно РЕАЛИЗОВАНА. Safety в случае дотнета это такой же buzzword как и "монокристаллическая бескислородная медь", "обычный стиральный порошок" и "духовность". Чисто маркетинговая фишка не имеющая практически никакой связи с реальностью. А вот падение производительности вещь объективная и легко наблюдаемая

> Программа злоумышленника, написанная на C/C++ может сделать
> все (или почти все).
> А программа злоумышленника, написанная на C# - может только
> похулиганить в своей песочнице.

Для этого есть и другие способы. Как минимум вистовый UAC решает большинство подобных проблем без какого либо пенальти по производительности.

> Одним словом, когда все прикладные программы будут
> выполняться в среде .NET -
> Microsoft будет спать спокойно. Поэтому они усиленно это
> дело продвигают.

Я не знаю почему они это продвигают, но уж во всяком случае не из-за безопасности.
<miscellaneous> Поиск 






Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 1 s   Design: Vadim Derkach