Users

Developers

Architecture

Overview

uhub is designed as a primarily single threaded event driven hub, primarily developed for Linux and Unix systems, but also supports Windows systems.

uhub maintains non-blocking connections to all users and routes and multiplexes ADC messages between the users. Each ADC message (struct adc_message) is refcounted, and each user has a send queue of messages to be sent.

Network event notification is achieved with epoll() on Linux, kqueue() on OSX/BSD, and a fallback select() for other systems.

Timer handling is low precision and low resolution which allows for constant time inserts and removals.

Username:
Password: