Von Neumannova arhitektura: istorija pojma. Osnovni arhitektonski principi računara

Von Neumannova arhitektura(engleski) von Neumannova arhitektura) je dobro poznati princip zajedničkog skladištenja programa i podataka u memoriji računara. Računalni sistemi ove vrste se često nazivaju „fon Nojmannovim mašinama“, međutim, korespondencija ovih koncepata nije uvek nedvosmislena. Generalno, kada se govori o von Neumannovoj arhitekturi, misli se na fizičko odvajanje procesorskog modula od programa i uređaja za skladištenje podataka.

Prisustvo datog skupa izvršnih komandi i programa bila je karakteristična karakteristika prvih računarskih sistema. Danas se sličan dizajn koristi za pojednostavljenje dizajna računarskog uređaja. Dakle, desktop kalkulatori su u principu uređaji sa fiksnim skupom programa koji se mogu izvršavati. Mogu se koristiti za matematičke proračune, ali se ne mogu koristiti za obradu teksta i kompjuterske igre, za gledanje grafičke slike ili video. Promjena firmvera za ovu vrstu uređaja zahtijeva gotovo potpunu doradu, a u većini slučajeva je nemoguća. Međutim, reprogramiranje ranih kompjuterskih sistema je i dalje vršeno, ali je zahtijevao ogroman ručni rad na pripremi nove dokumentacije, ponovnom povezivanju i rekonstrukciji blokova i uređaja itd.

Ideja o skladištenju promenila je sve kompjuterski programi u zajedničkoj memoriji. Do trenutka njegovog uvođenja, upotreba arhitektura zasnovanih na izvršnim skupovima instrukcija i predstavljanje računarskog procesa kao procesa izvršavanja instrukcija napisanih u programu, enormno je povećala fleksibilnost računarskih sistema u pogledu obrade podataka. Isti pristup gledanju podataka i uputstava olakšao je promjenu samih programa.

Von Neumannovi principi

IN 1946 tri naučnika - Arthur Burks (engleski Arthur Burks ), Herman Goldstein (engleski Herman Goldstine ) I John von Neumann- objavio članak “Preliminarno razmatranje logičkog dizajna elektronskog računarskog uređaja” . Članak je opravdao upotrebu binarnog sistema za predstavljanje podataka u računaru (uglavnom za tehničku implementaciju, lakoću izvođenja aritmetičkih i logičkih operacija - pre toga su mašine pohranjivale podatke u decimalnom obliku ), iznesena je ideja o korištenju zajedničke memorije za programe i podatke. Ime von Neumanna bilo je prilično poznato u nauci tog vremena, što je njegove koautore potisnulo u drugi plan, a te su ideje nazvane „fon Neumannovi principi“.

  1. Princip binarnog kodiranja.

Binarni brojevni sistem se koristi za predstavljanje podataka i naredbi.

  1. Princip homogenosti memorije.

I programi (instrukcije) i podaci pohranjeni su u istoj memoriji (i kodirani u istom brojevnom sistemu - najčešće binarni). Možete izvršiti iste radnje na naredbama kao i na podacima.

  1. Princip memorijske adresabilnosti.

Strukturno, glavna memorija se sastoji od numerisanih ćelija; svaka ćelija je dostupna procesoru u bilo koje vrijeme; interna memorija.

  1. Princip sekvencijalnog programskog upravljanja.

Sve komande se nalaze u memoriji i izvršavaju se uzastopno, jedna za drugom, u redosledu koji je odredio program.

  1. Princip arhitektonske krutosti

Nepromjenjivost topologije, arhitekture i liste naredbi tokom rada.

Računari izgrađeni na ovim principima nazivaju se Von Neumannovim tipom.

Računari izgrađeni na von Neumanovim principima

U sredini 1940-ih godine razvijen je projekat računara koji svoje programe čuva u zajedničkoj memoriji Moore škola elektrotehnike (engleski Moore škola elektrotehnike) V Univerzitet stanje Pennsylvania (engleski. Univerzitet u Pensilvaniji). Pristup opisan u ovom dokumentu postao je poznat kao von Neumann arhitektura, po jedinom imenovanom autoru projekta, Johnu von Neumannu, iako je u stvari autorstvo projekta bilo kolektivno. Von Neumannova arhitektura riješila je probleme svojstvene kompjuteru" ENIAC“, koji je u to vrijeme nastao pohranjivanjem kompjuterskog programa u vlastitu memoriju. Informacije o projektu postale su dostupne drugim istraživačima ubrzo nakon toga 1946 Najavljeno je stvaranje Eniaka. Prema planu, planirano je da se projekat realizuje korišćenjem škole Moore u automobilu EDVAC, međutim, prije 1951 EDVAC nije pokrenut zbog tehničkih poteškoća u stvaranju pouzdanog kompjuterska memorija. Drugi istraživački instituti koji su dobili kopije projekta uspjeli su riješiti ove probleme mnogo ranije od razvojnog tima iz Moore škole i implementirali ih u vlastite kompjuterske sisteme. Prvih pet računara koji su implementirali glavne karakteristike von Neumannove arhitekture bili su:

  • Manchester Mark I. prototip - Manchestersko malo eksperimentalno vozilo. Univerzitet u Mančesteru (engleski Univerzitet u Mančesteru), Velika britanija, 21. juna 1948;
  • EDSAC. Cambridge univerzitet (engleski Univerzitet Kembridž), Velika britanija, 6. maja 1949;
  • BINAC. SAD, april ili avgust 1949;
  • CSIR Mk 1. Australija, novembar 1949;
  • SEAC. SAD, 9. maj 1950.

1 Koncept arhitekture računara. Von Neumannovi principi

Arhitektura PC-a je njegov opis na nekom opštem nivou, uključujući opis mogućnosti korisnika za programiranje komandnih sistema, sistema adresiranja, organizacije memorije računar: procesor; operativno skladištenje, eksterno skladištenje i periferni uređaji.

Klasični principi kompjuterske arhitekture su predloženi 1946. i poznati su kao von Neumann principi."

Oni su:

Korištenje binarnog sistema predstavljanja

Autori su uvjerljivo pokazali prednosti binarnog sistema za tehničku implementaciju, pogodnost i jednostavnost izvođenja aritmetičkih i logičkih operacija u njemu. Računari su počeli da obrađuju nenumeričke vrste informacija – tekstualne, grafičke, zvučne i druge, ali binarni kodiranje podataka i dalje čini informacijsku osnovu svakog modernog računara.

Princip pohranjenog programa Neumann je bio prvi koji je shvatio da se program može pohraniti iu obliku nula i jedinica, te u istoj memoriji kao i brojevi koje obrađuje. Odsustvo fundamentalne razlike između programa i podataka omogućilo je računaru da formira program za sebe u skladu sa rezultatima proračuna. Upravljačka jedinica (CU) i aritmetičko-logička jedinica (ALU) u savremenim računarima su kombinovane u jednu celinu - procesor, koji je pretvarač informacija koje dolaze iz memorije i eksternih uređaja.

Memorija (memorija) pohranjuje informacije (podatke) i programe. Uređaj za skladištenje u modernim računarima je „višeslojni” i uključuje memoriju sa slučajnim pristupom (RAM) i eksterne uređaje za skladištenje (ESD).

RAM- ovo je uređaj koji pohranjuje informacije sa kojima računar radi direktno u datom trenutku (izvršni program, dio podataka potrebnih za njega, neki kontrolni programi).

VZU- uređaji puno većeg kapaciteta od RAM-a, ali znatno sporiji.

Princip sekvencijalnog izvođenja operacija

Strukturno, glavna memorija se sastoji od numerisanih ćelija. Svaka ćelija je dostupna procesoru u bilo koje vrijeme. Iz toga proizilazi da je moguće imenovati memorijska područja tako da se vrijednostima pohranjenim u njima kasnije može pristupiti ili promijeniti tokom izvršavanja programa korištenjem dodijeljenih imena.

Princip slučajnog pristupa ćelijama ram memorija
Programi i podaci se pohranjuju u istoj memoriji. Stoga računar ne razlikuje šta je pohranjeno u datoj memorijskoj ćeliji - broj, tekst ili naredbu. Možete izvršiti iste radnje na naredbama kao i na podacima.

I/O uređaj- komponenta standardne računarske arhitekture koja računaru pruža mogućnost interakcije sa spoljnim svetom, a posebno sa korisnicima i drugim računarima.

1.6. Uređaji za unos/izlaz informacija

Čovek komunicira sa informacioni sistemi uglavnom preko ulazno-izlaznih uređaja. Napredak na terenu informacione tehnologije postignuto ne samo zbog povećanja brzine procesora i kapaciteta skladištenja, već i zbog poboljšanja ulaznih i izlaznih uređaja. I/O uređaji se također nazivaju perifernim uređajima.


John von Neumann(1903 - 1957) - mađarsko-američki matematičar jevrejskog porekla koji je dao značajan doprinos kvantnoj fizici, kvantnoj logici, funkcionalnoj analizi, teoriji skupova, računarstvu, ekonomiji i drugim granama nauke.


Arhitektura računara- ovo je unutrašnja struktura mašine, njena logička organizacija, koja određuje proces obrade i metode kodiranja podataka, sastav, svrhu, principe interakcije tehnička sredstva i softver.


CPU

Godine 1945. John von Neumann je stvorio kompjutersku arhitekturu.

Von Neumannova mašina se sastoji od uređaja za skladištenje (memorije) - memorije, aritmetičko-logičke jedinice - ALU, upravljačkog uređaja - CU, kao i ulaznih i izlaznih uređaja.

Ulazni uređaj

Izlazni uređaj



Godine 1946. D. von Neumann, G. Goldstein i A. Berks su u svom zajedničkom članku iznijeli nove principe za konstrukciju i rad računara. Nakon toga, prve dvije generacije računara su proizvedene na osnovu ovih principa. Došlo je do nekih promjena u kasnijim generacijama, iako su Neumannovi principi i danas relevantni.

Herman Goldstein

Arthur Burks

John von Neumann



Binarni brojevni sistem koristi samo dvije cifre, 0 i 1. Drugim riječima, dva je osnova binarnog brojevnog sistema.

Prednost u odnosu na decimalni brojevni sistem je u tome što se uređaji mogu napraviti prilično jednostavnim, a aritmetičke i logičke operacije u binarnom brojevnom sistemu se takođe izvode prilično jednostavno.


Sistemi brojeva

Decimala

Binarno

Octal

Heksadecimalno


Radom računara upravlja program koji se sastoji od skupa komandi. Naredbe se izvršavaju uzastopno jedna za drugom. Kreiranje mašine sa pohranjenim programom bio je početak onoga što danas nazivamo programiranjem.


U ovom slučaju i programske komande i podaci su kodirani u binarnom brojevnom sistemu, tj. njihov način snimanja je isti. Stoga, u određenim situacijama, možete izvršiti iste radnje na naredbama kao i na podacima.


U svakom trenutku možete pristupiti bilo kojoj memorijskoj ćeliji po njenoj adresi. Ovaj princip je otvorio mogućnost korištenja varijabli u programiranju.


Uprkos činjenici da se komande izvršavaju sekvencijalno, programi mogu implementirati mogućnost skoka na bilo koji dio koda.


Dostignuća Džona fon Nojmana.

John von Neumann je dobio najviše akademske počasti. Izabran je za člana Akademije egzaktnih nauka (Lima, Peru), Američke akademije umetnosti i nauka, Američkog filozofskog društva, Lombardskog instituta nauka i književnosti, Kraljevske holandske akademije nauka i umetnosti, Nacionalne akademije SAD akademije i počasnih doktorata sa mnogih univerziteta u SAD-u i drugim zemljama.



RAČUNARSKA ORGANIZACIJA

Bilješke sa predavanja

Chelyabinsk

PRINCIPI JOHNA VON NEUMANNA. GENERACIJE RAČUNARA

Principi Džona fon Nojmana

Velika većina računara je zasnovana na sljedećem: opšti principi, koji je 1945. godine formulisao američki naučnik mađarskog porekla JOHN von NEUMANN.

1) Princip binarnog kodiranja.

Prema ovom principu, sve informacije koje ulaze u računar se kodiraju binarnim signalima.

2) Princip upravljanja programom.

Program se sastoji od skupa naredbi koje procesor izvršava automatski jednu za drugom u određenom nizu.

3) Princip homogenosti memorije.

Programi i podaci se pohranjuju u istoj memoriji. Stoga računar ne razlikuje šta je pohranjeno u datoj memorijskoj ćeliji - broj, tekst ili naredbu. Možete izvršiti iste radnje na naredbama kao i na podacima.

4) Princip ciljanja.

Strukturno, glavna memorija se sastoji od numerisanih ćelija, a svaka ćelija je dostupna procesoru u svakom trenutku.

To podrazumijeva mogućnost imenovanja memorijskih područja tako da se vrijednostima pohranjenim u njima kasnije može pristupiti ili promijeniti tijekom izvršavanja programa korištenjem dodijeljenih imena.

Prema von Neumannu, kompjuter se sastoji od sljedećih glavnih blokova:

– uređaji za unos/izlaz informacija;

– kompjuterska memorija;

– procesor koji se sastoji od upravljačke jedinice (CU) i aritmetičko-logičke jedinice (ALU).

Mašine izgrađene na ovim principima nazivaju se VON NEUMANN mašine.

Dakle, kompjuter se može zamisliti kao procesor, višeslojni memorijski sistem, sistem eksternih i internih komunikacija i perifernih uređaja.

Memorijske funkcije uključuju:

– primanje informacija od drugih uređaja;

– pamćenje informacija;

– pružanje informacija na zahtjev drugim uređajima mašine.

Funkcije procesora:

– obrada podataka prema zadatom programu izvođenjem aritmetičkih i logičkih operacija;

– softversko upravljanje radom računarskih uređaja.

Dio procesora koji izvršava instrukcije naziva se aritmetičko-logička jedinica (ALU), a drugi dio koji obavlja kontrolne funkcije uređaja naziva se kontrolna jedinica (CU). Obično se ova dva uređaja razlikuju uslovno;

Procesor sadrži brojne specijalizirane dodatne memorijske ćelije koje se nazivaju registri.

Registar obavlja funkciju kratkotrajnog pohranjivanja broja ili komande. Posebna elektronska kola mogu izvršiti određene manipulacije sa sadržajem nekih registara. Na primjer, izrezivanje određenih dijelova naredbe za kasniju upotrebu ili izvršavanje određenih aritmetičke operacije preko brojeva.

Glavni element registra je elektronsko kolo koje se zove flip-flop, koje može pohraniti jednu binarnu znamenku (bit).

Registar je skup okidača povezanih jedni s drugima na određeni način zajedničkim upravljačkim sistemom.

Postoji nekoliko tipova registara (slika 1.1), koji se razlikuju po vrsti izvršenih operacija:.

– sabirač – ALU registar uključen u izvršenje svake operacije;

– brojač komandi – registar CU, čiji sadržaj odgovara adresi naredne izvršene komande; služi za automatski odabir programa iz uzastopnih memorijskih ćelija;

– komandni registar – kontrolni registar za pohranjivanje koda komande za vrijeme potrebno za njeno izvršenje. Neki od njegovih bitova se koriste za pohranjivanje koda operacije, a ostali se koriste za pohranjivanje adresnih kodova operanda.

Slika 1.1

Dijagram interfejsa registra procesora

ARHITEKTURA TEHNIČKE OPREME

Razmotrimo fizičku organizaciju IBM personalnog računara, njegove periferije i principe povezivanja pojedinačnih komponenti.

Mikroprocesor

To je centralni čvor personalnog računara. Procesor ima mogućnost da izvrši instrukcije koje čine kompjuterski program. Personalni računari su izgrađeni oko mikroprocesora, koji trenutno rade na jednom kristalu ili „čipu“.

Mikroprocesor koji se koristi u IBM/PC je dizajnirao i kreirao Intel. Osnovna razlika između IBM/PC i personalnih računara prethodne generacije je upotreba 16-bitnog mikroprocesora. Prije pojave IBM/PC-a, najpopularnijih personalni računari izgrađeni su na bazi 8-bitnih mikroprocesora.

Razlika između 8-bitnih i 16-bitnih mikroprocesora je u tome što 8-bitni procesori mogu rukovati 8-bitnim podacima, dok 16-bitni procesori mogu rukovati 16-bitnim podacima. Glavna prednost 16-bitnih procesora u odnosu na 8-bitne procesore je značajno povećanje njihove brzine, snage i pogodnosti njihovog skupa instrukcija. Osim toga, količina adresabilne memorije značajno se povećava. Većina 8-bitnih procesora ne može da koristi više od 64K memorije, što značajno smanjuje mogućnost efikasnog korišćenja personalnih računara. 8088 i 8086 procesori koji se koriste u IBM/PC dozvoljavaju 1024K adresiranje.

Funkcionalna namjena

Sistemski vremenski signali su obezbeđeni od 8284A oscilatora. Ove signale koriste svi elementi računara i određuju trajanje operacija. Uz generator takta je 8255A-5 tajmer, koji se koristi za podršku interfejsa trake i ugrađenog zvučnika.

Funkcionisanje kompjuterskog sistema zasniva se na upotrebi prekida. Za organizaciju rada sistema prekida koristi se čip 8259A. Kada se podaci prenose unutar računarskog sistema, oni prolaze kroz zajednički kanal kojem mogu pristupiti sve komponente sistema. Ova staza je dobila ime sabirnice podataka.

Koncept sabirnice predstavlja jednu od najnaprednijih metoda objedinjavanja u kompjuterskom dizajnu. Umjesto pokušaja povezivanja svih elemenata računarskog sistema posebnim konekcijama, kompjuterski dizajneri su ograničili prenos podataka na jednu zajedničku magistralu. Podaci se šalju duž autobusa praćeni posebnim signalima koji ukazuju na njegovu svrhu. Ova ideja je znatno pojednostavila dizajn računara i znatno povećala njegovu fleksibilnost. Da biste dodali novu komponentu, ne morate da pravite mnogo različitih veza, samo je povežite na magistralu. Da bi se pojednostavio prijenos informacija preko magistrale, koristi se kontroler magistrale.

X-terminali

X-terminali su kombinacija radnih stanica bez diska i standardnih terminala. Radne stanice bez diska često su se koristile kao skupi displeji i u ovom slučaju nisu u potpunosti koristile lokalnu procesorsku snagu. U novije vreme, kako su veoma moćne grafičke radne stanice postale dostupne, trend je bio da se koriste "slave" X terminali koji koriste radnu stanicu kao lokalni server.

Tipično, X terminali koštaju oko pola cijene uporedive mašine bez diska i oko četvrtine cijene potpuno opremljene radne stanice.

Tipičan X-terminal (slika 3.1) uključuje sljedeće elemente:

– ekran visoke rezolucije – obično veličine od 14 do 21 inča po dijagonali;

– mikroprocesor baziran na Motorola 68xxx ili RISC procesoru kao što je Intel i960, MIPS R3000 ili AMD29000;

– Zaseban grafički koprocesor pored glavnog procesora, koji podržava dual-procesor arhitekturu koja omogućava brže crtanje i skrolovanje ekrana;

– osnovni sistemski programi na kojima radi X-Windows sistem i izvršavaju se mrežni protokoli;

– X11 serverski softver.

– varijabilna količina lokalne memorije (od 2 do 8 MB) za ekran, mrežni interfejs koji podržava mrežne protokole za prenos podataka.

– portovi za povezivanje tastature i miša.

Slika 3.1

Dijagram rada X terminala

X terminali se razlikuju od računara i radnih stanica ne samo po tome što ne obavljaju uobičajene lokalne funkcije obrade. Rad X terminala zavisi od host sistema na koji su povezani preko mreže. Da bi X terminal radio, korisnici moraju instalirati X11 višeprozorski serverski softver na glavnom procesoru koji pokreće zadatak aplikacije (većina poznata verzija X11 izdanje 5).

Minimalna količina memorije potrebna za rad X-terminala je 1 MB. Ovisno o funkcionalnosti proizvoda, RAM se može proširiti na 32 MB ili više.

Opremljen sa standardom X-Windows sistem X terminal može prikazati više aplikacija na istom ekranu u isto vrijeme. Svaka aplikacija se može pokrenuti u svom prozoru, a korisnik može promijeniti veličinu, pozicionirati i manipulirati prozorima bilo gdje na ekranu.

Serveri

Aplikacioni višekorisnički sistemi koriste klijent-server tehnologiju i distribuiranu obradu podataka. U slučaju „klijent-server” deo posla obavlja server, a deo računar korisnika (u opštem slučaju, klijent i korisnički deo mogu da rade na istom računaru). Postoji nekoliko tipova servera, namenjenih različitim aplikacijama: server datoteka, server baze podataka, server za štampanje, računarski server, server aplikacija. Dakle, tip servera je određen tipom resursa koji posjeduje ( sistem podataka, baza podataka, štampači, procesori ili aplikativni softverski paketi).

S druge strane, postoji klasifikacija servera, određena skalom mreže u kojoj se koriste: server radne grupe, server odeljenja ili server na nivou preduzeća (korporativni server). Ova klasifikacija je vrlo uslovna. Na primjer, veličina grupe može varirati od nekoliko ljudi do nekoliko stotina ljudi, a server odjela može opsluživati ​​od 20 do 150 korisnika. Očigledno, ovisno o broju korisnika i prirodi zadataka koje rješavaju, zahtjevi za sastavom hardvera i softvera servera, njegovu pouzdanost i performanse uvelike variraju.

File serveri za male radne grupe (ne više od 20-30 ljudi) najlakše se implementiraju na platformi personalnih računara i Novell NetWare softveru. File server, u ovom slučaju, djeluje kao centralno skladište podataka. Aplikacioni serveri i mašine visokih performansi za okruženje klijent-server imaju značajno drugačiji hardver i softver.

Brzina procesora za I/O intenzivne servere nije kritična. Moraju biti opremljeni dovoljno snažnim izvorima napajanja da bi omogućili instalaciju dodatnih kartica za proširenje i disk jedinica. Preporučljivo je koristiti uređaj neprekidno napajanje. RAM je obično najmanje 128 MB, što će omogućiti operativnom sistemu da koristi velike diskovne keš memorije i poveća performanse servera. Ako postoji jedan segment mreže i 10-20 radnih stanica, vršna propusnost servera je ograničena maksimalnom mrežnom propusnošću. U ovom slučaju, zamjena procesora ili diskovnih podsistema snažnijim ne povećava performanse, jer je usko grlo sama mreža. Stoga je važno koristiti dobru mrežnu karticu.

Moderne servere karakteriše:

– prisustvo dva ili više centralnih procesora;

– arhitektura sabirnice na više nivoa, u kojoj sistemska magistrala velike brzine povezuje nekoliko procesora i RAM-a, kao i mnoge standardne I/O magistrale smještene u istom kućištu;

– tehnološka podrška diskovni nizovi RAID;

– podrška za simetrični višeprocesni režim, koji vam omogućava da rasporedite zadatke na nekoliko centralnih procesora, ili asimetrični višeprocesni režim, koji vam omogućava da dodelite procesore za obavljanje određenih zadataka.

Mainframes

Mainframes– do danas ostaju najmoćniji računarski sistemi opšte namene, koji omogućavaju neprekidan rad 24 sata dnevno. Arhitektonski gledano, mejnfrejmovi su višeprocesorski sistemi koji sadrže jedan ili više centralnih i perifernih procesora sa zajedničkom memorijom, međusobno povezanih putevima za prenos podataka velike brzine. U ovom slučaju, glavno računarsko opterećenje pada na centralne procesore, a periferni omogućavaju rad s mnogim perifernim uređajima.

Glavni nedostatak mainframe-a trenutno ostaje relativno nizak omjer performansi/cijena.

Klaster arhitekture

Dva glavna izazova u izgradnji računarskih sistema za kritične aplikacije koje uključuju obradu transakcija, upravljanje bazom podataka i telekomunikacione usluge osiguravaju visoke performanse i dugoročan rad sistema. Većina efikasan metod postizanje datog nivoa performansi - korišćenjem paralelnih skalabilnih arhitektura. Izazov osiguravanja dugoročnog rada sistema ima tri komponente: pouzdanost, dostupnost i uslužnost. Sve ove tri komponente podrazumijevaju, prije svega, borbu protiv kvarova sistema uzrokovanih kvarovima i kvarovima u njegovom radu. Ova borba se vodi u sve tri oblasti koje su međusobno povezane i zajednički se primenjuju.

Poboljšanje pouzdanosti zasniva se na principu sprečavanja kvarova smanjenjem stope kvarova i kvarova upotrebom elektronska kola i komponente sa visokim i ultravisokim stepenom integracije, smanjenjem nivoa smetnji, lakim režimima rada kola, obezbeđivanjem termičkih uslova njihovog rada, kao i poboljšanjem metoda montaže opreme. Povećanje stepena spremnosti uključuje suzbijanje, u određenim granicama, uticaja kvarova i kvarova na rad sistema korišćenjem alata za kontrolu i ispravljanje grešaka, kao i sredstava za automatsko obnavljanje računarskog procesa nakon pojave kvara, uključujući hardver i softver redundantnost, na osnovu koje se implementiraju različite opcije za arhitekturu otporne na greške. Povećanje dostupnosti je način da se smanji vrijeme zastoja sistema. Glavne operativne karakteristike sistema značajno zavise od lakoće njegovog održavanja, posebno od mogućnosti održavanja, testiranja itd.

Postoji nekoliko tipova sistema visoke dostupnosti, koji se razlikuju po tome funkcionalnost i trošak. Trošak sistema visoke dostupnosti mnogo je veći od cijene konvencionalnih sistema. To je vjerovatno razlog zašto su klasterski sistemi najrašireniji u svijetu, zbog činjenice da pružaju prilično visok nivo dostupnosti sistema uz relativno niske troškove.

Grupiranje je implementacija objedinjavanja mašina koje se pojavljuju kao jedinstvena cjelina za operativni sistem, sistemski softver, aplikativne programe i korisnike.

Mašine grupisane na ovaj način mogu, ako jedan procesor pokvari, vrlo brzo preraspodijeliti posao na druge procesore unutar klastera. Ovo je najvažniji zadatak za mnoge dobavljače sistema visoke dostupnosti.

Računari u klasteru mogu dijeliti pristup zajedničkim trakama i diskovima. Svi računari u klasteru mogu pristupiti pojedinačnim datotekama podataka kao da su lokalni.

Ako jedan od računara pokvari, poslovi njegovih korisnika mogu se automatski prenijeti na drugi računar u klasteru. Ako sistem ima nekoliko eksternih kontrolera za skladištenje i jedan od njih pokvari, drugi kontroleri automatski preuzimaju njegov rad (visoka dostupnost).

Visoka propusnost. Brojni sistemi aplikacija mogu iskoristiti mogućnost paralelnog pokretanja poslova na nekoliko računara u klasteru.

Jednostavnost održavanja sistema. Zajedničke baze podataka mogu se opsluživati ​​s jedne lokacije. Aplikacijski programi se mogu instalirati samo jednom na dijeljene diskove klastera i dijeliti između svih računala u klasteru.

Proširivost. Povećanje računske snage klastera postiže se povezivanjem na njega dodatnim računarima. Dodatni magnetni diskovi i pogoni magnetne trake postaju dostupni svim računarima u klasteru.

Rad bilo kog klaster sistema određuju dvije glavne komponente: mehanizam velike brzine za međusobnu komunikaciju procesora i sistemski softver koji klijentima omogućava transparentan pristup sistemskim uslugama. Trenutno je tehnologija paralelnih baza podataka također postala široko rasprostranjena. Ova tehnologija omogućava da više procesora dijele pristup jednoj bazi podataka. Distribucijom poslova na više procesorskih resursa i njihovim paralelnim izvršavanjem, možete postići više razine propusnosti transakcije, podržati više istovremenih korisnika i ubrzati složene upite. Ima ih tri razne vrste arhitekture koje podržavaju paralelne baze podataka.

1) Simetrična multiprocesorska arhitektura dijeljene memorije(Shared Memory SMP arhitektura). Ova arhitektura (slika 3.3.) podržava jednu bazu podataka koja radi na višeprocesorskom serveru koji pokreće jedan operativni sistem. Povećanje performansi ovakvih sistema osigurava se povećanjem broja procesora, RAM-a i eksternih memorijskih uređaja.

Slika 3.3.

Simetrična multiprocesorska arhitektura dijeljene memorije

2) Arhitektura sa zajedničkim (dijeljenim) diskovima. Ova arhitektura podržava jednu bazu podataka na više računara u klasteru (obično se nazivaju čvorovi klastera), pri čemu svaki pokreće svoju kopiju operativnog sistema. U takvim sistemima, svi čvorovi dijele pristup zajedničkim diskovima, na kojima se zapravo nalazi jedna baza podataka. Performanse takvih sistema mogu se povećati kako povećanjem broja procesora i količine RAM-a u svakom čvoru klastera, tako i povećanjem broja samih čvorova.

3) Arhitektura bez dijeljenja resursa. Kao i arhitektura dijeljenog diska, ova arhitektura održava jednu sliku baze podataka na više računala koji rade na vlastitim kopijama operativnog sistema. Međutim, u ovoj arhitekturi, svaki sistemski čvor ima svoju RAM memoriju i svoje diskove, koji se ne dijele između pojedinačnih sistemskih čvorova. U praksi se u takvim sistemima dijeli samo zajednički komunikacioni kanal između sistemskih čvorova. Performanse ovakvih sistema mogu se povećati dodavanjem procesora, količine RAM-a i eksterne (disk) memorije u svakom čvoru, kao i povećanjem broja takvih čvorova.

Dakle, okruženje paralelne baze podataka ima dva važna svojstva: visoku dostupnost i visoke performanse. U slučaju klasterske organizacije, nekoliko računara ili čvorova klastera radi sa jednom bazom podataka. Ako jedan od ovih čvorova pokvari, preostali čvorovi mogu preuzeti poslove koji se izvode na neuspjelom čvoru bez zaustavljanja cjelokupnog procesa baze podataka. Budući da logično svaki čvor u sistemu ima sliku baze podataka, pristup bazi podataka će se nastaviti sve dok postoji barem jedan zdrav čvor u sistemu. Performanse sistema su lako skalabilne, tj. dodavanje dodatnih procesora, količine RAM-a i disk memorije, te novih čvorova u sistemu može se obaviti u bilo kojem trenutku kada je to zaista potrebno.

Paralelne baze podataka se široko koriste u sistemima za on-line obradu transakcija, sistemima za podršku odlučivanju i često se koriste u radu sa kritičnim aplikacijama za preduzeća i organizacije koje rade 24 sata dnevno.

INTERRUPT SYSTEM

Opće informacije

Prekini je proces pokrenut na određeni način koji privremeno prebacuje mikroprocesor da izvrši drugi program, a zatim nastavlja izvršavanje prekinutog programa.

Mehanizam prekida omogućava najefikasniju kontrolu ne samo vanjskih uređaja, već i programa. Neki operativni sistemi koriste mehanizam prekida ne samo za servisiranje vanjskih uređaja, već i za pružanje vlastitih usluga. Dakle, dobro poznati i još uvek široko korišćeni operativni sistem MS-DOS komunicira sa sistemskim i aplikativnim programima prvenstveno preko sistema prekida.

Prekidi mogu biti vanjski I interni.

Eksterni prekidi uzrokovane su događajima izvan mikroprocesora. Oni generišu signale van mikroprocesora, koji obaveštavaju mikroprocesor da neki spoljni uređaj traži pažnju.

Interni prekidi nastaju unutar mikroprocesora tokom računarskog procesa. Jedan od dva razloga dovodi do njihovog uzbuđenja:

– abnormalno unutrašnje stanje mikroprocesora koje je nastalo tokom obrade određene programske komande;

– obrada strojne naredbe “int xx”. Ovaj tip prekida se naziva softverski prekid. To su zakazani prekidi, jer se uz njihovu pomoć programer okreće u pravo vrijeme za servisiranje svojih zahtjeva ili operativnom sistemu, ili BIOS-u, ili sopstvenim programima rukovanje prekidima.

Obrada prekida.

Intel mikroprocesori imaju dva načina rada - pravi i zaštićeni. U ovim načinima, obrada prekida se provodi korištenjem fundamentalno različitih metoda.

Pogledajmo rukovanje prekidima u realnom modu.

Uglavnom sistem prekida je skup softvera i hardvera koji implementira mehanizam prekida.

Prekidni sistemski hardver uključuje

– igle mikroprocesora

INTR – pin za ulazni signal eksternog prekida. Ovaj ulaz prima izlazni signal od čipa kontrolera prekida 8259A;

INTA – pin mikroprocesora za izlazni signal koji potvrđuje prijem signala prekida od strane mikroprocesora. Ovaj izlazni signal se dovodi na INTA ulaz istog imena na čipu kontrolera prekida 8259A;

NMI – mikroprocesorski pin za nemaskiran ulazni signal prekida;

– 8259A programabilni čip kontrolera prekida. Dizajniran je za hvatanje signala prekida sa osam različitih eksternih uređaja: tajmera, tastature, magnetnih diskova, itd. Obično se koriste dva 8259A čipa povezana u seriju. Kao rezultat ove veze, broj mogućih izvora vanjskih prekida se povećava na 15.

Sistemski softver za prekid u stvarnom načinu rada uključuje:

– tabela vektora prekida, koja sadrži pokazivače na procedure za obradu odgovarajućih prekida u određenom formatu, u zavisnosti od načina rada mikroprocesora;

– sljedeće zastavice u registru zastavice\flags:

IF (Interrupt Flag) – oznaka prekida. Dizajniran za tzv. maskiranje (inhibiranje) hardverskih prekida, odnosno prekida na INTR ulazu. Oznaka IF nema efekta na obradu prekida drugih tipova. Ako je IF=1, mikroprocesor obrađuje vanjske prekide, ako je IF = 0, mikroprocesor ignorira signale na INTR ulazu;

TF (Trace Flag) - zastavica praćenja. Jedno stanje TF zastavice stavlja mikroprocesor u način rada instrukcija po naredba. U režimu instrukcija po komandu, nakon izvršenja svake mašinske komande, u mikroprocesoru se generiše interni prekid sa brojem 1, a zatim slede akcije u skladu sa algoritmom za obradu ovog prekida;

– strojne komande mikroprocesora: int, into, iret, cli, sti ().

Čip kontrolera prekida obavlja sljedeće funkcije:

– evidentiranje zahtjeva za obradu prekida iz osam izvora, generisanje jednog zahtjeva za prekid i dostavljanje istog na INTR ulaz mikroprocesora;

– generisanje broja vektora prekida i njegovo slanje na sabirnicu podataka;

– organizacija prioritetne obrade prekida;

– zabrana (maskiranja) prekida određenim brojevima.

Važno svojstvo ovog kontrolera je mogućnost njegovog programiranja, što vam omogućava fleksibilnu promjenu algoritama za obradu hardverskih prekida.

Tokom procesa pokretanja računara i kasnije tokom rada, kontroler prekida je konfigurisan da radi u jednom od četiri načina.

1) Način rada ugniježđenog prekida. U ovom režimu, svakom ulazu (nivou) irq0...irq7 se dodeljuje fiksna vrednost prioriteta, pri čemu nivo irq0 ima najviši prioritet, a irq7 najniži. Prioritet prekida određuje njihovo pravo da prekinu obradu prekida nižeg prioriteta prekidom višeg prioriteta (naravno, pod uslovom da je IF = 1).

2) Način obrade cikličkog prekida. U ovom načinu rada, prioritetne vrijednosti nivoa prekida su također linearno poredane, ali ne na fiksan način, već se mijenjaju nakon obrade sljedećeg prekida prema sljedećem principu: vrijednosti prioriteta posljednjeg servisiranog prekida dodjeljuje se najniža vrijednost . Sljedeći nivo prekida po redoslijedu prima najveću vrijednost, i stoga, kada zahtjevi za prekidima iz više izvora stignu istovremeno, ovaj nivo će imati prednost.

3) Adresirani način prioriteta. Programer ili sistem mogu samostalno dodijeliti najviši prioritetni nivo prekida.

4) Polling mode. Ovaj način rada sprječava kontroler da automatski prekine mikroprocesor kada dođe do prekida od nekog vanjskog uređaja. Da bi mikroprocesor saznao o prisutnosti određenog zahtjeva za prekidom, mora sam kontaktirati kontroler prekida, analizirati ga i zatim djelovati prema vlastitom algoritmu. Prema ovom pristupu, inicijator obrade prekida nije sam prekid, kao u vektorskoj disciplini, već mikroprocesor, a ponekad određen njime (tačnije, operativnim sistemom koji na njemu radi).

HIJERARHIJA SEĆANJA

Implementacija memorijske hijerarhije modernih računara zasniva se na dva principa: principu lokalnosti poziva i omjeru cijene i performansi.

Princip lokalnosti poziva sugerira da većina programa, na sreću, ne pristupa svim svojim naredbama i podacima jednako vjerovatno, već preferira određeni dio svog adresnog prostora.

Memorijska hijerarhija modernih računara izgrađena je na nekoliko nivoa, pri čemu je viši nivo manji, brži i skuplji po bajtu od nižeg nivoa. Nivoi hijerarhije su međusobno povezani: svi podaci na jednom nivou mogu se naći i na nižem nivou, a svi podaci na tom nižem nivou mogu se naći na sledećem nižem nivou, i tako sve dok ne dođemo do dna hijerarhije.

Hijerarhija memorije se obično sastoji od više nivoa, ali u svakom trenutku imamo posla sa samo dva obližnja nivoa. Minimalna jedinica informacija koja može ili ne mora biti prisutna u hijerarhiji na dva nivoa naziva se blok. Veličina bloka može biti fiksna ili promjenjiva. Ako je ova veličina fiksna, tada je veličina memorije višestruka od veličine bloka.

Uspešan ili neuspešan poziv na viši nivo se poziva hit ili nedostajati.

Hit– postoji referenca na objekt u memoriji koji se nalazi na višem nivou, dok nedostajati znači da nije pronađen na ovom nivou.

Budući da je poboljšanje performansi glavni razlog za pojavu memorijskih hijerarhija, stopa pogodaka i promašaja je važna karakteristika. Vrijeme pogodaka je vrijeme potrebno da se postigne viši nivo hijerarhije, što uključuje, ali nije ograničeno na, vrijeme potrebno da se utvrdi da li je pogodak pogodak ili promašaj. Gubitak promašaja je vrijeme koje je potrebno da blok u višem sloju bude zamijenjen blokom iz nižeg sloja, plus vrijeme za prosljeđivanje tog bloka na željeni uređaj (obično procesor). Gubitak promašaja dalje uključuje dvije komponente: vrijeme pristupa - vrijeme za pristup prvoj riječi bloka nakon promašaja i vrijeme prosljeđivanja - dodatno vrijeme za prosljeđivanje preostalih riječi bloka. Vrijeme pristupa je povezano sa latencijom memorije nižeg nivoa, dok je vrijeme prijenosa povezano sa propusnošću kanala između memorijskih uređaja dva susjedna nivoa.

Da biste opisali određeni nivo hijerarhije memorije, morate odgovoriti na sljedeća četiri pitanja.

1) Gdje se blok može postaviti na najviši nivo hijerarhije? (postavka bloka).

2) Kako pronaći blok kada je na najvišem nivou? (identifikacija bloka).

3) Koji blok treba zamijeniti u slučaju promašaja? (zamjena bloka).

4) Šta se dešava tokom snimanja? (strategija pisanja).

Organizacija keša

Danas se keš memorija nalazi u gotovo svakom računaru. Po pravilu, moderna keš memorija je strukturno neodvojiva od procesora

Opće odredbe

Glavna memorija je sljedeći nivo u hijerarhiji memorije. Glavna memorija zadovoljava keš zahtjeve i služi kao I/O sučelje tako što je odredište za ulaz i izvor za izlaz. Postoje dva glavna parametra koja se koriste za procjenu performansi glavne memorije: latencija i propusni opseg. Tradicionalno latencija glavne memorije ima veze sa keš memorijom, i propusni opseg ili propusni opseg se odnosi na I/O. Uz rastuću popularnost L2 keš memorije i povećanje veličine blokova L2 keš memorije, propusni opseg glavne memorije postaje važan i za keš memorije.

Latencija memorije se tradicionalno procjenjuje pomoću dva parametra: vrijeme pristupa(vrijeme pristupa) i vrijeme memorijskog ciklusa(vrijeme ciklusa).

Vrijeme pristupa predstavlja vremenski interval između izdavanja zahtjeva za čitanje i trenutka kada tražena riječ stigne iz memorije.

Vrijeme ciklusa memorije određeno minimalnim vremenom između dva pristupa memoriji.

Poluvodička RAM memorija se trenutno dijeli na static RAM(SRAM) i dinamički RAM(DRAM). (Random Access Memory - Memorija sa slučajnim pristupom).

Mikro kola (DRAM) se odlikuju većim kapacitetom i nižom cijenom, ali zahtijevaju kola za regeneraciju i imaju znatno duže vrijeme pristupa.

Trigger Oni nazivaju element na tranzistorima, koji može biti u jednom od dva stabilna stanja (0 i 1), a prema vanjskom signalu sposoban je mijenjati stanje. Okidač može poslužiti kao memorijska ćelija koja pohranjuje jedan bit informacija.

Poziva se memorija zasnovana na okidaču statički(SRAM).

Princip rada DRAM uređaja je sledeći: sistem metal-dielektrik-poluprovodnik je sposoban da radi kao kondenzator, tj. sposoban da zadrži električni naboj neko vrijeme. Označavajući napunjeno stanje sa 1, a nenapunjeno sa 0, dobijamo memorijsku ćeliju kapaciteta 1 bit. Pošto se naelektrisanje na kondenzatoru rasprši nakon određenog vremenskog perioda, mora se periodično puniti (regenerisati) čitajući i ponovo zapisujući podatke na njega. Zbog toga je nastao koncept "dinamike" za ovu vrstu memorije.

Statička RAM memorija je skupa i neekonomična vrsta RAM-a, pa se koristi uglavnom za keš memoriju i u mikroprocesorskim registrima.

Razvoj RAM-a

Dynamic RAM je prošao kroz nekoliko faza razvoja od svog uvođenja. U početku su se dinamički RAM čipovi proizvodili u DIP paketima. Zatim su zamijenjeni modulima koji se sastoje od nekoliko čipova: SIPP, SIMM i, konačno, DIMM i RIMM. Pogledajmo bliže ove sorte.

1) DIP paket je najstarija implementacija DRAM-a. Ovo je obično malo crno plastično kućište s metalnim kontaktima na obje strane.

Mikrokrugovi (drugim riječima, čipovi) dinamičke RAM memorije su instalirani u tzv. banke. Banke dolaze u 64, 256 KB, 1 i 4 MB. Svaka banka se sastoji od devet odvojenih identičnih čipova. Od toga, osam čipova je dizajnirano za pohranjivanje informacija, a deveti čip se koristi za provjeru pariteta preostalih osam čipova u ovoj banci. Memorijski čipovi su imali kapacitet od 64 Kbita, 256 Kbita, 1 i 4 Mbita.

Personalni računari sa mikroprocesorima i8086/88, i80286 i delimično i80386SX/DX opremljeni su memorijom sa DIP paketima. Instaliranje i zamjena ove vrste memorije bila je težak zadatak. Stoga su u računarima sa procesorom i80386DX ova mikro kola počela da zamenjuju SIPP i SIMM memorije.

2) SIPP moduli To su male ploče sa nekoliko DRAM čipova zalemljenih na njima.

SIPP je skraćenica za Single Inline Package. SIPP moduli su povezani na sistemska ploča koristeći 30 kontaktnih pinova koji su umetnuti u odgovarajuću ploču matične ploče. SIPP moduli su imali određene izreze koji su sprečavali njihovo umetanje u utičnice na pogrešan način.

3) SIMM moduli.

SIMM je skraćenica za Single Inline Memory Module, moduli mogu imati kapacitet od 256 KB, 1, 2, 4, 8, 16 i 32 MB. SIMM moduli su povezani na matičnu ploču pomoću konektora. Modul se ubacuje u plastični blok pod uglom od 70 stepeni, a zatim se steže plastičnim držačem. U ovom slučaju, ploča stoji okomito. Posebni izrezi na memorijskom modulu sprečavaju njihovo postavljanje na pogrešan način.

SIMM moduli za povezivanje na matičnu ploču imaju pozlaćene trake (pinove).

SIMM moduli su prošli kroz dvije faze u svom razvoju. Prvi predstavnici SIMM modula bili su 30-pin SIMM. Njihova maksimalna radna frekvencija je 29 MHz. Smatralo se da je standardno vrijeme pristupa memoriji 70 ns. Ovi moduli su već imali poteškoća u radu na računarima sa i80486DX2 mikroprocesorima, pa su prvo bili zamijenjeni 72-pinskim FPM (Fast Page Mode) DRAM-om, a zatim EDO (Extended Data Output) RAM-om.

SIMM EDO RAM memorije imaju samo 72 pina i mogu raditi na frekvencijama do 50 MHz. Ovi memorijski moduli su bili opremljeni računarima sa Intel procesori 80486DX2/DX4, Intel Pentium, Pentium Pro i Pentium MMX, kao i AMD 80586 i K5.

U svakoj oblasti nauke i tehnologije postoje neke fundamentalne ideje ili principi koji određuju njen sadržaj i razvoj. U kompjuterskoj nauci, ulogu takvih fundamentalnih ideja imali su principi formulisani nezavisno jedan od drugog - od strane američkog matematičara i fizičara Džona fon Nojmana (1903-1957) i sovjetskog naučnika Sergeja Lebedeva (1902-1974). Ovi principi definišu osnovnu organizaciju računara.

Smatra se da je prvi elektronski računar ENIAC proizveden u SAD 1946. godine. ENIAC se sastojao od 18.000 vakumskih cijevi i 1.500 releja i težio je 30 tona. Imao je 20 registara, od kojih je svaki mogao da sadrži 10-bitni decimalni broj. Uređaj" (jun 1946.). Ovaj izveštaj, koji su sastavili istaknuti američki matematičar Džon fon Nojman i njegove kolege sa Prinstonskog instituta G. Goldštajn i A. Burks, predstavlja projekat novog elektronskog računara. Ideje izražene u ovom izvještaju poznate su kao Neumann principi.

Govoreći o začetnicima teorijske informatike, ne mogu se ne spomenuti dva naučna dostignuća: algebra logike i teorija algoritama. Logičku algebru je sredinom 19. vijeka razvio engleski matematičar George Boole i on je smatrao metodom matematiziranja formalne logike. Razvoj elektronskih računara zasnovanih na on-off elektronskim elementima omogućio je široku upotrebu "Booleove logike" za projektovanje računarskih kola. U prvoj polovini 30-ih godina 20. veka pojavljuju se matematički radovi u kojima je dokazana fundamentalna mogućnost rešavanja bilo kog problema koji se može algoritamski obraditi pomoću automata. Ovaj dokaz je sadržan u radovima engleskog matematičara E. Posta objavljenim 1936. godine. (George Boole (1815-1864), Alan Turing (1912-1954)).

U Sovjetskom Savezu rad na stvaranju elektronskih računara počeo je nešto kasnije. Prvi sovjetski elektronski računar proizveden je u Kijevu 1953. godine. Zvao se MESM (mali elektronski računar), a njegov glavni projektant bio je akademik Sergej Lebedev, autor dizajna računara serije BESM (veliki elektronski računar). U projektu MESM, Sergej Lebedev je, nezavisno od Nojmana, došao do istih ideja za projektovanje elektronskih računara kao i Neumann.

Suština “Neumanovih principa” je bila sljedeća:

1. Računar uključuje međusobno povezani procesor (aritmetička jedinica i kontrolni uređaj), memoriju i I/O uređaj.

2. Računari zasnovani na elektronskim elementima moraju raditi u binarnom brojevnom sistemu, a ne u decimalnom.

3. Program, kao i brojevi sa kojima računar radi, napisani su u binarnom kodu, odnosno u obliku prikaza komande i brojevi su istog tipa.

4. Program mora biti lociran u jednom od kompjuterskih blokova - u uređaju za skladištenje koji ima nasumični pristup. Program i podaci mogu biti u zajedničkoj memoriji (Princeton arhitektura).

5. Poteškoće fizičke implementacije brzog, nepromjenjivog i velikog memorijskog uređaja za skladištenje zahtijevaju hijerarhijsku organizaciju memorije. Program se izvršava iz glavne memorije i pohranjuje u nepromjenjivu sekundarnu memoriju (magnetne diskove). Datoteka je identifikacijski skup instanci tipa podataka koji je u potpunosti opisan u određenom programu, smješten izvan programa u vanjskoj memoriji i dostupan programu putem posebnih operacija.

6. Aritmetičko-logička jedinica (ALU) računara je konstruisana na osnovu kola koja vrše sabiranje, pomeranje i logičke operacije. Pored rezultata operacije, ALU generiše brojne atribute rezultata (zastavice) koji se mogu analizirati prilikom izvršavanja naredbe za prijenos uvjetne kontrole.

Von Neumannova arhitektura je dobro poznati princip zajedničkog skladištenja programa i podataka u memoriji računara. Računalni sistemi ove vrste se često nazivaju „fon Nojmannovim mašinama“, međutim, korespondencija ovih koncepata nije uvek nedvosmislena. Generalno, kada se govori o von Neumannovoj arhitekturi, misli se na fizičko odvajanje procesorskog modula od programa i uređaja za skladištenje podataka.

Prisustvo datog skupa izvršnih komandi i programa bila je karakteristična karakteristika prvih računarskih sistema. Danas se sličan dizajn koristi za pojednostavljenje dizajna računarskog uređaja. Dakle, desktop kalkulatori su u principu uređaji sa fiksnim skupom programa koji se mogu izvršavati. Mogu se koristiti za matematičke proračune, ali se ne mogu koristiti za obradu teksta i kompjuterske igre, za gledanje grafičkih slika ili video zapisa. Promjena firmvera za ovu vrstu uređaja zahtijeva gotovo potpunu doradu, a u većini slučajeva je nemoguća. Međutim, reprogramiranje ranih kompjuterskih sistema je i dalje bilo moguće, ali je zahtijevalo ogromnu količinu ručnog rada na pripremi nove dokumentacije, ponovnom povezivanju i rekonstrukciji blokova i uređaja, itd. Ideja pohranjivanja kompjuterskih programa u dijeljenu memoriju promijenila je sve. Do trenutka njegovog uvođenja, upotreba arhitektura zasnovanih na izvršnim skupovima instrukcija i predstavljanje računarskog procesa kao procesa izvršavanja instrukcija napisanih u programu, enormno je povećala fleksibilnost računarskih sistema u pogledu obrade podataka. Isti pristup gledanju podataka i uputstava olakšao je promjenu samih programa.

Trenutno je von Neumannova arhitektura kompjuterska organizacija u kojoj se računar sastoji od dva glavna dijela - linearno adresabilne memorije, čije riječi pohranjuju komande i elemente podataka, i procesora koji te komande izvršava. Von Neumannov model proračuna zasniva se na principu sekvencijalnog prijenosa upravljanja (programski brojač) i konceptu varijable (identifikator).

John von Neumann. Biografija

Janoš Lajoš Nojman je rođen kao najstariji od tri sina u bogatoj jevrejskoj porodici u Budimpešti, koja je tada bila grad Austro-Ugarske. Njegov otac, Maks Nojman (mađarski Neumann Miksa, 1870-1929), doselio se u Budimpeštu iz provincijskog grada Pečuja kasnih 1880-ih, doktorirao pravo i radio kao advokat u banci. Majka, Margaret Kann (mađarska Kann Margit, 1880-1956), bila je domaćica i najstarija ćerka (u drugom braku) uspešnog biznismena Jacoba Kanna, partnera u kompaniji Kann-Heller, specijalizovanoj za prodaju mlinskog kamena i ostala poljoprivredna oprema.

Janos, ili jednostavno Yancy, bio je neobično nadareno dijete. Već sa 6 godina mogao je u mislima podijeliti dva osmocifrena broja i razgovarati s ocem na starogrčkom. Janoša je oduvek zanimala matematika, priroda brojeva i logika sveta oko sebe. Sa osam godina već je bio dobro upućen u matematičku analizu. Godine 1911. ušao je u Luteransku gimnaziju. Godine 1913. otac mu je dobio plemićku titulu, a Janoš je zajedno sa austrijskim i mađarskim simbolima plemstva - prefiksom von (von) za austrijsko prezime i titulom Margittai (Margittai) u mađarskom nazivu - postao poznat kao Janoš. von Neumann ili Neumann Margittai Janos Lajos. Dok je predavao u Berlinu i Hamburgu zvao se Johann von Neumann. Kasnije, nakon preseljenja u Sjedinjene Države 1930-ih, njegovo ime je na engleskom promijenjeno u John. Zanimljivo je da su nakon preseljenja u SAD njegova braća dobila potpuno različita prezimena: Vonneumann i Newman. Prvi je, kao što vidite, „fuzija“ prezimena i prefiksa „von“, dok je drugi doslovan prevod prezimena sa njemačkog na engleski.

Von Neumann je doktorirao matematiku (sa elementima eksperimentalne fizike i hemije) na Univerzitetu u Budimpešti sa 23 godine. Istovremeno je studirao hemijsko inženjerstvo u Cirihu, u Švajcarskoj (Maks fon Nojman je smatrao da je profesija matematičara nedovoljna da obezbedi pouzdanu budućnost svom sinu). Od 1926. do 1930. John von Neumann je bio privatni docent u Berlinu.

Godine 1930. von Neumann je pozvan da predaje na američkom Univerzitetu Princeton. Bio je jedan od prvih pozvanih da radi na Institutu za napredne studije, osnovanom 1930. godine, takođe u Prinstonu, gde je bio profesor od 1933. do smrti.

Godine 1936-1938, Alan Turing je odbranio doktorsku disertaciju na institutu pod vodstvom Alonzo Churcha. To se dogodilo ubrzo nakon objavljivanja Turingovog rada iz 1936. „O izračunljivim brojevima s primjenom na Entscheidungs ​​problem“, koji je uključivao koncepte logičkog dizajna i univerzalne mašine. Von Neumann je nesumnjivo bio upoznat sa Turingovim idejama, ali nije poznato da li ih je primijenio na dizajn IAS mašine deset godina kasnije.

Godine 1937. von Neumann je postao američki državljanin. Godine 1938. dobio je nagradu M. Bocher za svoj rad u oblasti analize.

Von Neumann je bio dvaput oženjen. Prvi put se oženio Mariette Kövesi 1930. godine. Brak se raspao 1937. godine, a već 1938. oženio se Klarom Dan. Od svoje prve žene, von Neumann je imao kćer Marinu, koja je kasnije postala poznati ekonomista.

John von Neumann je 1946. godine dokazao teoremu o gustini brojeva u dvostruko kombinovanim eksponencijalnim pozicionim brojevnim sistemima. Prvu uspješnu numeričku vremensku prognozu napravio je 1950. godine pomoću kompjutera ENIAC tim američkih meteorologa zajedno sa Johnom von Neumannom.

Godine 1957., von Neumann je razvio rak kostiju, vjerovatno uzrokovan izlaganjem radijaciji istraživanjem atomske bombe na Pacifiku, ili možda naknadnim radom u Los Alamosu u Novom Meksiku (njegov kolega nuklearni pionir Enrico Fermi umro je od raka želuca 1954.). Nekoliko mjeseci nakon dijagnoze, von Neumann je umro u teškim mukama. Rak je takođe napao njegov mozak, ostavljajući ga praktično nesposobnim da razmišlja. Dok je ležao na samrti u bolnici Walter Reed, šokirao je svoje prijatelje i poznanike tražeći da razgovara sa katoličkim svećenikom.

Priča

Sredinom 1940-ih, na The Moore School of Electrical Engineering na Univerzitetu u Pensilvaniji razvijen je dizajn za kompjuter koji je pohranjivao svoje programe u zajedničkoj memoriji , von Neumann je izrazio ideju o fundamentalno novom kompjuteru. Godine 1946, naučnici su izložili svoje principe za konstruisanje računara u sada već klasičnom članku „Preliminarno razmatranje logičkog dizajna elektronskog računarskog uređaja“ Članak ubedljivo potkrepljuje upotrebu binarnog sistema za predstavljanje brojeva (vredi podsetiti da su prethodno svi). računari pohranjuju obrađene brojeve u decimalnom obliku). Autori su uvjerljivo pokazali prednosti binarnog sistema za tehničku implementaciju, pogodnost i jednostavnost izvođenja aritmetičkih i logičkih operacija u njemu (kasnije su računari počeli da obrađuju nenumeričke vrste informacija - tekstualne, grafičke, zvučne i druge, ali binarne kodiranje podataka i dalje čini informacijsku osnovu svakog modernog računara). Još jedna istinski revolucionarna ideja, čiju je važnost teško precijeniti, je princip „pohranjenog programa“ koji je predložio Neumann. U početku je program postavljen instaliranjem kratkospojnika na poseban patch panel. Neumann je bio prvi koji je shvatio da se program može pohraniti i kao niz nula i jedinica, u istoj memoriji kao i brojevi koje obrađuje. Odsustvo fundamentalne razlike između programa i podataka omogućilo je računaru da formira program za sebe u skladu sa rezultatima proračuna.

Von Neumannova arhitektura riješila je probleme svojstvene kompjuteru ENIAC, koji je nastajao u to vrijeme, pohranjivanjem kompjuterskog programa u vlastitu memoriju. Informacije o projektu postale su dostupne drugim istraživačima ubrzo nakon što je 1946. objavljeno stvaranje Eniaka. Prema planu, projekat je trebala da izvede škola Moore u EDVAC mašini, ali EDVAC je pokrenut tek 1951. godine zbog tehničkih poteškoća u stvaranju pouzdane računarske memorije. Drugi istraživački instituti koji su dobili kopije projekta uspjeli su riješiti ove probleme mnogo ranije od razvojnog tima iz Moore škole i implementirali ih u vlastite kompjuterske sisteme. Prvih pet računara koji su implementirali glavne karakteristike von Neumannove arhitekture bili su:

Manchester Mark I. Prototip - Manchester Small Experimental Vehicle. Univerzitet u Mančesteru, UK, 21. juna 1948;

EDSAC. Univerzitet Cambridge, UK, 6. maj 1949.;

BINAC. SAD, april ili avgust 1949;

CSIR Mk 1. Australija, novembar 1949;

Norbert Wiener, radeći sa Džonom fon Nojmanom, primetio je da su procesi koji kontrolišu složeni elektronski sistem, slični su procesima neurofiziologije, koja proučava svrsishodnu aktivnost živih bića. Održavanje funkcionalnosti ovakvih sistema postiže se kroz povratne informacije, omogućava vam da pratite i ispravite radnju koja je već započela, ali još nije završena. Postojanje povratne sprege nam omogućava da sa jedne tačke gledišta razmotrimo složene sisteme različite prirode – fizičke, društvene, biološke. Ovo su osnove kibernetike. Godine 1948. objavljena je knjiga N. Wienera “Kibernetika, ili kontrola i komunikacija u živom svijetu i mašinama”.

Von Neumannovi principi

Godine 1946. D. von Neumann, G. Goldstein i A. Berks su u svom zajedničkom članku iznijeli nove principe za konstrukciju i rad računara. Nakon toga, prve dvije generacije računara su proizvedene na osnovu ovih principa. Došlo je do nekih promjena u kasnijim generacijama, iako su Neumannovi principi i danas relevantni.

U stvari, Neumann je uspio sumirati naučna dostignuća i otkrića mnogih drugih naučnika i na njihovoj osnovi formulirati nešto fundamentalno novo.

1. Korišćenje binarnog sistema brojeva u kompjuteri. Prednost u odnosu na decimalni brojevni sistem je u tome što se uređaji mogu napraviti prilično jednostavnim, a aritmetičke i logičke operacije u binarnom brojevnom sistemu se takođe izvode prilično jednostavno.

2. Kontrola kompjuterskog softvera. Radom računara upravlja program koji se sastoji od skupa komandi. Naredbe se izvršavaju uzastopno jedna za drugom. Kreiranje mašine sa pohranjenim programom bio je početak onoga što danas nazivamo programiranjem.

3. Memorija računara se koristi ne samo za skladištenje podataka, već i programa. U ovom slučaju i programske komande i podaci su kodirani u binarnom brojevnom sistemu, tj. njihov način snimanja je isti. Stoga, u određenim situacijama, možete izvršiti iste radnje na naredbama kao i na podacima.

4. Memorijske ćelije računara imaju adrese koje su uzastopno numerisane. U svakom trenutku možete pristupiti bilo kojoj memorijskoj ćeliji po njenoj adresi. Ovaj princip je otvorio mogućnost korištenja varijabli u programiranju.

5. Mogućnost uslovnog prijelaza tokom izvršavanja programa. Uprkos činjenici da se komande izvršavaju sekvencijalno, programi mogu implementirati mogućnost skoka na bilo koji dio koda.

Najvažnija posledica ovih principa je da sada program više nije bio stalni deo mašine (kao, na primer, kalkulator). Postalo je moguće lako promijeniti program. Ali oprema, naravno, ostaje nepromijenjena i vrlo jednostavna.

Poređenja radi, program kompjutera ENIAC (koji nije imao pohranjeni program) određivali su posebni džamperi na panelu. Reprogramiranje mašine može potrajati više od jednog dana (drugačije postavite kratkospojnike). I iako za pisanje programa za moderne računare mogu potrajati godine, oni rade na milionima računara nakon nekoliko minuta instalacije na hard disk.

von Neumann mašina

U skladu sa von Neumannovim principima, računar se sastoji od aritmetičko-logičke jedinice – ALU (engleski ALU, Arithmetic and Logic Unit), koja vrši aritmetičke i logičke operacije; kontrolni uređaj dizajniran za organiziranje izvršavanja programa; uređaji za skladištenje (memorija), uklj. memorija sa slučajnim pristupom (RAM) i eksterni uređaj za skladištenje (ESD); eksterni uređaji za unos/izlaz podataka. Von Neumann kompjuterska arhitektura se smatra klasičnom. Generalno, kada se govori o von Neumannovoj arhitekturi, misli se na fizičko odvajanje procesorskog modula od programa i uređaja za skladištenje podataka.

Prvi kompjuterski sistemi su se razlikovali po strogo definisanom skupu izvršnih komandi i programa. Primjer ove vrste računarskih uređaja su kalkulatori. Ideja pohranjivanja kompjuterskih programa u zajedničku memoriju omogućila je pretvaranje računara u univerzalni uređaji koji su sposobni za obavljanje širokog spektra zadataka.

Programi i podaci se unose u memoriju sa ulaznog uređaja preko aritmetičko-logičke jedinice. Sve naredbe programa se zapisuju u susjedne memorijske ćelije, a podaci za obradu mogu biti sadržani u proizvoljnim ćelijama. Za bilo koji program, posljednja komanda mora biti naredba za isključivanje.

Naredba se sastoji od indikacije koju operaciju treba izvršiti (od mogućih operacija na datom hardveru) i adresa memorijskih ćelija na kojima se pohranjuju podaci na kojima se navedena operacija treba izvršiti, kao i adrese ćelije gdje treba upisati rezultat (ako ga treba pohraniti u memoriju).

Iz aritmetičko-logičke jedinice, rezultati se izlaze u memoriju ili izlazni uređaj. Osnovna razlika između memorije i izlaznog uređaja je u tome što se u memoriji podaci pohranjuju u obliku pogodnom za obradu od strane računara i šalju se na izlazne uređaje (štampač, monitor, itd.) na način koji je prikladan. za osobu.

Kontrolna jedinica kontroliše sve delove računara. Od kontrolnog uređaja drugi uređaji primaju signale „šta da rade“, a od ostalih uređaja kontrolna jedinica prima informacije o njihovom statusu.

Upravljački uređaj sadrži poseban registar (ćeliju) koji se naziva „programski brojač“. Nakon učitavanja programa i podataka u memoriju, adresa prve instrukcije programa se upisuje u programski brojač. Upravljačka jedinica čita iz memorije sadržaj memorijske ćelije, čija se adresa nalazi u programskom brojaču, i stavlja ga u poseban uređaj - „Registar komandi“. Upravljačka jedinica određuje rad naredbe, „markira“ u memoriju podatke čije su adrese navedene u komandi i kontroliše izvršenje komande. Operaciju izvodi ALU ili kompjuterski hardver.

Kao rezultat izvršenja bilo koje naredbe, programski brojač se mijenja za jedan i stoga ukazuje na sljedeću naredbu programa. Kada je potrebno izvršiti naredbu koja nije sljedeća u odnosu na trenutnu, ali je od zadate odvojena određenim brojem adresa, tada posebna naredba za skok sadrži adresu ćelije na koju se mora prenijeti kontrola .

Velika većina današnjih računara su fon Nojmanove mašine. Jedini izuzetak su određene vrste sistema za paralelno računanje, u kojem nema programskog brojača, klasični koncept varijable nije implementiran, a postoje i druge značajne fundamentalne razlike u odnosu na klasični model (primjeri uključuju streaming i redukcijske računare). Očigledno će doći do značajnog odstupanja od von Neumannove arhitekture kao rezultat razvoja ideje o mašinama pete generacije, u kojima se obrada informacija ne temelji na proračunima, već na logičkim zaključcima.

mob_info