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

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

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

Вам календарик 2013

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


Добрые традиции — это здорово! Календарик!

В карман (100×70мм):
pdf, eps, svg или png (1185×829, 300dpi)

На стенку (A4):
pdf, eps, svg или png (3512×2457, 300dpi)

Сделай сам:
Генератор календариков (Python, CC-BY)

Читать дальше →
Всего голосов 197: ↑176 и ↓21+155
Комментарии34

Меня попросили взломать программу на собеседовании

Время на прочтение11 мин
Количество просмотров194K
TL;DR Меня попросили взломать программу на собеседовании. И я получил работу.

Всем привет,

Я собеседовался на позицию инженера программной безопасности, они спрашивали в основном разные низкоуровневые вещи. Некоторые ответы я знал, некоторые нет.
Потом они прислали email с защищённым и зашифрованным бинарником, который нужно было взломать.
Когда я добрался до дома, я скачал его и увидел, что он спрашивает пароль. Они хотели, чтобы я нашёл этот пароль.
Вот что я увидел при первом запуске:
Читать дальше →
Всего голосов 220: ↑187 и ↓33+154
Комментарии61

Старым браузерам — старая версия Google

Время на прочтение1 мин
Количество просмотров74K
Компания Google оригинально «воспитывает» пользователей, которые не обновляют браузер. С 29 августа им показывают старую версию Google.com и старый интерфейс поиска по картинкам. Даже в строчке с копирайтом указан 2013 год.


Читать дальше →
Всего голосов 77: ↑70 и ↓7+63
Комментарии97

Астрофизики построили трехмерную визуализацию нашего суперкластера

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


Объединенная команда астрофизиков из Франции, Израиля и США создали трехмерную визуализацию локального суперкластера, куда входит и наша Галактика. Сам суперкластер был назван Laniakea, что означает «Неизмеримые небеса» на гавайском (кстати, есть нечто схожее с «Лалангаменой» — есть такой НФ рассказ и сборник НФ произведений, если не читали, рекомендую).

Диаметр сечения суперкластера составляет 160 мегапарсек, это в несколько тысяч раз больше, чем диаметр Млечного пути. А масса такого образования более, чем в сто тысяч раз превышает массу нашей Галактики. «Небеса» включают в себя около 100 тысяч галактик.

Читать дальше →
Всего голосов 83: ↑81 и ↓2+79
Комментарии89

cool-old-term — старый добрый терминал

Время на прочтение1 мин
Количество просмотров49K
Некто с никнеймом Swordfish90 разрабатывает эмулятор терминала cool-old-term с интерфейсом, напоминающим старые CRT мониторы. Автор признаётся, что мечтал реализовать подобное приложение со времени, когда он впервые сыграл в Fallout III. Swordfish90 пытается сделать олдскульный, но вместе с тем настраиваемый и легковесный эмулятор терминала. Проект разрабатывается с использованием Qt5 и QtQuick, разработка ведётся на Github.


Скрытый текст

Всего голосов 128: ↑122 и ↓6+116
Комментарии42

«Путевые» фотографии межпланетной станции Rosetta: с 2005 года по настоящее время

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

Это не фотография, а рисунок, фантазия художника. Фотографии — под хабракатом.

Межпланетная станция Rosetta с зондом Philae на борту находится уже примерно в 3 тысячах километров от своей цели, кометы Чурюмова-Герасименко. Напомню, именно на эту комету запланирована высадка зонда в начале августа. Как уже ранее писали на Хабре, Rosetta сделала наиболее подробные снимки кометы Чурюмова-Герасименко, и после анализа фотографий оказалось, что ядро у кометы — двойное.

Интересно еще и то, что кроме непосредственной свой задачи — изучения ядра кометы, подробного фотографирования кометы и всего прочего, станция Rosetta выполняла и побочные задания. Например, фотографировала многие интересные объекты, начиная с 2005 года (момент запуска станции), и заканчивая этим месяцем. В продолжении — галерея этих фотографий с описанием каждой.

Читать дальше →
Всего голосов 69: ↑68 и ↓1+67
Комментарии23

15 малоизвестных команд Linux

Время на прочтение3 мин
Количество просмотров317K
Каждому разработчику в определенной степени следует овладеть навыками работы в терминале. Физически находиться у компьютера не всегда возможно, поэтому приходится подключаться удаленно. И действительно, GUI-программы вполне могут с этим с правиться, но зачастую они работают медленнее, чем получение доступа через тот же терминал (в конце концов, это лишь обмен текстом).
Читать дальше →
Всего голосов 333: ↑274 и ↓59+215
Комментарии224

Изолирование приложения с IP-адресом из VPN другой страны на примере Steam

Время на прочтение7 мин
Количество просмотров68K
Abstract: Изоляция приложения на уровне сети использованием network namespaces Линукса. Организация SSH-туннелей.

Традиционно, большая часть статьи будет посвящена теории, а скучные скрипты — в конце статьи. В качестве субъекта для экспериментов будет использоваться Steam, хотя написанное применимо к любому приложению, включая веб-браузеры.

Вместо вступления. Я просто покажу эту картинку:

147%… Что-то мне это напоминает. Впрочем, хабр не для политики.

Цена на игры в Стиме зависит от региона. Регион — от IP'шника. Есть желание иметь цены в рублях, а не в евро.

Для этого мы используем VPN через SSH с использованием tun-устройств, плюс network namespaces для изоляции приложения от всех остальных сетевых устройств.

Network namespaces


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

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

Если у нас есть несколько интерфейсов (один из которых относится к VPN), то нет штатных методов сказать стиму, что надо использовать его, а не eth0/wlan0. Точнее, мы можем «завернуть» весь трафик в VPN, но это не всегда желательно. Как минимум — рост latency и снижение скорости (даже если VPN ведёт на супербыстрый сервер, увеличение latency, оверхед от туннеля и фиксированная ширина локального канала ставят TCP в положение, когда приходится резать скорость). Как максимум — одно дело «покупать через русский VPN», другое дело — пускать туда весь трафик. Меня совсем не прельщает использование VPN для получения защиты роскомнадзором от оппозиции и вольнодумства.

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

Для решения этой задачи в Linux, уже довольно давно (аж с 2007 года) существует технология, называемая network namespaces, то есть пространства имён для сетей. Суть технологии: над сетевыми интерфейсами создаётся подобие «каталогов», в каждом каталоге может быть несколько сетевых интерфейсов и приложений. Приложение, оказавшееся в заданном сетевом пространстве имён, может использовать (и видит) только те сетевые интерфейсы, которые отнесены к этому пространству.

Картинка ниже поясняет происходящее:

Читать дальше →
Всего голосов 111: ↑105 и ↓6+99
Комментарии84

Доступ к скрытым настройкам UEFI BIOS от Insyde

Время на прочтение29 мин
Количество просмотров509K
Здравствуй Хабр!

Одно из направлений моей компании — продажа технологических решений в области виртуализации. По долгу службы, приходится делать пилотные проекты или устраивать тестовые стенды. Недавно, компания Citrix выпустила новый продукт под название XenClient XT, который по сути является клиентским гипервизором первого уровня, то есть работает на чистом железе. Основной идеей клиентского гипервизора является создание виртуальных машин на собственном ноутбуке. Где и как это применимо — опустим.

Все современные процессоры Intel и AMD поддерживают технологию аппаратной виртулизации.
И так, в моем распоряжении был ноутбук с H77 чипсетом и Intel Core i7-3820QM процессором. Согласно спецификации от производителя, мой процессор поддерживал Intel Virtualization Technology (VT-x) и Intel Virtualization Technology for Directed I/O (VT-d) технологии. Если первая имеется почти на всех новых ноутбуках, то вторая технология встречается только на топовых моделях. Но она дает много преимуществ, как например прямой проброс GDU в виртуальную среду, соответственно клиентская машина получает полную поддержку 3D. Но давайте не будем углубляться в технологии, отличные от тематики данной статьи.

В моем биосе была возможность включения VT-x, но вот управление технологией VT-d не было предусмотрено изначально.
Читать дальше →
Всего голосов 109: ↑103 и ↓6+97
Комментарии82

Сверхбыстрое копирование\вставка фрагментов кода

Время на прочтение6 мин
Количество просмотров29K
Постоянно программируя на C++/Qt, я заметил, что было бы удобнее хранить где-нибудь свои отрывки кода и иметь к ним быстрый доступ. Конечно же, я принялся искать и нашёл множество готовых программ-органайзеров и сайтов. Я перепробовал их, но меня всё это не устроило.

Хотелось именно быстрого доступа — а значит по глобальным хоткеям. Чтобы нажал — ввёл слова в поиск — получил код. Но такими функциями обладали всего две программы, а они были платными и не кроссплатформенными.

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

Читать дальше →
Всего голосов 53: ↑48 и ↓5+43
Комментарии48

QtDbus — тьма, покрытая тайною. Часть 1

Время на прочтение7 мин
Количество просмотров29K
Наше путешествие началось Qt Graphics Framework, нас завербовали его светлой стороной, а потом мы долго получали граблями по разным частям тела.

Данная статья — это спин-офф основного сюжета. В ней сказ пойдет о QtDBus. Этот модуль Qt появился еще в четвертой версии и был хоть как-то документирован и снабжен примерами. Но грянул Qt 5.0, и уж не знаю по чему, но это привело к тому, что на сторону тьмы перешла вышеназванная дока..
Читать дальше →
Всего голосов 34: ↑32 и ↓2+30
Комментарии20

Облачная платформа Lagoa для 3D-рендеринга

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

Рендеринг интерьера и освещения с помощью движка Lagoa

В 2010 году канадский разработчик Тиаго Коста (Thiago Costa) выпустил первую версию движка для рендеринга Lagoa Multiphysics 1.0.

Демонстрационное видео Lagoa Multiphysics 1.0

Технология оказалась настолько продвинутой, что компания Autodesk купила лицензию на использование плагина Lagoa Multiphysics в своей программе Softimage.

Тиаго Коста не остановился на достигнутом. За прошедшее время он зарегистрировал коммерческую компанию, нанял команду разработчиков, разработал бэкенд для 3D-рендеринга, а неделю назад запустил облачный веб-сервис Lagoa.com. Это система для удалённого 3D-рендеринга прямо «в браузере», где для обсчитывания сложнейших сцен вообще не задействуются ресурсы вашего компьютера.
Читать дальше →
Всего голосов 82: ↑74 и ↓8+66
Комментарии36

Многоканальный программный ШИМ в AVR

Время на прочтение5 мин
Количество просмотров134K
Что такое ШИМ и как он работает особо подробно расписывать не буду, информацию без труда найдёте на просторах интернета. Коснусь лишь общих понятий. ШИМ — это Широтно-Импульсная Модуляция, (по-английски PWM — Pulse Width Modulation) уже из самого названия ясно, что здесь что-то связанное с импульсами и их шириной. Если изменять ширину (длительность) импульсов постоянной частоты, то можно управлять, например, яркостью источника света, скоростью вращения вала электродвигателя или температурой какого-либо нагревательного элемента. Обычно, именно с помощью ШИМ микроконтроллер управляет подобной нагрузкой. Микроконтроллеры имеют аппаратную реализацию ШИМ, но, к сожалению, количество аппаратных ШИМ-каналов ограничено, например, в AТmega88 их аж шесть штук, в ATtiny2313 — четыре, в ATmega8 — три, а в ATtiny13 только два. В AVR ШИМ-каналы используют таймеры и их регистры сравнения OCRxx. Изменяя их содержимое и задавая параметры таймеров, в зависимости от задач, можно управлять состоянием, связанного с регистром, выхода — подавать на него 1 либо 0. То же самое можно организовать программно, управляя любым выводом контроллера, а главное, реализовать большее количество ШИМ-каналов, чем имеется на борту аппаратных. Практически, количество каналов ограничено лишь количеством ножек-выводов микроконтроллера (по крайней мере, если говорить о семействах Mega или Tiny). Как оказалось, алгоритм довольно прост, но у меня ушло некоторое время на его понимание и полное осознание.
Читать дальше →
Всего голосов 16: ↑13 и ↓3+10
Комментарии26

Sublime Text 2 для C/C++ разработчика или SublimeClang

Время на прочтение5 мин
Количество просмотров55K
На хабре много статей посвященных редактору Sublime Text 2. Обычно они рождают за собой множество комментариев, где сторонники ST2 и всевозможных других редакторов (а также полноценных IDE) предаются веселому процессу «достоинствометрии».
Однако, среди комментариев мне лично ни разу не встречалось упоминаний о плагине SublimeClang, который кардинально меняет работу C++ программиста в этом редакторе. Поиск по хабру выдал всего 4 упоминания плагина в комментариях.
Не знаю, чем вызвано такое игнорирование. Хорошие вещи не обсуждаются? ST2 не используют C и С++ разработчики? Своей статьей я хочу исправить ситуацию. Я расскажу о некоторых, возможно не очевидных, особенностях установки и настройки, а также поделюсь парой собственных приемов и скриптов.

О плагине


Итак, плагин обеспечивает автодополнение кода и проверку ошибок прямо по ходу написания программы. Для файлов C/C++/ObjC/ObjC++ плагин заменяет стандартное автодополнение редактора на свое собственное. Для этого, плагин в фоне прогоняет исходник через компилятор clang, который формирует AST. Полученную информацию плагин использует для интеллектуальных подсказок автодополнения.
Ближайший аналог, который я могу подобрать — это функция IntelliSense в MS Visual Studio.
Использование информации из первых рук — от компилятора — позволяет плагину правильно узнавать, какие переменные, функции, типы и т.п. доступны в данной конкретной точки программы. Так же, в какой-то мере работают Go to definition (alt + d, alt + d) и Go to implementation (alt + d, alt + i). Список остальных горячих клавиш доступен на странице проекта.
Читать дальше →
Всего голосов 24: ↑22 и ↓2+20
Комментарии29

Управляем вентилятором ноутбука через DSDT в Linux и не только

Время на прочтение10 мин
Количество просмотров61K
Не знаю почему, но я всегда воспринимал системы охлаждения в ноутбуках как некий закрытый черный ящик. Тупость алгоритмов, по которым вентилятор начинал надрывно завывать при еще вполне холодном процессоре, изрядно раздражала во многих ноутбуках, но мне казалось, что все параметры там производители прибили гвоздями и поменять их можно разве что расковыряв BIOS или вообще только вставив какие-нибудь регулируемые резисторы в нужных местах. Ни тем, ни другим мне заниматься совершенно не хотелось, поэтому я об никогда всерьёз даже не задумывался.

Нет, конечно, я слышал про всякие программы, которые могут вмешиваться в управление охлаждением и вроде кто-то ими успешно пользуется, но лично мне с ними вечно не везло, точнее не везло с железом, на котором я пытался их завести. Например, какое-то время назад я пробовал настроить fancontrol на довольно старом ноутбуке HP nc8430 с Убунтой. В итоге, известный скрипт sensors-detect не смог найти ни одного вентилятора в системе, а без этого fancontrol не работает. На разных форумах периодически появляются люди с похожими проблемами, но никто им толком помочь не может.

Тогда я в очередной раз забросил эту тему и вернулся к ней только на днях, когда читал обзоры, подыскивая себе новый ноутбук, и уже вроде бы выбрал почти всем хороший Sony S15, как опять в одном из обзоров читаю про него, что вентилятор в нем вообще не останавливается никогда, даже когда точно можно. Постоянно шумящий ноутбук я больше не хочу, а выбирать как всегда особо не из чего, учитывая, что надо 15", что TN матрицу я тоже больше не хочу, и бюджет ограничен. Ну сами знаете, как оно бывает. Может быть на нем все-таки заведется fancontrol и все будет хорошо, но а если нет? Никаких отчетов по его установке на этот ноутбук найти не удалось. Это побудило меня еще раз копнуть тему программного управления вентиляторами и пройти довольно непростой, но очень увлекательный квест.
Читать дальше →
Всего голосов 54: ↑53 и ↓1+52
Комментарии34

Наложение основных надписей по ГОСТ 2.104 (рамок) на LaTeX документы

Время на прочтение5 мин
Количество просмотров43K
Несмотря на то, что многие считают наши государственные стандарты, касающиеся ЕСКД и ЕСПД устаревшими, конструкторскую и программную документацию необходимо выполнять в соответствии с ними.

Когда я был совсем молодым «специалистом» я с унынием наблюдал за тем, как в Microsoft Office пишутся технические условия, программы и методики испытаний. Порой эти документы очень сложные и длинные. Наиболее пугающими были основные надписи, помещённые в колонтитул. Они никак не соответствовали ГОСТ 2.104. В простонародье их называют «рамками». Они были ужасны. Я не видел, чтобы кому-то удавалось сделать их правильно. Плавали размеры, толщины линий. Это было видно даже без линейки.
Читать дальше →
Всего голосов 15: ↑13 и ↓2+11
Комментарии13

Востребован ли девайс для неинвазивного мониторинга потребления электроэнергии в реальном времени?

Время на прочтение1 мин
Количество просмотров23K
Речь идет про отечественный аналог британского устройства Current Cost EnviR обзор которого публиковался ранее на Хабре.

UPD 2013: Устройство WebMeteoBox разработано партнером проекта Народный мониторинг и доступно для заказа на webmeteobox.ru.

UPD 2015: В связи с частыми проблемами (http 503) на серверах Current Cost и Pachube владельцы устройств Current Cost EnviR могут воспользоваться отечественным сервисом narodmon.ru. По вопросам перехода пишите в личку (поделюсь опытом) или админам данного сервиса.
Всего голосов 21: ↑13 и ↓8+5
Комментарии43

Теория радиоволн: антенны

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

Помимо свойств радиоволн, необходимо тщательно подбирать антенны, для достижения максимальных показателей при приеме/передаче сигнала.
Давайте ближе познакомимся с различными типами антенн и их предназначением.

Читать дальше →
Всего голосов 104: ↑99 и ↓5+94
Комментарии45

Чем порадовать любимую 14 февраля

Время на прочтение2 мин
Количество просмотров109K
Видимо немного поздно этот топик оказался здесь, но всё же лучше поздно, чем никогда. Завтра замечательный праздник — День всех влюбленных. Чтобы удивить свою любимую, была проделана (аж почти два раза) вся работа, описанная в этом топике.



(Осторожно, много изображений!)

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

Панорамное видео из кабины болида Формулы-1

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


Ещё один пример спонсорства Red Bull, помимо прыжка Феликса Баумгартнера из стратосферы, показан ниже — это впечатляющее реальное панорамное (360°) видео, снятое из болида гонщика Формулы-1 на скорости 322 км/ч. Болидом управляет швейцарский гонщик Себастьян Буэми (Sébastien Olivier Buemi) на трассе Rudskogen Motorsenter в Норвегии.

Технология получения такого видео заключается в применении специальной камеры ViewCam 360, созданной компанией Making View, которая при помощи системы сферических линз может получать эквидистантное (equirectangular) видео с разрешением 4K x 2K и частотой кадров 25-50 fps. Вес камеры составляет около 600 граммов, внутренняя память составляет 224 Гб; управление камерой осуществляется по беспроводному интерфейсу.
Узнать подробности
Всего голосов 49: ↑41 и ↓8+33
Комментарии34
1

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность