Microkernel in Operasystém ting: Architecture, Výhody

Než se naučíme MicroKernel, pochopme:

Co je to jádro?

Jádro je důležitou součástí operačního systému, který spravuje systémové prostředky. Funguje také jako most mezi softwarem a hardwarem počítače. Je to jeden z prvních programů, který se načte při startu po bootloaderu. Kernel je také zodpovědný za nabízení bezpečného přístupu k hardwaru počítače pro různé programy. Rozhoduje také, kdy a jak dlouho určitá aplikace používá konkrétní hardware.

Co je Microkernel?

Mikrokernel je software nebo kód, který obsahuje požadované minimální množství funkcí, dat a vlastností pro implementaci operačního systému. Poskytuje minimální počet mechanismů, což je dost dobré pro spuštění nejzákladnějších funkcí operačního systému. Umožňuje implementaci dalších částí operačního systému, protože neukládá mnoho zásad.

Mikrojádra a jejich uživatelská prostředí jsou obvykle implementována v C++ or C programovací jazyky s trochou montáže. S některým kódováním na vysoké úrovni jsou však možné i jiné implementační jazyky.

Co je to monolitické jádro?

Monolithic Kernel provozuje všechny základní systémové služby jako řízení procesu, Správa paměti, I/O komunikace a zpracování přerušení, souborový systém atd. v prostoru jádra.

V tomto typu přístupu jádra běží celý operační systém jako jeden program v režimu jádra. Operační systém je napsán jako kolekce procedur, které jsou propojeny do velkého spustitelného binárního programu.

Mikrokernel Architecture

Mikrokernel je nejdůležitější součástí pro správnou implementaci operačního systému. Na níže uvedeném diagramu můžete vidět, že Microkernel plní základní operace jako paměť, mechanismy plánování procesů a meziprocesová komunikace.

Mikrokernel Architecture
Na bázi mikrokernelu Operasystém

Microkernel je jediný software spouštěný na privilegované úrovni. Ostatní důležité funkce operačního systému jsou odstraněny z režimu jádra a běží v uživatelském režimu. Těmito funkcemi mohou být ovladače zařízení, aplikace, souborové servery, meziprocesová komunikace atd.

Komponenty mikrokernelu

Mikrokernel obsahuje pouze základní funkce systému. Komponenta je součástí Microkernelu pouze v případě, že by její umístění mimo přerušilo funkčnost systému. Všechny ostatní nepodstatné součásti by měly být uvedeny do uživatelského režimu.

Minimální funkce požadované v Microkernel jsou:

  • Správa paměti mechanismy, jako jsou adresní prostory, by měly být součástí mikrokernelu. Obsahuje také funkce ochrany paměti.
  • Procesorové plánovací mechanismy by měly obsahovat plánovače procesů a vláken.
  • Meziprocesová komunikace spravuje servery, které provozují své vlastní adresní prostory.

Rozdíl mezi mikrojádrem a monolitickým jádrem

parametry Monolitické jádro MicroKernel
Basic Je to velký proces běžící v jediném adresním prostoru Lze jej rozdělit na samostatné procesy nazývané servery.
Kód Aby bylo možné napsat monolitické jádro, je potřeba méně kódu. Aby bylo možné napsat mikrokernel, je potřeba více kódu
Bezpečnost Pokud dojde k selhání služby, celý systém se zhroutí v monolitickém jádře. Pokud dojde k selhání služby, nikdy to neovlivní fungování mikrojádra.
Komunikace Je to jediný statický binární soubor Servery komunikují přes IPC.
Příklad Linux, BSD, Microsoft Windows (95,98, já), Solaris, OS-9, AIX, DOS, XTS-400 atd. L4Linux, QNX, SymbianK42, Mac OS X, Integrity, Etc.

Výhody mikrokernelu

Zde jsou výhody/výhody používání Microkernelu

  • Architektura mikrokernelu je malá a izolovaná, takže může fungovat lépe.
  • Mikrojádra jsou bezpečná, protože jsou zahrnuty pouze ty komponenty, které jinak narušují funkčnost systému.
  • Rozšíření systému je dostupnější, takže jej lze přidat do systémové aplikace bez narušení jádra.
  • Mikrojádra jsou modulární a různé moduly lze vyměnit, znovu načíst, upravit, aniž byste se dotkli jádra.
  • Méně systémových pádů ve srovnání s monolitickými systémy.
  • Rozhraní Microkernel vám pomůže prosadit modulárnější strukturu systému.
  • Bez rekompilace přidejte nové funkce
  • Porucha serveru je také izolovaná jako porucha jakéhokoli jiného uživatelského programu.
  • Systém Microkernel je flexibilní, takže v systému mohou koexistovat různé strategie a API implementované různými servery.
  • Zvýšená bezpečnost a stabilita povede ke snížení množství kódu, který běží v režimu jádra

Nevýhoda Microkernelu

Zde jsou nevýhody/nevýhody používání Microkernelu:

  • Poskytování služeb v mikrokernel systému je drahé ve srovnání s normálním monolitickým systémem.
  • Kontextový přepínač nebo volání funkce potřebné, když jsou ovladače implementovány jako procedury nebo procesy.
  • Výkon mikrokernelu může být lhostejný a může vést k určitým problémům.

Shrnutí

  • Jádro je důležitou součástí operačního systému, který spravuje systémové prostředky.
  • Mikrokernel je software nebo kód, který obsahuje požadované minimální množství funkcí, dat a vlastností pro implementaci operačního systému.
  • V přístupu Monolithic Kernel celý operační systém běží jako jeden program v režimu jádra
  • Mikrokernel je nejdůležitější součástí pro správnou implementaci operačního systému.
  • Mikrokernel obsahuje pouze základní funkce systému.
  • Monolitické jádro je velký proces běžící v jediném adresním prostoru, zatímco mikrokernel lze rozdělit na samostatné procesy zvané servery.
  • Architektura mikrokernelu je malá a izolovaná, takže může fungovat lépe
  • Poskytování služeb v mikrokernel systému je drahé ve srovnání s normálním monolitickým systémem