А где 343.12.345.33? В видео только набор: ipconfig. Для проверки IP-адреса могли использовать какую нибудь консольную программу, которая выдала бы информацию вплоть до географических координат.
Индустрия ИТ движется в сторону Runtime сред с возможностью переноса кода между платформами. Раньше .NET от MS работал только под Windows, а сейчас на Linux прекрасно себя чувствует. Нативный C++ код в большинстве будет работать быстрее. Но весь вопрос, сколько будет затрачено человеко-часов, и какая квалификация потребуется.
В битве стоимости микроконтроллера и стоимости затрат человеко-часов на разработку ПО в совокупности подготовки разработчика, цена микроконтроллера все меньше имеет значение. Новое время диктует новые требования, необходимо взаимодействие с Интернетом, поддержка различных протоколов связи, поддержка TLS, шифрование, OTA обновление. Все это реализовывать на C++ весьма долго и затратно. Дополнительно, высокая абстракция от оборудования, позволяет конечному разработчику устройства гораздо быстрее сменить сам микроконтроллер. Именно это качество, перенос Arduino-совместимого код на различные микроконтроллеры, изменил индустрию навсегда. Сбив спесь с крупных компаний, потому что теперь светодиодом уже может мигать и школьник.
С++ для микроконтроллеров останется, но будет существенно потеснен. Как в свое время театр потеснил кинематограф. Театр остался, но для особых сценариев, для утонченных дам и господ.
Так в этом как раз и плюс. Можно оценить насколько продукт готов для массового потребителя. Апеллирование к квалификации и переход на личности это последний аргумент в споре, когда нечего сказать. Если у Вас есть претензии по существу, выскажите их.
По совмещение кода будет в продолжение.
Архитектура отраженная в схемах правильная. nanoCLR по факту и является ОС с HAL и остальными модулями ChibiOS. Поэтому и нет на схеме ChibiOS в виде отдельного самостоятельного компонента. Совсем детали, не смотрел, в практической части более детально этот момент распишу. С System.Math на самом деле немного другая история, связанная с кодированием больших типов данных, и оптимизацией арифметических операций. Это интересный момент, постараюсь представить в следующих публикациях.
1. .NET nanoFramework и .NET 5 напрямую не связаны. .NET nanoFramework это форк «большого» .NET. Безусловно, некоторые фичи .NET 5 могут быть перенесены.
2. уже есть ответ в комментариях
Вот что бывает когда передали «родное, отечественное» независимому блогеру, далее есть Анбоксинг и установка ОС. //Андрей Нифедов.Купил русский процессор Байкал BE-T1000 BFK3.1 за 40 000 руб. Фильм 1. Презентация.
А этот комментарий с youtube, оставлю здесь, как есть: Сергей Белевский. тайм-код: 26:17 Перевожу с русского на русский. Инвестор потратил на аналог ардуино стопицот охулиардов трилионов и не желает выкладывать документацию в открытом доступе. Явно побаиваются очередной статейки на хабре, которую тамошние печенеги и половцы немедленно напишут, как только получат доступ к файлам.
wigneddoom, Вы видимо сами не очень то хорошо разбираетесь в компьютерах и ARM. Замечания выше были по делу. Ядро Cortex-A57 старое, от моей Banana Bpi-m64 c Cortex-A53, далеко не ушло. А свою банану, я покупал еще в 2017 году, как никак 4 года прошло, это притом что плата была из среднего ценового сегмента. А здесь нам презентуют как бы «новье».
Далее, а зачем 128GB памяти EEC, если производительность процессора на уровне нынешних бюджетных телефонов? Тем более, в Baikal-M не указан такой объем.
Набор интерфейсов полное убожество. Всего два UART'а, нет MIPI DSI, и на схеме не нашел PWM. Они банальный вентилятор, на программный ШИМ будут вешать?
Байкал М это обычный лицензированный ARM SoC, прикладного софта для него уже много лет как гора в той сфере, куда его разработчики позиционируют.
Ну да, все так просто, какой прикладной софт? Тот на котором работают архитекторы и использует GPU для рендера? А как с драйверами, их уже завезли? Я думаю с драйверами там просто швах. Как показывает практика, железку гораздо проще и быстрее собрать, чем под нее написать драйвера и остальной сервисный софт. Когда независимому блогеру, передадут для теста, в котором он сравнит Baikal-M со своим телефоном, вот тогда объективно и оценим достижения «импортозамещения».
Конечно хорошо что, что то делают. Но ребята, выпускать SoM на ARM Cortex-A57, да еще по 28 нм техпроцессу, это прошлый век. Возьмем, не особо топовую китайскую плату Orange Pi 4, цена очень классная, ровно 100$ на Ali (95$ плата + 5$ доставка). На Orange Pi 4 установлен Rockchip RK3399, два ядра Cortex-A72 и четыре Cortex-A53, Mali-T864. Учитывая наличия двух более мощных ядер A72, и 4 менее мощных ядер A53, можно предположить что производительность будет схожа. Хотя, учитывая разгон Rockchip RK3399 до 2.0GHz, возможно апельсинка будет шустрее. Baikal-M еще в релиз не вышел, а китайская плата за 100$ ничем не хуже. Но думаю компьютеры на Baikal-M будет стоить весьма астрономических денег, учитывая предыдущие цены. Я уже молчу про гигантский размер платы. Неужели нельзя лицензировать поновее чип, и сделать хоть что-то нормальное для людей? Или разрабатывать RISC-V процессоры, на которые не нужно будет покупать лицензии?
Некоторые скажут, зато отечественная и независимая. А модули RAM и остальную обвязку, кто и где делает? Какой в этом смысл, если поставки этих компонентов из-за рубежа будут прекращены, то это приведет к невозможности производить отечественные компьютеры.
В .NET Core 3.1 была еще одна ошибка связанная с мультидоменным ssl сертификатом Let's Encrypt. Причем, с сертификатом от других центров такой проблемы не наблюдалось. Если зайти по ssl на сайт у которого в сертификате прописано два доменных имени, например mail.contoso.com и www.contoso.com, то вылетало исключение о невозможности установления рукопожатия tls. Более детальное исследование проблемы показало, что ошибка возникает в IEnumerator при перечислении доменов в сертификате. Решать проблему не стал, было проще выписать ssl сертификат с одним доменом. Нужно будет проверить остался ли такой баг в .NET 5, или нет.
Из публикации уберу данное утверждение, т.к. выходит за пределы основной тематики и не совсем корректно. Не берусь утверждать про истину в последней инстанции, мнение основано на одной из публикаций CAN против RS 485: почему тенденция направлена в сторону CAN
Про соответствие какого конкретно стандарта Вы говорите? Решения OrgPal.Iot работают на нефтяных месторождениях в Северной Америке, про Россию не идет речь.
Устройство PalThree сертифицированно как совместимое с Azure IoT. т.е. обмен данными с ажуром, эта железка делает без проблем и ошибок. Это не сертификация промышленного оборудования в соответствие с мировыми стандартами ISO или другими. Сотрудники Microsoft протестировали работу PalThree с ажуром и подтвердили прохождение всех тестов совместимости, по результату выдали серификат.
Никто такое и не заявлял. GHI Electronics первая в промышленных масштабах выпускала устройства с запуском на них .NET кода. Их решения не полностью Open Source, в отличие от .NET nanoFramework.
У Вас как то тоже нет цифр. Если возьму STM32NUCLEO-F091RC, то обязательно найду где достать профессиональный осциллограф, и сделаю все возможные тесты на отклик и скорость, с .NET и без него.
Да конечно, Java загибается, прям умерла навсегда, вот почитайте про microej. Пример Hello World на MicroEJ с выводом на LCD. Siemargl, почаще пользуйтесь гугл поиском.
Серьёзно? Вы купили устройство, сертифицированное под Linux и на нём у вас прерывается звук и куда-то отваливается веб-камера? Я такого не видел, извините.
Вот именно такая ситуация достаточно часто происходит, когда переходишь на новую версию ядра. А Вы можете много найти мультимедиа устройств сертифицированные под Linux? Вот Linux совместимые да, но никто не дает гарантии 100% работоспособности всех заявленных функций устройства. Постоянное переписывание системный вызовов и API дает о себе знать.
Как раз и противоречит. Разработка это непрерывный процесс. Весь вопрос заключается в том, насколько первоначальное состояние системы отличается от текущего. Т.е. были ли внесены изменения в таком количестве, что бы считать новое состояние, новым видом. Это далеко не праздный вопрос. Первый самолет братьев Райт весьма отличается от авиалайнера Airbus A380. Ведь никто не считает Airbus A380 подвидом, вида самолета братьев Райт.
Начнем с того что перевод заголовка неверный, из-за этого дальше пошла мешанина, нужно четко отделять мух от котлет. Есть Linux ядро, а есть ОС построенные на Linux ядре. Причем не все ядра одинаковы похожы. Google использует свою версию ядра Linux. Например, у меня есть смартфон на Android процессоре Allwinner A64, и есть одноплатный компьютер Banana Pi BPI-M64 с ОС Armbian (дистрибутив на базе Ubuntu 18.04.5 LTS) на том же процессоре. Но своем смартфоне, я вряд ли смогу запустить Armbian, потому что драйвера на некоторые устройства с Android не будут работать в Armbian из-за разных ядер.
Смысл первоначальной статьи и заголовка можно перевести как: 85% всех смартфонов работают на операционной системе, в основе которой лежит Linux ядро. Длинно конечно, но зато верно. На будущее, нюанс перевода слова «powered» применительно к технике — заключается в что, что смартфон работает не на непосредственно на Linux. А работает на некой системе, которая в свою очередь работает на Linux или в составе которой Linux. Это как моя железка, которая работает на программе «Рога и Копыта», написанная на C# .NET. Я могу написать: My device works on the program «Horns and Hooves» и «My device are powered by .NET».
Можно. Но только не в качестве среды разработки, а среды исполнения. Разработка будет в Visual Studio Code в Windows, отладка по сети TCP/IP в интерактивном режиме. Платформа .NET, проект dotnet/iot, позволяет запускать код C# на одноплатных компьютерах ARM с Linux. Можно получать доступ к периферии GPIO in/out, шине I2C для работы с датчиками и другими устройствами, и т.д. Причем это не только Raspberry Pi, а и другие платы, например Banana Pi BPI-M64 с SoC Allwinner 64 Bit Quad Core ARM Cortex-A53, можно выбрать и любую другую плату из каталога armbian.com/download/. Сейчас готовлю публикацию, как работать с GPIO используя C# на плате Banana Pi BPI-M64 (Armbian/Linux). Предварительно, если интересно, можно настроить среду разработки и инструменты, как в публикации Удаленная отладка приложения на .NET 5.0 в Visual Studio Code для ARM на примере Banana Pi BPI-M64 и Cubietruck (Armbian, Linux) . И Docker, если собираетесь запускать .NET 5 код в контейнерах.
На AVR работает ChibiOS/RT, порта .NET nanoFramework пока нету. И скорее всего, не будет т.к. нецелесообразно. Принципиальный плюс ARM по сравнению AVR, заключается в наличие отдельного блока обработки сигналов GPIO, который независим от основного потока вычислений. Даже если на ARM загрузить вычислительный блок на 100%, то значения сигналов с GPIO не будут теряться, они будут складываться в буфер и ожидать когда их считают, или просто переполнится буфер. .NET nanoFramework и .NET Micro Framework используют в промышленном производстве, где такое недопустимо.
В битве стоимости микроконтроллера и стоимости затрат человеко-часов на разработку ПО в совокупности подготовки разработчика, цена микроконтроллера все меньше имеет значение. Новое время диктует новые требования, необходимо взаимодействие с Интернетом, поддержка различных протоколов связи, поддержка TLS, шифрование, OTA обновление. Все это реализовывать на C++ весьма долго и затратно. Дополнительно, высокая абстракция от оборудования, позволяет конечному разработчику устройства гораздо быстрее сменить сам микроконтроллер. Именно это качество, перенос Arduino-совместимого код на различные микроконтроллеры, изменил индустрию навсегда. Сбив спесь с крупных компаний, потому что теперь светодиодом уже может мигать и школьник.
С++ для микроконтроллеров останется, но будет существенно потеснен. Как в свое время театр потеснил кинематограф. Театр остался, но для особых сценариев, для утонченных дам и господ.
Архитектура отраженная в схемах правильная. nanoCLR по факту и является ОС с HAL и остальными модулями ChibiOS. Поэтому и нет на схеме ChibiOS в виде отдельного самостоятельного компонента. Совсем детали, не смотрел, в практической части более детально этот момент распишу. С System.Math на самом деле немного другая история, связанная с кодированием больших типов данных, и оптимизацией арифметических операций. Это интересный момент, постараюсь представить в следующих публикациях.
2. уже есть ответ в комментариях
А этот комментарий с youtube, оставлю здесь, как есть: Сергей Белевский. тайм-код: 26:17 Перевожу с русского на русский. Инвестор потратил на аналог ардуино стопицот охулиардов трилионов и не желает выкладывать документацию в открытом доступе. Явно побаиваются очередной статейки на хабре, которую тамошние печенеги и половцы немедленно напишут, как только получат доступ к файлам.
Далее, а зачем 128GB памяти EEC, если производительность процессора на уровне нынешних бюджетных телефонов? Тем более, в Baikal-M не указан такой объем.
Набор интерфейсов полное убожество. Всего два UART'а, нет MIPI DSI, и на схеме не нашел PWM. Они банальный вентилятор, на программный ШИМ будут вешать?
Ну да, все так просто, какой прикладной софт? Тот на котором работают архитекторы и использует GPU для рендера? А как с драйверами, их уже завезли? Я думаю с драйверами там просто швах. Как показывает практика, железку гораздо проще и быстрее собрать, чем под нее написать драйвера и остальной сервисный софт. Когда независимому блогеру, передадут для теста, в котором он сравнит Baikal-M со своим телефоном, вот тогда объективно и оценим достижения «импортозамещения».
Некоторые скажут, зато отечественная и независимая. А модули RAM и остальную обвязку, кто и где делает? Какой в этом смысл, если поставки этих компонентов из-за рубежа будут прекращены, то это приведет к невозможности производить отечественные компьютеры.
Про соответствие какого конкретно стандарта Вы говорите? Решения OrgPal.Iot работают на
нефтяных месторождениях в Северной Америке, про Россию не идет речь.
Устройство PalThree сертифицированно как совместимое с Azure IoT. т.е. обмен данными с ажуром, эта железка делает без проблем и ошибок. Это не сертификация промышленного оборудования в соответствие с мировыми стандартами ISO или другими. Сотрудники Microsoft протестировали работу PalThree с ажуром и подтвердили прохождение всех тестов совместимости, по результату выдали серификат.
Да конечно, Java загибается, прям умерла навсегда, вот почитайте про microej. Пример Hello World на MicroEJ с выводом на LCD. Siemargl, почаще пользуйтесь гугл поиском.
Вот именно такая ситуация достаточно часто происходит, когда переходишь на новую версию ядра. А Вы можете много найти мультимедиа устройств сертифицированные под Linux? Вот Linux совместимые да, но никто не дает гарантии 100% работоспособности всех заявленных функций устройства. Постоянное переписывание системный вызовов и API дает о себе знать.
Смысл первоначальной статьи и заголовка можно перевести как: 85% всех смартфонов работают на операционной системе, в основе которой лежит Linux ядро. Длинно конечно, но зато верно. На будущее, нюанс перевода слова «powered» применительно к технике — заключается в что, что смартфон работает не на непосредственно на Linux. А работает на некой системе, которая в свою очередь работает на Linux или в составе которой Linux. Это как моя железка, которая работает на программе «Рога и Копыта», написанная на C# .NET. Я могу написать: My device works on the program «Horns and Hooves» и «My device are powered by .NET».