Skip to main content

プロセス分離とは何ですか?

computerコンピュータープログラミングのプロセス分離は、さまざまなソフトウェアプロセスの分離であり、所有していないメモリスペースにアクセスできないようにします。プロセス分離の概念は、特定のプログラムに異なる特権レベルを提供し、それらのプログラムが使用できるメモリを制限することにより、オペレーティングシステムのセキュリティを改善するのに役立ちます。プロセス分離には多くの実装がありますが、Webブラウザーで複数のタブを分離し、プロセスが失敗した場合にコアブラウザー自体を保護するために頻繁に使用されます。ハードウェアベースまたはソフトウェアベースにすることができますが、どちらもシステムリソースへのアクセスを制限し、プログラムを独自の仮想アドレス空間に隔離するという同じ目的を果たします。住所スペース。このスペースは、プログラムとすべての関連データを保持しています。プロセスがより多くのスペースを必要とする場合、オペレーティングシステムから要求され、利用可能な場合は割り当てられます。このようにして、オペレーティングシステムは、2つのプロセスが誤って互いのメモリにアクセスしないようにすることができます。プログラムがオペレーティングシステムの重要な領域にアクセスし、それらを変更または変更しようとすることを防ぐことができます。これにより、より大きなオペレーティングシステムもシャットダウンすることなく、問題が発生した場合にプログラムを終了できます。1つは、他の人を保護しながらシステム上の特定のリソースにアクセスできるように、プロセスに特権を割り当てることです。これは、プログラムがインターネットソケットまたはプリンターを使用しながら、ディスクドライブまたはファイルシステムへのアクセスを制限できるようにするために多くの場合行われます。別のものですが、互いに独立しています。プロセス間通信(IPC)や共有メモリなどのメカニズムを通じて、プロセスは情報を交換できますが、それでも独自のメモリ空間に限定されます。この機能は、プロセスがオペレーティングシステムが所有するさまざまな管理プロセスからの情報を必要とする場合に重要です。仮想マシンサーバーは、ハードウェアとソフトウェア管理の両方に基づいて、高度な形式のプロセス分離で動作します。ウェブサイトからアプレットやその他のスクリプトを安全に実行できることは、重要なシステムリソースから分離されているプロセスに依存しています。モバイルデバイスと組み込みシステムは、プロセス分離を使用して、故障したまたは悪意のあるソフトウェアが実行されているにもかかわらず、コアハードウェアを安全に保つことができます。