Search
Write a publication
Pull to refresh
0
@MacInread⁠-⁠only

User

Send message

Советская «Семерка», современная космонавтика и Илон Маск

Reading time15 min
Views32K


Этот текст написан инженером-ракетостроителем, который не один десяток лет посвятил работе на «РКЦ Прогресс». Это предприятие производит и модернизирует одну из самых известных и востребованных в мире ракет – «Союз». Эта ракета исторически развивается от легендарной Р-7, сконструированной под руководством Сергея Королёва, и запустившей первый спутник, первого человека, первые автоматические межпланетные станции… Ниже будет много букв об уникальности конструкции ракеты, о секретах её успеха, об особенностях технологии производства, и о том, чему у советских инженеров научился Илон Маск.
Читать дальше →

Операционная система Phantom от российского разработчика: возможности и нюансы

Reading time4 min
Views52K

Источник: СNEWS

Сразу стоит сказать, что ОС Phantom, которую готовит к выходу российский разработчик Дмитрий Завалишин, существует лишь в виде прототипа. Но прототипа уже вполне работоспособного, который позволяет говорить о возможностях системы.

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

Singularity — экспериментальная ОС от Microsoft

Reading time3 min
Views16K

Что будет, если прямо сейчас написать новую ОС с нуля? Можно ли сделать её лучше других? Можно ли повысить безопасность и надежность? Можно ли предотвратить непредвиденное взаимодействие между приложениями?

«Как бы выглядела программная платформа, если бы она была построена с нуля с основной целью "обеспечение надежности"?»

Это те вопросы, на которые команда Microsoft Research пыталась ответить около 18 лет назад, и именно тогда они придумали крутое название для своей новой ОС - Singularity.

Читать далее

Капля здравого смысла для Windows-разработки на C и C++

Reading time8 min
Views24K
Суровая действительность разработки на C и C++ для Windows такова: для этой платформы никогда не существовало качественной, нативной реализации стандартной библиотеки этих языков. Стандартная библиотека должна абстрагировать механизмы базовой системы ради упрощения разработки переносимого программного обеспечения. С и C++ на Windows очень плохо состыкованы с интерфейсами операционной системы. В результате большая часть переносимых, или, так сказать, «почти всегда переносимых» программ, которые отлично работают практически везде, в Windows оказываются едва заметно «поломанными», в особенности — за пределами англоговорящего мира. Причины этого почти наверняка связаны с политикой тех или иных компаний, с искусственными ограничениями, а не с техническими особенностями систем, что лишь усугубляет положение. Эта статья посвящена рассказу о проблемах Windows-разработки на C и C++ и о том, как они выражаются. Здесь же будут представлены некоторые простые методы борьбы с этими проблемами при разработке переносимого ПО.


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

Как мы отказались от JPEG, JSON, TCP и ускорили ВКонтакте в два раза

Reading time24 min
Views171K

На протяжении всей жизни мне приходится экономить вычислительные и сетевые ресурсы: сначала были компьютеры с 300 кГц (кило — не гига!) и 32 Кбайт RAM, интернет по dial-up. Потом я решал олимпиадные задачки. Теперь имею дело с терабайтами трафика и 50 млрд событий в сутки. И хотя современные телефоны в 1 000 раз мощнее любого оборудования двадцатилетней давности, я до сих пор оптимизирую. Думал даже, что это со мной что-то не так. Но потом понял, что все постоянно что-нибудь оптимизируют. 

Эта статья в меньшей степени о том, почему нужно бороться за производительность, и в большей о том, на что сейчас стоит заменить устаревший стек из JPEG, JSON, gzip и TCP — и как это сделать. 

Спойлер: у нас есть решение и мы его не только показываем — ссылки на open source в конце статьи.

Читать далее

К нам приехал моноблок на «Байкале» для офиса — «Ну а чего вы ждали?»

Reading time5 min
Views168K

Фото предоставлено вендором

К нам приехал первый российский персональный компьютер на процессоре «Байкал». Точнее, «Байкал-М» (8 ядер Arm Cortex-A57 с частотой до 1,5 ГГц в архитектуре Armv8-A). Выглядит он как обычный недорогой монитор, к которому сзади прикрепили материнскую плату и остальные компоненты. Собственно, так и есть.

На моноблоке предустановлен Alt Linux Workstation 9.2, то есть машина вполне подходит для офисного применения. На нём можно вполне стандартно работать с файлами, офисными приложениями и более-менее нормально сёрфить в Интернете. Что такое «более-менее» и «нормально» и как вообще выглядит офисная работа — расскажу ниже. Коротко: пользователям придётся потерпеть, но зато родное, отечественное.

Хотелось бы начать с того, что со стороны портов из моноблока торчал кусочек кабеля. Выглядит моноблок как обычный телевизор с утолщённой задней частью (где материнка). Так вот, из недр этой задней части торчит небольшой кусочек HDMI-кабеля, который высовывается оттуда, только чтобы воткнуться в штатный внешний HDMI-разъём материнской платы. Довольно необычное решение.
Читать дальше →

Как в Java устроено выделение регистров в памяти

Reading time6 min
Views15K

Привет, Хаброжители! Обратите внимание на большую распродажу в честь Старого Нового года.

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

Читать далее

Security Week 2202: Y2K22

Reading time3 min
Views2.5K
Новогодние праздники — самое подходящее время для неожиданных глюков софта, который, по идее, должен работать, пока все остальные отдыхают. Именно на новый 2022 год пришлось сразу несколько сообщений о проблемах с обработкой дат, которые можно по аналогии с «проблемой 2000 года» или Y2K назвать «Y2K22». Сбои интересны тем, что, в отличие от «проблемы 2000» или «проблемы 2038» в Unix time, или хотя бы «проблемы 2010», от 2022 года никто таких сбоев не ожидал.


Наиболее заметной оказалась проблема с onpremises-серверами Microsoft Exchange. 1 января Exchange версий 2016 и 2019 гг. перестал обрабатывать почту (новость, обсуждение на Хабре, статья Microsoft). Причина сбоя была во встроенном в Exchange Server антивирусном сканере, а точнее, в простом обработчике даты внутри. Дата обрабатывалась в виде «YYMMDDHHMM» и при этом хранилась в виде числа в переменной такого типа, который допускает максимальное значение 2147483647. Сразу после боя курантов дата сменилась на 2201010001, и произошло переполнение.
Читать дальше →

Российские серверные CPU и производство электроники. Есть ли свет в конце тоннеля?

Reading time7 min
Views35K

Фото: Yadro

Как мы рассказали в первой части, с 1 января 2022 года вступит в силу постановление правительства, по которому серверы с отечественными процессорами получат безусловное преимущество над российскими серверами с иностранными процессорами в гостендерах. По сути, это означает передел рынка и постепенное вытеснение тех производителей серверов, которые заняли «неправильную позицию».

Передел рынка происходит на фоне бурного роста: продажи серверов достигли $1,32 млрд (+18% за год), а государство не скупится на прямые и косвенные дотации отечественным производителям. Таким образом, сложилась очень выгодная ситуация для инвестиций в R&D, то есть в разработку новых процессоров.
Читать дальше →

Музыка на Commodore PET — Faulty Robots

Reading time26 min
Views2.3K

После выпуска System Beeps, музыкального альбома для PC Speaker, я не планировал возвращаться к псевдомногоголосой одноканальной музыке в формате подобных крупных самостоятельных релизов, считая тему достаточно раскрытой. Это, конечно, не означало отказа от более утилитарного применения подобных наработок при подходящем случае, например, в ретро-игровых или демосценовых проектах для старых компьютеров. Осенью прошлого года на горизонте появился очередной проект подобного плана от автора популярного Youtube-канала The 8-bit Guy, Дэвида Мюррея — игра Attack of the PETSCII Robots для линейки 8-битных компьютеров Commodore, включая PET, VIC-20 и C64. Я уже сотрудничал с Дэвидом на его предыдущем проекте, игре Planet X3 для MS-DOS. Новая затея как нельзя лучше соответствовала моему интересу к персоналкам до-графической эпохи и большому опыту как в области минималистичного компьютерного звука, так и программировании на ассемблере для процессора 6502, поэтому я срочно вписался в работу над проектом, надеясь на этот раз помимо написания звукового кода поучаствовать и в сочинении музыки.

В рабочем процессе возникали разнообразные проблемы, плавно перетёкшие в небольшой производственный ад (скандалы, интриги и расследования можно найти в серии постов в моём Patreon), в результате чего мой код и звуки были использованы только в версии для VIC-20, а музыку к остальным версиям игры написали другие композиторы. Но у меня оставались наработки в виде рабочего кода для PET и набросков композиций. Было жалко отправлять их в стол, ведь релизы для этой платформы — явление крайне редкое, и нового шанса задействовать то, что уже было сделано, пришлось бы ждать долго. Поэтому, с одобрения Дэвида, я принял решение дописать наброски до полноценных треков и выпустить свой альтернативный саундтрек в виде небольшого альбома под названием Faulty Robots, как в виде аудио, так и в формате самостоятельной программы для PET.

Читать далее

Собираем свой AM-передатчик кода Морзе

Reading time8 min
Views19K

Это проект по сборке простого маломощного AM-передатчика кода Морзе, позволяющего передавать сообщения, которые можно будет принимать на любом транзисторном радиоприемнике в средневолновом диапазоне. Этого диапазона вполне достаточно для передачи между комнатами в доме, и при этом нет риска пересечься с каналом радиовещания.
Читать дальше →

Разбираем задачу T9 (predictive text)

Reading time5 min
Views5.3K

Привет, Хабр! На днях ко мне обратился ученик на одном из ресурсов, где я выступаю в качестве frontend-ментора, с просьбой разобрать одну задачу. Суть задачи состояла в следующем:

Найти все доступные комбинаций предложений, полученных методом T9 (predictive text)

Вводные данные:

Файл input.txt, в котором описаны последовательности цифр, имитирующие пользовательский ввод:

Читать далее

Социальные сети оказались безопаснее порталов государственных услуг

Reading time3 min
Views13K

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

Расчетный листок, полученный римским солдатом X легиона. 2000 лет пролетело — ничего не изменилось…

Reading time3 min
Views66K

Листок папируса, найденный близ крепости Масады в Израиле, представляет собой расписку о получении жалования (и вычетах из него) одного из солдат римской армии.

Автор: Лысый Камрад (@LKamrad)

На самом деле армия Римской империи  –  это не только  стройные ряды когорт, блеск  доспехов, топот солдатских калиг,  звуки труб, взметнувшиеся штандарты и  орлы легионов  над ними,  как в исторических блокбастерах  Голливуда, но так же  контроль и учет всех расходов,  тщательно просчитанная логистика снабжения и, как следствие,  куча бюрократических проволочек, бумаг и документов.

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

Давайте познакомимся с нашим "расчетным листком"  поближе.

Читать далее

WinAPI из C#

Reading time4 min
Views23K

Язык программирования C# был создан как язык, который можно использовать для простого программирования в ОС Windows. Позже этот язык получил возможность создавать приложения и на других операционных системах, но в этой статье мы будем говорить только об ОС Windows.

Для работы с операционной системой С# использует платформу .Net - по сути, высокоуровневую обертку для WinAPI функций. Для того чтобы выполнить элементарные операции нужно просто найти нужный класс/функцию и передать необходимый набор параметров.

Но всё становится сложнее, если нужно работать с функциями, которые не имеют оберток для .Net или когда требуется низкоуровневый доступ к структурам данных или нативному коду. Статья расскажет о нескольких способах использования функций WinAPI из C#.

Читать далее

Флюороз — противоположность кариеса (и проверьте, что за воду вы пьёте)

Reading time9 min
Views18K

Это не кариес, а флюороз, по таким зубам можно понять, насколько хорошую воду вы пьёте.

Хорошая новость: стрептококки не смогут это прогрызть, и флюороз защищает от кариеса.
Плохая новость: это нарушение эмали и дентина зуба из-за высокого содержания фтора.
Ещё одна плохая новость: это навсегда.

Чаще всего фтор может быть повышен по двум причинам:

  1. Его очень много в воде, которую мы пьём.
  2. Его много на производстве, на котором работаем.

Максимальные риски заработать флюороз — у младенцев на искусственном вскармливании и детей до 15 лет, которые пьют воду с повышенным содержанием фтора. Но если вы взрослый человек с флюорозом, то надо помнить, что возникшая форма остаётся с вами на всю жизнь. Тактика лечения зависит от стадии. При лёгкой — это когда на зубах небольшие пятна и штрихи — отбеливание раз в год и реминерализация без фтора. А если случай тяжёлый с изменением коронок зубов за счёт эрозий и отлома частей зубов — виниры и коронки. Это дорого, но зато поможет сохранить зубы.

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

«Инопланетный артефакт» — диск Сабу возрастом более пяти тысяч лет. Что же это такое на самом деле?

Reading time7 min
Views133K

Автор Лысый Камрад (@LKamrad)

Диск Сабу (инвентарный номер JE 71295) можно увидеть в Каирском музее под стеклом витрины в комнате №43. Ему более пяти тысяч лет, и он найден в гробнице "принца Сабу", недалеко от ступенчатой пирамиды фараона Джосера, но сам артефакт, как минимум, на два-три века старше этой самой древней египетской пирамиды.

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

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

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

Объяснение фильтра Калмана в картинках

Reading time9 min
Views50K
image

Я обязан рассказать вам о фильтре Калмана, потому что он выполняет просто потрясающую задачу.

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

Изготавливаем самодельный электролюминесцентный индикатор

Reading time11 min
Views25K
В прошлый раз я показывал вам свою коллекцию советских электролюминесцентных индикаторов. Я капитально подсел на эту тему и последние три месяца пытаюсь изготовить самодельный индикатор удовлетворительного качества.

Дерпи Хувс ловит маффины. Стекло. Эпоксидка. Зелёный люминофор.

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

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

Information

Rating
Does not participate
Registered
Activity