Kompjuter

Izvor: Wikipedija
Prijeđi na navigaciju Prijeđi na pretragu
Computer


Kompjuter ili kompjutor (engl. computer, od lat. computare: zbrojiti, računati), složeni uređaj koji služi za izvršavanje matematičkih operacija ili kontrolnih operacija koje se mogu izraziti u numeričkom ili logičkom obliku. Naziva se još i elektroničko računalo ili računar. Računari su sastavljeni od komponenata koje obavljaju jednostavnije, jasno određene funkcije. Kompleksna interakcija tih komponenata rezultira sposobnošću računara da obrađuje informacije.

Konvencionalno, kompjuter se sastoji od bar procesorskog elementa, tipično centralne procesorske jedinice (CPU), i neke forme memorije. Procesorski element izvodi aritmetičke i logičke operacije, a sekvencirajuća i kontrolna jedinica mogu da promene redosled operacija u responsu na sačuvanu informaciju. Periferni uređaji omogućavaju povraćaj informacije iz spoljašnjih izvora, te oni izvršavaju zapisivanje i čitanje.

Računari u današnjem smislu nastali su polovinom 20. veka, ali koreni računarstva su mnogo stariji.[1] Mehanički analogni računari su počeli da se pojavljuju u prvom veku i kasnije su korišćeni u srednjem veku za astronomske proračune. Tokom Drugog svetskog rata, mehanički analogni računari su korišćeni za specijalizovane vojne namene. Tokom tog vremena razvijeni su prvi elektronski digitalni računari. Originalno oni su bili veličine velike sobe, konzumirajći količinu energije jednaku količini neophodnoj za napajanje nekoliko stotina modernih personalnih računara (PC).[2]

Sposobnosti modernih računara baziranih na integrisanim kolima su milionima ili milijardama puta veće od ranih mašina, i oni zauzimaju malu frakciju prostora neophodnog za smeštaju ranih računara.[3] Jednostavni računari su dovoljno mali da se smeste u mobilne uređaje, i mobilni računari se mogu napajati malim baterijama. Lični računari u njihovim različitim formama su ikone informacionog doba i oni su ono što većina ljudi smatra „računarima“. Međutim, ugrađeni računari prisutni u mnogim uređajima od MP3 plejera do borbenih aviona i od igračaka do industrijskih robota su najbrojniji.

Etimologija[uredi | uredi kod]

Prva poznata upotreba reči „kompjuter“ dolazi iz 1613. godine iz knjige zvane „The Yong Mans Gleanings“ engleskog pisca Ričarda Brajtvajta: „I haue read the truest computer of Times, and the best Arithmetician that euer breathed, and he reduceth thy dayes into a short number.“ Ona se odnosi na osobu koja vrši proračune, ili izračunavanja. Reč je zadržala to značenje do sredine 20. veka. Od kraja 19. veka reč je počela da poprima njeno poznatije značenje, mašina koja vrši proračune.[4]

Osnovni principi[uredi | uredi kod]

Rad računara može biti zasnovan na kretanju mehaničkih dijelova, elektrona, fotona, kvantnih čestica ili neke druge fizičke pojave. Iako se računari mogu izgraditi na mnogim postojećim tehnologijama, gotovo svi današnji modeli sadrže u sebi elektroničke komponente.

Kod većine današnjih računara zadati problemi se u biti rješavaju pretvaranjem svih relevantnih informacija u matematičke relacije korištenjem binarnog sistema (nula i jedan). (Međutim, računari ne mogu riješiti sve matematičke probleme.)

Nakon što računar izvrši izračunavanje zadatog problema, rezultat se prikazuje na korisniku (čovjeku) pristupačan način; preko signalnih lampi, LED displeja, monitora, štampača i dr.

Početnici u radu sa računarima, naročito djeca, često ne mogu shvatiti činjenicu da su računari samo uređaji i da ne mogu "misliti" odnosno "razumjeti", čak ni ono što prikažu kao rezultat svog "rada". Slike, boje, riječi i dr. koje vidimo na ekranu računarskog monitora su samo programirani prikazi koje ljudski mozak prepoznaje i daje im značenje i smisao. Računar prosto manipulira tokovima elektrona kojima, na svojoj osnovnoj razini funkcionisanja - tranzistoru, dodjeljuje logičke vrijednosti nula ili jedan, odnosno, stanju "nema napona" ili "ima napona". Do sada nam nije poznat način kojim bi se uspješno imitiralo ljudsko razmišljanje ili samosvjesnost.

Veliki centralni računari (mejnfrejmovi)[uredi | uredi kod]

Mejnfrejm računar IBM 704 iz pedesetih godina 20. veka

Gotovo istovremeno su uvedeni udaljeni (tzv. „glupi“) terminali koji su imali monitor i tastaturu za unos podataka u jednom kućištu ali se obrada podataka i dalje obavljala u glavnom (i jedinom) računaru (engl. Mainframe).

Kasnije su se pojavili i „inteligentni“ terminali koji su deo operacija mogli da obavljaju sami. Vikipedija, danas, je u elektronskom smislu organizovana na sličan način - glavni računar je u SAD a inteligenti terminali (PC računari) kod korisnika. Internet ima ulogu „mreže“.

Bitne odrednice za konstruktivna rješenja[uredi | uredi kod]

Binarni ili decimalni?[uredi | uredi kod]

Važan korak naprijed u razvoju digitalnog računarstva bilo je uvođenje binarnog sistema za unutrašnje numeričke procese. Ovim je prestala potreba za kompleksnim izvršnim mehanizmima koje su računari zasnovani na drugim numeričkim sistemima, npr. decimalnom ili heksadecimalnom, zahtijevali. Usvajanje binarnog sistema rezultiralo je pojednostavljenjem konstruktivnih rješenja kod implementacije aritmetičkih funkcija i logičkih operacija, znači, i pojednostavljenjem sklopova i komponenata samog računara.

Mogućnost programiranja[uredi | uredi kod]

Mogućnost da se računar programira, tj. opremi nizom izvršnih instrukcija bez potrebe za fizičko-konstruktivnim izmjenama, osnovna je funkcionalna karakteristika većine računara. Ova osobina je značajno unaprijeđena njihovim razvojem do stepena na kojem su bili sposobni kontrolirati redoslijed izvršavanja instrukcija na osnovu podataka dobijenih tokom samog vršenja određenog programa. Ovo konstruktivno unaprijeđenje je još više pojednostavljeno uvođenjem (v. prethodnu cjelinu) binarne aritmetike kojom se mogu predstaviti različite logičke operacije.

Pohrana podataka[uredi | uredi kod]

Tokom računskih operacija često je potrebno pohraniti među-vrijednosti ("dva pišem a jedan pamtim") koje će se upotrijebiti u daljem računanju. Performanse nekog računara su najčešće ograničene brzinom kojom se vrijednosti čitaju/zapisuju iz/u memoriju i njenim kapacitetom. Prvobitno je zamišljeno da se memorija koristi samo za pomenute među-vrijednosti, međutim, ubrzo su se i sami programi počeli pohranjivati na ovaj način i to se uveliko primjenjuje kod današnjih kompjutera.

Kako rade digitalni računari[uredi | uredi kod]

Iako se tehnologija izrade računara značajno izmijenila od vremena prvih elektroničkih modela sagrađenih u četrdesetim godinama XX vijeka, još uvijek je većina današnjih rješenja zasnovana na fon Njumanovoj arhitekturi. Računar kao sklop sastavljen od tri glavna dijela:

  1. Mikroprocesor zajedno sa Aritmetičko-logičkom jedinicom ALU (eng. Arithmetic and Logic Unit),
  2. memorija,
  3. I/O (eng. Input and output system) ulazni i izlazni sklopovi.

Ovi dijelovi su međusobno povezani mnoštvom žica - "bus"; magistrala/sabirnica. Svi su obično pogonjeni vremenskim uređajem (tajmer, sat, generator takta), mada i drugi "događaji" mogu pogoniti kontrolne sklopove.

Memorija[uredi | uredi kod]

Ovdje podrazumijevamo da je memorija niz obrojčenih/numerisanih ćelija, od kojih svaka sadrži djelić informacije. Informacija može biti instrukcija kojom se računaru zadaje neki zadatak. Ćelija može sadržavati i podatak koji je potreban računaru da bi izvršio neku instrukciju. U svakom slučaju, bilo koja od ćelija može sadržavati djelić informacije koji u datom trenutku može predstavljati podatak a već u slijedećem - instrukciju. Znači, sadržaj memorijskih ćelija se neprestano mijenja.

Veličina svake ćelije i njihov broj, razlikuje se od računara do računara a i tehnologije izrade tokom njihovog razvoja su bile bitno različite. Tako smo imali elektromehaničke memorije - releje, cijevi ispunjene živom u kojima su se stvarali zvučni pulsevi, matrice stalnih/trajnih magneta, pojedinačnih tranzistora, sve do integralnih kola sa više miliona diskretnih i aktivnih elemenata.

Mikroprocesor, mikročip[uredi | uredi kod]

Artimetičko-logička jedinica (ALU - arithmetic and logic unit) vrši osnovne aritmetičke operacije (sabiranje, oduzimanje i dr.), logičke operacije (I, ILI, NE) i upoređivanje, npr. da li se sadržaj dva bajta podudara. U ovoj jedinici se zapravo "odrađuje glavni posao".

Kontrolna jedinica vodi računa o tome koji bajtovi u memoriji sadrže instrukciju koju računar trenutno obrađuje, određuje koje operacije će ALU izvršavati, nalazi informacije u memoriji koje su potrebne za te operacije i prenosi rezultate na odgovarajuća memorijska mjesta. Kada je to obavljeno, kontrolna jedinica ide na narednu instrukciju (obično smještenu na slijedećem memorijskom mjestu) ukoliko instrukcija ne govori računaru da je slijedeća instrukcija smještena negdje drugo. Kada se poziva na memoriju, data instrukcija može na različite načine odrediti odgovarajuću memorijsku adresu. Uz to, neke matične ploče podržavaju dva ili više procesora. Takve obično nalazimo kod servera/poslužitelja.

Ulaz i izlaz[uredi | uredi kod]

Putem ulaza i izlaza (I/O), računar dobija informacije iz vanjskog svijeta i šalje rezultate natrag. Postoji širok spektar I/O uređaja; od običnih tastatura, preko miševa, monitora, disketnih pogona, CD/DVD (optičkih) pogona, štampača, sve do skenera i kamera.

Zajednička osobina svih ulaznih jedinica je da pretvaraju informacije određene vrste u podatke koji dalje mogu biti obrađeni u digitalnom sistemu računara. Nasuprot tome, izlazne jedinice pretvaraju podatke u informacije koje korisnik računara može razumjeti. U ovom slučaju, digitalni sistem računara predstavlja sistem za obradu podataka.

Instrukcije[uredi | uredi kod]

Računarske instrukcije nisu bogate kao što je ljudski jezik. Računar poznaje samo ograničen broj jasno definiranih i jednostavnih instrukcija. Evo nekoliko primjera: "kopirati sadržaj ćelije 7 u ćeliju 19", "ako je sadržaj ćelije 999 veći od 1, slijedeća instrukcija se nalazi u ćeliji 100", "sadržaj ćelije 6 oduzeti sadržaju ćelije 33 a rezultat upisati u ćeliju 50".

Instrukcije su u računaru predstavljene binarnim sistemom brojeva. Operacija "kopiraj" je, npr. kod Intelovih mikroprocesora u binarnom sistemu predstavljena ovako: 10110000. Određeni niz instrukcija koje određeni kompjuter može razumjeti naziva se mašinski jezik. U stvarnosti, ljudi ne stvaraju instrukcije direktno u mašinskom jeziku već koriste programske jezike koje se prevode u mašinski jezik putem posebnih računarskih programa "prevodilaca" i kompajlera. Neki programski jezici su veoma bliski mašinskom jeziku, kao što je Assembler a drugi, kao Prolog, su zasnovani na apstraktnim principima koji imaju malo sličnosti sa stvarnim operacijama unutar računara.

Arhitektura[uredi | uredi kod]

Kod današnjih računara, aritmetičko-logička i kontrolna jedinica smješteni su na jednom integralnom kolu kojeg nazivamo centralna procesorska jedinica (CPU - central processing unit). Memorija računara smještena je na nekoliko malih integralnih kola pored centralnog procesora. Nesrazmjerno veliki dio ukupne mase računara zapravo je sadržan u sistemu napajanja električnom energijom - napojna jedinica i I/O uređajima.

Neki od većih računara razlikuju se od gore opisanog modela uglavnom po većem broju procesora i kontrolnih jedinica koji rade simultano. Dodajmo ovome da i neki računari, čija je isključiva namjena naučno istraživanje i računanje, imaju sasvim drugačiju arhitekturu i zbog drugačijeg, nestandardiziranog načina programiranja, nisu našli širu komercijalnu primjenu.

Dakle, u biti, princip funkcionisanja računara je prilično jednostavan; kod svakog takta, računar povlači instrukcije i podatke iz svoje memorije, izvršava instrukcije, pohranjuje rezultate i ponavlja ciklus. Ponavljanje se vrši sve do nailaska na instrukciju "stop".

Programi[uredi | uredi kod]

Računarski programi je zapravo niz instrukcija koje računar treba izvršiti, nekad uključujući i tabele podataka. Mnogo računarskih programa sadrži milione instrukcija i mnogo njih se neprekidno ponavlja. Tipični moderni personalni računar (PC - personal computer) može izvršiti nekoliko milijardi instrukcija u sekundi. Recimo i to da izvanredne sposobnosti računara nisu posljedica izvršavanja složenih instrukcija već miliona jednostavnih koje programeri uobličavaju u svrsishodne funkcije. Dobar programer, naprimjer, izradi niz instrukcija kojim se izvršava neki jednostavan zadatak kao što je iscrtavanje jedne tačke na ekranu i taj niz zatim učini dostupnim drugim programerima.

Sadašnji računari su u stanju izvršavati nekoliko programa istovremeno. U stvarnosti, određeno kratko vrijeme procesor izvršava instrukcije jednog programa a zatim se prebacuje na drugi program i izvršava dio njegovih instrukcija. To određeno kratko vrijeme često nazivamo vremenski isječak. Ovaj način rada stvara iluziju izvršavanja nekoliko programa istovremeno a u stvarnosti se radi o tome da programi dijele procesorsko "radno vrijeme". Operativni sistem je program koji najčešće ima ulogu kontroliranja ovakvog dijeljenja procesorskog vremena.

Operativni sistem[uredi | uredi kod]

Da bi računar radio, barem jedan program mora biti neprestano u funkciji. Pod normalnim uslovima, taj program je operativni sistem (OS - operating system). Operativni sistem odlučuje koji će program u datom trenutku bit izvršavan, koliko i kojih resursa će mu biti dodijeljeno (memorija, I/O) i sl. OS takođe obezbjeđuje takozvani apstraktni omotač oko hardvera i programima dozvoljava pristup preko servisa kao što su kodovi (upravljački programi - "drajveri" od engl. driver) koji omogućavaju programerima pisanje programa bez potrebe za poznavanjem intimnih detalja o svim priključenim uređajima.

Računarske mreže i Internet[uredi | uredi kod]

Glavni članci: Računarska mreža i Internet
Vizualizacija porcije ruta na Internetu

Kompjuteri su korišteni za koordiniranje informacije između višestrukih lokacija od 1950-tih godina. Američki vojni SAGE sistem je bio prvi primer takvog sistema na velikoj skali, što je dovelo do razvoja brojnih komercijalnih sistema specijalne namene kao što je Sabre.[5]

Tokom 1970-tih godina, računarski inženjeri u istraživačkim institucijama širom SAD su počeli da povezuju računare koristeći telekomunikacionu tehnologiju. Inicijativu je finansirala ARPA (danas DARPA), a računarska mreža koja je proizašla se zvala ARPANET.[6] Tehnologije koje omogućile postojanje Arpaneta su se proširile i evoluirale.

Vremenom se mreža proširila izvan akademskih i vojnih institucija i postala je poznata kao Internet. Pojava umrežavanja je bila praćena redefinisanjem prirode i granica računara. Računarski operativni sistemi i aplikacije su modifikovani kako bi obuhvatili sposobnost definisanja i pristupa resursima drugih računara na mreži, kao što su periferni uređaji, zapisane informacije, i slično, kao oblik proširenja resursa pojedinačnih računara. Inicijalno su instalacije bile dostupne samo ljudima koji su radilu u visoko tehničkim okruženjima, dok tokom 1990-tih širenje aplikacija poput imejla i World Wide Web, u kombinaciji sa razvojom jeftine, brze mrežne tehonologije poput Eterneta i ADSL nije omogućilo sveprisutnost računara. Zapravo, broj umreženih računara i dalje doživljava fenomenalni rast. Veoma velika porcija personalnih računara se regularno povezuje za Internet radi komunikacije i prijema informacije. „Bežično“ umrežavanje, koje često koristi mreže mobilnih telefona, je omogućilo da računarsko umređavanje postane sveprisutno i u mobilnom računarskom okruženju.

Paradigmi kompjuterske arhitekture[uredi | uredi kod]

Postoje brojni tipovi računarskskih arhitektura:

Od svih tih apstraktnih mašina, kvantni računar verovatno najviše obećava da će revolucionizirati računarstvo.[7]

Ligičke kapije su česta apstrakcija koja se može primeniti kod većine digitalnih i analognih paradigama.

Sposobnost zapisivanja i izvršavanja liste instrukcije zvanih programi čini računare ekstremno svestranim, i čini ih različitim od kalkulatora. Turingova teza je matematički izraz te svestranosti: svaki računar sa minimalnom sposobnošću (koji je Turing-kompletan), u principu, ima sposobnost izvršavanja istih zadataka koje bilo koji drugi računar može da izvrši. Stoga, svaki tip računara (netbook, superračunar, celularni automaton, etc.) ima sposobnost izvršavanja istih računarskih zadataka, ako se dozvoli dovoljno vremena i kapaciteta memorije.

Reference[uredi | uredi kod]

  1. Rana istorija računara
  2. In 1946, ENIAC required an estimated 174 kW. By comparison, a modern laptop computer may use around 30 W; nearly six thousand times less. „Approximate Desktop & Notebook Power Usage”. University of Pennsylvania. Arhivirano iz originala na datum 2009-06-03. Pristupljeno 20 June 2009. 
  3. Early computers such as Colossus and ENIAC were able to process between 5 and 100 operations per second. A modern “commodity” microprocessor (as of 2007) can process billions of operations per second, and many of these operations are more complicated and useful than early computer operations. „Intel Core2 Duo Mobile Processor: Features”. Intel Corporation. Pristupljeno 20 June 2009. 
  4. computer, n.. Oxford English Dictionary (2 izd.). Oxford University Press. 1989. Arhivirano iz originala na datum 2006-06-25. Pristupljeno 10 April 2009. 
  5. Agatha C. Hughes (2000). Systems, Experts, and Computers. MIT Press. str. 161. ISBN 978-0-262-08285-3. »The experience of SAGE helped make possible the first truly large-scale commercial real-time network: the SABRE computerized airline reservations system...« 
  6. „A Brief History of the Internet”. Internet Society. Pristupljeno 20 September 2008. 
  7. "Computer architecture: fundamentals and principles of computer design" by Joseph D. Dumas 2006. page 340.

Literatura[uredi | uredi kod]

Vanjske veze[uredi | uredi kod]