RingBuffer read/write performance optimization
Created by: mpv89
read() and write() functions of RingBuffer are wrapped around a CriticalGuard, meaning interrupts will be disabled even for large reads and writes, which can cause performance issues.
Consider only guarding the necessary info to do the copy and then execute the copy itself outside the guard, for example. Alternatively, don't guard it and let the drivers handle interrupts locally.