TinyOS 2.x版本后引入了完全的非阻塞式行为:它配备了一个单独的堆栈。因此所有的持续超过几百微秒I/O操作都以异步进行并且带有回叫功能(callback)。为了使本地的编译器更加出色地优化交叉调用边界(optimize across call boundaries),TinyOS用nesC的特性,通过事件的方式去连接这些调用。非阻塞式系统可以让TinyOS在单一存储器下保持高度的协同性(concurrency)。它强迫程序将很多个小的事件处理例程合并成一个复合逻辑。为了支持更高的计算量,TinyOS提供了任务(tasks),其比推迟的过程调用和中断处理例程的下半部小。