This paper presents an aspect-oriented framework which enables dynamically weaving aspects into operating system in order to adjust its functionalities during system operation. The framework is designed based on the notion of dynamic aspect weaving in Aspect-Oriented Programming (AOP) arena, which can achieve modulating, at runtime, the behavior of an existing program by injecting a piece of code (called advice in AOP terminology) at selected location (called join point) of the program. It is useful in making program adaptable, especially for non-stopping systems of which, in general, going off-line for maintenance and undertaking system restart is either unacceptable or too expensive. The design of this framework includes a join point model and management functions on aspects. The join point model supports weaving multiple aspects to the same join point and the chained execution of advices of the same type. The management functions provide the creation, deployment, and runtime management of aspects, in addition to sequencing the execution of advices. An example implementation of this framework working on Linux operating system is described in this paper, which demonstrates both the feasibility and the effectiveness of this framework.