Računarstvo

S Wikipedije, slobodne enciklopedije

Računarstvo (engleski: Computing) jest svaka aktivnost koja koristi računare za upravljanje, obradu i razmjenu informacija. Uključuje razvoj hardvera i softvera. Glavne računarstvene discipline su računarski inženjering, softverski inženjering, računarska nauka, informacijski sistemi i informacijska tehnologija.

Historija[uredi | uredi izvor]

Diferencijalna mašina: računanje rješenja za polinomsku funkciju

Početak računarstva[uredi | uredi izvor]

Računarstvo je nastalo u 19. vijeku razmišljanjem Charlesa Babbagea, koji je zamislio mašinu koja bi uzimala podatke, obrađivala ih na neki način i prikazivala rezultate korisniku. Mašinu je zamislio kao mehanički stroj, iako računari danas ne rade na tom principu, postoji povezanost modernih računara s njegovim pionirskim idejama.

  • Binarni sistem – danas skoro svaki računar koristi binarni brojni sistem, koji se sastoji samo od jedinica i nula, što je za računar jednostavno: 1 – ima struje, 0 – nema struje. Sistem koji ima deset cifara (0 – 9) zove se dekadni, a postoje pretpostavke da su Babilonci koristili heksadecimalni sistem (sistem od šesnaest cifara). Babbage je imao ideju korištenja bušenih kartica za svoj računar, a upravo to se i koristilo za pohranjivanje podataka dok se nije otkrilo magnetno zapisivanje.
  • Osnovna ideja – ulazno/izlazni sistem u kojem dajemo računaru da obradi podatke, kažemo mu na koji način da ih obradi, koje računar obradi i prikaže rezultate na nekom od izlaznih uređaja.

Prvi funkcionalni računar, u današnjem smislu, napravio je njemački izumitelj Konrad Zuse 1941. godine. Programski kod mašina je primala putem bušenih kartica i imala samo ograničenu mogućnost programiranja. Računar je radio pomoću električnih releja i imao je odvojenu radnu memoriju i ulazno/izlazni sistem. U to vrijeme računari su bili ogromni, veličine jedne prosječne kuće, te su se najčešće koristili za vojne svrhe.

Za grafički prikaz hronologije računarstva pogledati: Hronologija historije računarstva.

Niz servera iz 2006.

Podjela po generacijama[uredi | uredi izvor]

Računari se po historijskom razvoju, također, dijele na generacije, shodno tehnološkom napretku. Svaku noviju generaciju obilježava bitno manje zauzimanje prostora i veća brzina izvršavanja, bolja pouzdanost i slično.

  • Prva generacija računara
1937. do 1958. - temeljna jedinica izrade računara je elektronska cijev.
  • Druga generacija računara
1959. do 1963. - temeljna jedinica izrade računara je tranzistor.
  • Treća generacija računara
1964. do 1971. - temeljna jedinica izrade računara je integrirani sklop.
  • Četvrta generacija računara
1971. do danas - temeljna jedinica izrade računara je procesor.
  • Peta generacija računara
Današnji i budući računari, zasnovani na vještačkoj inteligenciji (AI).

Pioniri računarstva[uredi | uredi izvor]

Definicije[uredi | uredi izvor]

Udruženje za računarske mašine (engleski: Association for Computing Machinery, skraćeno ACM) definiše pet pod disciplina računarstva:[1]

Računar[uredi | uredi izvor]

Računar je mašina koja rukuje podacima po uputstvu skupa naredbi koji nazivamo računarski program. Program ima izvršnu formu koju računar koristi za izravno izvršavanje naredbi. Isti program u svom ljudski čitljivom izvornom kodu omogućuje programeru da napravi redoslijed koraka koji nazivamo algoritam.  

Izvršni proces obavlja naredbe u računarskom programu. Naredbe izražavaju računanja koje računar obavlja, koje potom pokreću niz radnji.  

Računarski softver i hardver[uredi | uredi izvor]

Računarski softver jest skup računarskih programa i srodnih podataka koji pružaju naredbe računaru šta i kako treba da uradi određeni zadatak. Softver se odnosi na jedan ili više računarskih programa i podataka koji se čuvaju u pohrani računara za neke svrhe. Programski softver obavlja funkciju programa direktnim davanjem instrukcija za hardver računara ili služi kao ulaz za neki drugi dio softvera.

Aplikativni softver[uredi | uredi izvor]

Aplikativni softver jest računarski softver napravljen za obavljanje određenih zadataka. Primjeri uključuju poslovni softver, računovodstveni softver, uredske pakete, grafički softver i softvere za reproduciranje medija (kao što su slike, zvuk, filmovi). Aplikacije mogu doći u paketu sa računarom i njegovim sistemskim softverom ili se mogu dobaviti odvojeno.

Aplikativni softver nije isto što i sistemski softver, koji upravlja upravlja hardverskim mogućnostima računara i služi aplikativnom softveru.

Sistemski softver[uredi | uredi izvor]

Sistemski softver jest računarski softver napravljen za upravljanje i kontrolu računarskog hardvera i za pružanje platforme za pokretanje aplikativnog softvera. Uključuje operativne sisteme, uslužni softver, upravljačke programe uređaja, prozorske sisteme i firmver. Razvojni alati kao što su kompajleri, linkeri i debuggeri[2] svrstavaju se u sistemski softver.

Računarska mreža[uredi | uredi izvor]

Računarska mreža jest skup međusobno povezanih hardverskih uređaja i računara komunikacijskim kanalima koji omogućavaju razmjenu resursa i informacija.

Mreže se mogu podijeliti na više načina, kao što su vrsta medija korištena za prenos podataka, vrsta komunikacijskog protokola koji se koristi, veličina mreže, topologija i organizacijski opseg.

Komunikacijski protokoli određuju pravila i formate podataka za razmjenu informacija u računarskoj mreži i daju osnovu za mrežno programiranje. Poznati komunikacijski protokoli su Ethernet, hardverski standard koji je sveprisutan u lokalnim mrežama i Internet Protocol Suite koji određuje skup protokola za mrežno umrežavanje.

Umrežavanje računara ponekad se smatra poddisciplinama elektrotehnike, telekomunikacija, računarske nauke, informatičke tehnologije ili računarskog inženjerstva, jer se oslanja na teorijsku i praktičnu primjenu ovih disciplina.

Internet[uredi | uredi izvor]

Internet je svjetski sistem međusobno povezanih računarskih mreža koji koriste standardni paket internetskih protokola (TCP/IP) za serviranje milijardi korisnika koji se sastoji od miliona privatnih, javnih, akademskih, poslovnih i vladinih mreža od lokalnog do svjetskog opsega, koje su povezane nizom elektronskih, bežičnih i optičkih mrežnih tehnologija. Internet sadrži veliku paletu informativnih resursa i usluga, poput međusobno povezanih hipertekst dokumenata na World Wide Webu i infrastrukture e-pošte.

Računarsko programiranje[uredi | uredi izvor]

Programiranje računara je proces pisanja, testiranja, uklanjanja greški i održavanja izvornog koda i dokumentacije računarskih programa. Izvorni kod napisan je programskim jezikom, koji kao umjetni jezik je često restriktivan i zahtjevniji od prirodnih jezika, ali je lako razumljiv računaru. Svrha programiranja je ostvariti željeno ponašanje računara.

Računarski programer[uredi | uredi izvor]

Računarski programer ili koder je osoba koja piše računarski softver. Pojam računarski programer može se odnositi na stručnjaka za jedno područje računarskog programiranja ili na stručnjaka koji piše kod za mnoge vrste softvera. Izraz programer može se koristiti za označavanje softverskog programera, softverskog inženjera, računarskog naučnika ili softverskog analitičara. Obično ljudi u ovim profesijama[3] posjeduju i druge softverske inženjerske vještine, osim programiranja.

Računarska industrija[uredi | uredi izvor]

Računarsku industriju čine sve firme koje su uključene u razvoj računarskog softvera, dizajn računarskog hardvera i infrastrukture računarskih mreža, proizvodnju računarskih komponenti i pružanje usluga informacione tehnologije, uključujući administraciju i održavanje sistema.

Softverska industrija[uredi | uredi izvor]

Softverska industrija uključuje firme koje se bave razvojem, održavanjem i objavom softvera. Ova industrija također uključuje softverske usluge, kao što su obuka, dokumentacija i savjetovanje.

Poddiscipline računarstva[uredi | uredi izvor]

Računarski inženjering[uredi | uredi izvor]

Računarski inženjering je disciplina koja objedinjuje nekoliko područja elektrotehnike i računarske nauke potrebnih za razvoj računarskog hardvera i softvera. Računarski inženjeri su obično obučeni u poljima elektronskog inženjerstva (ili elektrotehnike), dizajna softvera i hardversko-softverske integracije. Računarski inženjeri uključeni su u brojne hardverske i softverske aspekte računarstva, od dizajna pojedinačnih mikroprocesora, ličnih računara i superračunara.[4]

Softverski inženjering[uredi | uredi izvor]

Softverski inženjering je primjena sistematskog, discipliniranog, mjerljivog pristupa dizajnu, razvoju, radu i održavanju softvera, odnosno primjena inženjeringa na softver.[5] Razvoj softvera je dosta korišteniji i općenitiji pojam koji nužno ne uključuje inženjersku paradigmu. Prihvaćeni pojmovi softverskog inženjeringa kao inženjerske discipline navedeni su Software Engineering Body of Knowledge (SWEBOK) koji je postao međunarodno prihvaćen standard ISO/IEC TR 19759: 2015.[6]

Računarska nauka[uredi | uredi izvor]

Računarska nauka jest naučni i praktični pristup računanju i njegovoj primjeni. Računarski naučnik se specijalizuje za teoriju računanja i dizajn računarskih sistema.[7]

Discipline nauke se dijele na praktične tehnike za njegovu primjenu i primjenu u računarskim sistemima i čisto teorijska područja. Neki, poput teorije kompleksnosti računanja, koji proučava osnovna svojstva računskih problema, vrlo su apstraktni, dok drugi, poput računarske grafike, naglašavaju aplikacije u stvarnom svijetu. Na primjer, teorija programskih jezika proučava pristupe opisu računanja, dok sama studija računarskog programiranja istražuje različite aspekte upotrebe programskih jezika i složenih sistema. Interakcija između čovjeka i računara fokusira se na izazove u korištenju računara i računanja koji će biti pristupačni i upotrebljivi ljudima.

Informacioni sistemi[uredi | uredi izvor]

Informacioni sistemi su integrirani skup komponenti za sakupljanje, čuvanje, obradu i prenošenje informacija.[8][9]

Ova disciplina spaja poslovanje i računarske nauke koristeći teoretske temelje informacija i računanja kako bi proučavali različite poslovne modele i srodne algoritmičke procese u okviru računarske nauke.[10][11][12][13]

Informaciona tehnologija[uredi | uredi izvor]

Informaciona tehnologija (IT) jest primjena računara i telekomunikacijske opreme za pohranu, dohvaćanje, prenos i manipulaciju podacima, često u kontekstu poslovanja ili poduzetne aktivnosti.[14] Izraz se uobičajeno koristi kao sinonim za računare i računarske mreže, ali obuhvaća i druge tehnologije distribucije informacija kao što su televizija i telefoni. Srodne industrije informacionoj tehnologiji su industrije računarskog hardvera, softvera, elektronike, poluprovodnika, interneta, telekomunikacijske opreme, e-trgovine i računarskih usluga.

Sistemska administracija[uredi | uredi izvor]

Sistemski administrator je osoba zaposlena za održavanje i upravljanje računarskim sistemom ili mrežom. Dužnosti administratora sistema su opsežne i mogu se značajno razlikovati od jedne do druge organizacije. Sistemski administratori su obično zaduženi za instaliranje, podršku i održavanje servera ili drugih računarskih sistema, te planiraju lii odgovaraju na prekide u radu i druge probleme. Ostale dužnosti mogu uključivati pisanje skripti ili osnovno programiranje, upravljanje projektima vezanim za računarske sisteme, nadgledanje ili obučavanje računarskih operatora ili savjetovanje za računarske probleme izvan znanja osoblja tehničke podrške.

Istraživanje i nove tehnologije[uredi | uredi izvor]

DNK računarstvo i kvantno računarstvo područja su aktivnog istraživanja i hardvera i softvera. Potencijalna infrastruktura za buduće tehnologije uključuje DNK origami na fotolitografiji[15] i kvantne antene za prenos informacija između ionskih zamki.[16]

Uređaji na bazi optičkih vlakana koji se već koriste za prenos podataka na velikim udaljenostima, nalaze primjenu i podatkovnim centrima za visoko performansno računanje.[17] IBM je stvorio integralno kolo s elektroničkom i optičkom obradom informacija u jednom čip nazvan "CMOS-integrisani nanofotonik" ili CINP (CMOS-integrated nanophotonics).[18]

Još jedna grana istraživanja je spintronika. Ta tehnologija možda bude u mogućnosti ponuditi računarsku snagu i pohranu bez stvaranja toplote.[19] Neka istraživanja idu u pravcu hibridnih čipova koja bi mogla spojiti fotoniku i spintroniku.[20][21]

Računarstvo u oblaku[uredi | uredi izvor]

Računarstvo u oblaku omogućava korištenje računarskih resursa, poput server ili aplikacija. Obično se nudi kao usluga što ga čini primjerom softvera kao usluge, platforme kao usluge i infrastrukture kao usluge ovisno o tome koja se funkcionalnost nudi. Ključne karakteristike uključuju pristup na zahtjev, široki pristup mreži i mogućnost brzog skaliranja resursa.[22]

Kvantno računarstvo[uredi | uredi izvor]

Kvantno računarstvo područje je istraživanja koje okuplja discipline računarske nauke, teoriju informacija i kvantnu fiziku. Ideja da je informacija osnovni dio fizike relativno je nova, ali čini se da postoji čvrsta veza između teorije informacija i kvantne mehanike.[23] Dok je tradicionalno računarstvo bazirano na binarnom sistemu jedinica i nula, kvantno računanje koristi kubite.

Reference[uredi | uredi izvor]

  1. ^ "Curricula Recommendations". Association for Computing Machinery. 2005. Pristupljeno 30. 11. 2012.
  2. ^ Rouse, Margaret (mart 2019). "system software". WhatIs.com. TechTarget.
  3. ^ https://news.codecademy.com/5-skills-developers-need-beyond-writing-code/
  4. ^ Trinity College Dublin. "What is Computer System Engineering". Pristupljeno 21. 4. 2006., "Computer engineers need not only to understand how computer systems themselves work, but also how they integrate into the larger picture. Consider the car. A modern car contains many separate computer systems for controlling such things as the engine timing, the brakes and the air bags. To be able to design and implement such a car, the computer engineer needs a broad theoretical understanding of all these various subsystems & how they interact.
  5. ^ ACM (2006). "Computing Degrees & Careers". ACM. Arhivirano s originala, 17. 6. 2011. Pristupljeno 23. 11. 2010.
  6. ^ "Software Engineering -- Guide to the software engineering body of knowledge (SWEBOK)". International Organization for Standardization. ISO/IEC TR 19759:2015. Pristupljeno 21. 5. 2019.
  7. ^ "WordNet Search - 3.1". Wordnetweb.princeton.edu. Pristupljeno 14. 5. 2012.
  8. ^ "Definition of Application Landscape". Software Engineering for Business Information Systems (sebis). Jan 21, 2009. Arhivirano s originala, 5. 3. 2011. Pristupljeno 14. 1. 2011.
  9. ^ Archibald, J.A. (maj 1975). "Computer Science education for majors of other disciplines". AFIPS Joint Computer Conferences: 903–906. Computer science spreads out over several related disciplines, and shares with these disciplines certain sub-disciplines that traditionally have been located exclusively in the more conventional disciplines
  10. ^ Hoganson, Ken (decembar 2001). "Alternative curriculum models for integrating computer science and information systems analysis, recommendations, pitfalls, opportunities, accreditations, and trends". Journal of Computing Sciences in Colleges. 17 (2): 313–325. ISSN 1937-4771. Information Systems grew out of the need to bridge the gap between business management and computer science ...
  11. ^ Davis, Timothy; Geist, Robert; Matzko, Sarah; Westall, James (mart 2004). "τ'εχνη: A First Step". Technical Symposium on Computer Science Education: 125–129. ISBN 1-58113-798-2. In 1999, Clemson University established a (graduate) degree program that bridges the arts and the sciences... All students in the program are required to complete graduate level work in both the arts and computer science
  12. ^ Hoganson, Ken (decembar 2001). "Alternative curriculum models for integrating computer science and information systems analysis, recommendations, pitfalls, opportunities, accreditations, and trends". Journal of Computing Sciences in Colleges. 17 (2): 313–325. ISSN 1937-4771. The field of information systems as a separate discipline is relatively new and is undergoing continuous change as technology evolves and the field matures
  13. ^ Khazanchi, Deepak; Bjorn Erik Munkvold (Summer 2000). "Is information system a science? an inquiry into the nature of the information systems discipline". ACM SIGMIS Database. 31 (3): 24–42. doi:10.1145/381823.381834. ISSN 0095-0033. From this we have concluded that IS is a science, i.e., a scientific discipline in contrast to purportedly non-scientific fields
  14. ^ "Free on-line dictionary of computing (FOLDOC)". Arhivirano s originala, 15. 4. 2013. Pristupljeno 9 Feb 2013.
  15. ^ Ryan J. Kershner, Luisa D. Bozano, Christine M. Micheel, Albert M. Hung, Ann R. Fornof, Jennifer N. Cha, Charles T. Rettner, Marco Bersani, Jane Frommer, Paul W. K. Rothemund & Gregory M. Wallraff (16 August 2009) "Placement and orientation of individual DNA shapes on lithographically patterned surfaces" Nature Nanotechnology publication information, supplementary information: DNA origami on photolithography doi:10.1038/nnano.2009.220
  16. ^ M. Harlander, R. Lechner, M. Brownnutt, R. Blatt, W. Hänsel. Trapped-ion antennae for the transmission of quantum information. Nature, 2011; doi:10.1038/nature09800
  17. ^ Tom Simonite, "Computing at the speed of light", Technology Review Wed., August 4, 2010 MIT
  18. ^ Sebastian Anthony (Dec 10,2012), "IBM creates first commercially viable silicon nanophotonic chip", access-date=2012-12-10
  19. ^ Putting electronics in a spin
  20. ^ "Merging spintronics with photonics" (PDF). Arhivirano s originala (PDF), 6. 9. 2019. Pristupljeno 2. 3. 2020.
  21. ^ Integrating all-optical switching with spintronics
  22. ^ "The NIST Definition of Cloud Computing" (PDF). U.S. Department of Commerce. septembar 2011.
  23. ^ Steane, Andrew (1. 2. 1998). "Quantum computing". Reports on Progress in Physics (jezik: engleski). 61 (2): 117–173. arXiv:quant-ph/9708022. Bibcode:1998RPPh...61..117S. doi:10.1088/0034-4885/61/2/002. ISSN 0034-4885.

Vanjski linkovi[uredi | uredi izvor]