информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Атака на InternetSpanning 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 18:31  Число просмотров: 2487
Автор: Neznaika <Alex> Статус: Member
<"чистая" ссылка>
> > Давайте не будем принимать частное за типичное.
> >
> > Сколько операционных систем написано на C#?
>
> Мне было бы гораздо спокойнее если бы у людей вообще не
> возникало мысли писать ОС на шарпе. И особенно, если бы
> таких мыслей не возникало в Макрософте.
>
А меня - это не трогает нисколько.
Даже наоборот. Чем больше людей пойдут по этой линии, чем больше будет толщина кода на C#, тем больше будут затребованы люди, которые еще помнят что такое WinAPI, SDK, DDK и WinDbg.


> > > (а какие фишки предоставляет шарп?)
> > >
> > Навскидку, первое что пришло в голову: LINQ to Objects; LINQ to SQL
>
> Поверхностно просмотрел про linq. Довольно удобный
> syntactic sugar. С другой стороны то же самое довольно
> просто делается и в плюсах (хотя вынужден признать не
> настолько синтаксически красиво) при помощи
> std::remove_copy_if и бустовых лямбда функций.
>
Ага.
Делается -- или есть уже готовое? Если ты действительно думаешь, что начинающие программисты захотят вникать в эти std::remove_copy_if и лямбда функции -- то я могу только порадоваться твоему оптимизму.


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


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

Если есть 10 разных систем - то тебе надо 10 раз перестроить приложение, и 10 раз построить сетап. А мне надо - один раз построить приложение и при инcталляции вызвать "ngen.exe". Почувствуйте разницу.


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

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


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

Во-первых, ActiveX компоненты в виде *.ocx -- не поддерживаются системой SxS ни в XP RTM, ни в XP SP1. А таких компонент - тысячи.

А во-вторых, и это главное -- SxS требует от разработчиков ручного написания манифест-файлов, со всеми зависимостями, со всеми GUID-ами, и со всеми hash-ми. Так что, на практике -- технологию SxS никто не юзает, кроме самой Microsoft. Посмотри у себя в папке "C:\WINDOWS\WinSxS\Manifests" любой манифест для Microsoft.MSXML2 - и ты сам все поймешь.


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

Вот есть у тебя DLL/COM/ActiveX, которая делает гениальные вещи.
И любой чурбан, который ее где-то надыбал -- будет ее юзать.

А вот в .NET Framework -- это не прокатит.


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

Ты посмотри "Microsoft Security Bulletin" года хотя бы с 2003.
И сразу увидишь, сколько уязвимостей было найдено в native коде, и сколько в .NET


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

Кстати, Vista - у тебя память не жрет, нет?
Вроде как native коде.


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

Наверно, я как-то плохо объясняю, потому что - даже до тебя - очень туго доходит.
Больше не буду отвечать в этой ветке. Сорри.
<miscellaneous> Поиск 






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


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