Рубрика «open source» - 242

Представим себе, что в один прекрасный день вам пришла в голову идея процессора собственной, ни на что не похожей архитектуры, и вам очень захотелось эту идею реализовать «в железе». К счастью, в этом нет ничего невозможного. Немного верилога, и вот ваша идея реализована. Вам уже снятся прекрасные сны про то, как Intel разорилась, Microsoft спешно переписывает Windows под вашу архитектуру, а Linux-сообщество уже написало под ваш микропроцессор свежую версию системы с весьма нескучными обоями.
Однако, для всего этого не хватает одной мелочи: компилятора!
Да, я знаю, что многие не считают наличие компилятора чем-то важным, считая, что все должны программировать строго на ассемблере. Если вы тоже так считаете, я не буду с вами спорить, просто не читайте дальше.
Если вы хотите, чтобы для вашей оригинальной архитектуры был доступен хотя бы язык С, прошу под кат.
В статье будет рассматриваться применение инфраструктуры компиляторов LLVM для построения собственных решений на её основе.
Область применения LLVM не ограничивается разработкой компиляторов для новых процессоров, инфраструктура компиляторов LLVM также может применяться для разработки компиляторов новых языков программирования, новых алгоритмов оптимизации и специфических инструментов статического анализа программного кода (поиск ошибок, сбор статистики и т.п.).
Например, вы можете использовать какой-то стандартный процессор (например, ARM) в сочетании с специализированным сопроцессором (например, матричный FPU), в этом случае вам может понадобиться модифицировать существующий компилятор для ARM так, чтобы он мог генерировать код для вашего FPU.
Также интересным применением LLVM может быть генерация исходных текстов на языке высокого уровня («перевод» с одного языка на другой). Например, можно написать генератор кода на Verilog по исходному коду на С.

LLVM: компилятор своими руками. Введение - 1

КДПВ

Читать полностью »

Продолжаем обзор новых возможностей 3.0, мы уже успели обзорно рассказать о возможностях новой версии, отдельно остановились на возможности прогнозирования проблем на основе собранной статистики, а сегодня расскажем о шифровании.
Шифрование было одним из самых давних и ожидаемых нововведений в Zabbix, и за это время успели обсудить несколько вариантов его реализации: от аутентификации по предварительному ключу PSK до полной поддержки TLS и Kerberos. Год назад было решено остановиться на TLS.
Zabbix 3.0: Шифрование - 1
Читать полностью »

Иногда чужой код очень помогает в деле подключения к микроконтроллеру периферийного железа. К сожалению, адаптировать чужой код к своему проекту бывает сложнее, чем переписать его самому, особенно если речь идет о мега фреймворках вроде arduino или mbed. Желая подключить китайский LCD на базе ILI9341 к плате STM32L476G DISCOVERY, автор задался целью воспользоваться в демо-проекте от ST драйвером, написанным для mbed, не изменив ни строчки в его коде. В результате удалось заодно разогнать экран до невиданных скоростей обновления в 27 fps.

Использование mbed кода в собственном проекте на STM32 — опыт разгона китайского LCD - 1

Читать полностью »

Вчера, 17 февраля, команда разработчиков Github анонсировала новый функционал, которого пользователям, участвующим в групповой разработке, могло серьезно недоставать: теперь в GitHub есть шаблоны для Issue и Pull-реквестов.

image
Читать полностью »

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

Почему мы смотрим прогноз погоды? Чтобы в солнечный казалось бы день, выбравшись в парк, не оказаться застигнутым врасплох под проливным дождем. Точный прогноз погоды помогает нам принять контрмеры: взять зонт, плащ, или вообще отправиться в кино вместо парка.

В новой версии Zabbix добавилась возможность также делать прогнозы, чтобы узнать будет ли шторм на сети или в серверной стойке, и когда это может произойти.Zabbix 3.0: Прогнозирование проблем - 1Читать полностью »

Makeup — инструмент для комфортного ручного регрессионного тестирования вёрстки

Что не так с тестированием вёрстки

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

Проблема тестирования вёрстки в том, что только живой человек может сказать, хорошо свёрстан блок на странице или нет. Поэтому чаще всего мы тестируем HTML и CSS вручную: проверяем, как будет вести себя блок, если в нем будет слишком много (или слишком мало) текста или дочерних элементов; смотрим, чтобы все возможные варианты отображения блока смотрелись корректно; помним о том, как блоки должны адаптироваться к разным устройствам и разрешениям экрана.
Читать полностью »

PVS-Studio покопался в ядре FreeBSD - 1Около года назад мы смогли проверить ядро Linux. Это была одна из самых обсуждаемых статей о проверке open-source проекта за всё время. Предложения обратить внимание и на FreeBSD тогда активно поступали, но только сейчас появилось достаточно времени, чтобы это сделать.
Читать полностью »

image

Добрый день!
Мы строили-строили и наконец построили! Представляем вашему вниманию плод 10-летнего труда — ReactOS v0.4.0.

Приглашаем ознакомиться с официальными материалами, посвященными релизу:
release notes | change log | список 1560 успешно разрешенных баг-репортов.

Мы выражаем благодарность

Выпуск посвящается всем, кто когда-либо работал с нами или чем-то помогал проекту. Кто-то приходит, кто-то уходит, кто-то возвращается, а кого-то уже никогда не вернуть. Светлой памяти Gé van Geldorp и Brandon Mark Turner.Читать полностью »

В прошедшие выходные под городом Раков (Республика Беларусь, Минская область, Воложинский район) прошёл международный слёт “Linux Vacation / Eastern Europe Winter”:

“Linux Vacation - Eastern Europe Winter 2016 - 1
Читать полностью »

Вкратце:

  1. cfauth — настраивает сервис SSH, админскую учётную запись, sudo, пароль суперпользователя
  2. cfsystem — настройка: APT, временной зоны, отправки системных писем, синхронизация времени, расширенный список стандартных пакетов
  3. Все модули интегрированы с модулем сетевого фильтра cfnetwork и не требуют дополнительных настроек

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js