Pull to refresh
24
0
Send message

Как я, в итоге, написал новую RTOS, протестированную и стабильную

Reading time40 min
Views83K
Я работаю со встраиваемыми системами в течение нескольких лет: наша компания разрабатывает и производит бортовые компьютеры для автомобилей, зарядные устройства, и т.д.

image


Процессоры, используемые в наших продуктах — это, в основном, 16- и 32-битные микроконтроллеры Microchip, имеющие RAM от 8 до 32 кБ, и ROM от 128 до 512 кБ, без MMU. Иногда, для самых простых устройств, используются еще более скромные 8-битные чипы.

Очевидно, что у нас нет (разумных) шансов использовать ядро Linux. Так что нам нужна какая-нибудь RTOS (Real-Time Operating System). Находятся даже люди, которые не используют никаких ОС в микроконтроллерах, но я не считаю это хорошей практикой: если железо позволяет мне использовать ОС, я ее использую.

Несколько лет назад, когда мы переходили с 8-битников на более мощные 16-битные микроконтроллеры, мои коллеги, которые были гораздо более опытными, чем я, рекомендовали вытесняющюю RTOS TNKernel. Так что это — та ОС, которую я использовал в разных проектах в течение пары лет.

Не то, чтобы я был очень доволен ею: например, в ней нет таймеров. И она не позволяет потоку ждать сообщения сразу из нескольких очередей. И в ней нет программного контроля переполнения стека (это действительно напрягало). Но она работала, так что я продолжал ее использовать.
Читать дальше →
Total votes 162: ↑161 and ↓1+160
Comments61

В опасном мире символов…

Reading time5 min
Views96K
image

Сейчас, когда компьютерная графика достигает всё новых высот, модели в играх становятся близкими к фотореализму, а порог вхождения в игры становится всё ниже, сложно представить себе, что до сих пор развиваются игры, в которых на первое место выходит интересный геймплей и огромные возможности, а графики… нет. Имя этому жанру — Roguelike.

Цитата с Wikipedia:
Roguelike (читается как ро́углайк; сленг «рогалик») — поджанр компьютерных ролевых игр. Характерными особенностями roguelike являются генерируемые случайным образом уровни и необратимость смерти персонажа — в случае его гибели игроку предлагается начать игру заново. Большинство игр этого жанра было разработано на некоммерческой основе и использует двумерный текстовый интерфейс и управление клавиатурой.

Читать дальше →
Total votes 118: ↑104 and ↓14+90
Comments104

Превращаем Raspberry Pi в роутер (пока только для Корбины и Билайна)

Reading time2 min
Views51K
Привет. Вместо очередной инструкции на тему «как сделать роутер из Raspberry Pi» мы решили сделать специальную сборку Raspbian под задачи домашнего роутера. Эту сборку достаточно развернуть на SD карту, вставить ее в RPi — и роутер готов.

Основные возможности такого решения — как у любого домашнего роутера. Раздача адресов устройствам внутри сети, перенаправление портов, DDNS и другие привычные вещи. Есть и приятные отличия — поддержка Pandora и Netflix, возросшая производительность при работе через VPN и практически неограниченные возможности по кастомизации.

Читать дальше →
Total votes 20: ↑16 and ↓4+12
Comments24

Видеорегистратор AdvoCam FD5 — достойная работа над ошибками

Reading time10 min
Views67K


Около года назад мне довелось детально тестировать видеорегистратор AdvoCam FD3. Он показал очень хорошее качество Full HD записи, работал стабильно и обладал отличной комплектацией и функционалом. Но было несколько досадных моментов, которые не позволяли однозначно рекомендовать его для покупки в качестве автомобильного видеорегистратора.

Спустя год, AdvoCam предлагает уже 5-е поколение устройств – модель FD5 Profi, две версии, с GPS и без. Судя по заявленным на сайте характеристикам, на указанные недоработки обратили внимание и постарались их исправить.

В данном обзоре я постарался проверить, насколько удалась работа над ошибками.
Читать дальше →
Total votes 28: ↑27 and ↓1+26
Comments55

UG007: мини-ПК с Bluetooth, двухъядерным процессором и Android 4.1.1 за 60 у.е

Reading time1 min
Views164K


Да, Raspberry Pi пока что вне конкуренции — практически нет миниатюрных ПК подобного класса за подобную цену. Но чем дальше в лес с течением времени появляется все больше интересных моделей мини-ПК, которые являются более функциональными, чем указанная модель. Одним из интересных вариантов является UG007, это миниатюрный ПК в форм-факторе флешки, который может похвастаться двухъядерным процессором Rockchip RK3066 с частотой работы ядра 1,6 ГГц, 1 ГБ ОЗУ и 8 ГБ внутренней памяти.

Читать дальше →
Total votes 56: ↑49 and ↓7+42
Comments107

Новая «девятка» Samsung

Reading time7 min
Views33K
Первый раз ноутбуки новой 9-ой серии Samsung я увидел на барселонском мобильном конгрессе в феврале этого года и, признаться, еще тогда они мне понравились. Очень стильные штучки, — подумал я. Это было странно, потому что вообще-то в эргономике у меня совсем другие предпочтения: мне куда ближе кондовый, брутальный дизайн IBM-Lenovo. И все-таки, несмотря на свою нарочитую элегантность, модели новой самсунговской девятки запали мне в душу. Мне показалось, что пользоваться ими на самом деле очень удобно.
Читать дальше →
Total votes 31: ↑20 and ↓11+9
Comments53

Паяльная станция Lukey702

Reading time3 min
Views221K
SMD Rework Station Lukey702

Долго думал в какой блок опубликовать. Станция дешевая, стоит в России от 1600 до 2500 рублей, в зависимости от жадности продавцов. Считаю, каждому самодельщику необходимо иметь такой девайс. Я давно хотел приобрести такую, и не понятно, как я раньше, обходился без нее! Станция компактная, те, кто знает другие поделки фирмы Lukey, станции старого поколения, сделанные в здоровенных железных ящиках, оценят, эргономичный корпус и органы управления.

image
Читать дальше →
Total votes 75: ↑70 and ↓5+65
Comments97

Работа для программиста в США: 5 простых шагов

Reading time5 min
Views291K
image Статья про то, что делать тем, кто хочет переехать работать в США. Я предполагаю инженерные позиции, на которые проще всего получить визы, но, возможно, статья окажется полезна и другим специалистам.

Мой опыт несколько отличается от нижеописанного (я попала на работу в США после стажировки). Но за 4 года в США пообщалась с людьми, которые попали сюда разными путями и набрала кое-какой опыт. Так что если бы я очень хотела найти работу в США сегодня, то я бы действовала примерно так, как описано ниже.

Заранее извиняюсь, если мой тон кому-то покажется наставническим — я не имею амбиций учить других жизни, просто иногда у меня получается такой стиль.
Читать дальше →
Total votes 166: ↑152 and ↓14+138
Comments138

Мультитест мультиварок: что купить IT-шнику, если хочется плова и борща

Reading time33 min
Views165K
Нам неоднократно поступали предложения о тестировании мультиварок, но до определенного времени мы от них отказывались — ну что такого можно рассказать о мультиварке. Однако, предложения продолжали поступать, и примерно после 5-6 письма редакция Box Overview задумалась, и решили сделать не просто тест одной мультиварки, а глобальное тест-сравнение 8 мультиварок нижнего ценового сегмента от разных брендов.

image

В нашем тесте участвуют 8 мультиварок от компаний Vitek (VT-4209), Kitfort (KT-201), Scarlett (SL-MC411S01), Polaris (PMC 0527D), Rolsen (RMC-5500D), Redmond (RMC-250), Philips (HD2173) и Panasonic (SR-MHS181).

Мы не будем рассказывать вам о дизайне — его можно посмотреть на фотографиях, не будем уточнять наличие контейнера для сбора конденсата — в него он попадает лишь в редких случаях, мы не будем говорить о «эффекте русской печи» и прочей маркетинговой шелухе, которую так любят продавцы.
Мы расскажем о более интересных вещах — об удобстве управления, о качестве рецептов из комплекта, о физической и химической стороне процесса приготовления, о типах антипригарных покрытий, о реальном, а не маркетинговом функционале и о том, что у мультиварок внутри.
Под катом много картинок, фотографий плова и борща, физический и химический ликбез и geek-porn
Total votes 382: ↑363 and ↓19+344
Comments244

Zetes: Java с мультиплатформенным GUI, но без Oracle JVM

Reading time26 min
Views32K
image

Аннотация


В статье описывается фреймворк, позволяющий создавать графические кроссплатформенные приложения, написанные на языке Java, но при этом абсолютно не зависящие ни от Oracle JRE, ни от OpenJDK. Основная идеология фреймворка — по возможности снять с разработчика заботы об обеспечении «родного» look and feel для приложения под каждой операционной системой.

Фактически, на выходе вы получите исполняемый файл, опирающийся только на системные API, на котором нигде не будет клейма «написано на Java».

Все компоненты фреймворка имеют либеральные лицензии (BSD либо Apache), что позволяет использовать их в любых (в том числе, коммерческих) разработках.

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

Готовая, собранная версия приложений, демонстрирующих работу фреймворка под всеми платформами, находится здесь.

Всех интересующихся подробностями милости прошу под кат.
Что же это за штука диковинная?
Total votes 86: ↑85 and ↓1+84
Comments64

Использование Arduino UNO в качестве программатора

Reading time3 min
Views236K
Появилась у меня идея сделать внешний интерфейс для счетчика воды, чтобы не лазать в подвал для снятия показаний. После некоторых размышлений я остановился на ATTiny2313A(стоит ~80р, а ставить для этого Arduino ценой в ~1000р. мне жаба не дает) + несколько резисторов, кнопок и 7-ми сегментный индикатор. Но остановился перед проблемой — в отличии от Arduino здесь нужен программатор. Поскольку я не сильно увлекаюсь МК, то программаторов у меня как-то не водится. Arduino теоретически можно использовать в этом качестве, но реально я этого никогда не делал.
Пришла пора заняться этим на практике...
Total votes 36: ↑30 and ↓6+24
Comments15

Nginx на стероидах — расширяем функционал с помощью LUA

Reading time9 min
Views54K
Для обеспечения работы всех наших внешних продуктов мы используем популярный nginx. Это быстро и это надежно. Проблем с ним почти нет. Наши продукты также постоянно развиваются, появляются новые сервисы, добавляется новый функционал, расширяется старый. Аудитория и нагрузка только растет. Сейчас мы хотим рассказать о том, как мы ускорили разработку, неплохо увеличили производительность и упростили добавление в наши сервисы этого нового функционала, при этом сохранив доступность и отказоустойчивость затронутых приложений. Речь пойдет о концепции “nginx as web application”.
А именно, о сторонних модулях (в основном LUA), позволяющих делать совершенно магические вещи быстро и надежно.
image
Читать дальше →
Total votes 72: ↑69 and ↓3+66
Comments40

Как получить американский диплом о высшем образовании дистанционно

Reading time4 min
Views51K
Тема изменений в системе высшего образования становится все более актуальной. Много говорят об онлайн курсах как альтернативе университетскому образованию. Один из основных аргументов за традиционное университетское образование это отсутствие диплома и реальной аттестации после окончания онлайн курса.

На самом деле аттестацию можно получить. Причём не просто сертификат о сдаче экзамена после определённого курса, а вполне реальный диплом американского колледжа после выполнения конкретной программы курсов.

Читать дальше →
Total votes 50: ↑45 and ↓5+40
Comments14

3G интернет в удаленности от базовой станции с помощью тарелки и кофейной банки

Reading time5 min
Views129K

Всем жителям Хабра — привет!




Суть этой статьи показать еще один вариант словить за уши Э/М волну в относительной глубинке для нужд доступа в интернет.
Если где-то точно такая конструкция уже мелькала, милости прошу ссылку, будет интересно сравнить и пообщаться.
Материал изложу в повествовательной форме, надеюсь, никого этим сильно не замучаю, всякие термины, если кто не знает, и прочие подробности можно смело пропускать, от этого суть поста сильно не изменится.

Постановка задачи

Интернет – штука полезная и нужная, с этим, думаю, поспорить сложно. И если проблем в городе с интернетом нет, то в деревне, где мне часто приходиться по семейным обстоятельствам бывать, есть определенные проблемы. Есть частный деревянный дом а-ля «хата» (место действия: РБ), из интернета в моей окрестности доступ предоставляют 3 оператора, но максимум – это лишь технология EDGE. До двух ближайших базовых станций (БС) около 3.5 и 7 км. Между домом и БС лес, но не вплотную. Хватило бы и EDGE, но загрузка этих станций от других соседних деревень, судя по скорости, такая, что можно «прятаться в картошку».
Вариант покупать готовое решение отпал сразу из соображений спортивного интереса.
Вдохновившись на одном из форумов удачным опытом парней, где использовалась спутниковая тарелка (она же «офсетная зеркальная антенна») и сам 3G модем в фокусе, решил что-то подобное смоделировать да скрутить.
Сразу скажу, что антенну с модемом хотелось закинуть на чердак, дабы не портила внешний вид дома (об этом ниже).

Читать дальше →
Total votes 188: ↑185 and ↓3+182
Comments74

Делаем свой персональный Skype, пошаговая инструкция создания WebRTC приложения

Reading time4 min
Views138K
WebRTC

WebRTC позволяет реализовать real-time аудио/видео связь через браузер (firefox и chrome).

В этом топике я расскажу как реализовать простейшее WebRTC приложение.
Читать дальше →
Total votes 102: ↑98 and ↓4+94
Comments28

Домашний «облачный» сервер на 10 Ватт? Вполне!

Reading time6 min
Views53K
Привет пользователям Хабра.

Сегодня хочу рассказать про домашний веб-сервер, который одновременно прекрасно выполняет функции домашнего медиа-центра (mp3, ip-tv, video, uPnP и т.д.).

Все началось с того, что я уже некоторое время использовал для внутренних нужд сервер HP MicroServer N36L с RAID5 на 4 терабайта(3x2GB HDD WD Green + 8 Gb ECC RAM), с виртуальными машинами на оракловском vBox, который в принципе и неплох, но его постоянное жужжание беспокоило членов семьи в смысле зря съедаемых киловатт в год (если будут интересующиеся, расскажу о нем в одном из следующих постов).
К тому же хотелось чего-нибудь более современного, с возможностью использования в качестве полноценного медиа-центра с прямым подключением к телевизору.
Читать дальше →
Total votes 47: ↑40 and ↓7+33
Comments33

DIY-диммер для тех, кто хочет сам

Reading time2 min
Views62K


В процессе разработки любого проекта многие контрольные точки могут меняться. Порой весьма кардинально. Сегодня мы решили попробовать поменять одну из таких точек своего проекта и опубликовать схему и дизайн печатной платы последней, продуктовой, ревизии нашего DIY-диммера. Чтобы все желающие смогли сами собрать нашу схему и поиграться с ней уже сейчас, не дожидаясь еще не скорого появления на прилавках готовых красивых коробочек «для всех».
Читать дальше →
Total votes 26: ↑19 and ↓7+12
Comments56

Строим свой Gmail с куртизанками и преферансом

Reading time7 min
Views204K

Вместо предисловия


В один прекрасный, а может и не такой уж и прекрасный, день настигла паранойя и меня. Было принято решение бежать от Google подальше. При чем, бежать куда-нибудь на свою площадку, чтобы быть спокойным за сохранность своих любимых сервисов.

Итак, в этой статье я расскажу о том, как я поднимал и настраивал на своем сервере почту, календарь, контакты, RSS-аггрегатор и, в качестве бонуса, хранилище файлов.

Читать дальше →
Total votes 155: ↑135 and ↓20+115
Comments139

Wiren Board — встраиваемый компьютер с Wi-Fi, GPRS, GPS, NFC и Ethernet из коробки

Reading time9 min
Views89K


update: Мы ещё живы и наконец-то открыли продажи!готовим первую партию к продаже конце сентября.
Новая версия стала куда лучше и выглядит теперь вот так:


Подробности в нашем блоге.
/update

TL;DR (Abstract)


Мы сделали маленький «одноплатный» встраиваемый компьютер с хорошим набором периферии, в основном беспроводной (GSM/GPRS, NFC, Wi-Fi, GPS, Ethernet, etc). Рабочее название — Wiren Board (от Wireless Enabled)

Предполагается, что использоваться он будет для всяческой автоматизации — то есть в качестве «мозга» для оборудования. Если вы хотите сделать умное устройство, не разрабатывая целиком собственное сложное железо, то это для вас. Впрочем, для DIY наш компьютер тоже весьма полезен, и об этом направлении мы не забыли при разработке. Если понадобится дополнить чем-то специфическим — функциональность можно расширять готовыми модулями. Что ещё приятно, стоимость компьютера мы планируем сделать всего около $100.

Первая версия уже готова, открыт предзаказ.

Что привело нас к разработке встраиваемого компьютера, через какие этапы мы прошли, и что в итоге получилось — читайте дальше.
Читать дальше
Total votes 117: ↑111 and ↓6+105
Comments75

Как мы делали Wiren Board

Reading time7 min
Views58K
Последние 9 месяцев мы разрабатывали Wiren Board — компактный индустриальный компьютер с множеством встроенных интерфейсов (Wi-Fi, GPRS, GPS, NFC, Ethernet и т.д.) Мы уже писали о нём, и получили кучу отзывов и пожеланий. В итоге в новую версию было внесено много изменений, и эта статья про самые значительные из них.

По сравнению с апрельским прототипом на плате появились 2 USB-host, интерфейс RS-485 и разъём с 8 GPIO. Кроме этого мы сделали новую схему питания, поддерживающую входные напряжения от 5 до 22 вольт, Passive PoE и подключение Li-Pol аккумулятора, добавили управление низковольтной нагрузкой и аналоговые входы на клеммниках.



Как мы это делали, с какими трудностями столкнулись и что получилось в итоге — читайте в нашей статье.
Читать дальше →
Total votes 96: ↑93 and ↓3+90
Comments79

Information

Rating
Does not participate
Location
Россия
Registered
Activity