Architektura von Neumanna

Ten artykuł od 2022-12 zawiera treści, przy których brakuje odnośników do źródeł.
Należy dodać przypisy do treści niemających odnośników do źródeł. Dodanie listy źródeł bibliograficznych jest problematyczne, ponieważ nie wiadomo, które treści one uźródławiają.
Sprawdź w źródłach: Encyklopedia PWN • Google Books • Google Scholar • Federacja Bibliotek Cyfrowych • BazHum • BazTech • RCIN • Internet Archive (texts / inlibrary)
Po wyeliminowaniu niedoskonałości należy usunąć szablon {{Dopracować}} z tego artykułu.
Architektura von Neumanna

Architektura von Neumanna – rodzaj architektury komputera będąca implementacją koncepcji The Stored-Program gdzie dane przechowywane są wraz z kodem programu[1]. Opracowana została przez Johna von Neumanna, Johna W. Mauchly’ego oraz Johna Presper Eckerta w 1945 roku. Pierwszymi komputerami zbudowanymi w oparciu o tą architekturę były EDSAC oraz UNIVAC[2]. Większość współczesnych komputerów posiada architekturę bazującą na koncepcji von Neumanna[3].

Opis architektury

W architekturze tej komputer składa się z czterech głównych komponentów:

  • pamięci komputerowej przechowującej dane programu oraz instrukcje programu; każda komórka pamięci ma unikatowy identyfikator nazywany jej adresem
  • jednostki sterującej odpowiedzialnej za pobieranie danych i instrukcji z pamięci oraz ich sekwencyjne przetwarzanie
  • jednostki arytmetyczno-logicznej odpowiedzialnej za wykonywanie podstawowych operacji arytmetycznych.
  • urządzeń wejścia/wyjścia służących do interakcji z operatorem

Jednostka sterująca wraz z jednostką arytmetyczno-logiczną tworzą procesor.

System komputerowy zbudowany w oparciu o architekturę von Neumanna powinien:

  • mieć skończoną i funkcjonalnie pełną listę rozkazów
  • mieć możliwość wprowadzenia programu do systemu komputerowego poprzez urządzenia zewnętrzne i jego przechowywanie w pamięci w sposób identyczny jak danych
  • dane i instrukcje w takim systemie powinny być jednakowo dostępne dla procesora
  • informacja jest tam przetwarzana dzięki sekwencyjnemu odczytywaniu instrukcji z pamięci komputera i wykonywaniu tych instrukcji w procesorze.

Podane warunki pozwalają przełączać system komputerowy z wykonania jednego zadania (programu) na inne bez fizycznej ingerencji w strukturę systemu, a tym samym gwarantują jego uniwersalność.

System komputerowy von Neumanna nie posiada oddzielnych pamięci do przechowywania danych i instrukcji. Instrukcje jak i dane są zakodowane w postaci liczb. Bez analizy programu trudno jest określić czy dany obszar pamięci zawiera dane czy instrukcje. Wykonywany program może się sam modyfikować traktując obszar instrukcji jako dane, a po przetworzeniu tych instrukcji – danych – zacząć je wykonywać.

Model komputera wykorzystującego architekturę von Neumanna jest często nazywany przykładową maszyną cyfrową (PMC).

Kontrowersje

Mauchly i Eckert oskarżali von Neumanna o przywłaszczenie wspólnych wyników prac. Sam von Neumann uważał ich pracę za dzieło zbiorowe o licencji public domain (projekt był współfinansowany przez rząd amerykański).

Zobacz też

Przypisy

  1. Kotuła 2014 ↓, s. 13-14.
  2. Kotuła 2014 ↓, s. 14.
  3. Architektura von Neumanna. eSezam. [dostęp 2023-12-16].

Bibliografia

  • Sebastian Kotuła: Wstęp do Open Source. Warszawa: Wydawnictwo Stowarzyszenia Bibliotekarzy Polskich, 2014. ISBN 978-83-64203-33-6. OCLC 898274558.