Я долго придумывал вступление к теме FPGA-реимплементации в контексте ретро, но это сложнее чем кажется. Давайте попробуем издалека. Сейчас электроника довольно неплохо стандартизирована, но ведь 40-50 лет назад ситуация была гораздо сложнее. То, что мы сейчас принимаем как должный и абсолютный незыблемый стандарт, когда-то таковым не являлось. Как, например, то, что в 1 байте 8 бит. Были машины и с 6 и с 9 битными байтами и много чего еще. Тем собственно старая техника и интригует. Сколько человекочасов было убито на её проектирование, какие гениальные и не очень решения принимались. И всё это будет утеряно? Да и просто - как это всё работало? Вопрос, который, думаю, интересовал многих ретро-энтузиастов ещё с детства.
Небольшая заметка, скорее для себя, о мелких трюках по восстановлению данных в Elasticsearch. Как починить красный индекс если нет бэкапа, что делать если удалил документы, а копии не осталось — к сожалению в официальной документации об этих возможностях умалчивают.
Вы наверняка слышали об OpenStack. Блин, да о нем говорят на каждом более-менее связанном мероприятии. Все кому не лень пропагандируют OpenStack. Модно, молодежно, все уже есть, Open Source, вливайся давай. И вот наслушавшись тонны маркетингового булшита, вы решаетесь: Будем ставить OpenStack!
Я не проводил специальных изысканий на этот счет, но отрицательных отзывов о нем вроде бы не так много, по крайней мере на русском. На первый взгляд все выглядит просто фантастически. Что ж, извольте представить мой личный пост ненависти к OpenStack.
Как вы помните по предыдущей новости, 20 июня Ростелеком на своем портале разместил новость об ограничении скорости передачи данных до 64 Кбит/с при достижении лимита в 1 ТБ. Ограничения должны были коснуться 14 областей центрального региона. После того, как новость стала потихоньку расползаться по интернет-порталам, ее с сайта срочно удалили.
TL;DR Захотелось поставить на старый нетбук Debian 8, сказано — сделано. В целом все работает, но вот вместо красивой заставки при загрузке — бегущие строки загрузки ядра и сервисов. Не красиво. В чем же проблема? Будем разбираться.
Как-то так сложилось, но музыкального центра у меня никогда не было, максимум советский магнитофон Маяк-223 да пара колонок. Приобщиться к цифровому звуку и компакт-дискам удалось только с появлением PC-совместимого компьютера в начале 2000-х. Да и CD-привод был дорог и появился далеко не сразу. Однако в то время уже во всю развивалась революция MP3, а соответственно как и у многих, у меня начала расти небольшая коллекция музыки на винте, что-то было скопировано у друзей, что-то рипалось собственноручно с купленных компакт-дисков, дабы не дергать постоянно привод ради прослушивания музыки. Да и в Winamp'е можно было составить плейлист на много-много часов из много-много альбомов, а не гонять строго один альбом постоянно.
Собственно музыка слушалась со встроенной звуковухи на обычных компьютерных пищалках без особых претензий. Но несколько лет назад вдруг захотелось чего-то большего. Что называется, не было у бабы проблем, купила баба порося. В этой статье я постараюсь поделиться с вами личным опытом в организации домашнего звука.
После апгрейда на Windows 8 мною была замечена странная проблема: после спящего режима, а иногда и при холодном старте, я не мог войти в систему потому, что ни мышка ни клавиатура не функционировали! Спешу разочаровать тех кто сталкивается с этой проблемой, внятного решения пока нет.
Ровно месяц назад мною была начата петиция в компанию Qualcomm с просьбой зарелизить обновленные кодеки с поддержкой ICS для устройств на базе ARMv6. Вдохновением для нее послужила предыдущая петиция с просьбой зарелизить обновленные драйвера для графического ускорителя Adreno 200, созданная пользователем sweetnsour с форума xda-developers. Как вы может быть слышали, она увенчалась успехом.
Итак, я создал петицию, рассказал народу, что же в итоге получилось?
Ни для кого не секрет, что устройства ARMv6, еще недавно будучи крайне популярными, постепенно вымирают. Виной тому отказ производителей выпускать на них обновления, вследствие чего сообщество довольно быстро от них отворачивается и забрасывает.
Примерно это же сейчас происходит с устройствами на базе Qualcomm MSM7227 (Snapdragon). Судя по прошлогоднему отчету компании, ею было поставлено более 100 миллионов этих чипов, их имеют на своем борту миллионы смартфонов и других устройств по всему миру.
Вы наверняка слышали, что вендоры в основной своей массе отказались от создания обновления до ICS для этих устройств. Но сообщество разработчиков не дремлет, и работы по портированию идут полным ходом. Однако сейчас почти все команды разработчиков столкнулись с проблемой, которую почти невозможно решить самостоятельно.
Если вы когда-нибудь пытались написать своего бота, программу-переговорщик (negotiator), интерпретатор протокола связи и тому подобные вещи, то наверняка сталкивались с конечными автоматами. Данная тема в принципе не представляет большой сложности, но если вдруг у вас не было курса «теории автоматов», милости прошу под кат.
Сегодня мы попытаемся создать простой детерминированный конечный автомат. Мне вдруг захотелось написать его на Perl'е, но так как мы не будем использовать никаких специфических трюков, перенести общую концепцию на любой другой императивный язык не составит большого труда.
Когда в очередной раз нахлынула волна «а чего бы не заапгрейдится?», я всерьез задумался о сборке RAID-массива под систему. В качестве альтернативы маячила возможность купить SSD, хотя у меня до сих пор нет уверенности в долгосрочной надежности этого типа накопителей.
В своей предыдущей статье я вкратце коснулся темы создания High Availability решения на основе демона heartbeat. Однако, как выяснилось, что-то сложнее чем 2-х узловой кластер на нем делать не так уж удобно. Изучение проблемы вывело меня на след проекта Pacemaker. Его-то мы сейчас в кратце и рассмотрим.
Похоже не многие знают, и я в том числе узнал недавно, что на стандартном пульте RC6 от Microsoft можно перепрограммировать некоторые кнопки: TV, VOL+, VOL-. Давайте посмотрим как.
При анализе производительности приложений с целью ее повышения, наиболее мощной из доступных является методика детального анализа циклов центрального процессора. Традиционный анализ завершения инструкций вряд ли поможет, когда мы говорим об архитектуре, применяющей переупорядочивание инструкций (Out of Order, OOO), чья основная задача и состоит в том, что бы продолжать исполнять инструкции, пока их завершение невозможно.
Адаптация программного обеспечения для эффективного использования всех доступных процессоров наиболее критична в свете намечающегося многоядерного будущего современной вычислительной техники. Кроме всех прочих препятствий, которые могут быть встречены на этом пути, существуют проблемы, связанные с совместным использованием конечной пропускной способности существующих платформ и процессоров. Правильное использование событий производительности процессора Intel Core2 позволит определить точную причину, останавливающую приложение на пути к полноценному использованию всех доступных в системе ядер.
Итак, у вас есть нагруженный сервер и вам вдруг захотелось его разгрузить. Вы поставили и залили такой же (такие же), но пользователи упорно ходят на первый. В этом случае конечно же нужно задуматься о балансировке нагрузки.