Нашей операционной системе понадобился календарь. До сего момента у нас был штамп времени -- число секуд с момента включения, а тут вдруг понадобилось хронологический порядок человеку демонстрировать в понятных для человека условных единицах...
Решения... Рассказать в двух словах не получается.
Сегодняшний день -- день рождения новой ФС. Предлагаю отметить его ликованием. Наконец-то мы завершили процесс разработки и уже не осталось сомнений -- файловой системе быть!
Наши программисты, когда требуется создать уникальный идентификатор вводят DEADBEAF - есть такое шестнадцатеричное число (некоторых завораживает). Пока отлаживал файловую систему обнаружил BAADF00D - таким числами были заполнены не инициализированные блоки. А заодно так стал называться уникальный идентификатор тома, потому что его никто не назначал. Странный юмор у программеров.
Говорите ли вы на языке Хекс? Оказывается можно в шестнадцатеричных кодах выражать слова... DEFEC8ED -- тоже ничего себе обозначение для метки тома. За пять минут держась за кружку с растворимым кофе сочинил BADC0FFE. Думаю ничего хорошего на таком языке выразить не удастся. NAN
Протокол нужен для того чтобы его соблюдать... В ходе реализации драйвера мы много времени потратили вовсе не на реализацию, а на решение проблемы почему при отказе от обработки команды, которая в спецификации USB значится как опциональная возникает задержка на подключение устройства. Протокол обязывает останавливать поток признаком Halt и тут же сообщать о готовности дальнейшей работы. Только в нашем случае почему-то Винда выжидала паузу в 10 сек. В тоже время, Linux не спрашивал ничего лишнего, на что мы не могли бы ответить. Мы поизучали логи флешек. Флешки почему-то вообще не используют Halt прежде чем ответить с нарушением ожидаемой длины. В итоге сработало решение отвечать "пустышкой"-ноликами на любой опциональный запрос. Видимо винда никак не анализирует эти запросы.
Реализовали аппаратно, на FPGA, кодирование бинарного потока для H.264. Получилось 170 Мгц, блок 4х4 кодируется за 12-24 такта, на такой скорости можно паковать не менее четырех потоков HDTV одновременно.
Результат преобразования DCT после этапа квантизации кодируется в битовый поток методом CaVLC и дальше его остается только уложить в файл или передать по сети. Мы делаем полностью аппаратную реализацию процесса упаковки видео.
Наши разрабатывают сопроцессор для упаковки видео в формат H264. Реализованы пока только отдельные составные части кодека, их ещё предстоит собирать воедино. НО уже сейчас можно похвастаться параметрами. Сделали преобразование DCT, позволяет паковать от 4 до 20 потоков видео в разрешении HDTV одновременно.
В мире наблюдается бум, повышенный спрос на цифровое видео. Всем почему-то надо HDTV. Разрабатывем аппаратные кодеки H.264, изучаем стандарты и интерфейсы HDMI, потому что заказчики интересуются. В какой-то момент настало понимание проблемы. Придумали черный ящик с четырьмя интерфейсами HDMI, Ethernet и HS USB, без единой кнопки.
Иду по проспекту, считаю камеры уличного наблюдения. Туда шел на домах насчитал 5 камер. В вестибюле станции метро Василеостровская, маленькая такая станция, вечно переполненная, насчитал 8 камер. На той стороне улицы ещё две камеры, внизу целых 16 камер. Всё это аналоговые камеры.
Нужен Федеральный закон, запрещающий запись и видео наблюдение частной жизни.
Файловую систему обозвали rfs потому, что для роботов, для железных дорог и для бешеных мобильных видео систем. Все эти слова на букву R, так что получилось в сумме R3-FS. R3 -- это код проекта под которым в нашей лаборатории изобретаются электронные штуки и ПО для огромных человекоподобных роботов. В данном случае мы взялись делать глаза с распознаванием образов. А за глазами потянулись видео архивы на Flash носителях.
Нам понадобилась файловая система для контроллеров. Файлы должны создаваться контроллером и представляться через драйвер USB mass-storage device в ПК. Тут особого выбора нет надо чтобы представлялись исключительно файловой системой FAT. FAT в этом вопросе - стандарт де-факто. Вы можете закатать ещё несколько файловых систем, но только FAT будет поддерживаться везде, где есть USB.
Пока страна отдыхает, завороженная словом "кризис", наша лаборатория занимаются перспективными разработками. Одна из тематик - возобновляемые источники энергии. Есть невозобновляемые, к ним относятся: нефть, уголь..., всё что можно сжечь навсегда. А вот ветер дуть не прекращает и солнце светит каждый день. Аккумуляторы тоже почему-то относятся к категории возобновляемых источников.
Мы разрабатываем электронное устройство, которое, за счет "нулевых" колебаний тока вблизи точки максимальной мощности источника, позволяет эффективно «высасывать» энергию из искусственно созданного источника энергии.(см. определение МНТ)
Источники могут выдвать ток и напряжение. Если его не нагружать, без нагрузки, источник покажет максимум напряжения, а если закоротить, то покажет максимальный ток -- так ведет себя любая батарейка и так себя ведет источник возобновляемой энергии или генератор. Наше устройство создает небольшие колебания тока в точке максимальной мощности источника и всё время подстраивается под максимум выходной мощности. Принцип работы получил название MPPT (maximum power point tracker). Устройство предназначено для повышения эффективности солнечных энергоустановок. Ожидаемый эффект от применения -- повышение КПД на 10-20%.
Мы сделали привод, который работает без радиатора на самых здоровых шаговых моторах (FL110STH), какие только удалось достать. Да и греться ему не с чего, потому что транзисторы, которые на нем установлены спекаются при 70А, т.е. запас по току у драйвера просто гигантский. Правда могут разогреваться резисторы измерительные, но это тоже не требует радиатора.
Мы сдали в эксплуатацию очередную версию системы измерения жесткости железнодорожного полотна под поездной нагрузкой (электроника+ПО). Система выполнена на базе триангуляционных оптических датчиков SH32LS2 нашей разработки. Система позволяет невзирая на щебенку, солнечные блики, мазут и грязь измерять провисание шпал и выгибание рельс. Измерения производятся на каждый сантиметр пути на скорости до 20 км/ч. По данным измерений принимаются решения о ремонте и необходимости обслуживания ж/д полотна: где щебенку подсыпать, где скрепление подтянуть. Если где-то на Московской или Октябрьской ЖД поезд не сошел с рельс -- в этом есть часть нашей заслуги.
Разрабатываем драйвер для мощных моторов серии FL110 и FL86. Драйвер сможет работать на напряжениях до 48-90В и с токами до 12А. Надеямся что без радиатора обойдется. В драйвере предусмотрен режим дробления шага 1/16. В устройстве мы применили оригинальный алгоритм управления с обратной связью по току. Вся системная математика (DSP) реализована аппаратно на микросхеме программируемой логики CPLD Altera MAX II.
День системного администратора встретили ратными подвигами! За два дня до события во мне проснулся настоящий сис-админ и выдал. Такое выдал. Уж выдал, так выдал.
Сегодня мы выдумывали некий странный ядерный модуль для нашей операционки (R3-RTOS). Мы хотим выработать общий интерфейс для трех вариантов воплощения разумной деятельности робота: аппаратной, программной и ... для реализации мыслительной деятельности поверх SQL баз данных.
Как бы поменять железо серверу, не выключая его и не перегружая. Для этого то, что меняется должно втыкаться по-горячему, без выключения питания.
Ходит такая байка. Приехали как-то японцы из Sun с семинарами про Спакри к нашим военным. А наши и спросили: а можно находу процессор поменять? На наших эльбрусах, говорят, процессорный блок можно было по горячему менять...
У нас новая работа. Нам заказали контроллер для изготовления спасательных кругов -- это управляющая электроника для автоматической чудо-печки. Контроллер должен замесить тесто и испечь бублик с хрустящей корочкой. Раньше круги получались не пышные, тяжелые, потому и тонули. А теперь круги будут внутри полые.