LINUX.ORG.RU

Сообщения shkolnick-kun

 

Просят указать VAT ID, только где его взять?

Форум — Job

Привет, ЛОР, суть такова: вышли на меня одни товарищи из евросоюза, и попросили проконсультировать по одному вопросу.

Когда встал вопрос задатка, попросили в счете (invoice) указать VAT ID.

А где мне его взять?

Я жеж из РФ, у нас тут своя атмосфера с налоговым кодексом и ИНН!

В общем, прошу совета у тех, кто занимался внешнеэкономической деятельностью...

Что указать в качестве VAT ID?

 , ,

shkolnick-kun
()

ALT Linux Engineering

Новости — Open Source
Группа Open Source

Вышел дистрибутив ALT Linux Engineering, который представляет собой неофициальную сборку ALT Linux с набором свободного программного обеспечения для инженеров.

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

Дистрибутив включает в себя множество свободных программ:

  • 2D и 3D MCAD;
  • EDA;
  • CAM-системы и системы моделирования изготовления деталей на станках с ЧПУ;
  • программы для 3D-печати;
  • программы для АСУТП.

Доступны сборки под архитектуры i586 и x86_64.

Дистрибутив будет представлен на Четырнадцатой конференции разработчиков свободных программ в Калуге.

>>> Подробности

 , , ,

shkolnick-kun
()

Cистема программирования YAPLC-1.0.0

Новости — Open Source
Группа Open Source

Вышла система программирования YAPLC-1.0.0. YAPLC — это свободная система программирования ПЛК.

YAPLC представляет собой набор программ и библиотек со свободными лицензиями, которые позволяют создавать программное обеспечение ПЛК на базе микроконтроллеров.

По словам разработчиков, в данном релизе были стабилизированы архитектура и набор компонент системы.

Основные компоненты YAPLC:

  • Beremiz — интегрированная среда разработки программных ПЛК на языках IEC-61131-3;
  • matiec — транслятор языков программирования IEC-61131-3, генерирует программный ПЛК на Си;
  • GNU ARM Embedded Toolchain — набор инструментов разработчика на Си/Си++.
  • CanFestival — стек CanOpen;
  • libremodbus — стек ModBus, форк FreeModbus с поддержкой нескольких портов и мастера;
  • libopencm3 — библиотека драйверов периферии для микроконтроллеров с ядрами Cortex-Mх;
  • stm32flash — загрузчик для микроконтроллеров STM32;
  • YAPLC/RTE — минималистичная среда выполнения программных ПЛК;
  • YAPLC/IDE — расширения для Beremiz, позволяющие создавать приложения YAPLC/RTE;
  • YaPySerial — динамическая библиотека для замены PySerial (замечено, что PySerial не всегда корректно определяет платформу).

Открытое тестирование системы завершено. Текущий релиз будет последним, совместимым с тестовыми приборами. Следующий релиз системы запланирован на октябрь 2017 года, а в ноябре система и приборы на её основе будут представлены на выставке ПТА-2017 в Москве.

Авторы благодарят всех участников открытого тестирования.

Отдельное спасибо:

  • Воронину Алексею,
  • Мидюкову Антону,
  • Суркову Сергею,
  • Нежданову Михаилу.

Проект на GitHub

>>> Подробности

 , openource,

shkolnick-kun
()

Тред прохладных историй из вашей жизни.

Форум — Talks

Привет, ЛОР!

Тред прохладных историй стартует здесь. Давайте постит и обсуждать наши прохладные истории!

Начну с себя: https://github.com/shkolnick-kun/texts/blob/master/story_1.md

Сначала хотел запостить в development, но подумал, что потрут...

 ,

shkolnick-kun
()

KDE 5 Desktop: Folder View БОЛЬ!!!.

Форум — Desktop

Привет, ЛОР. Суть проблема такова:

Поставил Mint 18.1 KDE i386, выбрал в качестве рабочего стола по умолчанию Folder View.

Эта сволочь при каждом входе в систему пытается «подвинуть» файлы на рабочем столе по своему усмотрению.

При чём, такое уже было в KDE 4 из-за race condition (которое вроде пофиксили), только тогда «слетали» все файлы одновременно, а в KDE 5 их двигают порциями, по чуть-чуть.

При настройке значков есть опции:

  • упорядочить по строкам, или столбцам, опции «не упорядочивать» нет!
  • выровнять по левому/правому краю, опции «не выравнивать» нет!

Кто знает, как с этим безобразием бороться?

Ну и риторический вопрос: Доколе хипсторы из т.н. «сообщества разработчиков» будут пытаться выпиливать и портить наиболее удобный для подавляющего большинства людей способ организации рабочего стола, и потом вяло возвращать обратно, когда их массово тыкают мордой в их идиотские решения?

Да, мне ПРИПЕКЛОУ!!111

 ,

shkolnick-kun
()

BuguRTOS 3.0.0

Новости — Open Source
Группа Open Source

13 марта состоялся релиз встраиваемой ОСРВ BuguRTOS 3.0.0.

После выпуска второй версии было получено сообщение от пользователя Endag с просьбой разъяснить использование примитивов синхронизации и сделать API понятнее для новых пользователей.

В ходе дальнейшей переписки был выявлен ряд ошибок и недостатков в ядре BuguRTOS и библиотеке native. Результатом стала переработка ядра и библиотеки.

( Список изменений )

>>> Подробности

 , ,

shkolnick-kun
()

Вышла BuguRTOS-2.0.0!

Новости — Open Source
Группа Open Source

31 августа вышла очередная мажорная версия BuguRTOS 2.0.0.

BuguRTOS — встраиваемая ОСРВ, ориентированная на применение в программах микроконтроллеров, которая может работать в режимах мягкого и жесткого реального времени.

( читать дальше... )

Фактически BuguRTOS 2.0.x представляет собой платформу для прототипирования ОСРВ, которую можно использовать для обучения низкоуровневому системному программированию.

Планируется расширение функциональности BuguRTOS за счет реализации новых библиотек API, а также перенос на новые архитектуры.

>>> Подробности

 , ,

shkolnick-kun
()

Causality Ltd прекратила свою деятельность

Новости — Open Source
Группа Open Source

Компания Causality Ltd прекратила свою деятельность в связи с отсутствием спроса на коммерческую поддержку языка программирования pony.

Об этом 21 августа 2016г. сообщил в своём аккаунте в LinkedIn бывший генеральный директор компании Constantine Goulimis.

Язык программирования pony - это объектно-ориентированный безопасный язык программирования, использующий модель акторов (аналогичную Erlang), имеющий легковесный FFI.

Безопасность языка обеспечивается за счёт:

  • математически доказанной типобезопасности;
  • памятебезопасности (как следствия типобезопасности);
  • безопасности исключений (по заверению авторов языка, все исключения обрабатываются);
  • безопасности от гонок (отсутствие конкурентного доступа обеспечивается средствами компилятора);
  • свободы от вечной блокировки (блокировки не используются).

По мнению Грейдона Хоара (автора Rust), «создатели pony провели великолепную работу, превосходящую ту, что он сделал в Rust...»

Компания Causality Ltd была основана с целью оказания коммерческой поддержки компаниям, использующим pony в своей IT-инфраструктуре.

По словам своего бывшего главы, Causality Ltd не смогла найти достаточно широкой клиентской базы. В частности 25-летний менеджер одного из американских инвестиционных банков, использующих pony в критически-важном компоненте своей инфраструктуры, отказал компании на основании того, что она была «слишком маленькой».

Однако основатель проекта Sean T. Allen считает, что закрытие Causality Ltd не приведет к гибели столь интересного и многообещающего проекта, т.к. прекращение деятельности компании не привело к снижению интереса к языку, и что сообщество проекта продолжает расти.

Ссылки:
Pony на GitHub
Введение
Безопасность pony

>>> Подробности

 , ,

shkolnick-kun
()

Автогенерация бойлерплейта на Си

Форум — Development

Привет, ЛОР, надоело писать бойлерплейт-код руками, хочу сделать хеддерник с содержанием типа

/*foo.h*/
FOO(a)
FOO(b)
FOO(c)
FOO(d)

А потом где то в коде, или в другом хеддере

#define FOO(...) BAR1(__VA_ARGS__)
#include <foo.h>
#undef 

#define FOO(...) BAR2(__VA_ARGS__)
#include <foo.h>
#undef

В том числе хочется делать таким образом enum.

Вопросы: 1. Есть ли возможность в таком enum генерировать конкретные численные значения так, чтобы такой enum потом можно было инклюдить в разные файли и значения везде были одни?

2. Есть ли способ генерировать последовательность констант без enum, и так, чтобы не жралась память?

 , ,

shkolnick-kun
()

Состоялся релиз открытой аппаратной платформы icoBoard 1.0

Новости — Hardware and Drivers
Группа Hardware and Drivers

В июне 2016 года вышла открытая платформа для прототипирования аппаратного обеспечения icoBoard 1.0.

icoBoard представляет собой отладочный набор на базе ПЛИС iCE40 фирмы Lattice Semiconductor.

Основной отличительной особенностью данной платформы является использование для программирования ПЛИС открытого и свободного программного обеспечения icoTC, основными компонентами которого являются:

  • синтезатор YoSys;
  • роутер Arachne-pnr;
  • инструменты и документация проекта IceStorm;
  • загрузчик iceprog.

Предварительная партия плат была разослана разработчикам в январе 2016, а в июне была произведена первая партия серийных плат icoBoard.

Плата вызвала интерес в сообществе, и почти все 50 серийных плат уже проданы.

Для icoBoard доступны несколько проектов на Verilog, в том числе есть проект Risc-V SoC, для которого есть порт ОС Contiki 2.0.

В данный момент icoBoard можно приобрести как в розницу (за 90 € без учета доставки), так и оптом (партиями по 20 шт. по 70 €).

>>> Подробности

 , icoboard

shkolnick-kun
()

Можно ли реализовать чужой протокол в своем девайсе?

Форум — Development

Привет, ЛОР, есть один протокол, который реализован в одной opensource-программе, с которой надо сопрячь один девайс...

Сама программа лицензирована по GPL, о соответственно ее реализация протокола тоже.

Протокол используется в проприетарных устройствах.

Могу ли я написать реализацию embedded-части протокола с чистого листа и использовать ее в своих девайсах (прошивка девайса будет открытой, но это уже другая история) без перспективы встретиться в суде с разработчиками протокола?

Предполагается, что действует континентальное право и патентов на ПО нет...

То есть суть вопроса сводится к следующему: могут ли быть копирайтные ограничения на использование какого-либо протокола связи, если существует GPL-реализация этого протокола?

 , ,

shkolnick-kun
()

Вышла BuguRTOS-1.0.0!

Новости — Open Source
Группа Open Source

Вышла очередная версия встраиваемой операционной системы реального времени BuguRTOS-1.0.0.

BuguRTOS — это ядро ОСРВ, ориентированное для использования на микроконтроллерах, и может работать в режимах мягкого и жесткого реального времени.

Характерными особенностями BuguRTOS являются:

  • Отказ от управления памятью в ядре - рекомендуется статическое выделение памяти.
  • Все системные вызовы имеют сложность O(1).
  • Минимальные требования к размеру стеков процессов (задач).

В данный момент поддерживаются ветки 0.6.x и 1.0.x, поддержка ветки 0.7.х прекращена.

( читать дальше... )

>>> Подробности

 , ,

shkolnick-kun
()

LOR, it's BuguRTOS, I need help!

Форум — Development

Привет, LOR!

У меня небольшой творческий крысис, суть такова:

  1. в течение нескольких месяцев планирую зарелизить BuguRTOS-1.0.0 и окончательно перейти на семантическое версионирование;
  2. сделано это будет на основе текущей ветки (0.9.х);
  3. в будущем BuguRTOS будет представлять собой что-то вроде xenomai, только для микроконтроллеров;
  4. то есть будет относительно маленькое портируемое ядрышко, к которому можно будет прикручивать разные RTOS API;
  5. дальше хочу но основе BuguRTOS сделать микроядро b4 (набор костылей и велосипедов в духе L4);

Почему?

Интересно же!

Так вот на пути к b4 есть определенные проблемы:

  1. есть системные вызовы BGRT_SYSCALL_SYNC_OWN и BGRT_SYSCALL_SYNC_TOUCH, которые повышают приоритет задачи до высшего и делаются перед вызовом BGRT_SYSCALL_SYNC_SLEEP;
  2. есть итерационные системные вызовы BGRT_SYSCALL_SYNC_SLEEP, BGRT_SYSCALL_SYNC_WAKE, BGRT_SYSCALL_SYNC_WAIT, их надо вызывать в цикле, пока завершаются со статусом BGRT_ST_ROLL;
  3. пока все это работает в закрытой системе (монолитная прошивка микроконтроллера) и использыется API ядра, проблем нет;
  4. но это не годится для проекта микроядра, т.к. «неправильное использование» этих системных вызовов может приветси к DoS;

Решение этой проблемы я вижу в том, чтобы:

  1. не использовать BGRT_SYSCALL_SYNC_TOUCH в микроядре;
  2. переписать BGRT_SYSCALL_SYNC_OWN так, чтобы в случае неудачи происходил вызов BGRT_SYSCALL_SYNC_SLEEP и задача блокировалась;
  3. скрыть от пользователя итерационную природу BGRT_SYSCALL_SYNC_SLEEP, BGRT_SYSCALL_SYNC_WAKE, BGRT_SYSCALL_SYNC_WAIT, то есть пользователь должен делать один вызов, а цикл должен делать диспетчер системных вызовов без участи пользователя;

С последним пунктом самое интеерсное, ибо цикл можно сделать за счет:

  1. подмены адреса возврата в стеке прерванной задачи (грязненько!!!);
  2. в ядре с вытеснением в одной точке (замедлит обработку некоторых прерываний);
  3. сделать ядро полностью вытесняемым с исполнением в отдельном потоке(надо писать слой виртуализации прерываний, замедлит обработку нектороых прерываний, надо память под стек потока ядра);

Что из этого выбрать???

Можете считать голосовалкой...

 , ,

shkolnick-kun
()

Рефакторинг не ООП программ

Форум — Development

Привет, кодач!

Тут в растотреде возникла дискуссия о рефакторинге, ооп и прочем подобном...

Хочется найти литературу по рефакторингу НЕ ООП кода, это реально?

>>>подробности

 , ,

shkolnick-kun
()

BuguRTOS исполняется пять лет!

Новости — Open Source
Группа Open Source

В далеком 2010 году один анонимус с Нульчана (R.I.P.) решил, что он обладает достаточной квалификацией и достаточным количеством свободного времени, чтобы создать свою встраиваемую ОСРВ, или ее эрзац.

В результате, в самом конце 2010 года появилась нулевая версия BuguRTOS.

Прошло пять лет, BuguRTOS была переписана несколько раз, портирована на несколько процессорных архитектур; были выработаны методики и процессы проектирования, реализации и тестирования новых версий; появилось краткосрочное, а затем и среднесрочное планирование развития ОС.

Из проекта, созданного ради лулзов и троллинга, получилась довольно неплохая встраиваемая ОСРВ, одна из сотен написанных, но одна из четырех, поддерживающих STM8 (современное распространенное семейство микроконтроллеров).

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

>>> Подробности

 , , ,

shkolnick-kun
()

Вышла BuguRTOS-0.8.3

Новости — Open Source
Группа Open Source

Вышла очередная версия встраиваемой ОСРВ для микроконтроллеров BuguRTOS.

С новым релизом прекращено использование google-drive для хранения архивов с исходниками и документации проекта, теперь для этих целей будет использоваться GitHub.

В версии 0.8.3 произошли следующие изменения:

  • Пользователем dartraiden проведена коррекция орфографии комментариев документации.
  • Добавлены проверки входных параметров функций управления процессами (файл proc.c).
  • Добавлен тип status_t, теперь большинство функций, предназначенных для применения пользователем, возвращает результат выполнения.
  • Тесты для ARM-портов перенесены на libopencm3.
  • Исправлено несколько ошибок в компоненте VSMP (виртуальной SMP-машине, используемой при тестировании) и порте avr/gcc-vsmp.
  • Пересмотрен код тестов.
  • В тесте компонента sync, реализующего базовый примитив блокирующей синхронизации, исправлено несколько глупых ошибок.
  • По мнению автора, код Ядра ОС должен стабилизироваться, начиная с текущего релиза. Разработка будет сфокусирована вокруг написания новых портов, библиотек и исправления ошибок.

>>> Подробности

 , ,

shkolnick-kun
()

BuguRTOS: версия 0.8.2 и смена хостинга

Новости — Open Source
Группа Open Source

В связи с предстоящим закрытием хостинга Google code проект ядра встраиваемой операционной системы BuguRTOS переехал на GitHub, на старой странице проекта висит объявление о преезде.

Смена хостинга совпала с обновлением BuguRTOS до версии 0.8.2. В новой версии произошли следующие изменения:

  • Добавлен базовый механизм синхронзации с таймаутами.
  • В планировщик добавлена политика планирования FIFO, дополняющая Round-robin.
  • В дескриптор процесса добавлено поле cnt_lock, флаг состояния процесса PROC_FLG_BLOCK переименован PROC_FLG_LOCK, изменена его обработка (теперь она происходит независимо от обработки поля proc->lres).
  • Удалены неиспользуемые функции.
  • Исправлено три ошибки.
  • В опциях компиляции тестовых проектов для ARM и AVR добавлен флаг -Os.

Также обновлен список запланированных дел, теперь в нем значится перевод тестов для ARM на библиотеку libopencm3 и другие изменения.

Архивы с исходниками и документацию по-прежнему предлагается качать с Gdrive.

>>> Подробности

 , ,

shkolnick-kun
()

Обновление BuguRTOS 0.6.5, 0.7.2 и 0.8.1

Новости — Open Source
Группа Open Source

Вышли новые версии встраиваемой операционной системы реального времени BuguRTOS:

  • В ветках 0.6.х и 0.7.x исправлена одна ошибка (неверный порядок обработки флагов в системном вызове proc_flag_stop). Текущие версии этих веток: 0.6.5 и 0.7.2 соответственно.
  • В ветке 0.8.х (обновлена до 0.8.1) изменения более значительны:
    • исправлен устаревший код планировщика;
    • исправлена серьезная ошибка в системном вызове sync_wait;
    • удален системный вызов proc_flag_stop;
    • добавлены системные вызовы proc_lock и proc_free;
    • в нижние уровни ARM-портов добавлены барьеры памяти;
    • изменено поведение системного вызова sync_set_owner, теперь для смены «хозяина» объекта типа sync_t нужно сначала вызвать sync_clear_owner;
    • добавлена поддержка протокола Immediate Priority Ceiling, теперь его можно использовать отдельно или в комбинации с протоколом наследования приоритетов;
    • добавлена библиотека generic, реализующая следующие традиционные примитивы синхронизации:
      • мьютекс,
      • условная переменная,
      • сигнал (такой же как в ветках 0.6.х и 0.7.x),
      • счетный семафор,
      • IPC, аналогичный микроядерному.

>>> Подробности

 , ,

shkolnick-kun
()

Вышла BuguRTOS-0.8.0!

Новости — Open Source
Группа Open Source

Состоялся первый релиз новой ветки встраиваемой операционной системы реального времени BuguRTOS, распространяемой по лицензии GPLv3 c исключениями.

В BuguRTOS-0.8.x введены значительные изменения:

  • Удалены традиционные примитивы синхронизации(мьютексы, счетные семафоры, сигналы, IPC).
  • Добавлен базовый примитив синхронизации - это тип данных sync_t, реализующий механизм блокирующей синхронизации, с наследованием приоритетов.
  • Запланировано написание библиотек, реализующих традиционные примитивы синхронизации.

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

>>> Подробности

 , ,

shkolnick-kun
()

Вышла BuguRTOS-0.7.1!

Новости — Open Source
Группа Open Source

Вышла очередная версия ядра встроенных операционных систем BuguRTOS.

В BuguRTOS-0.7.1 исправлено несколько ошибок в протоколе наследования приоритетов.

BuguRTOS - это ядро ОСРВ, ориентированное для исползования на микроконтроллерах, и может работать в режимах мягкого и жесткого реального времени. Основными идеями при разработке были:

  • Использование только статического и автоматического выделения памяти.
  • Минимальные требования к размеру стеков процессов(задач).
  • Системные вызовы с жестко ограниченным временем выполнения (сложность О(1)).

Функционал BuguRTOS включает:

  • Планировщик.
  • Критические секции.
  • Мьютексы с наследованием приоритетов.
  • Счетные семафоры.
  • Сигналы (аналог событий).
  • Программные таймеры.

Лицензия BuguRTOS - GPLv3 c исключениями.

>>> Подробности

 , ,

shkolnick-kun
()

RSS подписка на новые темы