Реализация продвинутого WaitableTimer на Python

Сегодня мы рассмотрим реализацию столь необходимого механизма повторного вызова функции с заданным интервалом. Желательно, чтобы вызов функции при этом был в отдельном потоке. Класс я назвал схоже с механизмом похожей функциональности в Windows. Вот только там он позволяет лишь однократно просигналить о тайм-ауте (выставить событие) и выполнить переданную в таймер функцию. Класс WaitableTimer на Python, о котором будет идти речь, позволяет намного больше чем простой вызов функции по истечению заданного интервала времени.

Проследовать внутрь

Препарируем Bash Command Shell Prompt

Сколько времени вы проводите за набором команд в юниксовом терминале, шелле? Если так же много как я (а это каждый рабочий, да и не только, день), то наверняка задумывались о том, как же повысить ее информативность, поменять цветовой и смысловой вывод. Сделать это можно и даже нужно. Сегодня я расскажу о переменных окружения Bash Shell Prompt и для чего они нужны; мы узнаем, что такое терминал, что значат escape последовательности, как правильно их нужно применять, узнаем подробнее о PS переменных и научимся добавлять требуемый функционал в .bashrc файлы. Из всего многообразия escape кодов для терминалов, мы поработаем детально с двумя крупнейшими группами – группа кодов для преобразования внешнего вида текста и группа кодов для позиционирования курсора.
Проследовать внутрь

U–BOOT :: MII и немного терминологии

Мир встраиваемых систем (Embedded System) очень широк. Как с точки зрения технологий в нем участвующих, так и с точки зрения всего прикладного железа (hardware). С каждым годом в нем становится жить все интереснее. 
 
Этот пост не будет введением в мир Embedded (возможно будут другие посты об этом потом), но здесь вы найдете краткое описание одного из главных действующих в нем лиц – загрузчика U–BOOT. Также я постараюсь дать легкое введение в сетевую среду Embedded платформ – в посте будет идти речь о контроллере eTSEC, об интерфейсе MII и его производных RGMII, SGMII, – а также показана работа с утилитой входящей в состав U–BOOT и предоставляющей базовую функциональность при работе с регистрами PHY устройств через интерфейс MII.

Проследовать внутрь