Povijesni pregled razvoja računala i temelji računarske znanosti
Računarstvo i računarska znanost
-
Uobičajena percepcija: "nešto što ima veze s računalima", "znanost o računalima"
- FER-ovi preddiplomski i diplomski studiji
-
izučava procese koji djeluju na podatke i koji se sami mogu prikazati kao podaci u obliku programa
- brojne discipline: neke su teoretske (npr. računska teorija složenosti), neke praktične (npr. računalna grafika), neke se bave dizajnom sustava (npr. računalne mreže, paralelno i distribuirano računarstvo)
-
nije isključivo znanost o računalima, mnogo je starija je od samih računala
- "Computer science is no more about computers than astronomy is about telescopes." (Michael Fellows)
- nije ni znanost u užem smislu, spada pod inženjerstvo
Primjeri problema kojima se računarstvo bavi
- smanjenje veličine konzolaških igara (spada u disciplinu koja se naziva dizajn program prevoditelja)
- procjena koliko je moguće poboljšati performanse zbrajanja i množenja u tabličnom kalkulatoru na novoj generaciji AMD-ovih procesora (optimizacija programskog koda)
- procjena koliko bi koštao razvoj softvera temeljenog na poznatim algoritmima u domeni računalne dinamike fluida koji nudi zadovoljavajuću točnost za primjenu u industriji automobila (softversko inženjerstvo)
- grafički prikaz ljudske kože (računalna grafika)
- na koji način poboljšati performanse procesora unutar iPhonea za barem 20% kako bi aplikacije nove generacije radile prihvatljivo brzo (arhitektura računala)
- prilagodba računalne igre za povećanje zaronjenja igrača (engl. player immersion) (interakcija čovjeka i računala)
- mogu li Ante i Frane komunicirati preko veze koja se prisluškuje, ali tako da njihov razgovor nije moguće dešifrirati (kriptografija)
- može li se izračunati koji od prvih n prirodnih brojeva su prosti brojevi i s kojim računalnim resursima (teorija izračunljivosti)
- ako se može izračunati koji od prvih n prirodnih brojeva su prosti brojevi u jednom danu, može li se korištenjem 24 umrežena računala isto izračunati u jednom satu (paralelno i distribuirano računarstvo)
Informatika
-
znanost o obradi i prijenosu podataka i informacija (informacija je podatak stavljen u kontekst koji time dobiva značenje)
- u Hrvatskoj je klasificirana u području društvenih znanosti, polju informacijskih i komunikacijskih znanosti (prema Pravilniku o znanstvenim i umjetničkim područjima, poljima i granama)
-
pojam iz njemačkog govornog područja (1957. godina, Karl Steinbuch), informacija + automatika
Sklopovska oprema (hardver)
Sklopovska oprema (hardver) (engl. hardware) uključuje fizičke, opipljve dijelove računala kao što su kućište, osnovni procesor, grafički procesor, monitor, tipkovnica, zvučna kartica itd.
Matična ploča
Matična ploča (engl. motherboard) je osnovna ploča u računalu koja omogućuje komunikaciju između komponenata računalnog sustava.
Osnovni procesor
Osnovni procesor (engl. central processing unit, CPU) je elektronički krug u računalu koji izvodi instrukcije programa kao što su aritmetika, logika, upravljačke i ulazno-izlazne operacije.
Pojam procesora se mijenjao tijekom godina, ali uvijek ima aritmetičko-logičku jedinicu (engl. arithmetic logic unit) i registre. Vremenom je dobio i:
- jedinicu za operacije s pomičnim zarezom (engl. floating point unit),
- nekoliko nivoa priručne memorije (engl. cache),
- memorijski kontroler za upravljanje glavnom memorijom i dio ulazno-izlaznih kontrolera,
- u novije vrijeme i grafički procesor (npr. AMD Accelerated Processing Unit i Intel Core i3, i5, i7).
Grafički procesor
Grafički procesor (engl. graphics processing unit, GPU) je elektronički krug koji stvara slike u međuspremniku okvira (engl. (engl. framebuffer) namijenjene za prikaz na zaslonu.
Memorija
Glavna memorija, često samo memorija, je jedina izravno memorija dostupna osnovnom procesoru. U njoj se nalaze programi koje procesor dohvaća i izvršava te podaci na kojima se operacije vrše.
Pohrana podataka
Pohrana podataka je memorija koja nije izravno dostupna osnovnom procesoru, ali se može doseći putem ulazno-izlaznih kanala. Programi i podaci iz pohrane podataka prvo idu u glavnu memoriju, a tek se onda koriste.
Mrežni adapter
Mrežni adapter je uređaj u računalu koji služi za povezivanje računala na računalnu mrežu. Mrežni adapter omogućuje komunikaciju računala putem računalne mreže, koja može biti povezana ili kabelima ili bežično.
Napajanje
Napajanje pretvara izmjeničnu struju (uglavnom iz utičnice) u istosmjernu struju potrebnu računalnim komponentama.
Programska oprema (softver)
Programska oprema (softver) (engl. software) je skup računalnih instrukcija i podataka koji kaže računalu kako treba raditi.
Izvršni softver
Izvršni softver (engl application software) je softver napravljen da izvede posebne funkcije koje nisu dio osnovnog rada računala. To su, primjerice, obrada teksta, tablična kalkulacija, 3D modeliranje i animacija, računovodstvo, pregledavanje weba, komunikacija putem računalne pošte i izvođenje snimljenog audiovizualnog sadržaja. U izvršni softver spadaju i računalne igre. Nama interesantni znanstveni softveri su također vrsta izvršnih softvera.
Sustavni softver
Sustavni softver (engl system software) je softver koji služi kao platforma za drugi softver.
- Operacijski sustav: npr. Manjaro, Ubuntu, FreeBSD, macOS, Microsoft Windows
- Upravljački programi uređaja: npr. NVIDIA Driver, AMD Radeon Software, Mellanox EN Driver
- Pomoćni alati: npr. systemd, GCC
Zlonamjerni softver
Zlonamjerni softver je softver namjerno dizajniran da napravi štetu računalu ili računalnoj mreži.
Ispitna pitanja
- Objasnite što je računarstvo.
- Navedite dvije discipline računarstva i objasnite čime se bave.
- Objasnite zašto kažemo da računarstvo nije (isključivo) znanost o računalima.
- Dajte primjer problema kakav neka disciplina računarstva rješava.
- Objasnite što je informatika.
- Opišite ulogu matične ploče računala.
- Navedite dijelove koje osnovni procesor u računalu može imati.
- Objasnite razliku između osnovnog i grafičkog procesora.
- Objasnite razliku između (glavne) memorije i pohrane podataka.
- Navedite dva primjera izvršnog softvera.
- Objasnite razliku između izvršnog i sustavnog softvera.
- Navedite dva primjera sustavnog softvera.
Author: Vedran Miletić