ヘテロジニアス計算機上のOS機能委譲機構  [in Japanese] Delegation Mechanism of OS Function for System with Heterogeneous Kernel  [in Japanese]

Access this Article

Search this Article

Author(s)

Abstract

メニーコアプロセッサ向けの OS として,Linux カーネルと軽量カーネルが連携して管理するヘテロジニアス構成の OS を開発している.軽量カーネル上においても Linux カーネルのシステムコールを提供するために,軽量カーネルで実現されない Linux システムコールの処理は Linux カーネルに委譲する.引数がデータ領域を示すシステムコールの場合,転送が必要なデータの構造は API 仕様に依存するため,300 種類以上の Linux 互換システムコールに個別に対応したデータ転送を実装する必要がある.本稿では,システムコール処理対象となるデータを同一仮想アドレスへのメモリマップを行う方式により,軽量カーネルに個々のシステムコール処理を実装することなく Linux カーネルに委譲する機構と,その基本評価結果について報告する.We have been developing a heterogeneous OS composed of Linux and lightweight kernels for manycore processor. In order to provide all Linux system calls in the lightweight kernel, those primitives which are not provided by the lightweight kernel are delegated to the Linux kernel. Each system call differs in the number of arguments and argument types, and thus the code transferring arguments and results is implemented in each delegating system call. It is impractical to implement all Linux APIs, i.e., more than 300 system calls. Therefore, we developed a delegation mechanism of system calls without individual implementation to pass the data between the lightweight kernel and Linux using a memory mapping technique. In this technique, a user-level virtual address space in the lightweight kernel is mapped to the same position in a Linux process. We report the result of basic evaluation of system calls on lightweight kernel developed on Intel(R) Xeon PhiTM Coprocessor.

We have been developing a heterogeneous OS composed of Linux and lightweight kernels for manycore processor. In order to provide all Linux system calls in the lightweight kernel, those primitives which are not provided by the lightweight kernel are delegated to the Linux kernel. Each system call differs in the number of arguments and argument types, and thus the code transferring arguments and results is implemented in each delegating system call. It is impractical to implement all Linux APIs, i.e., more than 300 system calls. Therefore, we developed a delegation mechanism of system calls without individual implementation to pass the data between the lightweight kernel and Linux using a memory mapping technique. In this technique, a user-level virtual address space in the lightweight kernel is mapped to the same position in a Linux process. We report the result of basic evaluation of system calls on lightweight kernel developed on Intel(R) Xeon PhiTM Coprocessor.

Journal

  • IPSJ SIG Notes

    IPSJ SIG Notes 2013-ARC-205(15), 1-7, 2013-04-18

    Information Processing Society of Japan (IPSJ)

Codes

  • NII Article ID (NAID)
    110009579605
  • NII NACSIS-CAT ID (NCID)
    AN10096105
  • Text Lang
    JPN
  • Article Type
    Technical Report
  • Data Source
    NII-ELS  IPSJ 
Page Top