您的位置:首页 > 运维架构

A CACHING MODEL OF OPERATING SYSTEM KERNEL FUNCTIONALITY

2017-05-13 12:10 330 查看
Micro-kernel to data have not provided complling advantages over the comventional monolithic operationg system kernel for serveral reasons.
first,micro- kernels are large than desired because of the complications of a modern virtual memory system(sunch as the copy- on -write facility), the need of support many different hardware devices. and complex optimizations in communication facilities, all of which have been handled inside most micro-kernels. moreover, performance problems have tened to force services originally implemented on top of a micro-kernel back into the kernel, increasing its size.
Second, micro-kernels do the not support domain-specific resource allocation policies any better than monolithic kernels. am increasingly issues with sophisticated applications and application system, for example, the standard page-replacement policies of unix -like operating systems perform poorly to applications with random or sequential access. Placement of convential operatig system kernel services in a micro-kernel-based does not generlly give the applications any more control because the server is a fixed protected system service, adding a varirty of resource management policies to the micro-kernel fails to achieve the efficiently that application-specific knowledge allows and increases the kernel size and complexity.
Finally, micro-kernels are bloated with exception handling mechanisms for the failure and unususal cases that can arise with the hardware and with other server and application modules,for example, the pontential page-in exception conditions with external pagers introduce complications into machine.
In the paper, we present an alternative approach to kernel design based on a caching model, as realized in the V++ cache kernel, the V++ cache kernel caches the active objects associated with the basic operating system facilities. namely the address spaces and threads associated with virtual memory, scheduling and IPC. in contrast to conventional micro-kernel design. it does not fully implement all the functionality associated with address spaces and threads, Insteadm it relies on higher-level application kernels to provide the management functions required for a complete implementation, including the loading and write-back of these objects to and from the cache kernel. for example, on a page fault, the application kernel associated with the faulting thread loads a new page mapping description may cause another page mapping descriptor, Because  the application kernel selects the physical page frame to use. it fully controls physical page selection, the page replacement policy and paging I/o.
The following sections argue that this caching model reduces supervisor- level complexity, provideds application control of resource management and provides application control over exeception conditions and recovery,addressing the problems with micro kernel design to data(including a micro-kernel that we developed previously)
The next section describes the cache kernel programming interface, illustrating its use by describing how an emulator application kernel would use this interface to implement standard UNix like services, section 3 describes how sophisticated applications can use this interface directly by exexuting as part of their own application kernel ,section 3 describeds how resources are allocated among competing applications, section 4 describes our cache kernel implementation, and section 5 describes its performance, which appears to provide computitive perfotmance with convential monolithic kernels ,section 6 describes previous research we see as relavent to his work, we close withe a summary of the work, out conclusions and some indication of future directions.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  caching