Von Neumanni arhitektuur: erinevus redaktsioonide vahel

Eemaldatud sisu Lisatud sisu
TuuleT (arutelu | kaastöö)
PResümee puudub
TuuleT (arutelu | kaastöö)
PResümee puudub
1. rida:
[[Fail:Von Neumanni arhitektuur.png|pisi|293x293px|von Neumanni arhitektuur|alt=]]
'''Von Neumanni arhitektuur''', tuntud ka nime all von Neumanni mudel või Princetoni arhitektuur, on [[arvutiarhitektuur]], mis põhineb aastal 1945 matemaatik [[John von Neumann|John von Neumanni]] poolt välja pakutud arvuti arhitektuuri kirjeldusel uue täis-elektroonilise [[EDVAC]] arvuti jaoks. Käsikiri “First Draft of a Report on the EDVAC”<ref name=":0">{{Netiviide|autor=von Neumann, J.|url=https://sites.google.com/site/michaeldgodfrey/vonneumann/vnedvac.pdf|pealkiri=First Draft of a Report on the EDVAC|väljaanne=|aeg=30. juuni 1945|vaadatud=30. aprill 2020|arhiivimisurl=https://web.archive.org/web/20130314123032/http://qss.stanford.edu/~godfrey/vonNeumann/vnedvac.pdf|arhiivimisaeg=14. märts 2013}}</ref><ref name=":4" /> kirjeldas arvuti arhitektuurilist ülesehitust, kus käske ja andmeid säilitatakse arvutis ühises mäluruumis ning arvutit juhitakse tema enese [[Mälu (arvuti)|mällu]] salvestatud programmiga. See arvutiarhitektuur on saanud aluseks suurema osa tänapäeva arvutite disainile.
 
Terminist “von Neumanni arhitektuur” on kujunenud mõiste, mis kirjeldab kõiki siseprogrammarvuteid, milles ühise [[Siin|siini]] tõttu ei saa käskudega ja andmetega seotud operatsioonid toimuda samal ajal. Von Neumanni arhitektuuril põhinevad arvutid on lihtsama disainiga kui [[Harvardi arhitektuur|Harvardi arhitektuuriga]] arvutid, mis on samuti siseprogrammarvutid, kuid millel on eraldi aadressi- ja andmesiinid mälust lugemise/kirjutamise jaoks ning käskude mälust võtmiseks.
10. rida:
==Ajalugu==
[[Fail:ARL EDVAC 01.png|pisi|256x240px|Pildil arvuti EDVAC|alt=]]
John Mauchly ja J. Presper Eckerti juhtimisel hakati 1943. aastal [[Pennsylvania Ülikool|Pennsylvania ülikoolis]] ehitama arvutit ENIAC, aastal hiljem liitus projektiga ka von Neumann.<ref name=":3" /> Aastal 1945, kui ENIAC-i ehitus oli veel käimas, avaldas von Neumann käsikirja, milles tõi välja peamised ideed elektroonilise siseprogramm üldkasutatava digitaalse arvuti ehk EDVAC-i jaoks. Pennsylvania ülikoolis 1946. aastal peetud EDVAC-i teemalised loengud olid väga populaarsed ja aitasid olulisel määral kaasa uute ideede levimisele.<ref name=":4" /><ref name=":1">{{Netiviide|autor=|url=https://plato.stanford.edu/entries/computing-history/#ENIAC|pealkiri=The Modern History of Computing|väljaanne=|aeg=18. detsember 2000|vaadatud=30. aprill 2020|arhiivimisurl=https://web.archive.org/web/20200314051137/https://plato.stanford.edu/entries/computing-history/|arhiivimisaeg=14. märts 2020}}</ref><ref name=":2">{{Netiviide|autor=|url=https://www.ias.edu/electronic-computer-project|pealkiri=Electronic Computer Project|väljaanne=|aeg=|vaadatud=30. aprill 2020|arhiivimisurl=https://web.archive.org/web/20191130144326/https://www.ias.edu/electronic-computer-project|arhiivimisaeg=30. november 2019}}</ref> EDVAC-i ehitamise käigus väljatöötatud uudse arvutiarhitektuuri põhimõtted toodi välja 1946. aastal [[Arthur Burks|Arthur W. Burks]], Herman H. Goldstine ja John von Neumanni poolt avadatud artiklis “Preliminary Discussion of the Logical Design of an Electronic Computing Instrument”<ref>{{Netiviide|autor=Burks, A. W. , Goldstine, H. H. , von Neumann, J.|url=https://library.ias.edu/files/Prelim_Disc_Logical_Design.pdf|pealkiri=Preliminary Discussion of the Logical Design of an Electronic Computing Instrument|väljaanne=|aeg=28. juuni 1946|vaadatud=30. aprill 2020|arhiivimisurl=https://web.archive.org/web/20191128224639/https://library.ias.edu/files/Prelim_Disc_Logical_Design.pdf|arhiivimisaeg=28. november 2019}}</ref>. Kuigi artikkel valmis kolme autori ühistööna, on neist hiljem meeles peetud vaid ühte - John von Neumanni.
 
Siseprogrammarvutid olid suur edasiminek 1940. aastate programmjuhtimisega arvutitest, nagu Colossus ja ENIAC, kuna arvuti töö juhtimiseks hakati kasutama arvuti mälus säilitatavat programmi. Paljud esimesed arvutid ei olnud kas üldse ümberprogrammeeritavad (arvuti täitis vaid üht kindlat riistvarasse installeeritud programmi) või siis oli võimalik arvuti ülesannet teatud piirides muuta, kuid see nõudis palju vaeva. Näiteks kuigi ENIACi puhul oli tegemist juba täiselektroonilise arvutiga, programmeeriti seda ikka käsitsi sadade ja tuhandete pistikute ning lülitite ümberseadistamisega. Programmi ettevalmistamisele kulus tavaliselt kuu või kaks ning arvuti uue programmi jaoks töökorda seadmiseks paar päeva.<ref name=":4">{{Raamatuviide|autor=McCartney, ScottS.|pealkiri=ENIAC, The Triumphs and Tragedies of the World's First Computer|aasta=1999|koht=Ameerika Ühendriigid|kirjastus=Walker Publishing Company|lehekülg=90-95, 114-128|url=https://archive.org/details/eniac00scot/}}</ref>
 
==Tööpõhimõte==
61. rida:
 
==Von Neumanni arhitektuuri piirangud==
Käske ja andmeid hoitakse ühtses mälukeskkonnas ning sellest tingituna on siini kasutus protsessori ja mälu vahel samuti 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.<ref name="backus">{{cite journal |doilast=10Backus|first=J.1145/359576.359579 W.|url=|title=Can Programming Be Liberated from the von Neumann Style? A Functional Style and Its Algebra of Programs |author-lastjournal=Backus |author-firstvolume=John W|pages=|doi=10. 1145/359576.359579|via=|doi-access=free }}</ref>
 
Kuna von Neumanni arhitektuuri puhul puudub erisus mälus säilitatava 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.