Von Neumanni arhitektuur: erinevus redaktsioonide vahel

Eemaldatud sisu Lisatud sisu
TuuleT (arutelu | kaastöö)
Täpsustused artikli päises ja lisandused ajaloo alla.
TuuleT (arutelu | kaastöö)
Resümee puudub
6. rida:
 
Kuigi mällu salvestatud programmi abil talitav ning ühitatud käsu- ja andmemäluga arvutiarhitektuur on saanud nimetuse von Neumanni järgi, siis esimesena pakkusid sellise idee välja 1944. aastal ENIACI projekteeriad J. Presper Eckert ja John Mauchly ning von Neumann tegelikult arendas ja viimistles nende kontseptsiooni edasi.
 
<br />
 
==Ajalugu==
47. rida ⟶ 49. rida:
* SILLIAC - [[Sydney]], Austraalia (1956).
 
==Von Neumanni arhitektuuri puudusedpiirangud==
Kuna von Neumanni arhitektuuris säilitatakse käske ja andmeid ühtses mälukeskkonnas, siis on ka siini kasutus protsessori ja mälu vahel jagatud. Käsud ja andmed loetakse mälust jadapöördusega, mis aga seab olulisi piiranguid mälupöördustele. Sellist olukorda nimetatakse von Neumanni pudelikaelaks. Kuna erinevalt Harvardi arhitektuurist ei saa programmi mälu ja andmete mälu lugeda samaaegselt, on infotöötluse kiirus palju väiksem protsessori tegelikust jõudlusest, sest protsessor on sunnitud ootama seni, kuni andmete lugemine/kirjutamine mälust on lõpetatud.
Von Neumanni arhitektuuril on ka mitu puudust. Peale Von Neumanni pudelikaela (kirjeldatud allpool) võib programmide muutmine olla kahjulik. Mõnedes lihtsates ladustatud programmidega arvutis võib rikkis programm kahjustada ennast, teisi programme või [[operatsioonisüsteem]]i, mille tulemuseks on arvuti kokkujooksmine. Mälu kaitsmine ja muud pääsukontrollimeetodid on võimelised tavaliselt kaitsma arvutit nii tahtmatu kui ka programmide kuritahtliku muutmise eest.
 
Kuna von Neumanni arhitektuuri puhul puudub erisus mälus sälitatava info - andmete ja käskude - vahel, siis on oht, et programmis tekkiva vea tõttu kirjutatakse üle arvuti mälus olevad käsud, mis võib kahjustada hetkel arvutis jooksvat programmi, teisi arvuti mälus olevaid programme või koguni arvuti operatsioonisüsteemi.
Kuna protsessori käskude laadimine ning andmemäluga suhtlemine toimuvad samal siinil, tekib keskprotsessori kiirust piirav nähtus, mida kutsutakse Von Neumanni pudelikaelaks. See termin tuleneb [[John Backus]]e 1977. aasta Turingi auhinna loengust. Sest programmi mälu ning andmete mälu ei saa samaaegselt lugeda, on andmete vahetamise kiirus palju väiksem keskprotsessori tegeliku jõudluse piirist. See piirab väga palju efektiivse töötlemise kiirust, kui keskprotsessoril on tarvis teha vähe töötlust igal elemendil suurest andmete järjendist. Keskprotsessor on pidevalt sunnitud ootama, kuniks andmete kirjutamine või laadimine mälust on lõpetatud. Iga uue protsessoripere loomisel on pudelikaelaprobleem järjest suuremaks kasvanud, kuna protsessorite kiirused ja mälu on järjest suurenenud.
 
==Viited==