22
Сен

Язык для virt2real

Написал Максим Крентовский в Исследования

Виртурилке, как любой другой платформе для DIY-творчества, необходимо API и системный язык, позволяющий реализовывать 80% типовых задач, не выходящих за рамки базового применения устройства. Это не касается задач, в которых нужна поддержка специализированного оборудования или максимальное быстродействие с целью обеспечить минимальную задержку реакции системы.

Во всех остальных случаях можно обойтись достаточно простой моделью, позволяющей осуществлять базовые операции над одним устройством или их группой для создания систем управления с обратной связью через аудио/видео. Предполагается, что в основе этой модели будет лежать протокол поверх HTTP (REST, JSON RPC, и т.п.), который будет использован для управления конечным оборудованием.

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

21
Окт

MassControl — развлекаемся с Эрлангом

Написал Максим Крентовский в Деятельность

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

Чтобы немного упростить процедуру получения файлов конфигураций и внесения (что очень актуально, допустим для Cisco-like конфигураторов) я написал простое приложение на Erlang, которое позволяет:

  • послать по SSH команду через web-интерфейс и послать результаты исполнения обратно;
  • сохранить результаты выполнения в текстовый файл и добавить его в git.

Подробнее →

Комментарии к записи MassControl — развлекаемся с Эрлангом отключены
07
Июл

Система обмена файлами

Написал Максим Крентовский в Деятельность

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

Порой необходимо передавать файлы большого объема, для чего применение почты может быть не совсем удобным вследствие многих ограничений на размер письма и общую емкость ящика. Именно для решения этой задачи была реализована система обмена файлами. Каждый участник обмена, получив свой индивидуальный логин и пароль, может заливать на сервер файлы. Каждый файл помещается в отдельную папку, которые доступны для общего обзора администратору системы. Так же пользователи могут удалять файлы, которые уже не нужны.

Ничего сложного, но в целом имеет право на существование. 🙂

Следующая страница →