Architektura komputera

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj

Architektura komputera – sposób organizacji elementów tworzących komputer. Pojęcie to używane jest dosyć luźno. Może ono dzielić systemy komputerowe ze względu na wiele czynników, zazwyczaj jednak pod pojęciem architektury komputera rozumie się organizację połączeń pomiędzy pamięcią, procesorem i urządzeniami wejścia-wyjścia.

Innym, stosowanym potocznie znaczeniem terminu "architektura komputera" jest typ procesora wraz z zestawem jego instrukcji. Właściwszym określeniem w tym przypadku jest model programowy procesora (ang. ISA – Instruction Set Architecture).

Klasyfikacje[edytuj | edytuj kod]

Ze względu na rodzaj połączeń procesor-pamięć i sposób ich wykorzystania dzielimy architektury zgodnie z taksonomią Flynna:

  • SISD (ang. Single Instruction Single Data) – skalarne,
  • SIMD (ang. Single Instruction Multiple Data) – wektorowe (macierzowe),
  • MISD (ang. Multiple Instruction Single Data) – strumieniowe,
  • MIMD (ang. Multiple Instruction Multiple Data) – równoległe.

Ze względu na sposób podziału pracy i dostęp procesora do pamięci możemy podzielić architektury na:

  • SMP (ang. Symmetric Multiprocessing) – symetryczne,
  • ASMP (ang. Asymmetric Multiprocessing) – asymetryczne,
  • NUMA (ang. Non-Uniform Memory Access) – asymetryczne (wykorzystujące pamięć podręczną),
  • AMP (ang. Asynchronous Multiprocessing) – asynchroniczne,
  • MPP (ang. Massively Parallel Processors).

Ze względu na sposób organizacji pamięci i wykonywania programu:

  • architektura von Neumanna – zarówno dane, jak i programy są przechowywane w tym samym bloku pamięci;
  • architektura harwardzka – rozkazy i dane są przechowywane w oddzielnych pamięciach;
  • architektura mieszana – połączenie dwóch powyższych typów: rozdzielono pamięci rozkazów i danych, jednak wykorzystują one wspólne magistrale.

Zobacz też[edytuj | edytuj kod]