Funkce a struktura systému Windows a Linux

Ze systémového hlediska poskytuje architektura operačních systémů alokaci zdrojů, spravuje sdílené jednotky, sítě a procesory a poskytuje společné služby vyžadované mnoha různými programy pro správu souborů, správu procesů, přístup k tiskárně a ochranu před viry pro jednotlivé aplikace.

Princip fungování systému

Většina struktur operačního systému používá přístup k rozdělení na vrstvy každého úkolu, včetně souborových systémů. Každá úroveň je zodpovědná za určité akce. Když aplikace vyzve soubor, první žádost se odešle do logického souborového systému. Obsahuje metadata pro struktury souborů a adresáře. Pokud aplikace nemá potřebná oprávnění k přístupu k souboru, pak tato vrstva vygeneruje chybu.


Logické souborové systémy také kontrolují cestu k souboru. Obvykle jsou rozděleny do různých logických bloků, které jsou uloženy na pevném disku a jsou extrahovány z pevného disku. Ten je rozdělen na různé cesty a sektory. Proto, aby bylo možné ukládat a extrahovat soubory, logické bloky struktury OS musí být mapovány na fyzické bloky. Toto mapování provádí modul organizace souborů. Je také zodpovědný za správu volného prostoru.
Poté, co modul pro správu souborů rozhodl, jaký fyzický blok aplikace vyžaduje, předá tyto informace základnímu souborovému systému. Tento primární systém je zodpovědný za vydávání příkazů správy I /O k odstranění těchto bloků. Ovládací prvkyI /O obsahuje kódy, které jí umožňují přístup k pevnému disku. Tyto kódy jsou známé jako ovladače zařízení. I /O ovládací prvky jsou také odpovědné za zpracování přerušení.


Typy

Stávající systémová a systémová struktura umožňuje uživatelským aplikacím interagovat se systémovým hardwarem. Protože je operační systém složitou strukturou, měl by být vytvořen s maximální péčí, aby byl snadno použitelný a upraven. Jednoduchý způsob, jak to udělat, je vytvořit jej v částech. Každá z těchto částí by měla být jasně definována pomocí vylepšených vstupů, výstupů a funkcí. Existuje mnoho operačních systémů, které mají poměrně jednoduchou strukturu. Začaly jako malé systémy a rychle se rozrostly daleko za původní návrhy. Obvyklým příkladem je MS-DOS.
Moderní systémy musí mít modulární strukturu a funkce OS, na rozdíl od MS-DOS. To vede k větší kontrole počítačového systému a jeho aplikací. Modulární struktura také umožní programátorům skrýt informace podle potřeby a provádět interní procedury, jak to uzná za vhodné, aniž by změnily externí specifikace. Jedním ze způsobů, jak dosáhnout modularity v operačním systému, je víceúrovňový přístup nebo vytvoření vrstvené struktury. Spodní vrstva je hardwarová a horní vrstva je uživatelské rozhraní. Vrstvy mohou skrýt některé struktury a operace z jejich horních vrstev. Jeden probléms víceúrovňovou strukturou je, že každá vrstva musí být pečlivě definována, protože horní vrstvy mohou používat pouze funkci nižší.

Design architektury OS

Návrh tradičně sleduje princip rozdělení zájmů. Tento princip zahrnuje strukturování OS v relativně nezávislých částech, které poskytují jednoduché individuální funkce při zachování složitosti návrhu regulátoru. Kromě kontroly složitosti operačního systému může ovlivnit klíčové funkce, jako je spolehlivost nebo výkon. Operační systém má různé oprávnění, které mu umožňují přístup k jiným chráněným zdrojům, jako jsou fyzická zařízení nebo programová paměť. Když jsou tato oprávnění poskytována jednotlivým dílům, které potřebují, spíše než jako celek, sníží se potenciál zneužití jak náhodnými, tak škodlivými programy. Nefunkčnost systému může nepříznivě ovlivnit účinnost režijních nákladů spojených s výměnou dat mezi jednotlivými částmi. Tyto režijní náklady lze zvýšit ve spojení s hardwarovými mechanismy používanými k poskytování oprávnění.

Moderní monolitické konstrukce

Monolitický design architektury nevytváří zvláštní podmínky pro povahu operačního systému. Přestože se podílí na rozdělení problémů v práci, neomezuje oprávnění udělená jednotlivým částem systému, které jsou prováděny s maximálními oprávněními. Náklady na komunikační náklady v rámci monolitického systému jsou shodné s náklady na služby v rámci jinýchsoftware.
CP /M a DOS jsou jednoduchými příklady monolitických operačních systémů. Jedná se o systémy, které sdílejí aplikace s jedním adresním prostorem. V CP /M 16bitový adresový prostor začíná systémovými proměnnými a oblastí aplikace a končí ve třech částech:
  • CPP - příkazový procesor konzoly;
  • BDOS je základní operační systém;
  • BIOS - základní vstupní /výstupní systém.
  • V adresáři DOS začíná 20bitový adresový prostor s řadou vektorů pro přerušení a systémových proměnných, následovanou rezidentní částí a oblastí aplikace a končící blokem paměti používaným grafickou kartou a systémem BIOS. Většina moderních systémů, včetně Linuxu a struktury Windows, je také považována za monolitickou, i když se výrazně liší od jednoduchých příkladů CP /M a DOS.

    Vícevrstvé systémy

    Víceúrovňový návrh architektury operačního systému se snaží dosáhnout spolehlivosti strukturováním architektury do vrstev s různými oprávněními. Nejvíce privilegovaná úroveň bude obsahovat kód spojený s přerušením zpracování a přepínáním kontextu, úrovně, které se budou řídit ovladači zařízení, správa paměti, systémy souborů, uživatelské rozhraní a nakonec nejméně privilegovaná úroveň obsahuje aplikace. MULTICS je nápadným příkladem víceúrovňového systému vyvinutého s 8 vrstvami vytvořenými v ochranných kroužcích, jejichž hranice lze překlenout pouze pomocí speciálních instrukcí. Moderní systémy však nepoužívají vrstvený design, protožeto je považováno za omezené a vyžaduje zvláštní hardwarovou podporu.

    Návrh mikrojádra

    Mikrojádrový design architektury systému zajišťuje spolehlivost. Výhod, které jednotlivé části jsou omezeny co nejvíce, a vztah mezi nimi závisí na specializované mechanismy pro zajištění shody s nezbytnými oprávněními. Réžová komunikace uvnitř systému s mikročipem může být vyšší než režie komunikace v rámci druhého softwaru. Studie ukázaly, že tyto režijní náklady jsou zvládnutelné. Vývojová zkušenost mikrojádra naznačuje, že jen velmi málo jednotlivých částí systému by mělo mít více privilegií než běžné aplikace. Konstrukce mikrojádra tedy vede k jádru malého systému, doprovázené aplikacemi, které poskytují většinu funkcí systému. MACH microkernel je ukázkovým příkladem toho, že byl použit v moderních systémech, včetně systémů NeXTStep a OpenStep a konkrétně OS X. Většina výzkumných systémů rovněž kvalifikovat jako microkernel OS se.

    Virtuální hypervisory

    Pokusy o zjednodušení údržby a zlepšit využití několika nezávislých aplikací vedly k myšlence na spuštění více počítačů běžících na stejném počítači. Stejně jako jádro poskytuje izolovanou prostředí pro každou aplikaci hostitelem, virtualizované systémy vytvořit hypervizor, který poskytuje izolovanou prostředí pro každý hostitelem systému. Hypervisory mohou býtimplementovány v architektuře systému různými způsoby.
    Nativní hypervisor pracuje na holé žláze, s umístěnými systémy, které jsou vyšší ve struktuře systému. To vám umožní implementovat efektivní hardwarovou schématu a zaplatit cenu za údržbu konkrétní implementace hardwaru. Přijetí hypervisoru částečně obchází potřebu konkrétní implementace hardwaru, která běží nad jiným systémem. Struktura systému začíná od dolní části hostitele, obsahuje hypervisor a hostující operační systém, který je umístěn nad hypervisorem. Je také možné kombinovat přirozené a přizpůsobené přístupy. Hypervisor může implementovat některé své funkce na holém hardwaru a aplikovat na hostované systémy pro implementaci dalších svých funkcí. Společným příkladem tohoto přístupu je zavedení podpory pro virtualizaci procesorů na holém hardwaru a použití specializovaného operačního systému pro přístup k zařízením, která hypervisor virtualizuje pro jiné hostované systémy.

    Hybridní operační systémy

    Většina operačních systémů dnes není přísně dodržovat stejnou architekturu, ale jsou hybridní několika. Architektura společnosti Max OSX závisí na mikročipu společnosti Mach pro základní služby správy systému a BSD jádru pro další služby. Další funkčnost operačního systému poskytuje aplikační služby a dynamicky načtené moduly (rozšíření jádra):
  • Operační systém IOS byl vyvinut společností Apple pro iPhone a iPadS. Pracuje s menším počtem pamětí a výpočetním výkonem než Max OS X a podporuje rozhraní dotykové obrazovky a grafiku pro malé obrazovky.
  • Android OS bylvyvinutý pro Android smartphony a tablety Open Handset Alliance, především Google. Android je open source operační systém, na rozdíl od iOS, který vedl k jeho popularitě. Android má strukturu Linux a virtuální stroj Java, optimalizovaný pro malé platformy. Aplikace pro Android jsou vyvíjeny pomocí vlastní vývojové prostředí Java-for-Android.
  • Mikroobvody a moduly

    Základní myšlenkou je, že mikrojádrem je odstranit z jádra veškeré nepodstatné služby a místo toho je implementovat jako systémové programy, čímž je jádro co nejmenší a nejúčinnější. Mach byl první a nejslavnější mikrocircuit a nyní je hlavní součástí Mac OSX. Systém Windows NT byl původně mikročip, ale měl problémy s výkonem (ve srovnání se systémem Windows 95). Zlepšení výkonu NT 4.0 přesunem více služeb do jádra otočeného XP na více monolitické. Dalším příkladem mikropočítače je QNX, operační systém pro vestavěné systémy v reálném čase. Současný vývoj OS je objektově orientovaný, s poměrně malým jádrem a sadou modulů, které mohou být dynamicky propojeny (například struktura Solarisu). Moduly jsou podobné vrstvám v tom, že každý subsystém má dobře definované úlohy a rozhraní, ale každý modul se může obrátit na jakýkoli jiný modul, čímž eliminuje problém průchodu několika mezilehlými vrstvami. Jádro je v této architektuře poměrně malé, jako mikroobvody není nutné provádět přenos zpráv, protože moduly mohou přímo komunikovat s jedním zjeden po druhém.

    Manipulace s souborovým systémem

    Soubor je sbírka souvisejících informací. Počítače mohou ukládat soubory na disk (sekundární úložiště) pro účely dlouhodobého ukládání dat. Příklady nosičů informací zahrnují magnetickou pásku, magnetické disky a jednotky optických disků, jako jsou disky CD a DVD. Každý z těchto nosičů má své vlastní vlastnosti, jako je rychlost, kapacita, rychlost dat a metody přístupu k datům. Souborový systém je obvykle organizován do adresářů pro snadnou navigaci a použití. Tyto adresáře mohou obsahovat soubory a další adresáře. Hlavní činnosti operačního systému pro správu souborů:
  • Čte nebo zapisuje soubor.
  • Povolení programu pracovat se souborem, který závisí na čtení, psaní, odmítnutí.
  • Poskytuje uživatelské rozhraní pro vytváření /mazání souborů.
  • ​​
  • Poskytuje rozhraní pro zálohování souborového systému.
  • V případě distribuovaných systémů, které představují sadu procesorů a nepoužívají paměť, periferie nebo hodiny, operační systém spravuje spojení mezi všemi procesy. Několik procesů se vzájemně propojuje prostřednictvím komunikačních linek ve struktuře síťového operačního systému, zpracovává strategie směrování a připojení, stejně jako problémy v oblasti hospodářské soutěže a bezpečnosti. Základní komunikační činnosti operačního systému:
  • Dva procesy často vyžadují přenos dat mezi nimi.
  • Oba procesy mohou být na jednom počítači nebo na různých počítačích, ale jsou propojeny prostřednictvím počítačové sítě.
  • Komunikacelze implementovat dvěma způsoby: buď pomocí sdílené paměti nebo zasláním zpráv.
  • Operační systém Linux

    Jedná se o nejslavnější a nejpoužívanější open source systém. Mnoho programátorů používá termín Linux k označení jádra Linuxu, stejně jako sadu programů, nástrojů a služeb, které jsou obvykle dodávány s jádrem Linuxu. Někteří uživatelé odkazují na tuto kolekci GNU, protože mnoho nástrojů obsahuje součásti GNU. I když ne všechny instalace Linuxu používají komponenty GNU jako součást systému. Android například používá strukturu jádra Linuxu a velmi málo se spoléhá na nástroje GNU. Linux se liší od ostatních systémů:
  • Open Source. OS je zdarma a přístupné pro veřejné prohlížení, editaci uživatelů s příslušnými dovednostmi.
  • Existuje mnoho Linuxových distribucí, které obsahují různé možnosti softwaru.
  • Unix a Linux jsou z velké části podobné a ve skutečnosti Linux byl původně vytvořen stejným způsobem jako Unix. Oba mají podobné nástroje pro interakci se systémy, programovacími nástroji, rozvržením souborů a dalšími klíčovými součástmi. Unix však není zdarma. Již řadu let vzniklo několik různých systémů, které se snažily být unix-like nebo unix-kompatibilní, ale Linux byl nejúspěšnější, daleko překračující jeho předchůdky v popularitě. Většina Linuxového jádra je napsána v programovacím jazyce C s malým množstvím sbírek z jiných jazyků. Každá distribuceobsahuje stovky nebo tisíce programů, které lze s ním distribuovat a pro každý z těchto programů.

    typy souborových systémů Linux

    standardní linuxovou distribucí nabízí výběr ze struktury souborového formátu disku OS, z nichž každý má zvláštní význam. Pokročilá verze rozšířeného souborového systému (ext), který byl poprvé vyvinut pro MINIX. Druhá rozšířená verze (Ext2) byla vylepšená verze. Ext3 přidal lepší výkon, Ext4 poskytoval ještě pokročilejší funkce. Systém Journaled File System (JFS) byl vyvinut společností IBM pro systém UNIX AIX. JFS je alternativou Ext4 teď používá v případě potřeby stabilního provozu při použití velmi málo zdrojů. JFS je vhodný pro případy, kdy je výkon procesoru omezen. ReiserFS byl představen jako alternativa k Ext3 se zvýšeným výkonem a pokročilými funkcemi. Bývaly doby, kdy souborový formát výchozí SuSE Linux ReiserFS byl, ale později „Reiser“ vyšel z obchodu, a SUSE neměl jinou možnost, než se vrátit k Ext3. Dynamicky podporuje rozšíření ReiserFS souborů, které jsou poměrně pokročilé funkce, systém postrádal jistou výkon na poli. XFS je vysokorychlostní JFS, který je navržen pro paralelní zpracování I /O. NASA dříve používala tuto strukturu systému souborů na svých 300 terabajtových úložných serverech. B-Tree File System (Btrfs) se zaměřuje na pružnosti, vedení, zábava, opravy systému, velké konfigurace skladování a stále ve vývoji. Btrfs se nedoporučuje pro výrobu. V Linuxu je k dispozici mnoho formátů souborů, ale používá sepracovat s jiným OS: VIS, NTFS od společnosti Microsoft, HFS od společnosti Apple. Práce se strukturou souborů OS však lze provést v Linuxu pomocí určitých nástrojů, jako je ntfs-3g, k připojování souborových systémů NTFS, které nejsou privilegovány Linuxem.

    Procesor. Sdílení

    Proces sdílení procesoru, když jsou dva nebo více programů současně uloženy v paměti, se nazývá multiprogramování. Zahrnuje použití jediného společného procesoru a zvyšuje stahování organizováním úkolů. Přiřazení operačního systému, struktura OS spojená s víceprogramováním:
  • Systém současně ukládá do paměti více úkolů.
  • Tato sada je podmnožina úkolů uložených v fondu.
  • Systém vybere a začne provádět jednu z úkolů v paměti.
  • Multiprogramové operační systémy monitorují stav všech aktivních programů a zdrojů pomocí softwaru pro správu paměti, aby zajistily, že procesor nebude pracovat bez pracovních procesů pro zpracování.
  • Tento pracovní plán pomáhá efektivně využívat procesor.

    Související publikace