Search
Write a publication
Pull to refresh
54
0

Пользователь

Send message

Взлом и защита шифрования дисков LUKS

Reading time8 min
Views60K

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

Как разрабатываются и производятся процессоры: проектирование ЦП

Reading time9 min
Views38K
image

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

Часть 1: Основы архитектуры компьютеров (архитектуры наборов команд, кэширование, конвейеры, hyperthreading)
Часть 2: Процесс проектирования ЦП (электрические схемы, транзисторы, логические элементы, синхронизация)
Часть 3: Компонование и физическое производство чипа (VLSI и изготовление кремния)
Часть 4: Современные тенденции и важные будущие направления в архитектуре компьютеров (море ускорителей, трёхмерное интегрирование, FPGA, Near Memory Computing)

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

Существует два основных типа транзисторов, используемых в современных процессорах: pMOS (PМОП) и nMOS (NМОП). nMOS-транзистор пропускает ток, когда затвор (gate) заряжен или имеет высокое напряжение, а pMOS-транзистор пропускает ток, когда затвор разряжен или имеет низкое напряжение. Сочетая эти типы транзисторов комплементарным образом, мы можем создавать логические элементы КМОП (CMOS). В этой статье мы не будем подробно разбирать особенности работы транзисторов, но коснёмся этого в третьей части серии.
Читать дальше →

Авиационные газотурбинные двигатели

Reading time7 min
Views112K
Всем привет! В этой статье я хочу рассказать о том, как работают авиационные газотурбинные двигатели (ГТД). Я постараюсь сделать это наиболее простым и понятным языком.

Авиационные ГТД можно можно разделить на:

  • турбореактивные двигатели (ТРД)
  • двухконтурные турбореактивные двигатели (ТРДД)
  • Турбовинтовые двигатели (ТВД)
  • Турбовальные двигатели (ТВаД)

Притом, ТРД и ТРДД могут содержать в себе форсажную камеру, в таком случае они будут ТРДФ и ТРДДФ соответственно. В этой статье мы их рассматривать не будем.

Начнём с турбореактивных двигателей.

Турбореактивные двигатели


Такой тип двигателей был создан в первой половине 20-го века и начал находить себе массовое применение к концу Второй мировой войны. Первым в мире серийным турбореактивным самолетом был немецкий Me.262. ТРД были популярны вплоть до 60-ых годов, после чего их стали вытеснять ТРДД.

image
Современная фотография Me-262, сделанная в 2016 году

Самый простой турбореактивный двигатель включает в себя следующие элементы:

  • Входное устройство
  • Компрессор
  • Камеру сгорания
  • Турбину
  • Реактивное сопло (далее просто сопло)

Можно сказать, что это минимальный набор для нормальной работы двигателя.

А теперь рассмотрим что для чего нужно и зачем.
Читать дальше →

Джулия и параллельные вычисления

Reading time18 min
Views12K


С момента выхода в августе 2018, язык Julia активно набирает популярность, войдя в топ 10 языков на Github и топ 20 самых популярных профессиональных навыков по версии Upwork. Для начинающих стартуют курсы и выпускаются книги. Julia используется для планирования космических миссий, фармакометрики и климатического моделирования.


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

Читать дальше →

Большой механический дисплей с кулачковым механизмом в качестве дешифратора

Reading time2 min
Views19K


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

Часть 1: RISC-V / RocketChip в неестественной среде обитания

Reading time15 min
Views10K
Конфигурирование RocketChip

Недавно на Хабре публиковалась статья о том, как поэкспериментировать с архитектурой RISC-V без затрат на «железо». А что, если сделать подобное на отладочной плате? Помните мемы про генератор игр: штук 20 галочек в стиле «Графика не хуже Кризиса», «Можно грабить корованы» и кнопка «Сгенерировать». Приблизительно так же устроен генератор SoC-ов RocketChip, только там не окно с галочками, а Scala-код и немного ассемблера и Make-файлов. В этой статье я покажу, как просто портировать этот RocketChip с родного для него Xilinx на Altera/Intel.

Читать дальше →

Сети кабельного телевидения для самых маленьких. Часть 8: Оптическая магистральная сеть

Reading time3 min
Views8.8K


Вот уже много лет основой передачи данных является оптическая среда. Сложно представить хабрачитателя, не знакомого с этими технологиями, однако без хотя бы краткого описания обойтись в моей серии статей невозможно.
Читать дальше →

Однобитный полный сумматор на необычных микросхемах

Reading time1 min
Views12K


Мы привыкли к 14- и 16-выводным микросхемам, содержащим несколько логических элементов или целый узел — счётчик, дешифратор, АЛУ, и др. Но раньше были и микросборки и микросхемы, в которых помещался всего один логический элемент. После долгого забвения они вернулись в виде пятивыводных SMD-компонентов. Например, 74LVC1G86 — исключающее ИЛИ, 74LVC1G08 — И, 74LVC1G32 — ИЛИ. На них и выполнен предлагаемый однобитный полный сумматор.
Читать дальше →

Комикс «Паять просто» в обновлённом варианте (2019)

Reading time1 min
Views38K
image

Всем добрый день. Одним далёким днём (летним или зимним уже и не упомнить) набрёл я на статью от atarity, где в красках (во всех смыслах) было рассказано о том, как легко и просто можно научиться паять (ссылку на комикс прилагаю).
Читать дальше →

Автор Dwarf Fortress Тарн Адамс рассказывает о разработке игры

Reading time10 min
Views19K
image

Одним из лучших способов применения мощных процессоров для развлечений долгое время была Dwarf Fortress — игра, в которой весь мир состоит из символов ASCII, и которая с радостью съест гигабайт памяти и большую долю процессорного времени.

Но в отличие от некоторых других игр, в случае DF игрок чувствует, что ей действительно нужно всё то, что она требует. Её подробные вычисления создают целый мир со зданиями, городами, торговцами, реками, вулканами, монстрами и, разумеется, гномами. Если бы один человек создал всё это, то это было бы потрясающим достижением; Dwarf Fortress — программа, создающая все эти объекты самостоятельно.

Автор игры Тарн Адамс согласился ответить на наши вопросы о своём творении, которое, несмотря на существование множества имитаций, до сих пор остаётся совершенно уникальной игрой.
Читать дальше →

Трёхкомандное ДУ с программой из 290 16-битных слов

Reading time2 min
Views6.4K


Устройство на ATtiny13, управляемое программой из 290 16-разрядных слов, написанной на ассемблере, запоминает коды шести кнопок пульта ДУ и включает/выключает три нагрузки.
Читать дальше →

Software Defined Radio — как это работает? Часть 7

Reading time25 min
Views20K
Привет, Хабр.

В предыдущей части про передачу в GNU Radio был задан вопрос о том, можно ли декодировать протокол LoRa (передача данных для устройств с низким энергопотреблением) с помощью SDR. Мне эта тема показалась интересной, тем более что и сам сигнал у LoRa довольно-таки необычный — так называемая Chirp Spread Spectrum modulation, или «модуляция чирпами».



Как это работает, продолжение под катом.
Читать дальше →

Реактивный двигатель на домашнем 3D-принтере

Reading time1 min
Views24K


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

Сети кабельного телевидения для самых маленьких. Часть 7: Оптические приёмники

Reading time4 min
Views20K


Граница между оптической средой и коаксиальным кабелем — оптический приёмник. В этой статье рассмотрим их конструкцию и настройки.
Читать дальше →

Использование блоков UDB контроллеров PSoC фирмы Cypress для уменьшения числа прерываний в 3D-принтере

Reading time14 min
Views3.8K


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

UDB. Что же это такое? Часть 7. Модуль управления тактированием и сбросом

Reading time6 min
Views2.6K


Очередная глава из официальной документации Cypress про управление тактированием и сбросом. Как уже упоминалось в первой статье этого цикла, этот модуль обеспечивает выбор и разрешение тактирования, а также выбор сброса внутри UDB. Подробнее — под катом.
Читать дальше →

Upgrade дисковой подсистемы старого сервера с шиной PCIe 1.0 — 2.0

Reading time7 min
Views15K
Почему темой данной статьи выбран апгрейд дисковой подсистемы
Понятно, что в первую очередь нужно, как правило:

  1. Увеличить оперативную память. Это настолько очевидный ход, что я даже не счёл нужным писать об этом в основной статье
  2. Поставить дополнительный процессор(ы) или заменить оба процессора на максимально производительные версии поддерживаемые сокетами сервера.

Для старых серверов, что память, процессоры, как правило, можно найти по бросовым ценам.

В определённый момент перед любым владельцем собственного сервера становится вопрос — upgrade или новый сервер.

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

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

В статье приведён список серверных SSD PCI-E 2.0 x8, которые сильно подешевели сейчас, указаны рейд-контроллеры с поддержкой SSD-кеширования и испытан SATA III SSD на интерфейсе SATA II.
Читать дальше →

RISC-V с нуля

Reading time18 min
Views62K
В этой статье мы исследуем различные низкоуровневые концепции (компиляция и компоновка, примитивные среды выполнения, ассемблер и многое другое) через призму архитектуры RISC-V и её экосистемы. Я сам веб-разработчик, на работе ничем таким не занимаюсь, но мне это очень интересно, отсюда и родилась статья! Присоединяйтесь ко мне в этом беспорядочном путешествии в глубины низкоуровневого хаоса.

Сначала немного обсудим RISC-V и важность этой архитектуры, настроим цепочку инструментов RISC-V и запустим простую программу C на эмулированном оборудовании RISC-V.
Читать дальше →

Information

Rating
Does not participate
Date of birth
Registered
Activity