Kas yra kompiuterių architektūra?

Kompiuterių architektūra reiškia daugybę panašių idėjų kompiuterių mokslo ir technologijų srityse. Programinės įrangos lygmeniu tai reiškia asamblėjos kalbos sistemas, kurios sujungia įvairias kompiuterio aparatinės įrangos dalis į vieną veikiančią sistemą. Kalbant apie aparatinę įrangą, tai vienodai taikoma aparatinės įrangos kūrimo ir panaudojimo metodams bei kompiuterio komponentų kūrimo procesui. Kiekvienas iš šių apibrėžimų apibūdina panašų procesą – idėją pradėti nuo neveikiančios kompiuterinės sistemos ir paversti ją funkcionalia, tačiau visi į procesą žiūri iš skirtingų pozicijų.

Kompiuterių architektūros programinės įrangos versija tikriausiai yra sunkiausiai suprantama netechniniam asmeniui. Kompiuterinė sistema bet kuriuo metu atlieka tūkstančius užduočių, kurios neturi nieko bendra su tuo, ką daro vartotojas. Šios užduotys sudaro kompiuterio sistemų pagrindą. Tai gali būti informacijos perkėlimas iš trumpalaikės į ilgalaikę atmintį arba laiko tikrinimas pagal suplanuotą užduotį, kad pamatytumėte, ar laikas suaktyvinti.

Visos šios kompiuterio architektūros funkcijos priklauso nuo mašinos kodo, kad suprastų, kaip sujungtos skirtingos mašinos dalys. Šis kodas sukuria pagrindinį kompiuterio aparatinės įrangos projektą, kurį geriau veikiančios programos naudoja norėdami pasiekti tokius dalykus kaip procesoriaus laikas ir atminties adresai. Šis mašinos kodo projektas apibrėžia sistemos struktūrą programinės įrangos požiūriu.

Pirmoji kompiuterio architektūros aparatinės įrangos versija yra forma, naudojama kuriant programinės įrangos projektą. Ši architektūros forma sutelkta į tai, kaip įvairios mašinos dalys siųs ir gaus duomenis, kad galėtų dirbti kartu. Pavyzdžiui, jei atminties modulis nori, kad informacija būtų suformatuota tam tikru būdu, svarbu, kad procesorius atsiųstų ją tokiu formatu, kad būtų galima išsaugoti duomenis. Jei įvairios kompiuterio dalys negali susisiekti viena su kita, sistema neveiks.

Kita kompiuterio architektūros aparatinės įrangos versija skirta atskiroms aparatūros dalims. Šis metodas reikalauja, kad dizaineriai pažvelgtų į atskirą kūrinį ir nustatytų, kaip jis veiks. Beveik kiekvienoje kompiuterio aparatūros dalyje yra sudėtinga instrukcijų serija, skirta manipuliuoti duomenimis, gauti instrukcijas ir duoti komandas. Visa tai vyksta aparatinėje įrangoje, todėl reikalinga visiškai realizuota kalba ir komandų sistema. Iš esmės kiekviena aparatūros dalis veikia kaip labai specializuotas kompiuteris.
Kadangi kiekvienas iš šių apibrėžimų kalba apie skirtingą kompiuterio architektūros aspektą, jie visi puikiai dera. Pirma, dizaineris žiūri į atskiras techninės įrangos dalis ir nustato, kaip jos veikia. Tada dalys sujungiamos, kad būtų sukurta aparatinės įrangos sistema. Galiausiai mašininis kodas naudojamas toms sistemoms sujungti taip, kad programos galėtų sąveikauti su aparatine įranga.