A számítógép története
Charles Babbage (1791-1871)

- malom - ma CPU-nak nevezzük
- vezérlő kód - a lehetséges műveletekhez egyedi kódot rendelt - ma utasításkészlet néven emlegetjük
- memória - felismerte, hogy a közbenső lépések eredményeit átmenetileg tárolni kell
Ada Byron (1815-1852)

Neumann János (1903-1957)

Néhány meghatározó gondolat:
- A számítógép legyen digitális (az adat és a program is)
- Szekvenciális végrehajtás - amíg nem fejeződik be a művelet, nem kezdődhet el a következő
- Egy működőképes számítógépnek legalább öt alapvető funkcionális egységből kell állnia:
- ALU - aritmetikai egység
- CU - központi vezérlőegység
- Regiszterek – meghatározott célú memóriák
- Min 1 bemeneti periféria
- Min 1 kimeneti periféria
Az ő nevéhez köthető az adatok (karakter, fixpontos, lebegőpontos, BCD) és az utasítások kódolásának (művelet kód + operandus[ok]) a meghatározása. A legtöbb regisztert ő nevezte el. Általánosan használta a folyamatábrát az algoritmusok szemléltetésére. Szétválasztotta és részletesen meghatározta a perifériák szerepét.
Claude Shannon (1916-2001)

A Neumann elvű számítógép funkcionális részei
vezérlés - Control Unit
Értelmezi a bejövő utasítást és a processzor többi elemét felkészíti a utasítás végrehajtására. A processzor sebességét és felhasználhatóságát nagy mértékben meghatározza, milyen gépi utasításokat képes végrehajtani. Utasítás készlet alapján kétféle processzort szokás megkülönböztetni. RISK és CISC.
A RISC (Reduced Instruction Set Computer) processzorok tervezési filozófiája az, hogy kevesebb utasítás kevesebb áramköri elemet igényel, gyorsabb az értelmezés, gyorsabb végrehajtást kapunk. Az egyszerűbb áramköri felépítés a felmelegedést is csökkenti. Amennyiben pontosan tudjuk a CPU felhasználási területét ez a legjobb választás. Pl.: mobil eszközök az ARM (CISC) technológiát használják, de a szerverek szintén csak virtuális gépeket futtatnak, így ott is a legjobb ilyen típusú processzorokat választani.
A CISC (a Complex Instruction Set Computer, vagyis "összetett utasításkészlettel rendelkező számítógép") olyan processzorokat jelent, melyek utasításkészlete jóval több, bonyolultabb utasítást tartalmaz, mint a RISC processzorok utasításkészlete. A komplex utasítások jóval bonyolultabb felépítésű processzorokat igényelnek, melyek fejlesztése és tesztelése költségesebb, műveletvégzésük idő igényesebb. A CISC processzorok esetén az alkalmazott vezérlési mód a mikroprogramozott vezérlési eljárás. Ennek lényege, hogy a végrehajtás alatt lévő utasítás egy mikroprogramtárban lévő programot indít el. Az általános célú felhasználáshoz, a PC-kben inkább ilyen típusú processzor használata az ajánlott.
műveletvégzés - Arithmetic Logic Unit
Az ALU felelős a matematikai és logikai műveletek végrehajtásáért, mint például az összeadás, kivonás, szorzás és a numerikus értékek összehasonlítása. A végrehajtás 'huzalozott'.
tárolás - Regiszterek
A regiszterek kicsi, gyors tárolóterületek a CPU-n belül, amelyek ideiglenesen tárolják a folyamatos működéshez használt adatokat. Általános célú és kötött felhasználási lehetőségűekre szükség van. Néhány kötött célú regiszter, amyelyekkel minden processzor rendelkezik:
- Programszámláló (PC)
- A programszámláló nyomon követi a következő lekérendő és végrehajtandó utasítás memóriacímét.
- Utasításregiszter (IR)
- Az utasításregiszter tartalmazza az éppen lekért, végrehajtás alatt álló utasítást.
- Akkumulátor (ACC)
- Az Akkumulátor egy általános célú regiszter, amelyet aritmetikai és logikai műveletekhez használnak. A számítások során a keletkező eredményeket tárolja.
- Veremmutató (SP)
- A veremmutató a verem tetejére mutat, amely a funkcióhívások és egyéb műveletek során ideiglenes tárolásra használt memóriaterület.
- Állapotregiszter/Flags Register (SR)
- Az állapotregiszter vagy a jelzőregiszter minden bitje mást jelez, például átvitel, túlcsordulás, nulla eredmény és mások. Ezek a jelzők segítenek a döntések meghozatalában és a programfolyamat vezérlésében a korábbi műveletek eredményei alapján.
- Vezérlőregiszterek (CR)
- A vezérlőregiszterek kezelik a CPU működésével kapcsolatos különféle vezérlési beállításokat és paramétereket, például megszakításkezelést, memóriakezelést és rendszerkonfigurációt.
bus - belső kommunkáció
A számítógép működtetése a processzor működtetését jelenti. A gyors működtetés érdekében nagyon gyorsan és pontosan kell kiszolgálni adatokkal és a feldolgozott adatokat el kell juttatni az célnak megfelelő helyre. Ezt a feladatot látja el a bus. Funkcionálisan három részét különböztetjük meg:
- adat busz
- Az adatbusz szállítja az adatokat a processzor, a memória és a perifériák között. Az adatbusz szélessége, amelyet általában bitben adnak meg, meghatározza, hogy egyszerre hány bit adatot képes továbbítani a busz.
- cím busz
- A címbusz hordozza azokat a memóriacímeket vagy eszközcímeket, amelyek meghatározzák, hogy az adatbuszon küldött adatokat hová kell írni, vagy honnan kell olvasni. A címbusz a processzor és a memória, valamint más eszközök közötti kommunikációban kulcsfontosságú.
- A címbusz szélessége meghatározza, hogy a processzor mekkora memóriatartományt tud megcímezni. Például egy 32 bites címbusz 2^32 címhelyet, azaz 4 GB memóriát képes megcímezni, míg egy 64 bites címbusz akár 2^64 címhelyet is képes kezelni, ami jóval nagyobb (2,097,152 TB ≈ 2,048 Petabyte ≈ 2 Exabyte (EB) ) memóriatartományt jelent .
- vezérlő busz
- A vezérlőbusz hordozza azokat a vezérlési és állapotjelek, amelyek szinkronizálják a rendszer különböző részei közötti adatátvitelt. A vezérlőbusz határozza meg, hogy az adatbusz és a címbusz hogyan működik, és melyik eszköz használhatja őket egy adott időpontban.
- Különféle jeleket hordoz, például olvasási/írási jeleket, órajel impulzusokat, memória engedélyezési jeleket, valamint megszakítási jeleket.
- A vezérlőbusz szinkronizálja az adatcserét a processzor és a memória, illetve a perifériák között, biztosítva, hogy a különböző komponensek megfelelő időben kommunikáljanak.
Operatív tár
Az operatív tár, más néven fő memória vagy RAM (Random Access Memory), a számítógépek egyik legfontosabb hardvereszköze. Itt tárolódnak azok az adatok és programok, amelyeket a CPU (központi feldolgozó egység) azonnal elérhet és használhat futás közben. Az operatív tár a számítógépes működés sebességére és hatékonyságára közvetlen hatással van.
A legtöbb modern számítógép DRAM (Dynamic Random Access Memory) alapú operatív tárat használ. A DRAM előnye, hogy nagy mennyiségű adat tárolására képes kis méretben és költséghatékonyan.
A DDR (Double Data Rate) RAM változatai, mint például DDR3, DDR4, és a legújabb DDR5, egyre nagyobb sebességet és hatékonyságot biztosítanak.
Az operatív tár kulcsszerepet játszik a számítógépek működésében, biztosítva, hogy a processzor gyorsan hozzáférjen az adatokhoz és programokhoz. Minél több memória áll rendelkezésre, és minél gyorsabb az, annál jobban teljesít a számítógép, különösen akkor, ha több feladatot futtat egyszerre, vagy erőforrásigényes alkalmazásokat használ. Az operatív tár fejlesztése és bővítése az egyik leggyakoribb módszer a számítógép teljesítményének növelésére.
Eszközvezérlők - Device Drivers
Eszközvezérlők (vagy "driver"-ek) olyan speciális szoftverek, amelyek az operációs rendszer és a hardver eszközök közötti kommunikációt biztosítják. Az operációs rendszer nem tud közvetlenül kommunikálni a különféle hardvereszközökkel, mint például a nyomtatók, grafikus kártyák, hálózati adapterek, vagy hangkártyák. Az eszközvezérlők áthidalják ezt a rést azáltal, hogy egy köztes rétegként működnek. Az operációs rendszer utasításokat küld az eszközvezérlőnek, amely azután ezeket az utasításokat a konkrét hardver számára érthető formában továbbítja. Így az eszközvezérlők alapvető szerepet játszanak az operációs rendszer működésében és a rendszer teljesítményének optimalizálásában.
Az eszközvezérlőket általában a hardver gyártói készítik. Mivel a gyártók ismerik a legjobban a saját hardverük specifikációit és működését, ők a legalkalmasabbak az eszközvezérlők fejlesztésére. Az eszközvezérlők fejlesztését azonban néha harmadik fél szoftverfejlesztők is végezhetik, különösen akkor, ha a gyártó nem biztosít támogatást egy adott operációs rendszerhez, vagy ha speciális funkcionalitásra van szükség.
Bővítőhely - Slot
Olyan csatlakozók amelyek az adott szbaványnak megfelelő eszköz számára az alaplap belső kommunikációs csatornájára való csatlakozását teszik lehetővé, ezzel bővítve a számítógép szolgáltatásait. Formájuk és színük általában elárulja, milyen szabványnak megfelelő eszközt várnak.
- PCI (Peripheral Component Interconnect) slot
- A PCI slot-ok különféle bővítőkártyák, például hangkártyák, hálózati kártyák, vagy régebbi videokártyák csatlakoztatására használhatók. Általános célú csatlakozó, amely többféle hardverkomponenst képes kezelni. Az alaplapokon a PCI slotok száma és típusa változó lehet.
- PCIe (PCI Express) slot
- A PCI Express (PCIe) slotokat videokártyák, SSD-k, hálózati kártyák és egyéb nagy teljesítményű bővítőkártyák csatlakoztatására használják. A PCIe slotok többféle méretben (x1, x4, x8, x16) érhetők el, amely meghatározza a rendelkezésre álló sávszélességet. A leggyakoribb a PCIe x16, amelyet elsősorban videokártyákhoz használnak.
- AGP (Accelerated Graphics Port) slot
- Az alaplapok különböző számú RAM slotot tartalmaznak, amelyekbe DDR, DDR2, DDR3, DDR4, vagy DDR5 memóriamodulokat helyezhetünk. A címbusz és az egyes modulok száma és kapacitása határozza meg a maximális memóriaméretet, amelyet az képes kezelni.
- RAM slotok (DIMM slots)
- A számítógép rendszermemóriájának (RAM) csatlakoztatására szolgálnak.
- M.2 slot
- Az M.2 slotokat elsősorban az újabb NVMe SSD-k csatlakoztatására használják, de csatlakoztathatók hozzájuk más eszközök, például Wi-Fi kártyák is.
- ISA (Industry Standard Architecture) slot
- Az ISA slotok régebbi típusú bővítőkártyák csatlakoztatására szolgáltak, például hangkártyákhoz, modemekhez vagy korai hálózati kártyákhoz. Ma már elavultak, és újabb alaplapokon nem találhatók meg.