Co je izolace procesu?
Izolace procesů v počítačovém programování je segregace různých softwarových procesů, které jim brání v přístupu do paměti, kterou nevlastní. Koncept izolace procesů pomáhá zlepšit zabezpečení operačního systému poskytováním různých úrovní oprávnění určitým programům a omezením paměti, kterou tyto programy mohou používat. Přestože existuje mnoho implementací izolace procesů, ve webových prohlížečích se často používá k oddělení více karet ak ochraně selhávání samotného jádra v případě selhání procesu. Může být založeno na hardwaru nebo softwaru, ale obě slouží ke stejnému účelu, jako je omezení přístupu k systémovým prostředkům a udržování programů izolovaných na jejich vlastním virtuálním adresovém prostoru.
Základní fungování izolace procesu zahrnuje přiřazení procesu nebo programu jasně definovanému virtuálnímu adresovému prostoru. Tento prostor obsahuje program a všechna související data. Pokud proces vyžaduje více místa, je vyžádán od operačního systému a přidělen, pokud je k dispozici. Tímto způsobem může operační systém zabránit náhodnému nebo úmyslnému přístupu k sobě navzájem dvěma procesům.
Dalším cílem izolace procesů je umožnit spouštění programů a zároveň zajistit, aby neovlivňovaly životně důležité systémy. Může zabránit programu v pokusu o přístup ke klíčovým oblastem operačního systému a jejich úpravám nebo jiným změnám. To umožňuje, aby byl program ukončen v případě problému, aniž by došlo k vypnutí také většího operačního systému.
Existují různé variace izolace. Jedním z nich je přiřadit oprávnění ke zpracování, aby mohli přistupovat ke konkrétním prostředkům v systému a zároveň chránit ostatní. To se často provádí, aby program mohl používat internetový soket nebo tiskárnu a přitom stále omezovat přístup k diskové jednotce nebo systému souborů.
Existují také situace, ve kterých mohou být podniknuty určité kroky, aby různé procesy mohly bezpečně komunikovat mezi sebou navzájem, ale nadále je udržovat nezávislé na sobě. Prostřednictvím mechanismů, jako je meziprocesová komunikace (IPC) a sdílená paměť, si procesy mohou vyměňovat informace, ale stále mohou být omezeny na svůj vlastní paměťový prostor. Tato funkce je důležitá, pokud proces vyžaduje informace z různých procesů správy, které vlastní operační systém.
Izolace procesu je důležitá funkce softwaru a hardwaru, která pomáhá umožnit několik technologií. Servery virtuálních strojů pracují s pokročilou formou izolace procesů založenou na správě hardwaru i softwaru. Bezpečné spouštění appletů nebo jiných skriptů z webových stránek závisí na procesu, který je izolován od důležitých systémových prostředků. Mobilní zařízení a vestavěné systémy využívají izolaci procesů, aby umožnily základnímu hardwaru zůstat v bezpečí i přes spuštěný vadný nebo škodlivý software.