Привет! Меня зовут Алексей, я работаю в команде Антиспама Почты Mail.ru, и сегодня хочу поделиться интересным опытом нашей команды по поиску проблем на бою.
Рубрика «отладка» - 3
Настоящий детектив: загадочные таймауты на проде
2022-08-24 в 7:44, admin, рубрики: tcp_window_scaling, Анализ и проектирование систем, Блог компании VK, отладка, продакшен, таймаутыВидеоускоритель Apple и невозможный баг
2022-05-17 в 9:30, admin, рубрики: agx, apple m1, буфер кадров, Видеокарты, конвейер рендеринга, отладка, Процессоры, Работа с 3D-графикой, реверс-инжинирингДрайвер не справлялся с рендерингом больших количеств геометрии.
Вращающийся кубик отрисуется нормально, низкополигональная геометрия тоже, но детализированные модели не рендерились. GPU рендерил только часть модели, а потом останавливался.
Частично отрендеренный по Фонгу кролик
Сложно было определить, какой объём мы можем рендерить без сбоев. Это зависело не только от сложности геометрии. Одна и та же геометрия могла рендериться с простыми шейдерами, но давать сбой со сложными.
Читать полностью »
Как мы теряли игроков из-за того, что они платили за игру
2022-05-02 в 10:54, admin, рубрики: asn.1, C#, in-app purchases, unity, unity iap, баги, отладка, парсинг, разработка игр
Представьте, каково это — найти серьёзный баг в продакшене сразу после выпуска игры. Представьте, что этот баг вредит только платным пользователям. Представьте, что игра зависает сразу после того, как игроки завершают внутриигровую покупку. Представьте, что когда игрок перезапускает игру, она зависает при запуске. Представьте, что игроку так и не удаётся запустить игру и приходится её удалять. Представьте, что ваше приложение в этот момент находится в рекомендованных Apple Store. Эта статья — рассказ о таком баге, худшем из всех, что я видел за тридцать лет программирования. Это история о том, как мы его выявили и совместно с разработчиками Unity работали над его устранением.
Читать полностью »
Основы работы отечественных МК 1986ВЕ1Т с болгарскими отладчиками OLIMEX ARM-USB-OCD-H. Часть 2 — RAM & Interruptions
2022-03-26 в 12:55, admin, рубрики: 1986BE1T, C, Olimex, миландр, оперативная память, отладка, программирование микроконтроллеров, Процессоры, СиПреамбула
Изначально вторая главазадумывалась только, как шпаргалка по работе из оперативной памяти, но делать и разбираться в этом не очень трудно. Основная "запара" может настигнуть несведущего именно при работе с прерываниями. Собсна, решено объединить.
Стек:
-
Отладочная плата LDM-HELPER-K1986BE1QI-FULL;
-
МК K1986BE1QI(но все паки и тд. юзаю 1986ВЕ1Т ибо
те же яйца, только с бокудаже даташит 1 на целую линейку); -
Программатор ARM-USB-OCD-H;
-
IDE Keil uVison 5;
-
Open OCD.
Как я винду по-реверсерски чинил
2022-02-17 в 20:32, admin, рубрики: windows, x64dbg, Your system administrator, говнокод, отладка, поиск проблем, реверс-инжинирингВаша винда не работает как хотелось бы? Все советы из поисковика перепробовали установили Linux, а оно всё равно не работает? Вы реверс-инженер или кто вообще, ну в самом деле!? Применим свои навыки владения отладчиком, поможем Шиндовс нормально (по мере её сил) работать!
На написание данной статьи меня подтолкнула злость. Злость на поделие от индусских говноЧитать полностью »
Железный Отладчик Для ZX Spectrum
2022-02-05 в 17:49, admin, рубрики: C, gdb, gdbserver, spectranet, Z80, z88dk, zx spectrum, отладка, программирование микроконтроллеров, Процессоры, старое железоДо текущего момента, отладка С кода для ZX Spectrum была возможна только в некоторых эмуляторах. В предыдущей статье описан процесс написания отладчика, который использовал цепочку gdb-клиент (z88dk) <-> gdb-протокол <-> gdbserver (эмулятор Fuse).
PCIExpress 1.0 2.5GT-s analyzer на базе ПЛИС своими руками
2022-01-26 в 6:55, admin, рубрики: analyzer, fpga, pciexpress, vhdl, интерфейсы, отладка, периферия, ПрограммированиеCи в роли промежуточного языка
2021-11-25 в 13:00, admin, рубрики: C, c++, forth, ruvds_перевод, Блог компании RUVDS.com, отладкаИнтересный небольшой эксперимент по использованию Cи в качестве цели компиляции для получения портативности программы, ее оптимизации и функциональной совместимости. В ходе эксперимента мы также напишем саму программу, реализующую алгоритм Эвклида, выполним ее отладку и профилирование, а также попутно задействуем функцию «красивой» печати gdb. Читать полностью »
Введение в отладку на примере Firefox DevTools, часть 3 из 4
2021-11-13 в 14:44, admin, рубрики: callstack, DevTools, Firefox, javascript, браузеры, инструменты разработчика, отладка, отладка javascript, Отладчик, Разработка веб-сайтов, стек вызововПервая часть: знакомство с отладчиком
Вторая часть: узнаём значение переменной без console.log
Стек вызовов
Продолжаем отладку приложения со списком дел. В этот раз будем чинить удаление задач. Откройте приложение в новой вкладке. Эта версия тоже сломана нарочно, чтобы мы разобрались, что такое стек вызовов.
Как откроете приложение, добавьте несколько своих задач в список дел. Затем удалите первую в списке задачу. Кнопка Delete. Пока всё работает. Теперь удалите последнюю в списке задачу. Опачки!Читать полностью »
Пошаговый запуск программы в Linux x86, или как добраться до main()?
2021-11-10 в 13:00, admin, рубрики: linux, ruvds_перевод, ассемблер, Блог компании RUVDS.com, отладка, отладка программ, Разработка под LinuxСтатья предназначена для тех, кто хочет понять процесс загрузки программ в Linux. В частности, здесь пойдет речь о динамической загрузке файлов ELF x86. На основе изложенной информации вы сможете лучше понять, как устранять проблемы, возникающие в программе еще до запуска main
. Читать полностью »