Tibbo OS (TiOS)

Большинство программируемых устройств Tibbo работает под управлением TiOS (Tibbo OS) - нашей собственной компактной операционной системы. TiOS - исключительно эффективная событийная система из двух процессов.
Первый процесс, он же главный, отвечает за все задачи реального времени (например, TCP/IP и последовательную связь). Второй процесс реализует программную виртуальную машину (VM). VM исполняет p-код (псевдокод, он же байт-код) - своего рода машинный код, в который компилируются ваши приложения на Tibbo BASIC/C.
TiOS - однозадачная система: в любой момент может выполняться только одно скомпилированное приложение.
Приложения на Tibbo BASIC/C работают в песочнице: они выполняются в пределах VM и не могут вывести TiOS из строя. TiOS всегда полностью контролирует ваше приложение.
В TiOS есть интерфейс загрузки и отладки: он позволяет загрузить в устройство скомпилированный двоичный файл приложения, а затем управлять VM командами, передаваемыми по сети.
События и событийное выполнение
События - основа TiOS. Только благодаря им выполняется любой код.
В каждом устройстве с TiOS ведётся очередь событий. События регистрируются главным процессом, попадают в очередь, а с другого её конца их забирает VM.
Каждый раз, когда событие извлекается из очереди, VM вызывает для него обработчик события, если он определён в вашем приложении. Обработчики событий - это процедуры Tibbo BASIC и Tibbo C.
Выполнение однопоточное (то есть очередь событий одна). События начинают выполняться строго в том порядке, в котором попали в очередь.
Однако порядок можно нарушить с помощью оператора doevents. Это расширенная возможность, подробнее мы рассмотрим её позже.