User-level management of kernel memory

被引:0
|
作者
Haeberlen, A
Elphinstone, K
机构
[1] Univ Karlsruhe, Syst Architecture Grp, D-76128 Karlsruhe, Germany
[2] Univ New S Wales, Sydney, NSW 2052, Australia
来源
关键词
D O I
暂无
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Kernel memory is a resource that must be managed carefully in order to ensure the efficiency and safety of the system. The use of an inappropriate management policy can weaken the isolation between subsystems, lead to suboptimal performance, and even make the kernel vulnerable to denial-of-service attacks. Yet, many existing kernels use only a single built-in policy, which is always a compromise between performance and generality. In this paper, we address this problem by exporting control over kernel memory to user-level pagers. Thus, subsystems can implement their own application-specific management policies while independent subsystems can still be isolated from each other. The pagers have full control over the memory resources they manage; they can even preempt and later restore individual pages of kernel memory. Still, protection is not compromised because the kernel converts its metadata into a safe representation before exporting it. Therefore, pagers need only be trusted by their respective clients. We describe the model we use to page kernel memory and various techniques for obtaining a safe external representation for kernel metadata. We also report experiences with an experimental kernel that implements our scheme and outline our plans to further develop the approach.
引用
收藏
页码:277 / 289
页数:13
相关论文
共 50 条
  • [1] Memory management for user-level network interfaces
    Welsh, M
    Basu, A
    Huang, XW
    von Eicken, T
    IEEE MICRO, 1998, 18 (02) : 77 - 82
  • [2] SCHEDULER ACTIVATIONS - EFFECTIVE KERNEL SUPPORT FOR THE USER-LEVEL MANAGEMENT OF PARALLELISM
    ANDERSON, TE
    BERSHAD, BN
    LAZOWSKA, ED
    LEVY, HM
    ACM TRANSACTIONS ON COMPUTER SYSTEMS, 1992, 10 (01): : 53 - 79
  • [3] User-level protocol servers with kernel-level performance
    Brustoloni, JC
    Steenkiste, P
    IEEE INFOCOM '98 - THE CONFERENCE ON COMPUTER COMMUNICATIONS, VOLS. 1-3: GATEWAY TO THE 21ST CENTURY, 1998, : 463 - 471
  • [4] Memory management system structure supporting user-level program participation
    Zhang, Li
    Yao, Yaguang
    Wang, Shiyou
    Jisuanji Gongcheng/Computer Engineering, 2000, 26 (04): : 44 - 46
  • [5] User-level checkpointing through exportable kernel state
    Tullmann, P
    Lepreau, J
    Ford, B
    Hibler, M
    PROCEEDINGS OF THE FIFTH INTERNATIONAL WORKSHOP ON OBJECT-ORIENTATION IN OPERATING SYSTEMS, 1996, : 85 - 88
  • [6] Correlation prefetching with a user-level memory thread
    Solihin, Y
    Lee, J
    Torrellas, J
    IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2003, 14 (06) : 563 - 580
  • [7] Performance Analysis of a User-level Memory Server
    Pakin, Scott
    Johnson, Greg
    2007 IEEE INTERNATIONAL CONFERENCE ON CLUSTER COMPUTING, 2007, : 249 - 258
  • [8] User-level DMA without operating system kernel modification
    Markatos, EP
    Katevenis, MGH
    THIRD INTERNATIONAL SYMPOSIUM ON HIGH-PERFORMANCE COMPUTER ARCHITECTURE - PROCEEDINGS, 1997, : 322 - 331
  • [9] Design and construction of a user-level kernel for teaching multithreaded programming
    Bedy, Michael J.
    Carr, Steve
    Huang, Xianglong
    Shene, Ching-Kuang
    Proceedings - Frontiers in Education Conference, 1999, 2 : 3 - 24
  • [10] USER-LEVEL INTERPROCESS COMMUNICATION FOR SHARED MEMORY MULTIPROCESSORS
    BERSHAD, BN
    ANDERSON, TE
    LAZOWSKA, ED
    LEVY, HM
    ACM TRANSACTIONS ON COMPUTER SYSTEMS, 1991, 9 (02): : 175 - 198