ユーザプログラムとカーネルの協調に基づくスレッドの設計と実現 Design and Implementation of a Thread Mechanism Based on User/Kernel Cooperation

この論文にアクセスする

この論文をさがす

著者

抄録

オペレーティングシステムのカーネルとユーザレベルプログラムの協調により実現される柔軟で効率のよいスレッド-マイクロプロセス-を設計し、実装を行った。マイクロプロセスの制御は基本的にプロセッサのユーザモードで実行されるため、スレッドの生成、切替え、同期、通信を、効率的かつ応用プログラムに適したスケジューリング方針に基づいて実行することができる。また、マイクロプロセス方式では、カーネルの記憶領域を多用しないので、一般にカーネルレベルのスレッドより1?2桁多いスレッドを生成することが可能である。さらに、マイクロプロセス方式では、従来のカーネルとユーザの協調によるスレッドの実現方式を推し進め、大域的な優先度に基づく横取り可能なスケジューリングを可能にしたほか、効率のよい遠隔手続き呼出し機構を提供している。本論文では、まず、従来のスレッドの実現方式の分類を行い、その問題点を示す。続いて、提案するマイクロプロセスの実現方式一カーネルとユーザレベルで統一的に適用されるスケジューリング機構、マイクロプロセスによる効率的な遠隔手続き呼出し機構、大域的なマイクロプロセスの識別方法一について説明する。最後に、マイクロプロセスの現在の実装に基づく性能評価の結果を示し、その有効性を明らかにする。

This paper proposes a flexible and efficient mechanism for light-weight threads, called microprocesses, which is implemented through cooperation between the operating system kernel and the user-level run-time routines. Since most operations for microprocesses are executed in user mode, thread creation, deletion, context switch and inter-thread communication can be executed efficiently by using application specific scheduling and synchronization policies. Since microprocesses require only small amount of kernel space, thousands of threads can run concurrently. Several similar mechanisms have been proposed, but the mechanism of microprocesses is distinguished among the others in that 1. the kernel scheduler and the user-level scheduler are highly integrated ; 2. microprocesses are scheduled based on common globally assigned priorities ; and 3. it provides an efficient remote procedure call mechanism. In this paper, we first describe conventional implementation methods of threads. We then explain microprocess scheduling, remote procedure call mechanism and microprocess global identification. Finally, we discuss the current implementation and performance of microprocesses.

収録刊行物

  • 情報処理学会論文誌

    情報処理学会論文誌 36(4), 913-924, 1995-04-15

    一般社団法人情報処理学会

参考文献:  13件中 1-13件 を表示

被引用文献:  2件中 1-2件 を表示

各種コード

  • NII論文ID(NAID)
    110002721842
  • NII書誌ID(NCID)
    AN00116647
  • 本文言語コード
    JPN
  • 資料種別
    Journal Article
  • ISSN
    1882-7764
  • データ提供元
    CJP書誌  CJP引用  NII-ELS  IR  IPSJ 
ページトップへ