Гоголев Роман @romka777
User
Использование runit для своих сервисов
3 min
52KСупервизор сервисов runit позиционируется как замена стандартным скриптам инициализации Unix.
Но на практике оказалось, что runit идеален для управления сервисами безотносительно инициализации и т.п.
Супервизор берёт на себя такой функционал, как:
Для большинства операционных систем runit уже входит в репозитории пакетов (apt-get install runit). Кроме того, мы имеем уже готовый набор рецептов для популярных сервисов (nginx, apache etc.).
Но на практике оказалось, что runit идеален для управления сервисами безотносительно инициализации и т.п.
Введение
Супервизор берёт на себя такой функционал, как:
- превращение любого процесса в демон;
- логгирование вывода процесса и ротирование логов;
- запуск, остановка, рестарт, запрос состояния, управляющие скрипты для init.d;
- выключение и запуск сервисов автоматически при появлении новых сервисов в списке либо удалении старых из списка;
- возможность ведения нескольких независимых списков сервисов одновременно (например, для каждого пользователя отдельно и для системы в целом);
- удобный API для управления сервисами.
Для большинства операционных систем runit уже входит в репозитории пакетов (apt-get install runit). Кроме того, мы имеем уже готовый набор рецептов для популярных сервисов (nginx, apache etc.).
+35
Лекции Технопарка. 1 семестр. С/С++
6 min
110KTutorial
Мы продолжаем наши еженедельные публикации учебных материалов Технопарка. Предыдущие лекции были посвящены web-технологиям в целом, а также алгоритмам и структурам данных. В третьем блоке лекций рассказывается о языках С и С++.
Лекция начинается с введения в язык С: рассказывается об истории его появления, особенностях, преимуществах и недостатках, о сферах применения. Описываются основы препроцессорной обработки, рассматриваются вопросы управления памятью (модели управления памятью, области видимости объектов хранения) и производительность программ на языке С. Обсуждается связывание объектов хранения и их инициализация. Затем рассказывается о классах памяти в языке С. Следующая часть лекции посвящена проблематике указателей, а также работе с одномерными массивами. В заключение рассматривается стандарт POSIX и вопросы переносимости.
Лекция 1. Язык С. Основы организации и использования оперативной и сверхоперативной памяти
Лекция начинается с введения в язык С: рассказывается об истории его появления, особенностях, преимуществах и недостатках, о сферах применения. Описываются основы препроцессорной обработки, рассматриваются вопросы управления памятью (модели управления памятью, области видимости объектов хранения) и производительность программ на языке С. Обсуждается связывание объектов хранения и их инициализация. Затем рассказывается о классах памяти в языке С. Следующая часть лекции посвящена проблематике указателей, а также работе с одномерными массивами. В заключение рассматривается стандарт POSIX и вопросы переносимости.
+68
Лекции Технопарка. 1 семестр. Алгоритмы и структуры данных
2 min
163KTutorial
Очередной пост в рамках нашего цикла лекций Технопарка. В этот раз мы предлагаем вашему вниманию курс, посвящённый алгоритмам и структурам данных. Автор курса — Степан Мацкевич, сотрудник компании ABBYY.
Начало первой лекции посвящено обсуждению основных понятий, на которых строится вся дальнейшая программа курса: что такое алгоритм и структура данных. Описаны базовые виды алгоритмов, их характеристики и методы анализа. Далее рассматриваются примеры создания алгоритмов для вычисления чисел Фибоначчи, проверки числа на простоту, быстрого возведения числа в целую степень. В конце лекции рассказывается об особенностях использования алгоритмов для работы с массивами: создание однопроходных алгоритмов, поиск минимального элемента, бинарный поиск.
Лекция 1. Основы
Начало первой лекции посвящено обсуждению основных понятий, на которых строится вся дальнейшая программа курса: что такое алгоритм и структура данных. Описаны базовые виды алгоритмов, их характеристики и методы анализа. Далее рассматриваются примеры создания алгоритмов для вычисления чисел Фибоначчи, проверки числа на простоту, быстрого возведения числа в целую степень. В конце лекции рассказывается об особенностях использования алгоритмов для работы с массивами: создание однопроходных алгоритмов, поиск минимального элемента, бинарный поиск.
+44
Загрузочный сервер — как загрузочная флешка, только сервер и по сети
12 min
453KЗагрузочная флешка с набором нужного софта — замечательный инструмент системного администратора. Казалось бы, что может быть лучше? А лучше может быть загрузочный сервер!
Представьте, вы выбрали в BIOS загрузку по сети и можете установить ОС/вылечить компьютер от вирусов/реанимировать диски/протестировать ОЗУ/etc с PXE Boot сервера, ведь это куда удобнее, нежели бегать с флешкой от машины к машине.
А в случае большого компьютерного парка, такой инструмент и вовсе незаменим.
Вот такое меню встречает нашу команду инженеров при загрузке с PXE
Под катом вас ждет описание всех настроек, а так же небольшой сюрприз.
Представьте, вы выбрали в BIOS загрузку по сети и можете установить ОС/вылечить компьютер от вирусов/реанимировать диски/протестировать ОЗУ/etc с PXE Boot сервера, ведь это куда удобнее, нежели бегать с флешкой от машины к машине.
А в случае большого компьютерного парка, такой инструмент и вовсе незаменим.
Вот такое меню встречает нашу команду инженеров при загрузке с PXE
Под катом вас ждет описание всех настроек, а так же небольшой сюрприз.
+135
PeerVPN – пиринговый VPN с открытым кодом
2 min
27KПеревод анонса и небольшой документации проекта PeerVPN, который показался мне интересным.
Это программа, создающая виртуальную локалку из нескольких удалённых компьютеров. Такие сети могут быть полезны для непосредственного общения приложений, например совместного использования файлов или игр. Часто обычными способами наладить такое взаимодействие невозможно из-за фаерволов или NAT.
Традиционные VPN работают по схеме клиент-сервер, когда много узлов соединяются с одним сервером. У такой звёздной топологии есть недостатки. Центральный сервер должен обладать большой пропускной способностью, чтобы обрабатывать весь трафик сети. Если сервер падает, сеть падает следом.
PeerVPN работает по распределённой технологии, когда все узлы общаются друг с другом без необходимости в центральном сервере. Если один узел отключается, на сеть это не влияет.
PeerVPN
Это программа, создающая виртуальную локалку из нескольких удалённых компьютеров. Такие сети могут быть полезны для непосредственного общения приложений, например совместного использования файлов или игр. Часто обычными способами наладить такое взаимодействие невозможно из-за фаерволов или NAT.
Традиционные VPN работают по схеме клиент-сервер, когда много узлов соединяются с одним сервером. У такой звёздной топологии есть недостатки. Центральный сервер должен обладать большой пропускной способностью, чтобы обрабатывать весь трафик сети. Если сервер падает, сеть падает следом.
PeerVPN работает по распределённой технологии, когда все узлы общаются друг с другом без необходимости в центральном сервере. Если один узел отключается, на сеть это не влияет.
+25
Система автоматической оценки возраста по изображениям лиц
21 min
20KTranslation
Аннотация
Люди — это самые важные объекты слежения в системах видеонаблюдения. Тем не менее, слежение за человеком само по себе не дает достаточной информации об его мотивах, намерениях, желаниях и т.п. В этой работе мы представляем новую и надежную систему для автоматической оценки возраста с помощью технологий компьютерного зрения. Она использует глобальные особенности лица, полученные на основе комбинирования вейвлетов Габора и сохранение ортогональности локальных проекций Orthogonal Locality Preserving Projections, OLPP). Кроме того, система способна оценивать возраст по изображениям в реальном времени. Это означает, что предлагаемая система имеет больший потенциал по сравнению с другими полуавтоматическими системами. Результаты, полученные в процессе применения предлагаемого подхода, могут позволить получить более ясное понимание алгоритмов в области оценки возраста, необходимых для разработки приложений, актуальных для реального применения.
Ключевые слова: вейвлеты Габора, изображение лица, оценка возраста, метод опорных векторов (Support Vector Machine, SVM).
Люди — это самые важные объекты слежения в системах видеонаблюдения. Тем не менее, слежение за человеком само по себе не дает достаточной информации об его мотивах, намерениях, желаниях и т.п. В этой работе мы представляем новую и надежную систему для автоматической оценки возраста с помощью технологий компьютерного зрения. Она использует глобальные особенности лица, полученные на основе комбинирования вейвлетов Габора и сохранение ортогональности локальных проекций Orthogonal Locality Preserving Projections, OLPP). Кроме того, система способна оценивать возраст по изображениям в реальном времени. Это означает, что предлагаемая система имеет больший потенциал по сравнению с другими полуавтоматическими системами. Результаты, полученные в процессе применения предлагаемого подхода, могут позволить получить более ясное понимание алгоритмов в области оценки возраста, необходимых для разработки приложений, актуальных для реального применения.
Ключевые слова: вейвлеты Габора, изображение лица, оценка возраста, метод опорных векторов (Support Vector Machine, SVM).
+18
О формуле Байеса, прогнозах и доверительных интервалах
9 min
69KНа Хабре много статей по этой теме, но они не рассматривают практических задач. Я попытаюсь исправить это досадное недоразумение. Формула Байеса применяется для фильтрации спама, в рекомендательных сервисах и в рейтингах. Без нее значительное число алгоритмов нечеткого поиска было бы невозможно. Кроме того, это формула явилась причиной холивара среди математиков.
+80
Анализ HTTP-трафика с Mitmproxy
8 min
99KTutorial
В практике веб-разработчика нередко возникают ситуации, когда требуется отследить и проанализировать трафик приложений, общающихся с сервером по протоколу HTTP (в качестве примера можно привести тестирование приложений для мобильных устройств или HTTP API).
Инструменты, традиционно используемые для прослушивания трафика (tshark, о котором мы уже писали, а также ngrep и tcpdump) для этой цели подходят плохо: функциональность для работы с протоколом HTTP у них ограничена.
Для анализа HTTP-трафика существует более специализированное, простое и эффективное решение. Знакомьтесь: mitmproxy. На русском языке подробных публикаций о нем почти нет. В этой статье мы поделимся своим опытом работы с mitmproxy и надеемся, что и вам он окажется полезным.
+33
Библиотека Strutext обработки текстов на языке C++
7 min
15KВведение
Этот текст можно рассматривать как обзор библиотеки Strutext, задуманной автором как набор эффективных алгоритмов лингвистической обработки текста на языке C++. Код библиотеки находится в репозитории на Github. Библиотека имеет открытый исходный код и поставляется под лицензией Apache License 2.0, т.е. может быть использована совершенно бесплатно без каких-либо существенных ограничений.
+13
Марковские случайные поля
4 min
46KTutorial
Статья посвящена описанию метода CRF (Conditional Random Fields), являющимся разновидностью метода Марковских случайных полей (Markov random field). Данный метод нашел широкое применение в различных областях ИИ, в частности, его успешно используют в задачах распознавания речи и образов, обработки текстовой информации, а также и в других предметных областях: биоинформатики, компьютерной графики и пр.
+24
Что делать, если вам надоели рекламные СМС
3 min
297KВ продолжение статей о том, что ФАС собирает дополнительную информацию о «коротких» номерах, хочу рассказать, как эта служба может помочь вам избавиться от нежелательной рекламы по СМС.
Согласно ч.1 ст.18 ФЗ «О рекламе», распространение рекламы по сетям электросвязи, в том числе посредством использования телефонной, факсимильной, подвижной радиотелефонной связи, допускается только при условии предварительного согласия абонента или адресата на получение рекламы.
Итак, отписавшись от всех рекламных рассылок своего оператора, я наивно полагал, что рекламные СМС меня больше не будут отвлекать. Но маркетологи различных компаний решили, что без рекламы мне скучно, и быстро исправили ситуацию. В итоге, год назад я практически каждую неделю получал несколько рекламных СМС, в основном это были сообщения от такси нашего города. Особую активность компании проявляли перед Новым годом.
Согласно ч.1 ст.18 ФЗ «О рекламе», распространение рекламы по сетям электросвязи, в том числе посредством использования телефонной, факсимильной, подвижной радиотелефонной связи, допускается только при условии предварительного согласия абонента или адресата на получение рекламы.
Итак, отписавшись от всех рекламных рассылок своего оператора, я наивно полагал, что рекламные СМС меня больше не будут отвлекать. Но маркетологи различных компаний решили, что без рекламы мне скучно, и быстро исправили ситуацию. В итоге, год назад я практически каждую неделю получал несколько рекламных СМС, в основном это были сообщения от такси нашего города. Особую активность компании проявляли перед Новым годом.
+196
Новые Kindle
2 min
61KAmazon представил новую серию читалок на e-ink и планшетов. Все они начнут продаваться в октябре, а пока цена на самый простой и популярный Kindle 4 снижена до $69.
Итак, новинки.
Kindle Paperwhite будет продаваться за $119 с 1 октября.
Революционных изменений сразу несколько:
• Появилась долгожданная подсветка;
• На 62% увеличено разрешение экрана (было 800х600, стало скорее всего 1024х768);
• На 25% увеличена контрастность;
• Обещают работу до восьми недель даже с включённой подсветкой.
Итак, новинки.
Kindle Paperwhite будет продаваться за $119 с 1 октября.
Революционных изменений сразу несколько:
• Появилась долгожданная подсветка;
• На 62% увеличено разрешение экрана (было 800х600, стало скорее всего 1024х768);
• На 25% увеличена контрастность;
• Обещают работу до восьми недель даже с включённой подсветкой.
+11
Kindle обновился до 3.3
1 min
12KЭлектронная читалка Kindle от Amazon обновилась до версии 3.3.
В новой версии
* Kindle теперь синхронихирует не только книги, но и последние прочитанные страницы (кроме PDF)
* можно быстро отключать/включать голосовые функции нажав Shift + Space (Пробел)
Чтобы обновить свою читалку надо включить WiFi, нажать на Home, нажать на Menu -> Sync & Check for Items
Читалка начнет грузить обновление, а потом установит ее, когда читалка перейдет в спящий режим.
Чтобы проверить обновился ваш Kindle или нет, нажмите на Home -> Menu -> Settings. и посмотрите внизу страницы версию своей прошивки. Вы должны увидеть версию 3.3
а чтобы установить обновление вручную надо
В новой версии
* Kindle теперь синхронихирует не только книги, но и последние прочитанные страницы (кроме PDF)
* можно быстро отключать/включать голосовые функции нажав Shift + Space (Пробел)
Чтобы обновить свою читалку надо включить WiFi, нажать на Home, нажать на Menu -> Sync & Check for Items
Читалка начнет грузить обновление, а потом установит ее, когда читалка перейдет в спящий режим.
Чтобы проверить обновился ваш Kindle или нет, нажмите на Home -> Menu -> Settings. и посмотрите внизу страницы версию своей прошивки. Вы должны увидеть версию 3.3
а чтобы установить обновление вручную надо
+19
Пишем расширения для PHP на C (Си)
7 min
3.6K Современному PHP разработчику это знание может понадобиться скорее для расширения сознания, чем непосредственное руководство к действию, но несмотря на то, что в PHP уже встроено практически все необходимое, а в разнообразных PEAR и PECL репозитариях можно найти пакет дополнений на любой вкус, многим думаю будет интересно, а некоторым и полезно узнать как и что работает внутри PHP.
И раз уж Zend предоставил нам такие удобные инструменты, почему бы ими не воспользоваться? Например для оптимизации каких-то процессов, сокрытия своего когда в коммерческих приложениях и встраивания механизма лицензий, реализации многопоточности или для чего-то еще…
И раз уж Zend предоставил нам такие удобные инструменты, почему бы ими не воспользоваться? Например для оптимизации каких-то процессов, сокрытия своего когда в коммерческих приложениях и встраивания механизма лицензий, реализации многопоточности или для чего-то еще…
+27
Автозапуск подключения PPPoE без входа в учётную запись
7 min
85KTutorial
Я хотел бы поведать об одном трюке, который можно провернуть при помощи планировщика заданий в Windows.
У меня установлена Windows 7, а также есть PPPoE-подключение от нашего городского кабельного провайдера.
Задача состоит в том, чтобы включать это подключение сразу же после того, как в винде поднимается подключение к локальной сети, и пользователь может быть ещё даже не вошёл в свою учётную запись.
В большинстве своём инструкции, которые можно найти в рунете, сводятся к вынесению ярлыка подключения в автозапуск. Здесь же иной случай. Необходимо, чтобы подключение производилось ещё до входа в учётную запись пользователя.
Забегая вперёд, скажу, что таким же образом можно сделать выполнение любой другой команды, причём не только при подключении к какой-либо проводной сети, но и к Wi-Fi.
Я привожу полное описание, с кучей скриншотов, как для новичков.
У меня установлена Windows 7, а также есть PPPoE-подключение от нашего городского кабельного провайдера.
Задача состоит в том, чтобы включать это подключение сразу же после того, как в винде поднимается подключение к локальной сети, и пользователь может быть ещё даже не вошёл в свою учётную запись.
В большинстве своём инструкции, которые можно найти в рунете, сводятся к вынесению ярлыка подключения в автозапуск. Здесь же иной случай. Необходимо, чтобы подключение производилось ещё до входа в учётную запись пользователя.
Забегая вперёд, скажу, что таким же образом можно сделать выполнение любой другой команды, причём не только при подключении к какой-либо проводной сети, но и к Wi-Fi.
Я привожу полное описание, с кучей скриншотов, как для новичков.
+22
Оптимизация кастомной прошивки HTC Desire HD (Virtuous Infinity)
4 min
7.4KДисклаймер: данный топик не претендует на 100% объективность — это всего лишь выжимка из личного опыта.
Если не все, то почти все владельцы позапрошлогоднего флагмана HTC Desire HD получили неприятный сюрприз от производителя: отказ от выпуска официального обновления до 4 версии Android и фирменной оболочки HTC Sense. В связи с этим, особо активизировались ромоделы (т.е. такие же пользователи, умеющие собирать или портировать прошивки своими руками). Мой выбор пал на прошивку Infinity от команды Virtuous. Что же мы в ней имеем?
В общем, вот такой готовый к использованию ROM получился. Я рискнул и установил вторую альфа-версию. Приятно удивила относительная безглючность, несмотря на статус «альфа». Относительно быстро была выпущена альфа 3, а затем и бета 1, которая работает и на данный момент. Приятно удивило наличие обновления по воздуху — не часто такое можно встретить среди кастомных прошивок.
Если не все, то почти все владельцы позапрошлогоднего флагмана HTC Desire HD получили неприятный сюрприз от производителя: отказ от выпуска официального обновления до 4 версии Android и фирменной оболочки HTC Sense. В связи с этим, особо активизировались ромоделы (т.е. такие же пользователи, умеющие собирать или портировать прошивки своими руками). Мой выбор пал на прошивку Infinity от команды Virtuous. Что же мы в ней имеем?
- Android 4.0.3
- Sense 4
- root-права и вшитые в прошивку соответствующие утилиты типа SuperSU, SetCPU и т.д.
- Возможность обновления прошивки по воздуху (естественно, применимо только к свежим релизам Virtuous Infinity)
В общем, вот такой готовый к использованию ROM получился. Я рискнул и установил вторую альфа-версию. Приятно удивила относительная безглючность, несмотря на статус «альфа». Относительно быстро была выпущена альфа 3, а затем и бета 1, которая работает и на данный момент. Приятно удивило наличие обновления по воздуху — не часто такое можно встретить среди кастомных прошивок.
+8
Устанавливаем последний (4.2.2) Android на старичка HTC Desire S
4 min
380KHTC Desire S можно справедливо назвать старичком, продается он уже более двух лет. У меня аппарат более полутора лет. Тем не менее — это аппарат с очень неплохой «начинкой», качественным экраном и металлическим корпусом.
Наверняка, как и все поклонники HTC, я тащился от их фирменной оболочки «Sense». Стоковый аппарат включал в себя Android 2.3.5 и Sense 3.0.
Потом была целая эпопея в ожидании официальной прошивки на Android 4, завершенный вариант которой так и не вышел. Еще до выхода этой прошивки «для разработчиков» мои нервы подкосились и «кастомные», неофициальные сборки начали заливаться в телефон одна за другой. Была опробована и официальная с Android 4.0.4. Прошло некоторое время и выбор остановился на CM10.1 с Android 4.2.2 и всеми его прелестями, для которых аппаратного обеспечения устройства вполне хватает.
Наверняка, как и все поклонники HTC, я тащился от их фирменной оболочки «Sense». Стоковый аппарат включал в себя Android 2.3.5 и Sense 3.0.
Потом была целая эпопея в ожидании официальной прошивки на Android 4, завершенный вариант которой так и не вышел. Еще до выхода этой прошивки «для разработчиков» мои нервы подкосились и «кастомные», неофициальные сборки начали заливаться в телефон одна за другой. Была опробована и официальная с Android 4.0.4. Прошло некоторое время и выбор остановился на CM10.1 с Android 4.2.2 и всеми его прелестями, для которых аппаратного обеспечения устройства вполне хватает.
-9
Наш путь через тернии к звездам. История былого величия и мечты о будущем…
9 min
21KПоследнее время в Сети активизировалось брожение вокруг космических изысканий. И это понятно, то там новые солнечные батареи изобрели, с удивительным КПД, то здесь микроспутники стандартизировали и Arduino в космос запустили, то то, то это. А когда Curiosity удачно примарсился и стал передавать изображения, тут уж сам Бог велел общественности взорваться в обсуждениях.
И это закономерно, назрело уже, так сказать. Больно уж много времени прошло с полета первого спутника, первого человека и высадки на луну. А воз, как говорится, и ныне там. Кардинально нового в космической отрасли ничего не произошло, никаких громких прорывов, только улучшения и улучшения… Отсюда и повышенный интерес к теме, люди чувствуют, что пришло время для новых свершений.
Далее прошу под кат, будет много эмоций и фотографий.
И это закономерно, назрело уже, так сказать. Больно уж много времени прошло с полета первого спутника, первого человека и высадки на луну. А воз, как говорится, и ныне там. Кардинально нового в космической отрасли ничего не произошло, никаких громких прорывов, только улучшения и улучшения… Отсюда и повышенный интерес к теме, люди чувствуют, что пришло время для новых свершений.
Далее прошу под кат, будет много эмоций и фотографий.
+68
Беззеркальная революция
10 min
44KВ понедельник 23 июля Canon последним из крупных фотопроизводителей анонсировала свою первую беззеркальную камеру EOS-M. На бумаге новая камера имеет неплохие характеристики, но речь пойдет не о ней, а беззеркалках вообще и о позволивших их создать технологиях в частности.
Мы наблюдаем очередную революцию в фотоделе. Первые беззеркалки появились меньше пяти лет назад, но уже успели существенно подвинуть традиционные зеркалки (в Азии так и вовсе их продажи сравнялись с продажами зеркалок), а заодно помогли камерафонам уничтожить рынок мыльниц (спад продаж только в прошлом году под 40%).
При этом крупицы адекватной технической информации в интернете погребены под толстым слоем маркетинговых манипуляций и дилетантских измышлений фотолюбителей. Так что желающих просветиться прошу
Мы наблюдаем очередную революцию в фотоделе. Первые беззеркалки появились меньше пяти лет назад, но уже успели существенно подвинуть традиционные зеркалки (в Азии так и вовсе их продажи сравнялись с продажами зеркалок), а заодно помогли камерафонам уничтожить рынок мыльниц (спад продаж только в прошлом году под 40%).
При этом крупицы адекватной технической информации в интернете погребены под толстым слоем маркетинговых манипуляций и дилетантских измышлений фотолюбителей. Так что желающих просветиться прошу
+184
Information
- Rating
- Does not participate
- Location
- Королев, Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity