Date: Fri, 15 Jan 99 18:35:43 JST From: SHUDO Kazuyuki Subject: [JavaHouse-Brewers:22846] Re: about Security of Java Plug-in To: java-house-brewers at java-house.etl.go.jp (JavaHouse Brewers ML) Message-Id: <199901150934.SAA11313@cafe.muraoka.info.waseda.ac.jp> 首藤です。 Hamada Masaaki さん wrote: > ところで各プラットフォームの最新のJDKでラウンドロビンでスレッドを > 動かしているのはあるんでしょうか? おそらく、Hamada さんが知りたいのはラウンドロビン云々の スケジューリングアルゴリズムではなくて… I/O 待ち、Thread#sleep() などでブロックされたり Thread#yield() で他のスレッドに実行を移したりせずとも 他のスレッドに実行が (プリエンプティブに) 切り替わる Java 処理系はあるのでしょうか? ではないでしょうか。 JavaOS, Javaチップはともかく、JDK など、何かしらの OS の 上で動作する Java の処理系は、その OS で動作するスレッド ライブラリを利用します。 スレッドライブラリには、スレッドを (OS の) カーネルがス ケジュールするものとそうでないものがあります。前者を kernel level、後者を usre level のスレッドといいます。 Windows, SunOS 5, IRIX, Linux (*) など最近の OS は、 kernel level スレッドライブラリを持っています。 (*) libc5 では LinuxThreads http://pauillac.inria.fr/%7Exleroy/linuxthreads/ が利用できます。glibc2 は標準で LinuxThreads を含みます。 kernel level スレッドが利用できない場合に備えて、 JDK には Green Threads という user level のライブラリが含まれています。 それぞれの JDK でどうなっているのかはいずれ。 SHUDO Kazuyuki/首藤一幸 私をたばねないで あらせいとうの花のように shudoh at muraoka.info.waseda.ac.jp