Pull to refresh
25
0
Send message

Руководство и шпаргалка по Wireshark

Reading time7 min
Views299K
Даже поверхностное знание программы Wireshark и её фильтров на порядок сэкономит время при устранении проблем сетевого или прикладного уровня. Wireshark полезен для многих задач в работе сетевого инженера, специалиста по безопасности или системного администратора. Вот несколько примеров использования:

Устранение неполадок сетевого подключения


  • Визуальное отображение потери пакетов
  • Анализ ретрансляции TCP
  • График по пакетам с большой задержкой ответа

Исследование сессий прикладного уровня (даже при шифровании с помощью SSL/TLS, см. ниже)


  • Полный просмотр HTTP-сессий, включая все заголовки и данные для запросов и ответов
  • Просмотр сеансов Telnet, просмотр паролей, введённых команд и ответов
  • Просмотр трафика SMTP и POP3, чтение писем
Читать дальше →
Total votes 34: ↑30 and ↓4+26
Comments5

Как работает радиоинтерфейс в GSM-сетях

Reading time21 min
Views241K


Думаю, многие когда-либо задумывались над тем, как работают сотовые сети. Ведь мы пользуемся мобильными телефонами почти каждый день. Количество абонентов увеличивается с каждым днем, так же как и площади сетевого покрытия… На смену старым стандартам приходят новые, растут и «аппетиты» пользователей мобильного интернета. Если Вас интересует, как все это работает, добро пожаловать под кат! Поскольку инфраструктура сотовых сетей довольно велика, а ее описание может занять целую книгу, в данной статье мы остановимся на Um-интерфейсе, с помощью которого наши телефоны взаимодействуют с оборудованием оператора, а также другими абонентами.

Осторожно, злая собака много картинок!
Читать дальше →
Total votes 59: ↑58 and ↓1+57
Comments29

Как мы потратили 1 год и 3 месяца на разработку браузерной игры

Reading time7 min
Views50K
В этой статье расскажу о том, как начинал разработку собственной игры. Вы узнаете, сколько ушло на это времени и стоило ли вообще за это браться.

На игру мы потратили 1 год и 3 месяца, ниже я подробно распишу, куда ушло это время.

Предыстория


Все началось с того, что мы с друзьями решили сделать совместный проект (конечно, с друзьями, типичная ситуация). Нас было 4 человека, все «айтишники», ни один из нас никогда не имел дело с разработкой игр, это был для нас темный лес, очень темный.

Диалог был примерно такой:
— Может, игру начнем делать?
— Давайте, почему бы не попробовать?
— А о чем игра то будет?

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

— Шутеров — куча, танки — есть, самолеты — есть, гонки — есть, что же тогда делать?
— Лодок нет.

А ведь и правда, никто на тот момент не мог назвать ни одной игры с использованием водного вида транспорта. «Окей, сделаем простенькую игру, чтобы научиться. Вода и лодочки, что может быть проще?» — подумали мы, и собрались искать движок, на основе которого могли бы сделать игру.

Никто из нас даже не думал о 2D игре, сразу все представляли 3D — «инновации» ведь.
Читать дальше →
Total votes 35: ↑33 and ↓2+31
Comments18

Галерея эффектов кэшей процессоров

Reading time10 min
Views25K
Ядро PenrynПочти все разработчики знают, что кэш процессора — это такая маленькая, но быстрая память, в которой хранятся данные из недавно посещённых областей памяти — определение краткое и довольно точное. Тем не менее, знание «скучных» подробностей относительно механизмов работы кэша необходимо для понимания факторов влияющих на производительность кода.

В этой статье мы рассмотрим ряд примеров иллюстрирующих различные особенности работы кэшей и их влияние на производительность. Примеры будут на C#, выбор языка и платформы не так сильно влияет на оценку производительности и конечные выводы. Естественно, в разумных пределах, если вы выберите язык, в котором чтение значения из массива равносильно обращению к хеш-таблице, никаких результатов пригодных к интерпретации вы не получите. Курсивом идут примечания переводчика.
Читать дальше
Total votes 181: ↑177 and ↓4+173
Comments47

APRS

Reading time12 min
Views58K

APRS [1, 2] это протокол цифровой радиолюбительской связи. На базе этого протокола построена глобальная система связи. Её основные задачи: передача информации о координатах объектов в пространстве, обмен сообщениями, передача данных с погодных станций и многое другое.

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

Большую часть своих знаний о системе я получил не из практического использования существующих программ и оборудования, а из разработки собственных программ и утилит для работы с ней [3, 4]. Информацию черпал из стандарта [5], исходных кодов Xastir[6], радиолюбительских форумов [7, 8] и из общения с радиолюбителями (всех и не счесть).

Если вы делаете:
  • погодную станцию;
  • систему двухстороннего обмена текстовыми сообщениями через интернет или радиоканал в виде децентрализованной системы с использованием других пейджеров, как ретрансляторов;
  • спутниковую сигнализацию;
  • мониторинг телеметрии удаленных станций;
  • запускаете воздушный шар;

Да и почти в любом случае, когда вы хотите построить систему передачи данных по радиоканалу и изобретаете для этого протокол, то у радиолюбителей есть наработки в виде различных цифровых видов связи и протокол APRS.

Интересно? Добро пожаловать под кат
Total votes 36: ↑36 and ↓0+36
Comments19

Переделка беспроводного USB Wi-Fi адаптера TP-LINK TL-WN722N в адаптер Philips PTA01 для телевизора Philips 55PFL7606H

Reading time3 min
Views136K
В этой статье я хочу рассказать о способе сделать фирменный Wi-Fi адаптер к телевизору. Я не исключаю, что приведенное здесь техническое решение будет применимо для других фирм производителей и других моделей телевизоров.

Данная статья носит только информационный характер. Я не несу ответственности за последствия выполняемых Вами действий, и не в коей мере не принуждаю к ним. Вы все делаете на свой страх и риск.

Для остальных, добро пожаловать под хабркат!
Читать дальше →
Total votes 47: ↑46 and ↓1+45
Comments14

Оптимизация Linux для desktop и игр

Reading time8 min
Views173K
В этой статье я хочу поделиться почти 10-летним опытом использования Linux на домашнем компьютере. За это время я провел много экспериментов над ядром, испробовал различные конфигурации для разных применений и теперь хочу все это систематизировать в длинный пост с рекомендациями как выжать из linux максимум и добиться отличной производительности, без необходимости покупать мощное железо.

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

Хоть я и пообещал, что после прочтения этой статьи, можно будет играть в Metro 2033 на калькуляторе (шутка, такого не будет), все же она начнется с рекомендации купить кое-что из железа, если у вас этого еще нет.
Читать дальше →
Total votes 132: ↑99 and ↓33+66
Comments296

25+ видеоуроков по Android для начинающих

Reading time2 min
Views413K

Приветствую вас, уважаемый хабрачеловек!
Предлагаю вашему вниманию бесплатно серияю видеоуроков в котрых рассмотренно базовые понятия разработки под Android.
Читать дальше →
Total votes 111: ↑108 and ↓3+105
Comments33

Пишем файловую систему в ядре Linux

Reading time10 min
Views58K

Для кого эта статья


image

Данная статья составлена по материалам практики по курсу операционных систем в Академическом университете . Материал готовился для студентов, и ничего сложного здесь не будет, достаточно базового знания командной строки, языка C, Makefile и общих теоретических знаний о файловых системах.

Весь материал разбит на несколько частей, в данной статье будет описана вводная часть. Я коротко расскажу о том, что понадобится для разработки в ядре Linux, затем мы напишем простейший загружаемый модуль ядра, и наконец напишем каркас будущей файловой системы — модуль, который зарегистрирует довольно бесполезную (пока) файловую систему в ядре. Люди уже знакомые (пусть и поверхностно) с разработкой в ядре Linux не найдут здесь ничего интересного.
Читать дальше →
Total votes 113: ↑110 and ↓3+107
Comments9

Кроссплатформенное приложение на Qt: Mac App Store

Reading time7 min
Views15K
После завершения разработки под OS X может остаться ощущение незавершенности — для полного счастья хотелось бы видеть свое приложение в каталоге, тем более, что это, пожалуй, лучшая площадка для продажи десктопных приложений. На эту тему есть статья времен Qt 4.8 в официальном блоге, и еще более старая на хабре. К счастью, больше нет необходимости пересобирать Qt, однако с приходом OS X 10.9 некоторые баги стали критичными, приходится выкручиваться.
Читать дальше →
Total votes 32: ↑29 and ↓3+26
Comments2

Анализ дружеских связей VK с помощью Wolfram Mathematica

Reading time6 min
Views44K
Не так давно, в Москве прошел семинар Wolfram Research Эра технологий Wolfram, на котором рассказывали много интересного про одну из самых мощных и определенно самую удобную систему компьютерных исследований Wolfram Mathematica. В частности, были представлены результаты исследования данных социальной сети facebook научно-исследовательской группой «Конструктивная Кибернетика». А чуть ранее, я наткнулся на новые возможности Wolfram|Alpha по всестороннему анализу странички в facebook. И после всего этого, у меня засела в голове безумная идея: «Я хочу узреть граф дружеских связей той соцсети, в которой живу (а именно, ВКонтакте)». И я все-таки нашел время на то чтобы ее реализовать. Добро пожаловать под кат.
Читать дальше →
Total votes 33: ↑31 and ↓2+29
Comments32

Логика мышления. Часть 14. Гиппокамп

Reading time7 min
Views36K


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

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

Традиционные теории о роли гиппокампа строятся на аналогии мозга и компьютера. В таких рассуждениях гиппокампу отводится роль «оперативной памяти», то есть места, где накапливаются новые воспоминания. Затем же, предположительно во сне, эти воспоминания переносятся в области мозга, ответственные за хранение долговременной памяти. И хотя механизмы такого переноса непонятны, но, по крайней мере, это позволяет объяснить, почему нарушение работы гиппокампа блокирует формирование событийной памяти.

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

Читать дальше →
Total votes 47: ↑40 and ↓7+33
Comments40

Как работают сигналы и слоты в Qt (часть 1)

Reading time10 min
Views116K


Qt хорошо известен своим механизмом сигналов и слотов. Но как это работает? В этом посте мы исследуем внутренности QObject и QMetaObject и раскроем их работу за кадром. Я буду давать примеры Qt5 кода, иногда отредактированные для краткости и добавления форматирования.
Читать дальше →
Total votes 69: ↑64 and ↓5+59
Comments29

Термины, жаргон, определения Android

Reading time19 min
Views48K

Очень часто, разбираясь с незнакомым программным продуктом или операционной системой, мы чуствуем трудности в понимании значений терминов. Иногда мы их встречаем впервые и это заставляет нас искать в интернете описания и статьи. Хуже, если написание термина совпадает с тем, что мы знали раньше, а значение другое. Особенно это усугубляется при чтении статей на иностранном языке. Потому представляю вашему вниманию перевод терминов взятый из Android Terms,Slang,Definitions & Guides.
Оригинальный текст состоит из семи частей, который кроме терминов включает в себя описания и инструкции как выполнить некоторые распространенные действия со смартфоном. Это первая часть, где собраны наиболее встречающиеся термины. Этот набор терминов очень удобно использовать перед первым занятием по программированию под Android, в качестве раздаточного материала, чтобы слушатели, ознакомившись, могли понимать о чем ведется речь, если вдруг проскочит жаргонное слово в вопросе или ответе. В основном термины предназначены для начинающих и связаны с настройкой операционной системы. Как сами определения, так и перевод не претендует на исключительную уникальность, правильность, точность и строгость. Любые предложения и исправления принимаются с радостью и благодарностью.
Читать дальше →
Total votes 46: ↑30 and ↓16+14
Comments19

Модификация стоковых прошивок для Android. Часть 1

Reading time9 min
Views287K
Здравствуй Хабр!

Несколько лет назад, когда я впервые познакомился с Android, я услышал от своего коллеги по работе, что Android предусматривает возможность установки модифицированных или самодельных прошивок. Признаться, тогда я был далек от этого. И даже пол года назад меня едва интересовали подобные вещи. Глубоко в душе, я был уверен: то, что делает производитель, уже предназначено для нормального использования.

Каково же было мое разочарование, когда я приобрел телефон из поднебесной, где заводскими настройками было запрещено использование Google, Skype, Facebook и других приложений. В принципе, на некоторые вещи можно было закрыть глаза, но когда мой телефон не подразумевал использование учетной записи Google — я взял с себя обещания обязательно разобраться во что бы мне это не стало.

Прошло пол года и мои кастомные прошивки с успехом используются по всему миру.

В данной серии статей пойдет речь о том, как делать reverse программирование для Android, реализовывать патчи, твики и моды.
Читать дальше →
Total votes 93: ↑87 and ↓6+81
Comments31

В гипервизоре Xen 4.4 и ядре Linux 3.14 будет доступен режим аппаратной паравиртуализации

Reading time4 min
Views19K

Перевод. Оригинал в блоге Xen.

От переводчика: на данный момент стабильная версия гипервизора Xen поддерживает два режима виртуализации. В паравиртуальном режиме (PV) оборудование не эмулируется, и гостевая ОС должна быть специальным образом модифицирована, чтобы работать в таком окружении. Начиная с версии 3.0, ядро Linux поддерживает запуск в паравиртуальном режиме без перекомпиляции со сторонними патчами. Преимущество режима PV в том, что он не требует поддержки аппаратной виртуализации со стороны CPU, а также не тратит вычсилительне ресурсы (иногда весьма значительные) для эмуляции оборудования на шине PCI.
Режим аппаратной виртуализации (HVM) появился в Xen, начиная с версии 3.0 гипервизора, и требует поддержки со стороны оборудования. В этом режиме для эмуляции виртуальных устройств используется QEMU, который весьма неповоротлив даже с паравиртуальными драйверами. Однако со временем поддержка аппаратной виртуализации в оборудовании получила настолько широкое рапространение, что используется даже в CPU ноутбуков. Поэтому у разработчиков возникло желание использовать быстрое переключение контекста исполнения между гипервизором и гостевой ОС и в паравиртуальном режиме, используя возможности оборудования. Так появился новый режим — аппаратная паравиртуализация, который будет доступен в Xen, начиная с версии 4.4.

Читать дальше →
Total votes 39: ↑37 and ↓2+35
Comments12

Модификация стоковых прошивок для Android. Часть 4

Reading time21 min
Views50K
Здравствуй Хабр!

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

На прошлых скриншотах были следующие меню в моем самодельном твикере и вызвало множество приватных вопросов о реализации.

Предпочтительный слот
Выберите SIM карту на которой использовать передачу данных
Уведомление о соединении
Запретить оповещение об интернет подключении
Автоматическая запись звонков
Все звонки будут записаны стандартным диктофоном согласно его настройкам
Запретить энергосбережение
Запретить иконку энергосбережения в слайдере и статус баре
Запретить выключатели
Отключение в слайдере статус бара
Читать дальше →
Total votes 35: ↑33 and ↓2+31
Comments14

Сборка Android под Ubuntu Linux

Reading time5 min
Views43K
image

Эта заметка является косвенным продолжением моей первой публикации Сборка Android под Mac OS X и имеет аналогичную цель — решение проблем сборки относительно старых версий Android 4.0.x.

Коротко вводная. В одном из проектов я занимаюсь доработками оригинального кода Android для создания прошивки под специфичную железку. Версия для сборки была выбрана уже относительно старая — AOSP 4.0.4, но на ней базируется стабильная ветка кода от производителя железки. Первоначально я работал на MacOS, но для этого проекта решил переключиться на Linux для удобства разработки. Итак волею судеб я перешел с MacOS на более менее свежий Ubuntu Linux 12.04.3, рекомендованную на данный момент версию Linux для сборки Android.
Читать дальше →
Total votes 39: ↑30 and ↓9+21
Comments2

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity