Как стать автором
Обновить

Присматриваемся к одноплатникам на RISC-V, обзор модуля Sipeed Lichee RV на процессоре Allwinner D1

Время на прочтение20 мин
Количество просмотров24K
Sipeed Lichee RV

Одноплатные компьютеры на RISC-V процессоре сравнительно новое веяние. Поднебесная активно работает над снижением зависимости от западных информационных систем и технологий, именно поэтому новая открытая архитектура RISC-V одна из ключевых ставок Китая. Для продвижения в массы китайский чипмейкер Allwinner на базе ядра Alibaba/T-Head Xuantie C906 RISC-V разработал процессор Allwinner D1 и упрощенную модификацию Allwinner D1s. На сегодня разработано несколько одноплатников на RISC-V процессоре, и в первенство по массовости вырвалась компания Sipeed с модульным компьютером Система-на-Модуле Lichee RV с 512 Мб ОЗУ всего за $16.90, работающим на Linux. Разработчик может спроектировать несущую плату для данного модуля, добавив необходимые периферийные устройства и разъемы. В результате получится решение максимально подготовленное для себя. Данный модуль предназначен для создания интеллектуальных информационных систем, терминалов, роботов, и т.д. В первой части рассмотрим архитектуру процессора, возможности модуля, дистрибутивы, программное обеспечение. Во второй части детально рассмотрим порты и интерфейсы для программирования, напишем программы на Python и C#.
Читать дальше →
Всего голосов 32: ↑28 и ↓4+24
Комментарии37

Как я компьютер «Радио 86-РК» настраивал

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров16K

Всем привет! Расскажу вам о том, как я собирал (и тут же ремонтировал) ретро-компьютер на базе Радио86-РК. Данной разработке через некоторое время исполняется четвёртый десяток! А процессору Intel 8080, на базе которого она сделана - все 50 лет. По ходу дам пояснения, как можно собрать аналогичное изделие, сколько оно стоит (по состоянию на 2023 год), с какими проблемами я столкнулся.

Приступим!

Читать далее
Всего голосов 120: ↑119 и ↓1+118
Комментарии50

CP/M-80 на клоне Спектрума «Кворум»

Время на прочтение16 мин
Количество просмотров19K
У меня на окне на память лежит большая стопка пятидюймовых дискет от компьютера, который мне подарили родители в три года, и с которого я смог перелезть на PC только в 14. Это «Кворум-128», наш, уральский клон Спектрума. Клон довольно интересный и существенно отличавшийся от, например, уральского же «Магика». С магнитофоном он работал, как любой другой Спектрум, но при подключении Кворумовского же контроллера дисковода — не так-то просто его было достать! — он умел работать в ОС CP/M-80. Вот об этой ОС и ее реализации на «Кворуме» я и хочу сегодня рассказать.



Читать дальше →
Всего голосов 83: ↑80 и ↓3+77
Комментарии33

Tesla рассказала об архитектуре чипа D1 для суперкомпьютера Dojo

Время на прочтение4 мин
Количество просмотров2K

Tesla поделилась подробностями о собственном процессоре D1, который станет основой ИИ-суперкомпьютера Dojo. Компания рассказала об архитектуре, устройстве и возможностях нового чипа.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

Низкоуровневое обнаружение Wi-Fi устройств в домашней сети

Время на прочтение10 мин
Количество просмотров22K

Чтобы сделать собственное уникальное устройство для «умного дома» сейчас достаточно купить микроконтроллер и электронные компоненты. Конечно, на рынке уже есть множество «умных» устройств, но не все производители предоставляют открытое API, и уж точно единицы разрешают (или по крайней мере не запрещают) создавать собственные прошивки. Иногда наступает тот момент, когда кажется, что разработать и запрограммировать собственное устройство будет лучшим решением.

В этой статье я расскажу про несколько способов «‎научить» микроконтроллер распознавать присутствие людей дома исключительно с помощью Wi-Fi.
Читать дальше →
Всего голосов 51: ↑51 и ↓0+51
Комментарии21

URL.js или дружим JavaScript с обработкой ссылок

Время на прочтение8 мин
Количество просмотров50K
image

Доброго времени суток, уважаемые хабравчане!

Возникла передо мной сегодня задача генерации GET-параметров и всего URL в целом, на стороне клиента, прям вот щас, без возможности «поговорить» с сервером. Сразу оговорюсь, про этот пост я узнал вот прям перед написанием данной статьи ибо сначала закончил писать, а потом уже прибег к поиску, да и пост тот — не со всем про то же самое, что у меня.

Итак, к делу.

Задача и проблемы


Проблемы — те же что и в посте, который я привел выше:
  • Невозможность использовать window.location для «приготовления» URL;
  • Нельзя работать сразу с несколькими window.location в силу политики безопасности браузеров;
  • Отсутствие известных готовых решений ( да и сейчас, уже апосля, я не нашел подобного кода )

Задачи которые я поставил перед собой:
  • Удобный синтаксис
  • Возможность как читать части URL так и изменять их
  • Работа с GET-параметрами
  • Кроссбраузерность и универсальность


Писал я на чистейшем JavaScript, причем без использования prototype.__defineGetter__ или prototype.__defineSetter__ в угоду кроссбраузерности ибо IE < 9 такого не умеет. Более подробно про getters/setters написано в этом посте.

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

Приступим! Раньше сядем — раньше выйдем.
Читать дальше →
Всего голосов 60: ↑47 и ↓13+34
Комментарии60

Как я намучился с подключением проектора и нашёл целых 7 способов

Время на прочтение7 мин
Количество просмотров217K

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

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

Читать далее
Всего голосов 7: ↑4 и ↓3+1
Комментарии7

Система наблюдения в автомобиле за ним же на Raspberry Pi. Часть 1

Время на прочтение4 мин
Количество просмотров53K

Введение


Добрый день.
Однажды я приобрёл Raspberry Pi без каких-то на то целей — как только начались упоминания о нём на хабре. Начал бесцельно запускать фтп-сервера, пробовать Node.js и прочие мелкие серверные дела, пока не приобрёл новый автомобиль. Конечно, заниматься тем, что можно найти на просторах интернета вроде дистанционного открытия гаража я не стал — в силу нормального не знания системы Linux и серверных языков программирования. Автомобиль стал мне дорог и возникла идея — поставить малинку в автомобиль с прикрученными к ней USB девайсами: GPS, Web-камера, 3G-модем — для чего и был куплен 2-ой Raspberry.
В этой статье я опишу подготовку: установку Node.JS, настройку OpenVPN и 3G.
Читать дальше →
Всего голосов 42: ↑39 и ↓3+36
Комментарии28

Участие в конкурсе LudumDare #33

Время на прочтение4 мин
Количество просмотров9.9K
Несмотря на то, что за все два дня конкурса фантастическая идея игры ко мне так и не пришла, хочу поделиться небольшими наработками, которые были сделаны за пару дней. Возможно, статья найдет своего читателя, и кому-то до сих пор нравится pure-java вместо модных движков.

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

image

Если не вдаваться в подробности, игра довольно примитивная. Пока идет день, вы управляете медлительным монстром, на которого со всех сторон нападают рыцари. Но как только приходит ночь, ситуация резко меняется, теперь вы очень шустрый одноглазый монстр, который способен истреблять рыцарей. Но все не так радужно, так как я привнес в агрессивное поведение (ночью) автоконтроль, который практически все делал за вас: и убивал, и искал новых жертв-рыцарей.
Читать дальше →
Всего голосов 20: ↑18 и ↓2+16
Комментарии7

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

Время на прочтение6 мин
Количество просмотров15K

Введение


image
Большая часть стартапов создаётся энтузиастами своего дела, которые и знать не знают, и думать не думают о защите своей интеллектуальной собственности (ИС). Очень часто в дальнейшем это приводит к плачевным последствиям. В данном топике я хотел бы рассмотреть самые частые ошибки и как их избежать.
Читать дальше →
Всего голосов 12: ↑10 и ↓2+8
Комментарии24

На что способен мозг студента, познающего компьютерный мир

Время на прочтение7 мин
Количество просмотров24K
Доброго времени суток.

Закончив писать очередной скрипт на Bash, понял, что всё должно быть совершенно иначе, однако всё работало. Хочу вам показать, какие непотребства и костыли написал я, дабы решить задачу, но пока не имея вагона знаний. Иначе говоря, карикатура на программирование.
Читать дальше →
Всего голосов 37: ↑35 и ↓2+33
Комментарии30

Создаем плагин региона для Oracle Application Express

Время на прочтение8 мин
Количество просмотров7.5K
Данная статья предназначается всем тем, кто плотно работает с Oracle Application Express (в просторечии — APEX, а то и просто апекс). А так же тем, кто что-то слышал и подумывает начать использовать его в работе. После прочтения статьи, я надеюсь, у вас прибавится желания сделать это.

Вводная информация


Предполагается, что читатель знаком (или познакомится вскоре после прочтения) хотя бы в общих чертах со следующими вещами:

  • Что такое SQL и PL/SQL, и чем они друг от друга отличаются
  • Какие объекты бывают в СУБД Oracle и зачем они нужны (таблицы, пакеты, вью)
  • Основные компоненты приложения апекса: страница, регион, итем, процесс и т. д., как их создавать и удалять
  • Основы администрирования апекса: как создать в оракле таблицу, пакет, вью и как потом сделать их доступными для своего приложения
  • Как использовать значение итема в качестве параметра SQL-запроса

Ничего сверхсложного в этих пунктах нет, всеми этими вещами на базовом уровне можно более-менее овладеть за месяц неспешной работы. Пример предназначен для пятой версии апекса, которая вышла чуть меньше года назад.
Читать дальше →
Всего голосов 7: ↑6 и ↓1+5
Комментарии0

История создания Оптимизатора для ПК: Nuxt.js, Electron и C++ в Одном Проекте

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров4K

Как я проектировал свой самый большой проект, сложности с которыми я столкнулся. Фишки и неочевидные моменты при разработке.

Читать далее
Всего голосов 14: ↑1 и ↓13-12
Комментарии10

Введение в модулярную арифметику

Время на прочтение6 мин
Количество просмотров73K
В обычной жизни мы обычно пользуемся позиционной системой счисления. В позиционной системе счисления значение каждого числового знака (цифры) в записи числа зависит от его позиции (разряда) [1]. Однако существуют и так называемые «непозиционные системы счисления», к одной из которых относится «система остаточных классов» (СОК) (или в оригинале Residue Number System (RNS)), являющаяся основой модулярной арифметики. Модулярная арифметика базируется на «Китайской теореме об остатках» [2], которая для нашего случая звучит следующим образом:
Для любой системы взаимно простых чисел p1, … pn, любое число X из диапазона [0; M), где M = p1*p2*…*pn взаимооднозначно представимо в виде вектора (a1, a2, …, an), где ai = X%pi (здесь и далее «%» — операция взятия остатка от целочисленного деления X на pi).
p1, … pn – модули системы
a1, a2, …, an – остатки (вычеты) числа по заданной системе модулей

Читать дальше →
Всего голосов 85: ↑80 и ↓5+75
Комментарии39

Лонгрид об истории российского майнинга и отношении к нему регуляторов

Время на прочтение12 мин
Количество просмотров9.3K
Мир знаком с криптовалютами всего 10 лет. При этом в истории майнинга за эти 10 лет уже можно проследить несколько технологических эпох. Подход к майнингу, а если точнее, к устройствам для него, многократно менялся с приходом очередного поколения чипов, годных для создания криптоактивов.


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

Несмотря на то, что этому явлению всего 10 лет, сегодня уже можно говорить об истории явления, часть из которой, без сомнения, превратилась в красивую финансовую легенду. Не менее интересна история майнинга в России, которая, равно как и в некоторых других странах тесно связана с юридическим статусом крипты, ухищрениями майнеров, стоимостью электроэнергии. Под катом ностальгический лонгрид о майнинге в России.
Читать дальше →
Всего голосов 26: ↑20 и ↓6+14
Комментарии27

Межпланетная файловая система — Простой блог в IPFS при помощи XSLT

Время на прочтение13 мин
Количество просмотров5.5K

Существует проблема: У сайта в IPFS нет возможности использовать серверные скрипты для формирования страницы. Если использовать генерацию страниц перед загрузкой то добавив новый пункт меню в каждую страницу мы изменим хеш этих страниц. Так что всю сборку страниц нужно производить силами браузера.


Обычно формируют содержание страниц при помощи JavaScript. Это знакомая технология но у неё есть свои недостатки.


Я буду использовать XSLT. Это древняя технология шаблонов которая давно встроена в браузеры но мало кто ей пользуется. Возможно потому что шаблоны заставляют писать много текста и из за путаницы с пространствами имён и множества ошибок без внятного объяснения. Также не смотря на то что есть уже XSLT 3.0 в браузерах по прежнему доступен только XSLT 1.0.


XSLT работает так:


  1. Пользователь открывает в браузере XML документ.
  2. В заголовке XML документ содержит ссылку на XSLT шаблон.
    <?xml-stylesheet href="xslt/запись.xslt" type="text/xsl" ?>
  3. Шаблон в браузере на основе XML документа и других данных формирует xHTML документ.
  4. Браузер отображает полученный xHTML документ.

Привязав множество страниц к одному шаблону можно менять отображаемый xHTML документ не меняя XML документы. Таким образом при смене дизайна не будет меняться хеш XML документов а значит старые их копии будут источниками для новых в IPFS.


Для поисковиков в данном способе тоже есть плюсы. Они ограничиваются обработкой XML документа получая только уникальный контент страницы без элементов навигации и остальных блоков которые повторяются на каждой странице.


image

Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии8

Производительность: нюансы против очевидностей

Время на прочтение27 мин
Количество просмотров6.6K

Приветствую, это текстовая версия моего доклада на JPoint-2021. Как обычно я сделал упор на случаи из жизни и на повседневные вещи, используемые каждым разработчиком. Под кат приглашаются интересующиеся производительностью и им сочувствующие.

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии2

Установка и настройка MikoPBX под iD Phone (iDPhone)

Время на прочтение7 мин
Количество просмотров9.5K


В данной инструкции описано как с нуля установить и произвести первоначальную настройку компьютерной телефонии на базе IP ATC MikoPBX с подключением к услуге «iD Phone» компании «Казахтелеком».

Несколько лет назад я уже писал аналогичное руководство: Установка и настройка Asterisk под iD Phone (iDPhone).

После этого я несколько раз обновлял нашу офисную АТС. Сначала на более свежие сборки «AsteriskNOW», а последний раз — на «FreePBX Distro». И с каждым разом меня все больше напрягал процесс настройки, т.к. для наших нужд все огромные возможности Asterisk'а весьма избыточны. Давно хотелось что-нибудь совсем не прожорливое в плане требований к железу, и чтобы настраивалось как можно быстрее. Кажется, MikoPBX — как раз такая сборка. Кому нужна легкая и быстронастраиваемая АТС под «iD Phone» — милости прошу под кат.
Читать дальше →
Всего голосов 4: ↑4 и ↓0+4
Комментарии6

О роли сигмоиды в жизни индивида

Время на прочтение11 мин
Количество просмотров21K
Сигмо́ида — это гладкая монотонная возрастающая нелинейная функция, имеющая форму буквы «S». Является частным случаем т.н. S-образных кривых (это уже не математический термин, а некое общее обозначение для всех кривых, напоминающих написание латинской буквы).
Читать дальше →
Всего голосов 22: ↑16 и ↓6+10
Комментарии4
1
23 ...