8

Haiku OS (BeOS の子孫) を調査していたので、この質問をしています。

BeOS オペレーティング システムの目標は、マルチメディアを適切に処理し、非常に応答性の高いデスクトップ環境を作成することでした。彼らは、「パーベイシブ マルチスレッド」を持つカーネルを作成することで、これを管理しています。

他のオペレーティング システム (Linux、Windows など) には、この「パーベイシブ マルチスレッド」がないため、応答性が高くありません。(炎上戦争はやめてください...)

「パーベイシブ マルチスレッド」(BeOS/Haiku など) と Windows や Linux で使用されるマルチスレッドとの (微妙な) 違いを誰か説明してもらえますか?

さまざまなマルチスレッド システムの開発者にとって、どのような影響がありますか?


BeOS Multi-threading に関する興味深いサイトを見つけました... BeOS Multi-threading

4

1 に答える 1

5

現在クローズされている質問「BeOS [closed] の素晴らしさ/素晴らしさ」に対する回答からコピーしましたが、ここでは非常にうまく適用されます。

記憶によると、BeOS 開発の奇妙な点は、完全にシングルスレッドになりがちな他のプラットフォームの GUI フレームワークとは異なり、GUI が実際にマルチスレッドであることです。

これは、BeOS 用の GUI アプリケーションの開発がまったく異なることを意味していましたが、これは、GUI の相互作用を処理するためにアプリケーション レベルで明示的な設計を必要とせずに、GUI の応答性が向上したことを意味していると思います。

もちろん、これはミューテックスなどを使用することがより重要であることを意味し、他の OS から BeOS への GUI アプリケーションの移植は、単一のアプリケーション全体を使用して強制することによって BeOS GUI ライブラリが効果的にシングルスレッド ライブラリに変換されない限り困難です。ミューテックス。

Linux、Windows、および私が過去 10 年間に使用したと考えることができる他のほとんどすべての OS は、マルチスレッドをサポートしています。これは、たとえば GUI フレームワークによって明らかになりますが、他のほとんどのフレームワークは厳密にシングルスレッドです。(または、最も極端な場合、未定義の結果を伴うアクセスから複数のスレッドを許可します...)

于 2009-02-16T23:01:59.970 に答える