Operating system design has traditionally followed a philosophy in which the system was structured as a fixed set of abstractions and mechanisms. This approach, however, ins now showing its limitations in the face of new applications in the face of new application areas which demand extensibility and configurability. In this paper, we describe the design of a dynamically extensible operating system called DEIMOS. DEIMOS is unique in that it does not define a kernel entity. Instead, both traditional kernel functions and application specific services are encapsulated as modules which can be loaded, configured and unloaded on demand (i.e. at run time) by a base system component called the Configuration Manager (which can itself be unloaded). The lack of a kernel gives DEIMOS great scope for flexibility as applications have complete freedom to tailor their execution environment on an ongoing basis and the differing needs of diverse applications can, in many case, be met simultaneously. The paper discusses the architecture of DEIMOS and gives examples of its scope and applicability.