Как стать автором
Обновить
0
0
Artem Zhuravel @cyberart

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

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

Как написать свой первый Linux device driver. Часть 3

Время на прочтение 3 мин
Количество просмотров 16K
Добрый вечер, хаброчитатели!

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

Я попытаюсь рассмотреть данный вопрос чуть подробнее, надеюсь, вам понравится.


Читать дальше →
Всего голосов 32: ↑30 и ↓2 +28
Комментарии 2

Мониторинг головного мозга

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

Мониторинг работы оборудования и ключевого ПО — это азы системного администрирования. Но все мы постигаем их по-разному. За 10 лет работы в IT моё отношение к мониторингу прошло через три стадии:


Отрицание. Ничего не мониторить, пользователи сами сообщат, когда у них возникнут проблемы.
Гнев. Мониторить всё, что можно и нельзя, оповещать всех, включая не очень заинтересованных лиц, что на веб-сервере в течение 30 секунд нагрузка на CPU была 95%.
Смирение. Бизнесу пофиг на процессор/память/диски. Его больше интересует, лучше или хуже стало после изменений в инфраструктуре. Надо работать на упреждение.



Под катом — подробности эволюции моего отношения.

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

Kali Linux: оценка защищённости систем

Время на прочтение 7 мин
Количество просмотров 19K
→ Часть 1. Kali Linux: политика безопасности, защита компьютеров и сетевых служб
→ Часть 2. Kali Linux: фильтрация трафика с помощью netfilter
→ Часть 3. Kali Linux: мониторинг и логирование
→ Часть 4. Kali Linux: упражнения по защите и мониторингу системы

Сегодня мы продолжаем публиковать перевод избранных глав книги «Kali Linux Revealed». Перед вами — первый раздел главы 11: «Применение Kali Linux для оценки защищённости информационных систем».


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

Библиотека быстрого поиска путей на графе

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

Привет, Друзья!


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


Пример использования на огромном графе:



Поиграться с демо можно здесь


В библиотеке используется мало-известный вариант A* поиска, который называется NBA*. Это двунаправленный поиск, с расслабленными требованиями к функции-эвристике, и очень агрессивным критерием завершения. Не смотря на свою малоизвестность у алгоритма отличная скорость сходимости к оптимальному решению.


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

Читать дальше →
Всего голосов 114: ↑112 и ↓2 +110
Комментарии 53

Проходим сквозь стены NAT-ов

Время на прочтение 2 мин
Количество просмотров 2K
image Повсеместное распространение NAT казалось препятствует свободному обмену трафиком между компьютерами, находящимися за одним из них, и практически делает это невозможным, если оба компьютера скрыты за разными NAT серверами, естественно если вы не администратор обоих NAT серверов. Однако Samy Kamkar легко и непринужденно не только преодолел это, но и сделал программу которая позволяет преодолевать подобные препятствия. В настоящее время данная программа доступна только пользователям *nix подобных систем.

Pwnat — этот инструмент позволяет любому количеству клиентов, находящихся за одним NAT-сервером, соединяться с сервером стоящим за другим NAT, при этом никакой проброски портов на серверах не требуется и никаких прочих инструментов не используется. Серверу не надо ничего знать о клиенте который с ним соединяется. Проще говоря это такой прокси сервер, который стоит за одним NAT и работает с клиентами, стоящими за другим NAT, между ними нет никакого дополнительного посредника, никаких DNS-фокусов и никакого пива админам. Скажу честно — я тоже в это сначала не поверил.

Клиент может подключаться через такой сервер к любым ресурсам, либо только тем что ограничены сервером pwnat. Данный инструмент основан на построении UDP-тоннеля. Принцип работы весьма оригинальный и прекрасно описан автором, рекомендую ознакомиться, ибо решение данного вопроса оказалось весьма интересным и неожиданным. Давно не встречал ничего подобного.

Подводя итог скажу, следующее — данный продукт имеет весьма полезное значение как для решения отдельных задач, так и для того, чтобы знать о том, что способ сей существует. Если ваша работа связна с сетями, обязательно ознакомьтесь, поверьте — есть, что почерпнуть у автора программы из документации, английский там достаточно простой.
Всего голосов 77: ↑70 и ↓7 +63
Комментарии 134

Магический гель

Время на прочтение 2 мин
Количество просмотров 1.4K
Месяц назад, мониторя аукцион ebay, наткнулся я на непонятную штуковину под названием «Magic High-Tech Cleaning Compound Super Clean Slimy Gel» всего за 1 доллар. Судя по описанию, это какой-то уникальный продукт, на 95% состоящий из экологически и биологически чистых веществ, который удаляет пыль и небольшую грязь с любых поверхностей, особенно из труднодоступных мест типа клавиатур, решеток и т.д., обладает дезинфицирующим действием, да еще и убивает до 80% бактерий. «Вполне себе гаджет для гика», — подумал я и решил заказать сей чудо девайс из великого Китая. Шел он чуть более месяца, и вот сегодня я получил чудо-посылку.

image

Подробности внутри.
Читать дальше →
Всего голосов 185: ↑170 и ↓15 +155
Комментарии 115

Видео всех лекций с «Курсов информационных технологий» от «Яндекса»

Время на прочтение 1 мин
Количество просмотров 30K
Для тех, кто не смог посетить Курсы информационных технологий, видеоролики всех лекций выложены в свободный доступ. Это лекции по полтора-два часа на базовые темы: операционные системы; архитектура ЭВМ; устройство GNU/Linux; системы хранения данных; файловые системы; сети и протоколы; виртуализация; безопасность.
Читать дальше →
Всего голосов 116: ↑101 и ↓15 +86
Комментарии 39

Тематические карты

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

Развитие картографических сервисов в Интернет подстигнуло интерес разработчиков к созданию своих гео-информационных служб, в том числе основанных на краудсорсинге. Используя готовую подложку (основу), т.е. данные в виде спутниковых снимков и карт, относительно легко повысить наглядность данных в собственной системе и расширить функциональность.

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

По сути, интеграция с картографическими сервисами приводит к созданию тематической карты. О том, что это такое и о наиболее популярных способах построения тематических карт будет рассказано ниже. Так же в тексте приведены англоязычные термины, с помощью которых можно будет найти дополнительную информацию.
Читать дальше →
Всего голосов 26: ↑26 и ↓0 +26
Комментарии 25

Zalman VE-200 — USB/eSATA бокс для портативного HDD с виртуальным CD-приводом

Время на прочтение 6 мин
Количество просмотров 225K
Наконец-то появились в продаже в России долгожданные Zalman VE-200, один из которых я и заказал себе.



Этот бокс для 2.5" HDD, с первого взгляда, не представляет собой ничего особо выдающегося — те же USB и eSATA-интерфейсы, что и у многих других боксов. Но, в отличие от конкурентов, бокс содержит в себе виртуальный CD-привод, в который монтируются *.ISO, сложенные в специальной папочке. Впрочем, это потом, а теперь:
Читать дальше →
Всего голосов 118: ↑114 и ↓4 +110
Комментарии 182

Сайт с визуализацией работы большого количества протоколов

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

Ссылка

http://www.visualland.net/

Картинка




Примеры визуализаций

Все.
Всего голосов 132: ↑125 и ↓7 +118
Комментарии 15

Старые добрые электронные портативные игры

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

Поляки собрали два десятка старых электронных портативных игр со всего мира на одной уютной страничке — http://www.pica-pic.com.

Читать дальше →
Всего голосов 154: ↑148 и ↓6 +142
Комментарии 77

Подробный обзор Alien Swarm — бесплатного кооперативного шутера от Valve

Время на прочтение 5 мин
Количество просмотров 4.5K
Alien Swarm — бесплатный кооперативный шутер от Valve

Неожиданно для всех на официальном сайте Steam появляется страница новой игры от Valve под благозвучным названием — Alien Swarm. И самое приятное, что игра совершенно бесплатна! То есть, чтобы начать играть, вам достаточно получить Steam, найти в списке игр Alien Swarm и просто скачать её. Разве не замечательно?

Полный обзор игры. Под катом, специально для Хабра!

Читать не отрываясь
Всего голосов 130: ↑106 и ↓24 +82
Комментарии 90

Путь обучения: Развертывание Windows на множество компьютеров (материалы на русском языке)

Время на прочтение 1 мин
Количество просмотров 8.1K
image
В дополнение к подаркам к новому году по разработке в виде статей по Windows был создан обучающий курс по развертыванию Windows на множество компьютеров на русском языке. В курс вошли следующие материалы, которые помогут вам получить все необходимые знания для планирования и развертывания:

Приятного просмотра и счастливых новогодних праздников!
Всего голосов 78: ↑51 и ↓27 +24
Комментарии 19

Свой инструмент нужно знать в лицо: обзор наиболее часто используемых структур данных

Время на прочтение 8 мин
Количество просмотров 60K
image
Некоторое время назад я сходил на собеседование в одну довольно большую и уважаемую компанию. Собеседование прошло хорошо и понравилось как мне, так и, надеюсь, людям его проводившим. Но на следующий день, в процессе разбора полетов, я обнаружил, что в ходе собеседования ответ на как минимум один вопрос был неверен.

Вопрос: Почему поиск в python dict на больших объемах данных быстрее чем итерация по индексированному массиву?

Ответ: В dict хранятся хэши от ключей. Каждый раз, когда мы ищем в dict значение по ключу, мы сначала вычисляем его хэш, а потом (внезапно), выполняем бинарный поиск. Таким образом, сложность составляет O(lg(N))!

На самом деле никакого бинарного поиска тут нет. И сложность алгоритма не O(lg(N)), а Amort. O(1) — так как в основе dict питона лежит структура под названием Hash Table.

Причиной неверного ответа было то, что я не удосужился досконально изучить те структуры, которые лежат в основе работы с коллекциями моего любимого языка. Правда, по результатам опроса нескольких знакомых разработчиков, оказалось что это не только моя проблема, очень многие вообще не задумываются, как работают коллекции в их любимых ЯП. А ведь используем мы их каждый день и не по разу. Так родилась идея этой статьи.
Читать дальше →
Всего голосов 191: ↑179 и ↓12 +167
Комментарии 66

Скрипт создания ярлыков удалённого управления

Время на прочтение 4 мин
Количество просмотров 19K
Представьте, что у вас есть таблица с названиями и адресами устройств и сервисов и вы можете легко получить из неё множество ярлыков для запуска браузера, putty, удалённого рабочего стола или telnet для управления этими устройствами. На картинке ниже схематично это показано:

Здесь красивая картинка про то, как сухие строчки электронной таблицы становятся чудодейственными ярлыками.
Зачем это вообще нужно? Например к вам на эксплуатацию или обследование попала новая система или вам передали в пользование какую-нибудь тестовую среду. Чтобы не вбивать адреса или не копировать из файла каждый раз при подключении к хостам, можно однажды запустить скрипт и создать все ярлыки разом.
Внутри как раз про такой скрипт.
Всего голосов 57: ↑49 и ↓8 +41
Комментарии 27

Построение отказоустойчивой (fault tolerant) системы

Время на прочтение 8 мин
Количество просмотров 47K
В разработке банковского ПО данному аспекту системы уделяется наибольшее внимание. Часто, описывая отказоустойчивую систему, используют слова: Fault Tolerance, Resilience, Reliability, Stability, DR (disaster recovery). Данная характеристика — суть способность системы продолжать корректно работать при падении одной или нескольких подсистем, от которых она зависит. Я кратко опишу какие подходы могут применяться в данной области и приведу пару примеров.
Читать дальше →
Всего голосов 75: ↑68 и ↓7 +61
Комментарии 10

Еще одна визуализация ряда алгоритмов и структур данных

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

Университет Сан-Франциско создал с использованием HTML5 коллекцию визуализаций различных алгоритмов и структур данных. Посмотреть и потыкать кнопки можно вот тут.
Список визуализированных алгоритмов и структур данных со ссылками под катом.
Читать дальше →
Всего голосов 82: ↑79 и ↓3 +76
Комментарии 17

Айтишный сувенир на память своими руками

Время на прочтение 2 мин
Количество просмотров 15K
сувенир своими рукамиЧто скрывать, все мы любим получить и делать различные подарки и сувениры. Особенно хорошо удаются неожиданные презенты и знаки внимания оказываемые без повода. И уж тем более памятными становятся те, что сделаны своими руками.

Об одном из таких подарков, изображенным на фото справа, и будет сей рассказ.

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

Cхема, код прошивки и комментарии под хабракатом.

Читать дальше →
Всего голосов 151: ↑145 и ↓6 +139
Комментарии 47
1

Информация

В рейтинге
Не участвует
Откуда
Москва и Московская обл., Россия
Зарегистрирован
Активность