Linux на пике популярности, но все еще мало на настольных компьютерах
За один месяц доля Linux на мировом рынке настольных операционных систем увеличилась почти на полпроцента: с 4,05% в июне до 4,45% в июле.
В итоге - нет, но вы, возможно, захотите прочитать дальше, чтобы узнать, о чем идет речь, и убедиться, что я ошибаюсь.
Должен признаться, что я пропустил первоначальное объявление о Pigweed еще в 2020 году. Но если бы я его заметил, то, скорее всего, отнесся бы к нему как к очередной попытке взять на себя разработку IoT, создав программную систему, от которой нельзя отказаться - можно только отказаться. Тогда это выглядело бы действительно недоработанным. Спустя четыре года она выглядит немного убедительнее, но создание такой системы - задача не из легких.
Это предложение Google - «современный пакет для разработки встраиваемых систем». Если вы уже сражались с каким-либо инструментарием, вы можете подумать, что что-то простое может быть лучше. Конечно, после того как вы (в основном) выиграли битву, известная вам инструментальная цепочка становится единственной, по которой можно сравнивать все остальное, и переход на что-то другое только потому, что оно отличается, сопряжен с большими издержками. Это большой барьер для всего нового, но это Google, и она заявляет:
«Эти компоненты используются в миллионах устройств, включая собственный набор устройств Google Pixel, термостаты Nest, роботов DeepMind, а также спутники и автономные беспилотные летательные аппараты».
Если это достаточно хорошо для Google, то на это стоит обратить внимание, и, представив Pico 2, компания делает большой акцент на помощи, которую она получила от команды Raspberry Pi. Он работает и с оригинальным Pico, так что это не совсем революция, как его рекламируют.
Он называется Pigweed, потому что:
«Свинорой, также известный как амарант, - это питательное зерно и листовой салат, который также является быстрорастущим сорняком». При разработке проекта, который в итоге стал Pigweed, мы хотели найти название, которое было бы веселым, игривым и отражало то, как мы видим рост Pigweed. Команды начали бы использовать один модуль, который привлек их внимание, и после того, как это пошло бы хорошо, они быстро начали бы использовать больше».
Википедия гласит:
«Pigweed может означать любое из ряда сорных растений, которые могут использоваться в качестве корма для свиней».
Без комментариев.
Когда я сталкиваюсь с новой системой разработки IoT, мой первый вопрос всегда - что она поддерживает. Это всегда оказывается сложным вопросом из-за желания не признавать, насколько он ограничен. Единственный случай, когда информацию легко найти, - это когда поддержка настолько обширна, что ею стоит похвастаться. Даже если вы найдете список поддержки, вам придется читать мелкий шрифт, чтобы узнать, какие аспекты устройства действительно полностью поддерживаются. Обычно результат разочаровывает. Pigweed не является исключением из этого правила. Она поддерживает несколько плат Nordic и Pico. Конечно, мне нравится Pico, но есть множество других устройств, которые она могла бы поддерживать - например, ESP32.
Также нужно сказать, что Pigweed придерживается очень своеобразного взгляда на разработку. Вы должны использовать C++, писать тесты, использовать систему сборки Bazel, RTOS - Zephyr и использовать настолько сложный диалект C++, насколько сможете - даже для понимания примеров.
Например, чтобы мигать светодиодом:
int main() {
demo::system::Init();
auto& rpc_server = pw::System().rpc_server();
auto& monochrome_led = demo::system::MonochromeLed();
static demo::BlinkyService blinky_service;
blinky_service.Init(
pw::System().dispatcher(), pw::System().
allocator(), monochrome_led);
rpc_server.RegisterService(blinky_service);
PW_LOG_INFO(«Started blinky app; waiting for RPCs...»);
demo::system::Start();
PW_UNREACHABLE;
}
Собственно сервис blinky_service немного более понятен, но все равно не прост. Я хочу сказать, что эта система, возможно, и стоит того, чтобы пройти крутую кривую обучения, связанную с освоением всех новых инструментов и современного C++, но простой она не является. Я не думаю, что есть смысл даже рассматривать Pigweed, если у вас нет перспективы очень большого проекта и, возможно, большого количества соавторов. Все его преимущества, похоже, относятся к «верхней» части проекта. Я не могу найти никакой поддержки стандартного набора устройств - ни однопроводной шины, ни GPS, ни поддержки температуры/давления/влажности, ни драйвера дисплея и так далее. Похоже, мы работаем на уровне базовых шин - SPI, I2C и так далее. Это не очень хорошо, даже примитивно...
Затем возникает вопрос доверия. После того как Arm только что отказалась от Mbed OS, выбор чего-либо, кроме базового инструментария для аппаратного обеспечения, выглядит все более опасным. Мы все также знаем, что Google имеет репутацию компании, которая отказывается от проектов по причинам, которые далеко не очевидны. Доверили бы вы свой долгосрочный проект компании Google, если бы то, что вы используете, не было основным для Google и не занимало бы первое место по популярности?
За один месяц доля Linux на мировом рынке настольных операционных систем увеличилась почти на полпроцента: с 4,05% в июне до 4,45% в июле.
Вышла версия Bun v1.1.22 с улучшениями производительности: xpress теперь в три раза быстрее в Bun, модули ES быстрее загружаются на Windows, а Bun.serve() на 10% быстрее при POST-запросах.
В интервью в преддверии выставки AI & Big Data Expo Europe Стерлинг Чин, старший специалист по работе с разработчиками компании Postman, рассказал об инструменте Postbot, работающем на основе искусственного интеллекта, и его влиянии на разработку API.
Продолжаем добавлять языки программирования для Вас.
Впереди много интересного!
Только свежие новости программирования и технологий каждый день.
Комментарии