Перейти к содержанию
    

Вопрос по .NET. Вот написал я приложение на пысюке. Скомпилил в CLI. Запускаю на embedded системе. Либы (простые - prinf) для этого приложения линкуются также в CLI, или они должны быть реализованы отдельно на моей целевой платформе?

Рановато пока об этом, - еще только анонс MicroFramework вышел. Пока у M$ идет туман в терминах, но

всеже .NET - это платформа разработки, а Framework.NET - это пока исполняющий встраиваемый в стартовую ОС Runtime модуль. Конечным результатом разработки являются СОМ-подобные метаданные в М$ формате MSIL. Они и пишутся в девайс после установки Frameworkа. В поцессе работы, встроенный в Framework Just-In-Time — компилятор, выполняет преобразование MSIL в машинный код по мере обращения к соответствующим процедурам (т. е. неиспользуемые фрагменты программы вовсе не компилируются). Вот по поводу этого JIT- микрокомпилятора, похоже, M$ сейчас и договаривается с Motorola, TI, FreeScale ..., -все остальное у них отработано. Скоро все узнаем.

 

P.S. По повду мышей и унитазов полностью с Вами согласен, - тенденция даже таких вещей к усложнению очевидна (не так давно не понимали зачем нужен ARM).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Небольшая видеодобавка - больба минироботов сумо ( сделаны на Мicroframework beta) - июльMEDC 2006

http://download.microsoft.com/download/6/7..._sumo_night.wmv

 

The Parallax Sumorobot has been modified with a StrongArm processor to accept .Net microframework. The original one is using the PIC16C57 processor from Microship.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Внесу свою 5 копеек.

Какое-то время назад я работал в ABB, делали электрические счетчики. Основной офис (железячники) был в Штатах. Так вот, они (американцы) всем отделом полтора года бились над тем, что бы снизить себестоимость на 15 центов. ARM ? Да вы что ! Он дороже на целых 1.5 доллара. Тиражы миллионные. Думаю, про .NET они точно даже думать не будут. Воткнули CMX RTOS (имплементация - один .c файл). Потом, .NET хорош для больших машин (десктопов). Я, как бывший разработчик Win32 приложений (достаточно сложных) прыгал от счастья, видя, что в .NET появился вменяемый reflection, сборщик мусора и... и больше ничего не нужно, в общем-то. reflection хорош для абстрагирования интерфейсов. А зачем это нужно ? Исключительно для большей простоты использования и/или написания своих библиотек. Основное мясо в любой системе - это библиотеки. И все более усложняющиеся языки служат как раз решением для более эффективного написания оных. У MS есть открытая реализация .NET вкупе с компилятором CLI для x86. Называется Rotor. Они же заставили работать свой .NET под FreeBSD. Конечно, .NET будет использоваться, как используется сейчас java. Причем по буржуинским конторам видно, что основное направление использования java сейчас - это servlet'ы. Видимо, основное направление .NET будет GUI. Но не думаю, что когда-нибудь мы будем мигать светодиодами через .NET или java или еще какой-нибудь сложный язык, подразумевающий большой оверхед (проверка выхода за границы массива, сложный менеджер памяти). По крайней мере, при больших тиражах точно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...Но не думаю, что когда-нибудь мы будем мигать светодиодами через .NET или java или еще какой-нибудь сложный язык, подразумевающий большой оверхед (проверка выхода за границы массива, сложный менеджер памяти)....
Еще как будем! Вприпрыжку будем!

 

Представьте, появляется плата:

 

* ARM9 200 Мгц

* 2М FLASH

* 32 M SDRAM

* Ethernet

* SD

* RS-232

* FPGA на шине для custom периферии

* продуманный конструктив

* удобный разъем

 

за <100$. + Вменяемый SDK на основе "сложных языков". С визардами, готовыми компонентами для FPGA, дровами под них и т.д.

 

Фантастика? Вот смотрите:

 

http://gumstix.com/spexboards.html

gumstix basix 200 with MMC slot 64MB SDRAM 4MB Strataflash MMC slot ---- 99$

 

http://www.glomationinc.com/product_9302.html ---- 95$

200MHz Cirrus Logic EP-9302 ARM core processor with math co-processor

32MB 100MHz high speed SDRAM , 4 - 16 MB FLASH

10/100 baseT Ethernet

2 USB

2 UART with RS-485 support

Real-time clock and watch-dog timer

A/D

D/A

Digital I/O

Real time clock

 

Это отладочные платы, у них не такие уж и большие тиражи.

 

Так вот, та самая чудо плата, что я обрисовал - она дополняется небольшой 2-х слойкой, специфичной для проекта - и все, custom железо готово!

 

И в итоге время разработки среднего контроллера сокращается до 1-2 недель. И для небольших тиражей это с лихвой компенсирует более высокую стоимость самих плат. Проекты на потоке делаются силами нескольких человек: программер на "сложных языках", разводчик плат, монтажник.

 

Для того, чтобы сделать такой "финт ушами", нужна серьезная контора и очень взрослые деньги в начале - потом они сторицей окупятся. M$ это вполне по плечу - ей не привыкать делать очень массовые продукты.

 

Так что на самом деле все гораздо серьзнее, чем кажется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...Но не думаю, что когда-нибудь мы будем мигать светодиодами через .NET или java или еще какой-нибудь сложный язык, ....

Еще как будем! Вприпрыжку будем!

Представьте, появляется плата:.......

 

Вот такая, например:

http://www.robmiles.com/net-micro/

(хорошая фотка)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...Но не думаю, что когда-нибудь мы будем мигать светодиодами через .NET или java или еще какой-нибудь сложный язык, подразумевающий большой оверхед (проверка выхода за границы массива, сложный менеджер памяти)....

Еще как будем! Вприпрыжку будем!

...

Так что на самом деле все гораздо серьзнее, чем кажется.

Если для AVR и других слабых контроллеров уже есть прецеденты использования java для "мигания светодиодами" то ARM процесору тем более должно это подойти.:)

Внутренняя спецификация Java довольно простая вещь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что-то сомнения берут. Смысла не видно. Есть только один плюс - использование Visual Studio для отладки. С точки зрения быстроты разработки, уверяю, что взять что-нибудь готовое (типа того же CMX RTOS + TCP/IP + GUI + ??) - будет гораздо быстрее и надежнее.. И дороже, правда (первоначальные вложение). Использование .NET сильно зависит от схемы лицензирования. По оверхеду, боюсь, ARM 200MHz только и сможет что светодиодами мигать (неторопливо). Много было попыток. И процессоры чистые под java делали, и много что еще. В принципе, если будет решение, не привязанное к MS (просто JIT компилятор ECMA кода, т.е. байт-кода .NET) может это и будет как-то использоваться. Но проблем с первого взгляда на порядок больше, чем использование C/C++.

Мне вообще не понятно, как они, например, сделали тот же менеджер памяти. Он же страшно медленный (точнее сам очень быстрый, но конкретно подвисает когда идет сборка мусора). Одного взгляда на внутренности .NET поражают - как это еще работает (более-менее быстро). Думаю, Vista охладит пыл многих, т.к. она написана почти полностью на .NET. Требования уже впечатляют, быстродействие, тоже, боюсь "обрадует".

 

Кому интересно, ссылка на Rotor.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что-то сомнения берут. Смысла не видно. Есть только один плюс - использование Visual Studio для отладки. С точки зрения быстроты разработки, уверяю, что взять что-нибудь готовое (типа того же CMX RTOS + TCP/IP + GUI + ??) - будет гораздо быстрее и надежнее.. И дороже, правда (первоначальные вложение).

В том то и дело, что под Visual Studio будет сидеть не ембеддер, обладающий магическими знаниями и опытом, а обычный кодер. Роботов сумо делали студенты.

А насчет цены, так Visual Studio получется универсальный инструмент - от Vista до светодиода, а Framework бесплатен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В том то и дело, что под Visual Studio будет сидеть не ембеддер, обладающий магическими знаниями и опытом, а обычный кодер. Роботов сумо делали студенты.

А насчет цены, так Visual Studio получется универсальный инструмент - от Vista до светодиода, а Framework бесплатен.

Ну, обычный кодер и на C может писать. А студенты - это вообще отдельная тема. Если какой-то студент что-то там сделал, это совершенно не показатель, что так можно (и нужно) делать. Потому что кроме как просто "работает" есть еще куча других факторов в коммерческом софто/железостроении. Насчет бесплатности Framework - это даже пугает. Сходу не вспомню ни одного бесплатного продукта MS, который был бы вменяемый. Лично я даже от MediaPlayer отказался, т.к. хрен настроишь все эти кодеки. Показывает вкривь и вкось (спутниковый поток).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Господа, давайте всё-таки разделять крупнотиражный продукт от специализированной разработки. В первом случае, как уже было верно подмечено, даже лишние 15 центов на изделие вносят свой вклад. Соответственно, нужны более квалифицированные разработчики. Во втором случае - упор делается на скорость разработки, а на себестоимость продукта и качество (как продукта, так и "программистов"), как правило забивают болт. Поработав некоторое время в аутсорсинговой конторе (а таковых у нас в стране наверное большинство), я успел насмотреться на тот кошмар, что там производится... Расход памяти в несколько гигабайт, торможение восьмипроцессорного сервера при паре десятков подключенных клиентов. Писано было как раз под .Net. ХАЛТУРА это, а не ТОВАР. Это то, что нужно быстро ВПАРИТЬ(другого слова не подберёшь). :maniac:

 

Другой пример - много ли вы видели КРУПНОТИРАЖНОГО софта для ПК, написанного под java или дотнет, а? Софта коробочного или shareware, не важно, главное чтобы стоял на миллионах машин по всему миру. Софта уровня AutoCAD, Photoshop, PCAD, Premiere, Acrobat, Kaspersky Antivirus, да хотя бы уровня Winamp и MediaPlayer? Много видите? Вот и я о том же. Основной объём разработок на java и dotnet - это кривулины, "лишь бы работало".

 

В любом случае, даже при самых неблагоприятных перспективах развития embedded-отрасли, человек, владеющий C# + C + asm будет цениться гораздо больше чем просто владеющий C#. Пишется-то оно проще на шарпе, до поры до времени. Пока вниз спускаться не придётся.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Во многом Вы правы, но ... Я знаю много компаний (западных) которые используют продукты написанные на java. Сейчас наблюдаю за процессом внедрения продукта в компанию, который также написан на java и стоит несколько млн $. На рынок выходит много продуктов написанных под .net. Уверен, что их будет больше после выпуска ОС с интегрированным .NET. Сейчас пишу большие проекты на c#, и поверьте, они очень ценятся в моей компании. Естественно я имею опыт написания программ на С++ и на asm, т.к. занимаюсь программированием около 20 лет. Но хочу сказать что используя C# я могу написать проект быстрее. А глюкавость зависит от отношения человека к тому, что он делает. Могу привести пример: я не имел опыта программирования под ARM или AVR (хочу попробовать), но я купил GSM module с поддержкой java, сделал схему с 1-Wire через I2C, повесил несколько датчиков и несколько исполнительных устройств через GPIO. На java (за вечер) написал несколько библиотек и в итоге получилась не плохая программа, которая автоматически загружается при запуске модуля. Через СМС или DTMF я могу управлять устройствами, а также получать информацию от датчиков при их срабатывании (соответственно по определенной логике). Через инет могу входить на свое устройство как на WEB сервер. И что? На это все у меня ушло не более 1 недели (это хобби и занимался только по вечерам). Я не говорю, что это устройство лучше того, которые создаются вами, но теперь многие смогут работать с данными устройствами, т.е. интерес сильно возрастет к ARM, что и является целью производителя.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

подключенных клиентов. Писано было как раз под .Net. ХАЛТУРА это, а не ТОВАР. Это то, что нужно быстро ВПАРИТЬ(другого слова не подберёшь). :maniac:

 

Другой пример - много ли вы видели КРУПНОТИРАЖНОГО софта для ПК, написанного под java или дотнет, а? Софта коробочного или shareware, не важно, главное чтобы стоял на миллионах машин по всему миру. Софта уровня AutoCAD, Photoshop, PCAD, Premiere, Acrobat, Kaspersky Antivirus, да хотя бы уровня Winamp и MediaPlayer? Много видите? Вот и я о том же. Основной объём разработок на java и dotnet - это кривулины, "лишь бы работало".

 

Ну вот тут есть список халтурщиков на дотнете:

 

http://msdn.microsoft.com/netframework/partners/default.aspx

 

Еще есть:

 

Paint.NET — редактор растровой графики, Washington State University.

 

SharpDevelop — среда разработки, IC#Code.

 

PS. Я ребят спросил :) , еще подбросят ссылок на халтурки.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну вот тут есть список халтурщиков на дотнете:

 

Мои 5 копеек. Ещё один «халтурщик», активно использующий .NET и шарп в своих проектах. :)

http://www.securpress.ru/issue/Tb/2004/tranzas.htm

 

P.S. Извините за поднятие архивной темы.

В период бурного обсуждения, я ещё не знал о существовании electronix.ru

Изменено пользователем ?ELF

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...