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

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

Отправить сообщение

Создание своего UEFI приложения

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

Привет, Хабр! Мне 16 лет, я студент, учусь на первом курсе колледжа на программиста. Начал увлекаться низкоуровневым программированием на Ассемблере и C/C++

Я заметил что на Хабре есть множество статей о написании своих простых "загрузчиков" для BIOS-MBR, которые выводят на экран "Hello World!". И при этом практически нет ни одной статьи о создании того же самого, но только для UEFI, хотя будущее именно за ним, ведь BIOS уже давно устарел! Это я и хочу исправить в этой статье.

Читать далее
Всего голосов 86: ↑85 и ↓1 +84
Комментарии 80

Квантовый эксперимент показал, почему эффективность фотосинтеза близка к 100%

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

"Святой Грааль" любой физической системы - это 100% КПД. В большинстве условий это практически невыполнимая задача, поскольку с момента передачи любой формы энергии в систему она неизбежно теряется под воздействием различных факторов – переноса тепла, столкновений, химических реакций и т. д., - прежде чем выполнить конечную задачу, для которой она была создана. Единственный способ, с помощью которого физикам удалось создать системы с практически идеальной эффективностью, - это довести природу до граничных условий:

охладить до температур, близких к абсолютному нулю,

обстрелять монохроматическими (лазерными) фотонами (кристаллические) системы с поглощающими решётками,

или довести до таких экстремальных условий, как сверхпроводимость и сверхтекучесть.

Читать далее
Всего голосов 43: ↑41 и ↓2 +39
Комментарии 15

Бесплатные VPN | ТОП 15 Лучших VPN для ПК и телефона

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

Топ бесплатных VPN-сервисов для компьютеров и телефонов в 2023 - обзор лучших VPN для использования в России, доступных для загрузки на Windows, MacOS, iPhone, Android, а также для браузеров Google Chrome, Opera, FireFox, Яндекс.

Проанализировал более 100 VPN-приложений для разных платформ и провел тестирование каждого из них, чтобы составить рейтинг 15 наиболее надежных и эффективных, подтвержденных работоспособностью в России на данный момент и с перспективой функционирования в 2024 году.

Читать далее
Всего голосов 24: ↑9 и ↓15 -6
Комментарии 48

Современные технологии обхода блокировок: V2Ray, XRay, XTLS, Hysteria, Cloak и все-все-все

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

Три месяца назад здесь на Хабре была опубликована статья “Интернет-цензура и обход блокировок: не время расслабляться”, в которой простыми примерами показывалось, что практически все популярные у нас для обхода блокировок VPN- и прокси-протоколы, такие как Wireguard, L2TP/IPSec, и даже SoftEther VPN, SSTP и туннель-через-SSH, могут быть довольно легко детектированы цензорами и заблокированы при должном желании. На фоне слухов о том, что Роскомнадзор активно обменивается опытом блокировок с коллегами из Китая и блокировках популярных VPN-сервисов, у многих людей стали возникать вопросы, что же делать и какие технологии использовать для получения надежного нефильтрованного доступа в глобальный интернет.

Мировым лидером в области интернет-цензуры является Китай, поэтому имеет смысл обратить на технологии, которые разработали энтузиасты из Китая и других стран для борьбы с GFW (“великим китайским файрволом”). Правда, для неподготовленного пользователя это может оказаться нетривиальной задачей: существует огромное количество программ и протоколов с похожими названиями и с разными не всегда совместимыми между собой версиями, огромное количество опций, плагинов, серверов и клиентов для них, хоть какая-то нормальная документация существует нередко только на китайском языке, на английском - куцая и устаревшая, а на русском ее нет вообще.

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

Читать далее
Всего голосов 157: ↑155 и ↓2 +153
Комментарии 136

Реверс-инжиниринг ячейки регистра процессора Intel 386

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

Новаторский Intel 386 (1985 год) стал первым 32-битным процессором линейки x86. У него есть множество внутренних регистров: регистры общего назначения, индексные регистры, селекторы сегментов и более специализированные регистры. В этом посте мы изучим кремниевый кристалл 386 и объясним, как реализованы некоторые из этих регистров на уровне транзисторов. Изученные мной регистры реализованы как статическое ОЗУ, где каждый бит хранится в стандартной восьмитранзисторной цепи, называемой «8T». Исследование этой цепи демонстрирует интересные техники размещения, использованные Intel для «сжатия» двух ячеек с целью минимизации необходимого им пространства.
Читать дальше →
Всего голосов 98: ↑97 и ↓1 +96
Комментарии 6

GPT-4: Чему научилась новая нейросеть, и почему это немного жутковато

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

В этой статье мы разберем новые удивительные способности последней языковой модели из семейства GPT (от понимания мемов до программирования), немного покопаемся у нее под капотом, а также попробуем понять – насколько близко искусственный интеллект подошел к черте его безопасного применения?

Поехали →
Всего голосов 208: ↑200 и ↓8 +192
Комментарии 337

Слово Божие — функциональное программирование как основа Вселенной

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

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

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

Как писать книгу по физике в LaTeX. Cтатья 1

Время на прочтение 26 мин
Количество просмотров 34K
Это моя первая статья на Хабре.

Глава 1. Введение


1.1 Позвольте представиться и почему я это пишу

Я — научный сотрудник, физик. Недавно выпустил книгу по спектроскопии объемом 880 страниц и весом 1560 грамм. Эту книгу я писал 9 лет, параллельно читая лекции по ее содержимому. Она отняла у меня очень много времени, что естественно. Что не естественно — это то, что громадная часть потраченного времени ушла на оформление, то есть на изучение языка Латех. И это при том, что я на Латехе пишу всю жизнь, лично написал и опубликовал около 50 статей в разных издательствах.

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

После публикации книги (пока, увы, только на русском языке) у меня возникло громадное желание написать ещё книгу "Как написать книгу по физике в Латехе"
Читать дальше →
Всего голосов 128: ↑127 и ↓1 +126
Комментарии 100

Трансформером по A*, или как уменьшить число итераций самого известного алгоритма поиска пути

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

Привет! Меня зовут Константин Яковлев, я научный работник и вот уже более 15 лет я занимаюсь методами планирования траектории. Часто эта задача сводится к поиску пути на графе, для чего обычно используется алгоритм эвристического поиска A*. Этот алгоритм был предложен в 60-х годах XX века и с тех пор используется повсеместно. Скорее всего, юнит вашей любимой RTS бежит по карте с помощью той или иной вариации A*. Точно так же, под капотом беспилотного авто вы, наверняка, найдёте A*, хотя там, конечно, не только он.

A* — это хороший алгоритм, но его вычислительная эффективность сильно зависит от эвристической функции, которую должен задать разработчик. Основная проблема стандартных эвристик заключается в том, что они не учитывают расположение препятствий на карте и ведут поиск буквально напролом, тратя на это ресурсы (итерации поиска). Почему бы нам не воспользоваться современными нейросетями для решения этой проблемы, а именно попросить нейросеть посмотреть на карту и подсказать поиску как лучше обходить препятствия, чтобы быстрее (за меньшее число итераций) найти нужный путь?

Этот текст посвящен как самому алгоритму A*, так и попыткам повысить его эффективность с помощью методов искусственного интеллекта. Заодно я расскажу о том, какие новшества в этом направлении придумали мы с коллегами: научная статья на эту тему опубликована в сборнике конференции AAAI 2023.

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

Как профилировать, когда perf видит не все

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


В современных системах интерпретаторы используются повсеместно. Для проверки на соответствие ожиданиям по производительности их необходимо профилировать. Но когда значительная часть логики исполняется встроенным интерпретатором, окинуть взглядом общую картину при профилировании становится крайне затруднительно, потому что существующие инструменты не способны отражать переходы между интерпретируемой и нативной частями системы.
Читать дальше →
Всего голосов 66: ↑66 и ↓0 +66
Комментарии 2

Neovim для full stack программиста

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

Я немного расскажу, как использую vim в работе full stack программиста, со своей колокольни, но для начала отвечу на некоторые вопросы, которые задают мне, когда узнают, что я использую vim при разработке проектов:

Зачем?

Хороший вопрос. Стоит для себя лично на него ответить. Зачем валандаться с vim, изучать кучу комбинаций клавиш и плагинов? Какой смысл, если есть vscode или pycharm или phpstorm? Жизнь коротка, стоит ли ее тратить на все это? Чтобы впечатлить кого-то, как на картинке в начале статьи? Да кого этим удивишь?

Читать далее
Всего голосов 58: ↑56 и ↓2 +54
Комментарии 179

Структура данных B-дерево

Время на прочтение 5 мин
Количество просмотров 49K
Всем привет! Мы запустили новый набор на курс «Алгоритмы для разработчиков» и сегодня хотим поделиться интересным переводом, подготовленным для студентов данного курса.



В деревьях поиска, таких как двоичное дерево поиска, AVL дерево, красно-чёрное дерево и т.п. каждый узел содержит только одно значение (ключ) и максимум двое потомков. Однако есть особый тип дерева поиска, который называется B-дерево (произносится как Би-дерево). В нем узел содержит более одного значения (ключа) и более двух потомков. B-дерево было разработано в 1972 году Байером и МакКрейтом и называлось Сбалансированное по высоте дерево поиска порядка m (Height Balanced m-way Search Tree). Свое современное название B-дерево получило позже.
Читать дальше →
Всего голосов 19: ↑13 и ↓6 +7
Комментарии 5

Повербанк для ноутбука на стероидах или DIY выходного дня

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

Многие летом работают с дачи, а некоторые даже находят уединенные уголки в лесу с доступом к 4G. И все бы хорошо, но на даче иногда «пропадает свет», а в лесу его и вовсе нет. Я расскажу, как сделать на скорую руку power bank для ноутбука, который обеспечит дни, а при желании и недели свободы от розетки.

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

Приложение BAI Chat на GTK4 и Python

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

В последнее время все большей популярностью пользуются различные чаты на основе ChatGPT. Они доступны не только в формате веб-версий или telegram-ботов, но и в виде отдельных приложений для разных платформ.

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

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

Аллокаторы памяти

Время на прочтение 20 мин
Количество просмотров 92K
Всем привет! Не так давно, после очень плотного изучения аллокаторов и алгоритмов распределения памяти, а также в последующем применении их на практике мне в голову пришла идея написать статью, в которой будет максимально подробно рассказано о них. Считаю, что данная тема будет достаточно востребованной, так как в сети, особенно в русскоязычной части, на данный момент существует очень мало источников, посвященных этому вопросу.
Читать дальше →
Всего голосов 43: ↑40 и ↓3 +37
Комментарии 15

Как выглядит край Вселенной?

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

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

Но в одном мы уверены точно: у Вселенной есть край. Только не в пространстве, а во времени. Поскольку горячий Большой взрыв произошёл в известное, конечное время в прошлом — 13,8 миллиарда лет назад, с неопределённостью менее 1% — существует «край» того, как далеко мы можем видеть. Даже при скорости света, предельной космической скорости, существует фундаментальный предел того, как далеко назад мы можем заглянуть. Чем дальше мы смотрим, тем дальше назад во времени мы заглядываем. И вот что мы видим, приближаясь к краю Вселенной.
Читать дальше →
Всего голосов 102: ↑99 и ↓3 +96
Комментарии 141

LaTeX + диплом

Время на прочтение 10 мин
Количество просмотров 21K
Продолжаем тему LaTeX + диплом.

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

Читать дальше →
Всего голосов 21: ↑19 и ↓2 +17
Комментарии 13

Transformer в картинках

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

В прошлой статье мы рассматривали механизм внимания (attention) – чрезвычайно распространенный метод в современных моделях глубокого обучения, позволяющий улучшить показатели эффективности приложений нейронного машинного перевода. В данной статье мы рассмотрим Трансформер (Transformer) – модель, которая использует механизм внимания для повышения скорости обучения. Более того, для ряда задач Трансформеры превосходят модель нейронного машинного перевода от Google. Однако самое большое преимущество Трансформеров заключается в их высокой эффективности в условиях параллелизации (parallelization). Даже Google Cloud рекомендует использовать Трансформер в качестве модели при работе на Cloud TPU. Попробуем разобраться, из чего состоит модель и какие функции выполняет.


Впервые модель Трансформера была предложена в статье Attention is All You Need. Реализация на TensorFlow доступна как часть пакета Tensor2Tensor, кроме того, группа NLP-исследователей из Гарварда создали гид-аннотацию статьи с реализацией на PyTorch. В данном же руководстве мы попробуем максимально просто и последовательно изложить основные идеи и понятия, что, надеемся, поможет людям, не обладающим глубоким знанием предметной области, понять данную модель.

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

Жадные алгоритмы

Время на прочтение 4 мин
Количество просмотров 183K
ДеньгиДоброго времени суток, хабр! Сегодня я бы хотел рассказать про жадные алгоритмы.

Есть много методов решения тех или иных задач: динамическое программирование, перебор. Не менее известными и довольно распространенными являются жадные алгоритмы.

Думаю, каждый программист в своей жизни хотя бы раз написал жадину, может быть, даже не задумываясь об этом. Что же это такое? Добро пожаловать под кат.
Читать дальше →
Всего голосов 106: ↑100 и ↓6 +94
Комментарии 17

Минимакс на примере игры в зайца и волков

Время на прочтение 11 мин
Количество просмотров 89K
image Данная статья предназначена для разъяснения сути фундаментальных методов построения и оптимизации «искусственного интеллекта» для компьютерных игр (в основном антагонистических). На примере игры в зайца и волков будет рассмотрен алгоритм «Минимакс» и алгоритм его оптимизации «Альфа-бета отсечение». Помимо текстового описания, статья содержит иллюстрации, таблицы, исходники, и готовую кроссплатформенную игру с открытым кодом, в которой вы сможете посоревноваться с интеллектуальным агентом.
Читать дальше →
Всего голосов 81: ↑77 и ↓4 +73
Комментарии 17

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность