Von
Neumannovo schéma bylo navrženo roku 1945 americkým matematikem (narozeným
v Maďarsku) Johnem von Neumannem jako model samočinného počítače.
Tento model s jistými výjimkami zůstal zachován dodnes.
Von Neumannovo schéma
Podle tohoto schématu se počítač skládá z pěti hlavních modulů:
§
Operační paměť
: slouží k uchování zpracovávaného programu, zpracovávaných
dat a výsledků výpočtu
§
ALU - Arithmetic-logic Unit (aritmetickologická
jednotka):
jednotka provádějící veškeré aritmetické výpočty a logické operace.
Obsahuje sčítačky, násobičky (pro aritmetické výpočty) a komparátory (pro
porovnávání)
§
Řadič:
řídící jednotka, která řídí činnost všech částí počítače. Toto řízení je
prováděno pomocí řídících signálů, které jsou zasílány jednotlivým
modulům. Reakce na řídící signály, stavy jednotlivých modulů jsou naopak
zasílány zpět řadiči pomocí stavových hlášení
§
Vstupní zařízení:
zařízení určená pro vstup programu a dat.
§
Výstupní zařízení:
zařízení určená pro výstup výsledků, které program zpracoval
§
CPU - Central Processor Unit (centrální procesorová
jednotka):
Procesor + Operační paměť
Princip činnosti počítače podle von Neumannova schématu
1.
Počítač bude využívat dvojkovou soustavu(bude digitální)
2.
Počítač bude mít procesor vykonávající postupně jednotlivé
v programu zadané operace a (operační) paměť, ve které budou tyto operace
vykonávány
3.
Počítač bude mít vstupní zařízení pro zadávání programů a
dat a výstupní zařízení, která nám umožní vidět výsledky výpočtu
4.
Počítač bude univerzální a pro různá využití se budou
používat různé programy řídící jeho činnost
Základní odlišnosti dnešních počítačů od von Neumannova schématu
§
Podle von Neumannova schématu počítač pracuje vždy nad jedním programem.
Toto vede k velmi špatnému využití strojového času. Je tedy obvyklé, že
počítač zpracovává paralelně více programů zároveň - tzv.
multitasking
Současný provoz více
úloh na jednom počítači, kdy jedna úloha probíhá na popředí a ostatní
probíhají na pozadí. Dovoluje lepší využití CPU.
V případě, že uživatel pracuje interaktivně s nějakým programem, který
většinu času čeká na zadání jeho požadavků, je možné, aby procesor
prováděl např. nějaký náročný matematický výpočet. Je-li na počítači s
jedním procesorem provozováno více programů, je procesor přidělován
postupně vždy na určitou dobu, tzv. časové kvantum (asi 0.1 s),
všem provozovaným programům. Podle způsobu práce rozlišujeme dva druhy
multitaskingu:
-
kooperativní multitasking:
procesor je operačním systémem přidělen jednomu programu, který jej má v
držení tak dlouho, dokud jej sám nevrátí zpět operačnímu systému. Ten jej
pak přidělí jinému programu. Nevýhodou je, že program nemusí procesor
navrátit v dostatečně krátkém časovém úseku, což způsobí dojem, že ostatní
programy nepracují. Ještě horší případ nastane ve chvíli, kdy program
procesor nevrátí vůbec (např. zhavaruje). Tato situace vede ve většině
případů k havárii celého systému.
-
preemptivní multitasking:
procesor je přidělen programu pouze na určitou dobu a po jejím uplynutí
jej sám operační systém programu odebere a přidělí jinému programu. Z toho
vyplývá, že nemohou nastat stavy uvedené u kooperativního multitaskingu.
Nevýhodou tohoto řešení je vyšší náročnost na hardwarové vybavení
počítače. )
§
Počítač může disponovat i více než jedním procesorem
§
Počítač podle von Neumannova schématu pracoval pouze v tzv.
diskrétním režimu.
Způsob práce počítače,
kdy je do paměti počítače zaveden program, data a pak probíhá výpočet. V
průběhu výpočtu již není možné s počítačem dále interaktivně komunikovat.
Tento způsob práce byl charakteristický pro počítače první generace.
-
Existují vstupní / výstupní zařízení I/O
devices, která umožňují jak vstup, tak výstup dat (programu)
-
Program se do paměti nemusí zavést celý, ale je možné zavést pouze jeho
část a ostatní části zavádět až v případě potřeby