sitelogo

By

Mainline Linux на китайских нетбуках WM8505/WM8650

Вот на дворе уже 2015-й, прошло примерно 4 года с момента появления в продаже китайских «нетбуков» на чипсетах WM8505\WM8650. К этому времени наверняка большинство уже раздолбало эти девайсы об стену, хотя ко мне в личку вконтакте ещё стучатся люди, которые с ними возятся. Так как использовать эти девайсы по назначению не слишком удобно, люди как правило хотят сделать из них мини сервер или Wifi точку доступа с плюшками в виде торрентов и прочих сервисов. На самом слабом WM8505 имеется 128 Мб памяти и встроенная флеш память, что в несколько раз больше, чем например, у роутеров D-Link.

Читать далее

By

Ставим OpenWRT на DIR320/NRU

Наконец, нашелся человек, который смог портировать прошивку OpenWRT на этот роутер (https://code.google.com/p/openwrt-on-dir-320-b1/). Без OpenWRT данный роутер лично для меня неинтересен и провалялся в шкафу долгое время в ожидании нормальной прошивки.

OpenWRT является сторонней, но универсальной и более продвинутой прошивкой, по сравнению со многими другими, поставляемыми производителем по умолчанию. Если сравнивать ее с прошивкой от D-Link, то возможностей у ней как минимум раза в два больше, а безопасность и стабильность зачастую выше. Если Вы еще не пробовали ее, то рекомендую попробовать. Стоит только перечислить функционал, который появится при переходе от прошивки D-Link к OpenWRT: SSH доступ, подключение флеш карт и жестких дисков большого объема с практически любыми файловыми системами, лучшая поддержка модемов EDGE\3G\4G, и конечно возможность устанавливать дополнительные пакеты прямо во внутреннюю флеш память, что позволяет расширить функционал настолько, насколько хватит ресурсов этого устройства. Роутер с OpenWRT успешно раздает интернет даже с подключенного по USB мобильного телефона.

Читать далее

By

Простейший программатор JDM для PIC на пассивных компонентах

За основу предлагаемого программатора взята публикация из журнала «Радио» №2, 2004г, «Программирование современных PIC16, PIC12 на PonyProg». Это мой первый программатор, который я использовал для прошивки PIC микросхем дома. Программатор представляет собой упрощенный вариант JDM программатора, оригинальная схема имеет преобразователь RS-232 на TTL в виде микросхемы MAX232, она более универсальна, но ее «на коленке» уже не соберешь. Данная схема не имеет вообще ни одного активного компонента, не содержит дефицитных деталей и очень проста, может быть собрана без применения печатной платы.

Читать далее

By

Установка Linux на VIA VT8500 WM8505 WM8650 Часть 2

Итак, мне все же удалось на днях воткнуть Debian во внутреннюю флеш память, подключенную через USB. Работает вполне нормально, наконец кардридер освободился. Как обещал, теперь расскажу об процессе установки Linux на USB диск, кстати, это пригодится и тем, кто собрался устанавливать на USB и на других платформах, т.к. есть некоторые подводные камни.

Кстати, отвечаю, почему нельзя поставить Ubuntu: несмотря на то, что у них имеется armel порт — он поддерживает только процессоры ARMv7 и выше. WM8505 же относится к ARMv5.

Читать далее

By

Установка Linux на VIA VT8500 WM8505 WM8650

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

Читать далее

By

Тестирование дальнобойных WiFi адаптеров в Linux

За определенное время у меня собралась небольшая коллекция WiFi адаптеров, на троих из которых имеются разъемы для подключения внешней антенны. А ещё у меня есть два типа антенн — несколько штук классических всенаправленных и одна направленная панельная. Также у меня есть некоторый опыт использования этих адаптеров в Linux. Надеюсь, это поможет кому-нибудь сделать правильный выбор при покупке. Хотя, я считаю, что ни один адаптер из описываемых трёх не оказался лишним, и в каждой конкретной ситуации выручает.

Читать далее

By

Боремся с NAT с помощью Teredo и CloudFlare

Как известно, адреса в глобальной сети IPv4 закончились еще в далёком 2012-м. И не смотря ни на что, старый стандарт еще никуда не делся и продолжает повсеместно использоваться. Не многих этот вопрос интересует: провайдеры интернета не спешат тратиться на новое железо и перекрывать себе поток выручки с продажи белых IP адресов, пользователи исправно платят и имеют доступ к контактикам, ютубу и почте. Тем не менее, не у всех пользование интернетом сводится к посиделкам вконтакте и чтению почты. Иногда необходимо, например, контролировать какую-либо машину извне, например, по SSH. Так как теперь уже повсеместно используется технология NAT, а услуга выделения белого адреса иногда даже не предоставляется, приходится находить всякие ухищрения, чтобы обойти систему. Прошло то время, когда провайдеры выдавали динамический белый адрес при очередной интернет-сессии, и было достаточно зарегистрироваться где-нибудь на no-ip.org.

Читать далее

By

Advanced marshaling в C#

Сейчас работаю над сложным, но интересным проектом в C# с кучей хаков и перехватчиков API и COM интерфейсов. И у меня появилось несколько новых вещей которые я бы хотел записать. Надеюсь поможет кому-то при написании чего-то подобного, не сорвав сроки. Подобная документация конечно имеется в интернете (маршалинг в С#) тем не менее я хочу расширить тему и остановиться на конкретных примерах импорта из DirectX и других библиотек.

В сети есть полно разных оберток для использования этих технологий, и все же, мне не нравится использовать непереносимые, монструозные решения типа C++/CLI или кучи дополнительных DLL, когда размер DLL обертки имеет размер, приближенный к самой DLL, которую импортируем (пример — SlimDX).

Читать далее

By

Синхронизация OpenSSL в многопоточных приложениях

Сегодня на работе пофиксил багу, связанную с зависанием при выходе из приложения. Реализация класса TLS сокетов иллюстрировала попытки разработчика впихнуть невпихуемое, но показать этот код я к сожалению не могу. Если кратко, были три основных метода Receive, Send и Close, работавшие из разных потоков. В каждом методе было по мьютексу, так как класс еще и обязан был поддерживать блокирующие и неблокирующие сокеты. Если бы использовался один мьютекс на весь класс, тогда блокирующий SSL_read мог бы заблочить все остальные потоки, когда те попытались бы записать данные или закрыть сокет.
Читать далее

By

Ставим кнопки Like и Share для постов WordPress

Социальные сети сейчас концентрируют огромную часть траффика интернета. Не стоит объяснять, почему многие владельцы веб-сайтов стремятся максимально интегрировать социальные сети.

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

Читать далее