Pull to refresh
40
0
Мещеряков Александр @Self_Perfection

Линуксоид ПК

Send message

Неочевидные возможности короля картографического ПО на гаджетах

Reading time 10 min
Views 36K

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

🔥 Примечание — эта статья автора расположилась на первом месте по рейтингу/просмотрам в хабе OSM за последний 23г..

Читать далее
Total votes 52: ↑52 and ↓0 +52
Comments 156

Файл дескриптор в Linux с примерами

Reading time 14 min
Views 98K
Однажды, на одном интервью меня спросили, что ты будешь делать, если обнаружишь неработающий сервис из-за того, что на диске закончилось место?

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

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

Интервьюер прервал меня на последнем слове, дополнив свой вопрос: «Предположим, что данные нам не нужны, это просто дебаг лог, но приложение не работает из-за того, что не может записать дебаг»?

«окей», — ответил я, «мы можем выключить дебаг в конфиге приложения и перезапустить его».
Интервьюер возразил: «Нет, приложение мы перезапустить не можем, у нас в памяти все еще хранятся важные данные, а к самому сервису подключены важные клиенты, которых мы не можем заставлять переподключаться заново».

«ну хорошо», сказал я, «если мы не можем перезапускать приложение и данные нам не важны, то мы можем просто очистить этот открытый файл через файл дескриптор, даже если мы его не видим в команде ls на файловой системе».

Интервьюер остался доволен, а я нет.

Тогда я подумал, почему человек, проверяющий мои знания, не копает глубже? А что, если данные все-таки важны? Что если мы не можем перезапускать процесс, и при этом этот процесс пишет на файловую систему в раздел, на котором нет свободного места? Что если мы не можем потерять не только уже записанные данные, но и те данные, что этот процесс пишет или пытается записать?
Читать дальше →
Total votes 136: ↑136 and ↓0 +136
Comments 20

Использование быстрых клавиш в командной строке Linux (BASH)

Reading time 14 min
Views 89K

Эта статья посвящена наиболее часто используемым комбинациям клавиш при работе в командной строке Linux (в основном в командном интерпретаторе bash).

Она точно будет полезна начинающим своё знакомство с Linux и, уверен, пригодится тем, кто уже имеет опыт (не всегда годы практики учат работать быстрее).

Никогда не развивал навыка быстрой печати, но знание не одного десятка hotkey'ев, перечисленных в этом материале, позволяет набирать команды со скоростью мысли.

Я попытался продемонстрировать многие примеры при помощи анимированных gif'ок – иногда несколько кадров больше скажут, чем несколько абзацев текста.

Читать далее
Total votes 143: ↑142 and ↓1 +141
Comments 64

20 лет проблем приема платежей

Reading time 11 min
Views 21K
image
За логотип спасибо yarbabin

Электронные системы расчетов существуют в интернете уже давно, а баги на них встречаются двадцатилетней давности. Мы находили критические уязвимости, позволяющие угнать деньги и накрутить баланс. Сегодня мы разберем типовые реализации приема платежей и связанные с ними проблемы безопасности.
Читать дальше →
Total votes 133: ↑132 and ↓1 +131
Comments 20

Как SEO-оптимизация и алгоритмы Google уничтожили настоящий интернет

Reading time 5 min
Views 58K
Примечание от переводчика: этот текст — перевод-компиляция двух небольших англоязычных заметок, которые автор почему-то разделил на два разных текста. Я уверен, что логически они связаны и представляют некоторую ретроспективную ценность. В первую очередь тем, что оспаривают устоявшееся мнение о том, что раньше интернет был похож на бурлящий котел, первичный бульон, а сейчас он — стройный, понятный и с каждым годом становится все лучше. Конечно, местами автор перегибает палку, но во многом с ним сложно не согласиться. Текст достаточно эмоционален, что я, конечно же, попытался максимально передать и адаптировать в ходе перевода. Приятного чтения.



Как SEO-оптимизация уничтожила интернет


В промежутке между 1998 и 2003 годом поиск в Google был просто волшебным. Я помню, как вводил какую-то смутную комбинацию, типа «oil mother's milk» и в итоге попал на страницу Wired с интервью Томаса Голда, астрофизика, который рассказывал о том, что залежи углеводородов (oil) пополняются за счет давления внутри геологических пластов.

Если вы сегодня ищете что-то техническое, конкретное, академическое или вообще — некоммерческое, то удачи вам. Лучшая в мире информационно-поисковая система превратилась в нечто, напоминающее Digg эры 2006 года: индексы популярности контролируются небольшим количеством финансово мотивированных игроков. Они называют себя «оптимизаторами».
Читать дальше →
Total votes 173: ↑165 and ↓8 +157
Comments 238

Игровая агрессия, или как кооператив превращается в кровавую баню и что делать, чтобы он этого не делал

Reading time 53 min
Views 28K


В прошлый раз мы остановились на том феномене, что игра, которая изначально задумывалась как кооператив (например, D&D или многопользовательская песочница типа Space Station 13), почему-то может использоваться игроками совершенно по другому назначению, становясь пространством насилия и травли. Сегодня, соответственно, будем разбираться в том, как устроена детская (и не только детская) агрессия, как работает формат песочницы, что делает агрессия в песочнице (и вообще в игре) и как можно ей управлять.

Физика эмоции


В дальнейшем изложении мы будем использовать гидродинамическую модель эмоции. Представим себе, что, например, гнев – это жидкость. Чем больше накапливается гнева, тем сильнее становится напор жидкости в трубе – отдельно взятом индивидууме. На выходе есть два вентиля. Один соответствует внутреннему тормозу – представлению, например, о том, что обижать других людей дурно, некрасиво, недостойно… Второй соответствует внешнему тормозу – страху перед наказанием или какими-то другими негативными последствиями. Что будет, если давление жидкости нарастает, а вентили (хотя бы какой-то один из них) намертво закручены?
Читать дальше →
Total votes 49: ↑48 and ↓1 +47
Comments 82

Введение в реверс-инжиниринг: взламываем формат данных игры

Reading time 48 min
Views 25K

Введение


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

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

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

Небольшая предыстория


Всё это началось, когда я пытался воссоздать игру Chip's Challenge на Linux.

Изначально Chip's Challenge была выпущена в 1989 году для ныне забытой портативной консоли Atari Lynx. Для того времени Atari Lynx была впечатляющей машиной, но она вышла в одно время с Nintendo Game Boy, которая в конце концов захватила рынок.

Chip's Challenge — это игра-головоломка с видом сверху и тайловой картой. Как и в большинстве таких игр, цель каждого уровня заключается в том, чтобы добраться до выхода. В большей части уровней выход охраняется разъёмом для чипа, который можно миновать, только собрав определённое количество компьютерных чипов.
Читать дальше →
Total votes 49: ↑48 and ↓1 +47
Comments 8

Медленный софт

Reading time 16 min
Views 20K
От переводчика: проблема медленного программного обеспечения стала одной из главных тем обсуждения на Хабре и Hacker News в последние недели. Например, см. статью Никиты Прокопова «Моё разочарование в софте» и 2432 комментария к ней.

Мы проводим много времени за компьютером. Ждём каждый раз при запуске приложений и загрузке веб-страниц. Повсюду иконки со спиннером или песочными часами. Железо всё мощнее, но софт по-прежнему кажется медленным. Почему так?

Если вы используете компьютер для выполнения важной работы, то заслуживаете быстрого ПО. Слишком часто современный софт не удовлетворяет этим требованиям. В исследовательской лаборатории Ink & Switch мы изучили причины такой ситуации, программное обеспечение в итоге стало лучше. В этой статье опубликованы результаты нашего исследования.
Total votes 24: ↑22 and ↓2 +20
Comments 66

Орден Белых Рыцарей Хабра

Reading time 2 min
Views 3.6K
Во имя добра, любви и кармического равновесия Белые Рыцари Хабра готовы принять в свои ряды новых бойцов. Чтобы стать Белым Рыцарем необходимо изменить свой юзерпик на изображение ведра — символа чистоты помыслов — и соблюдать Кодекс Белого Рыцаря Хабра.
Читать дальше →
Total votes 401: ↑213 and ↓188 +25
Comments 553

Изучаем внутреннюю кухню ядра Linux с помощью /proc для быстрой диагностики и решения проблем

Reading time 13 min
Views 66K
Данная статья касается современных линуксов. Например, RHEL6 с ядрами 2.6.3х — подойдёт, а вот RHEL5 с ядрами 2.6.18 (кстати, наиболее популярный в продакшне) — увы, нет. И ещё — здесь не будет описания ядерных отладчиков или скриптов SytemTap; только старые-добрые простые команды вида «cat /proc/PID/xyz» в отношении некоторых полезных узлов файловой системы /proc.

Диагностика «тормозящего» процесса


Вот хороший пример часто возникающей проблемы, которую я воспроизвёл на своём лаптопе: пользователь жалуется, что команда find работает «значительно медленнее», при этом не возвращая никаких результатов. Зная, в чём дело, мы решили проблему. Однако меня попросили изложить систематический подход к решению подобных задач.

К счастью, система работает под управлением OEL6, т.е. на достаточно свежем ядре (а именно — 2.6.39 UEK2)

Итак, приступим к диагностике.
Подробности
Total votes 127: ↑125 and ↓2 +123
Comments 28

Почему ваш любимый мессенджер должен умереть

Reading time 18 min
Views 328K
image
Кладбище мессенджеров, на котором обязательно должны оказаться Skype, Viber, WhatsApp, Hangouts, ooVoo, Apple iMessage, Telegram, Line, Facebook messenger и еще сотни мессенджеров, которым только предстоит выйти в ближайшее время.

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

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

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

image

_ Почему такая важная для человечества технология, как мгновенные сообщения и аудио-видеозвонки, не может быть монополизирована какой-либо компанией. Как это тормозит развитие технологий, угрожает свободе и безопасности коммуникаций.


Читать дальше →
Total votes 260: ↑230 and ↓30 +200
Comments 357

Почему векторные иконки Haiku такие компактные?

Reading time 4 min
Views 1.7K
В Haiku векторные иконки такие компактные, как же так? Вы, наверное, ожидаете какой-нибудь хак, но секрет в том, что HVIF (Haiku Vector Icon Format) довольно прост. Самое главное, что этот формат оптимизирован для иконок. Как только вы соглашаетесь с этим простым предположением, сразу же приходят идеи различных способов оптимизации объёма данных.
И что же получилось?
Total votes 20: ↑19 and ↓1 +18
Comments 24

Хороший 22-дюймовый монитор теперь есть. Даже два

Reading time 1 min
Views 5.9K
NEC P221WВ начале осени я писал о своем подходе к выбору качественного, но не заоблачно дорогого домашнего монитора для работы с фото и комфортного просмотра фильмов. Уже более полугода очень доволен вариантом Dell 2408. Нареканий практически никаких, кроме, разве что, неудобного меню.

Тогда я упомянул, что, к сожалению, среди 22-дюймовых моделей нет вариантов на *VA- или IPS-матрицах. А 24 дюйма уже не всем подойдет по размерам. На то время единственным выбором из не-TN матриц в России был Lenovo ThinkVision L220x — 22 дюйма с нестандартным для такой диагонали Full HD разрешением. Но, судя по обзорам, среди них попадалось много брака – ощутимо размытая картинка.
Читать дальше →
Total votes 60: ↑51 and ↓9 +42
Comments 107

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

Reading time 3 min
Views 16K
Фармакологическая промышленность выпускает всё больше препаратов, которые предназначены для улучшения мозговой деятельности. Многие таблетки продаются без рецепта в любой аптеке, а другие несложно купить на чёрном рынке или получить рецепт обманным путём. Эти лекарства улучшают концентрацию внимания, повышают скорость мышления, сопротивляемость стрессу и эмоциональную устойчивость.

Несмотря на все побочные эффекты, такие лекарства теперь используют люди самых разных профессий: учёные, музыканты, топ-менеджеры, студенты и даже профессиональные покерные игроки. Менеджеры повышают работоспособность и когнитивные способности в корпоративных интригах. Студенты с лёгкостью запоминают всё прочитанное перед экзаменом, а игроки в покер получают важное преимущество перед соперниками. Например, профессиональный игрок Пол Филипс (заработал за карьеру более $2,3 млн) во время важных турниров принимает аддералл (улучшает концентрацию внимания) и провигил (сильнодействующий аналог кофеина), пишет LA Times.

В список препаратов для повышения эффективности мозга входят также риталин (стимулятор центральной нервной системы), арицепт, индерал и другие вещества, которые блокируют бета-адренорецепторы, отвечающие за восприятие адреналина мозгом. После этого у человека полностью исчезает волнение.
Читать дальше →
Total votes 26: ↑23 and ↓3 +20
Comments 99

Google Chart API

Reading time 1 min
Views 32K
Несколько дней назад компания Google выпустила новый сервис — Google Chart API.

Сервис как и все гениальное прост: теперь все, что необходимо для построение графиков это сформировать URL.
Читать дальше →
Total votes 51: ↑50 and ↓1 +49
Comments 55

Количество ВебОС зашкалило за 20 штук

Reading time 4 min
Views 3.5K
Если вы всё ещё верите в то, что Google действительно разрабатывает ВебОС, или виртуальную операционную систему внутри браузера, но никак не можете её дождаться, то я могу вас обрадовать: такие решения уже есть и их больше 20 штук!

Конечно, некоторые виртуальные операционные системы выглядят ужасно и находятся в стадии бета-тестирования, однако в обзоре есть и весьма достойные разработки. Собственно, предлагаю сам обзор :)
Читать дальше →
Total votes 34: ↑33 and ↓1 +32
Comments 50

«Намертво прибитая к ядру» графическая подсистема

Reading time 6 min
Views 16K


То, что принято называть «графикой в ядре» обычно относится к win32k. Win32k.sys представляет собой ядерную часть графической подсистемы. Загружается пользовательским процессом smss.exe в процессе инициализации всех остальных подсистем. Путь к исполняемому образу для «kmode» подсистемы прописан здесь:


Как же это происходит?
Читать дальше →
Total votes 271: ↑246 and ↓25 +221
Comments 120

The Case of the Intermittent Windows Freezes

Reading time 4 min
Views 13K

Я, конечно, ожидал, что предыдущий пост понравится людям, но я даже представить не мог, насколько. Данный пост, на мой взгляд, одновременно и более и менее интересный, чем предыдущий. В то время, как в прошлый раз это было увлекательная казуальная игра — совершенно бессмысленная и отнимающая кучу времени, но доставляющая удовольствие своим необычным геймплеем и, самое главное, интерактивная и доступная каждому желающему, то сейчас речь скорее о детективном рассказе — позволяющем сопереживать и пытаться угадать дальнейшее развитие сюжета, но не оставляющем места интерактивности. С другой стороны, «детектив» «основан на реальных событиях», что добавляет происходящему особого шарма.

Читать дальше →
Total votes 249: ↑238 and ↓11 +227
Comments 113

Ускорение загрузки Windows for fun and profit

Reading time 4 min
Views 802K
image Пожалуй, начну с того, что если перегружаться 15 раз в год, то любой «тюнинг» процесса загрузки отнимает больше времени, чем будет выиграно на перезагрузках за все время жизни системы. Однако, спортивный интерес берет свое, тем более, что люди интересуется процессом оптимизации быстродействия. А загрузка оказалась самым очевидным кандидатом в примеры того, как на мой взгляд должен выглядеть этот самый процесс. Сразу скажу, что грузиться будем с 5400 rpm винта, грузиться будем в «рабочую» систему: помимо недобитой вендорской крапвари там стоит еще куча всякого типа вижуал студии, антивируса, скайпа, стима, гуглапдейтера и пр…

Про то, почему отключение pagefile-а скорее вредно, чем полезно — как нибудь в другой раз, а пока…
Под катом много однообразных картинок и немножко унылого текста
Total votes 532: ↑516 and ↓16 +500
Comments 365

Самодельные компьютеры

Reading time 1 min
Views 5.1K
Сомневался в какой блог написать это сообщение: в Киберпанк или сюда. Потому что сообщение с одной стороны определённо про киберпанков современности, но с другой про построение компьютерных систем. И вот, решил пост сделать сюда, потому что хабракиберпанки больше на будущее смотрят, а на сайтах есть ссылки на полезные для любого системщика ресурсы, вроде исходников uIP.

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

1. 4bit процессор, работающий на частоте 3.75mhz и способный вычислять даже факториал, что есть true :) www.vttoth.com/vicproc.htm

2. Компьютер, собранный из ~200 логических микросхем и SDRAM. На котором работает web-сервер, и с которым можно пообщаться через telnet и позапускать разные программы, вроде life или гостевой. magic-1.org

От общения с цифрой 2. можно получить гигантское удовольствие — это действительно magic. Гораздо больше эмоций, чем при работе с самым распоследним достижением суперокомпьютеростроения. Главным образом, наверное, по той причине, что ощущаешь себя способным сделать то же самое.
Total votes 27: ↑24 and ↓3 +21
Comments 16

Information

Rating
4,326-th
Location
Москва и Московская обл., Россия
Registered
Activity

Specialization

System Administration, DevOps
Linux
Bash
Nginx
PostgreSQL
Git
Docker