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

Присматриваемся к одноплатникам на 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

Реализация алгоритма BFS на GPU

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

Аннотация


В данной статье хочу рассказать как можно эффективно распараллелить алгоритм BFS — поиск в ширину в графе с использованием графических ускорителей. В статье будет приведен подробный анализ полученного алгоритма. Вычисления выполнялись на одном GPU GTX Titan архитектуры Kepler.

Введение


В последнее время все большую роль играют графические ускорители (GPU) в не графических вычислениях. Потребность их использования обусловлена их относительно высокой производительностью и более низкой стоимостью. Как известно, на GPU хорошо решаются задачи на структурных сетках, где параллелизм так или иначе легко выделяется. Но есть задачи, которые требуют больших мощностей и используют неструктурные сетки. Примером такой задачи является Single Shortest Source Path problem (SSSP) – задача поиска кратчайших путей от заданной вершины до всех остальных во взвешенном графе. Решение данной задачи рассмотрено мной в этой статье. Вторым примером задачи на неструктурных сетках является задача Breadth First Search (BFS) — поиска в ширину в неориентированном графе. Данная задача является основной в ряде алгоритмов на графах. Также она немного проще, чем поиск кратчайшего пути. На данный момент алгоритм BFS используется как основной тест для рейтинга Graph500. Далее рассмотрим, как можно использовать идеи решения задачи SSSP в задаче BFS. Про архитектуру GPU компании Nvidia и об упомянутых алгоритмах уже много написано, поэтому в этой статье я не стану дополнительно писать про это. Так же, надеюсь, что понятия warp, cuda блок, SMX, и прочие базовые вещи, связанные с CUDA читателю знакомы.
Читать дальше →
Всего голосов 28: ↑26 и ↓2+24
Комментарии7

Принт-сервер на linux с интеграцией в AD

Время на прочтение12 мин
Количество просмотров47K
В данной статье я хотел поселиться опытом по созданию принт-сервера на базе linux с интеграцией в AD. Под интеграцией понимается ввод linux сервера в домен Windows и расшаривание Cups принтеров через Samba, включая драйвера принтеров. Возможно коряво выразился, но если проще, то это выглядит так — для того, чтобы установить принтер пользователю Windows, достаточно нажать«установить новый принтер», вывести список принтеров в AD и клацнуть на нужный принтер — принтер установится автоматически с установкой всех необходимых драйверов. При этом, все права на управление, доступ, печать подтянутся из AD.

Часть 1. Тонкости настроек


Исходные данные


  • Домен контроллер — Windows Server 2008 R2 (AD, DNS, DHCP) IP — 10.10.15.31
  • Имя домена — INITIAL
  • Принт сервер — ОС linux (я использую OpenSUSE 13.2 x64, kernel 3.16.7-42-default) IP — 10.10.15.11
  • kerberos 1.12.2-24.1
  • winbind 4.2.4-40.1
  • LDAP 2.4.39-8.9.1
  • Samba 4.2.4-40.1
  • CUPS 1.5.4-21.9.1
Читать дальше →
Всего голосов 26: ↑26 и ↓0+26
Комментарии29

Пишем интерпретатор BASIC в стиле 80-х

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


В течение нескольких лет я работала над личным проектом создания (а на самом деле исследования) «фальшивого эмулятора», то есть написанного на JavaScript эмулятора никогда не существовавшего компьютера. Эта машина должна была стать данью памяти восьми- и шестнадцатибитным компьютерам 1980-х и 90-х.

Однако мне нравятся сложности: в этой машине ещё и использовался новый набор инструкций. Он похож на наборы, применявшиеся в ту эпоху, но немного проще в работе. Так родился Retroputer. В течение нескольких лет эмулятор расширял свои возможности и совершенствовался, но, скорее всего, он никогда не будет «закончен» (в конце концов, это ведь личный проект-исследование).

Когда появился @bbcmicrobot, я захотела создать нечто подобное для Retroputer. Мои навыки разработки на JS в основном ограничивались фронтендом, поэтому это будет отличным поводом получить опыт бэкенда. Только есть одна проблема: Retroputer может понимать только собственный язык ассемблера. Пока у него нет поддержки BASIC.

Так я и пришла к созданию интерпретатора BASIC в стиле 80-х, то есть полностью на языке ассемблера, как его тогда и писали. Я решила, что стоит поделиться своей работой, потому что нам не часто приходится погружаться в области, столь далёкие от привычных абстракций. Мой повседневный инструмент (JavaScript) делает многие аспекты тривиальными, и иногда это даже кажется магией. Понимание самого нижнего уровня процессов часто помогает в понимании этих абстракций.

Итак, давайте приступим.
Читать дальше →
Всего голосов 34: ↑34 и ↓0+34
Комментарии5

Критическая уязвимость CVE-2024-31497 в PuTTY версий от 0.68 до 0.80 позволяет провести компрометацию закрытого ключа

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

Разработчики клиента для различных протоколов удалённого доступа сообщили о критической уязвимости CVE-2024-31497 в PuTTY версий от 0.68 до 0.80, которая позволяет провести компрометацию закрытого ключа. В стабильной версии PuTTY 0.81 эта проблема устранена.

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

How to Learn Python FREE in 8-Week: The 80/20 Learning Plan

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

I know it can be hard to learn a new programming language. In this article, I want to share my plan with you. It's a way to learn Python in eight weeks using videos, articles, and practice exercises. Exercises are very important because I think the best way to learn is by doing them.

I've created this learning plan for people who don't have much free time. You only need about 30-50 minutes a day and consistency. In my plan, I use the 80/20 principle, which will help you learn the most important things first and improve the rest through practice.

For those who read this article to the end, I have prepared a learning tracking sheet to help you track your progress.

Read more
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Выбираемся из лабиринта при помощи алгоритма «поиск в ширину» (BFS) на Python

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

Учимся использовать и реализовывать на Python алгоритм поиска в ширину (BFS) для решения реальных задач.

Давайте поговорим о популярном алгоритме, который называется «Поиск в ширину» (BFS). Затем реализуем этот алгоритм, чтобы найти решение для реальной задачи: как выбраться из лабиринта.

Алгоритмы поиска применяются для решения таких задач, которые можно смоделировать как графы. Каждый узел графа – это экземпляр задачи. Каждый поисковый алгоритм начинается с узла (исходный экземпляр – состояние) и наращивает вслед за этим узлом новые (то есть, новые экземпляры задачи), решая задачу допустимыми способами. Этот процесс останавливается, как только алгоритм находит решение (успех – конечное состояние) или не может создать ни одного нового узла (провал). Среди самых популярных алгоритмов поиска – поиск в глубину (DFS), поиск в ширину (BFS), жадный алгоритм, поиск по критерию стоимости (UCS), A*-поиск, т.д. В этой статье речь пойдет о поиске в ширину.

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

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

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

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

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

Android, Google and free content licenses. Who is to blame and what can be done?

Время на прочтение23 мин
Количество просмотров743

The story of another ban.


Have you heard about bans on apps and developers in Google Play? This is just such a story. It’s also an attempt to collect similar cases into one place and offer some kind of plan of action to prevent Google’s unpredictable actions. It isn’t fair to be banned for the legal use of free material. Personally, I like the idea of content licenses such as CC BY-SA, which permits any use, including commercial. Thanks to such licenses, we developers have websites like StackOverflow, where I’ve been elected to be the moderator. Unfortunately, companies like Google don’t respect the ideas behind these licenses. Here's my story.

Read more →
Всего голосов 2: ↑1 и ↓10
Комментарии0

Готовимся к собеседованию: 82 вопроса по MongoDB

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

С момента своего появления MongoDB успела завоевать огромную популярность благодаря своей способности обрабатывать большие объемы данных. Ее принятие только растет, впрочем, как и сам рынок, на котором она востребована. Если вы нацелены связать свою карьеру с MongoDB, то сейчас самое время. Чтобы помочь вам на этом пути, мы подготовили список часто задаваемых вопросов по MongoDB с собеседований и ответов на них.

Читать далее
Всего голосов 18: ↑9 и ↓90
Комментарии3

Tesla представила собственный аппаратный ускоритель нейросетей Dojo D1

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

Tesla представила чип Dojo D1 для обучения моделей искусственного интеллекта внутри своих центров обработки данных. Он выполнен на 7-нм техпроцессе и имеет вычислительную мощность 362 терафлопс.

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

Flightradar24 — how does it work? Part 2, ADS-B protocol

Время на прочтение9 мин
Количество просмотров7.4K
I’m going to have a guess and say that everyone whose friends or family have ever flown on a plane, have used Flightradar24 — a free and convenient service for tracking flights in real time.

image

In the first part the basic ideas of operation were described. Now let's go further and figure out, what data is exactly transmitting and receiving between the aircraft and a ground station. We'll also decode this data using Python.
Read more →
Всего голосов 12: ↑12 и ↓0+12
Комментарии0

All hail bug reports: how we reduced the analysis time of the user's project from 80 to 4 hours

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

0885_SupportAndAnalyzerOptimizations/image1.png


People often see work in support as something negative. Today we'll look at it from a different perspective. This article is about a real communication of 100+ messages, exceptions, the analysis that didn't complete in three days...

Read more →
Всего голосов 4: ↑3 и ↓1+2
Комментарии0

Старые протоколы, которыми можно пользоваться и сегодня

Время на прочтение13 мин
Количество просмотров11K
Устали от тяжёлых веб-страниц, всплывающих окон, мерцающих баннеров, N-факторной аутентификации, слежки за пользователями и аналитики? Тогда вы можете попробовать поработать с протоколами, которые не менялись последние тридцать лет.


Примерно тридцать лет назад люди видели онлайн-страницы так.
Читать дальше →
Всего голосов 30: ↑29 и ↓1+28
Комментарии23

35 лет игре «Ослик» Билла Гейтса

Время на прочтение6 мин
Количество просмотров21K
35 лет назад, в августе 1981 года в продажу вышла первая модель IBM PC (на фото слева) — первый массовый персональный компьютер фирмы IBM, с операционной системой PC-DOS 1.0 (MS-DOS) и интерпретатором BASIC.

Компания Apple с любопытством наблюдала за экспериментом IBM и даже приветствовала коллег большим рекламным объявлением в газете Wall Street Journal под заголовком «Добро пожаловать, IBM. Серьёзно». Хотя Стив Джобс в те времена экономил каждый цент, но всё-таки разрешил сотрудникам купить один экземпляр IBM PС и изучить его содержимое.

Сотрудников не слишком впечатлила аппаратная начинка IBM PC: она явно уступала мастерски сконструированной электронике Стива Возняка. С программным обеспечением дело обстояло ещё хуже: операционная система MS-DOS от Microsoft являлась клоном старой операционной системы CP/M, и даже демонстрационные программы были сделаны грубовато.

Особенно недоумение сотрудников Apple вызвала странная игра Donkey («Ослик»), написанная на BASIC.
Читать дальше →
Всего голосов 31: ↑24 и ↓7+17
Комментарии51

From four to thirty two. Early years of computers and networks in Russia

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

Part I: From four to eight



I like to read the memoirs of people who observed the computers taking first steps in their countries. They always have something romantic about them. Usually, such memories are greatly influenced by the circumstances of that encounter with his first computer: it could be the workplace, or education establishment, it could be just an unexpected and random thing.

Like many of my friends, I was lucky to see the end of that special romantic period, when computer makers were not trying to please the regular users. They were creating the devices with distinctive and unique features they thought were right for some of reasons. This approach is clear to see in both software and hardware. Such features were making the device to sell in millions or be a commercial failure.

It all started differently for different people. Some of them were working with buzzing massive computers that could fill an entire room, the others had desktop-style home computers. There were people, who made their first computer themselves using specialist magazine publications. Different types of computers created the variety of specific traditions, interests and subcultures.
Read more →
Всего голосов 5: ↑4 и ↓1+3
Комментарии1

Базовые алгоритмы на графах

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

image


Всем привет! Меня зовут Нурислам (aka tonitaga), и сегодня я бы вам хотел рассказать об Базовых алгоритмах на графах.
Читать дальше →
Всего голосов 48: ↑45 и ↓3+42
Комментарии42

В чём уникальность BeOS и HaikuOS

Время на прочтение9 мин
Количество просмотров22K
Первое, на что следует обратить внимание в бета-версии Haiku — это работа с пакетами.

Когда мы говорим просто «пакеты», то подразумеваем только запуск пакетного менеджера на GNU/Linux, и т.д., но Haiku умеет гораздо больше.

Как я уже упоминал в обзоре Haiku Beta, это первый официальный релиз функции управления пакетами. Если сформулировать вкратце, то представьте PackageFS как нечто похожее (но не такое же) на старую систему модулей Slax 6, но со всеми обычными инструментами для «пакетов».

Систему управления пакетами можно описать в пяти кратких пунктах:

  • универсальные инструменты командной строки (как и следовало ожидать);
  • HaikuDepot;
  • средство обновления программ;
  • мониторинг состояния пакетов и/или системы;
  • PackageFS (где все пакеты плавно монтируются и подключаются при загрузке), с побочным эффектом — аккуратным слоем безопасности.
Читать дальше →
Всего голосов 49: ↑48 и ↓1+47
Комментарии20

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

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

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

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

Программирование на Python и установка Docker для Sipeed Lichee RV RISC-V

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

В первой части познакомились с процессором Allwinner D1 на RISC-V архитектуре, рассмотрели возможности, поработали с одноплатным компьютером Sipeed Lichee RV. Старый образ операционной системы содержал многие недоработки, которые не позволяли полностью оценить работу одноплатника. В продолжение рассмотрения Lichee RV, возьмем новый образ Ubuntu, построенный на последнем ядре Linux 5.19, окончательный выпуск которого ожидается в конце июля 2022 года. Поработаем с GPIO из Python`а и установим Docker. Теперь полноценно протестируем новый образ, проверим на что способна плата и начнем уже программировать на Python.
Читать дальше →
Всего голосов 20: ↑19 и ↓1+18
Комментарии6
1
23 ...