Advancing Operating Systems via Aspect-Oriented Programming