Da bi računarski sistem mogao da radi, pored fizičke arhitekture računarskog sistema (hardware) mora biti opremljen i odgovarajućim programima koji će njime da upravljaju. Ova komponenta računarskog sistema zove se softver (software). Program predstavlja skup instrukcija kojima se računaru saopštava šta, kako i kada treba da uradi da bi izvršio dati zadatak. Program se piše na programskom jeziku.
Kada se program izbaci na tržište važno je da se može izvršavati na što većem broju različitih računarskih konfiguracija što predstavlja osobinu prenosivosti. Što je veća prenosivivost programa to je veće tržište za prodaju programa. Kako je jedan program predviđen da radi na različitim konfiguracijama neophodno je izvršiti njegovo instaliranje na datom računarskom sistemu. U procesu instalacije program se obaveštava o hardverskim karakteristikama (vrsta kartice, CPU, memorija, ...) sistema na osnovu čega on preuređuje svoju strukturu prilagođavajući je datoj konfiguraciji u cilju izvršavanja na istoj.
Operativni sistem (Operation System - OS) je skup programa i podataka koji vrši upravljanje računarskim sistemom. Računarski sistem su harverske komponente i uređaji koji su priključeni na računar.
Operativni sistem objedinjuje u celinu delove računara i sakriva od korisnika detalje funkcionisanja ovih delova. Operativni sistem za korisnika stvara radno okruženje koje rukuje procesima i datotekama, umesto bitovima, bajtovima i blokovima.
Operativni sistemi su opremljeni programima koji obezbeđuju korisničko okruženje za rukovanje samim operativnim sistemom, kao što su interpreter komandne linije i grafičko korisničko okruženje (interface). Operativni sistem omogućava pokretanje programa - aplikacija (editori, prevodioci, internet pretraživači, ...).
Sistemski softver je napravljen za direktnu komunikaciju sa hardverom, da bi omogućio osnovne funkcije korisnicima, kao i drugim softverima, i da osposobi platformu za aktivne aplikacije.
Sistemski softver se sastoji od:
Operativni sistemi su kolekcija softvera napravljena za upravljanje resursima računara (hardver) i koja omogućava zajedničke usluge ostalim softverima. Nadzorni programi, pokretač operativnog sistema i ljuska – shell su ključni delovi operativnog sistema. U praksi se uz operativni sistem dobija nekoliko programa.
Drajveri omogućavaju funkciju određenoj vrsti uređaja povezanoj na računar. Svakom uređaju je potreban najmanje jedan drajver.
Pomoćni programi su dizajnirani za lakše održavanje računara.
Aplikativni programi ili aplikacije pokrivaju širok spektar pomoći pri rešavanju raznih zadataka.
Kancelarijski programi:
Poslovni programi:
Programi za projektovanje:
Grafički programi:
Medijski programi:
Komunikacioni programi:
Mrežni programi:
Zlonamerni programi:
Zaštitni programi:
Igrice
Svaki program je određen sa dva parametra: verzijom i modifikacijom.
Kada program počinje da se razvija nosi oznaku 0.0. Izlaskom na tržište, prilikom prvog pojavljivanja, dobija oznaku 1.0. Broj levo od tačke se naziva verzija programa a broj desno od tačke se naziva modifikacija programa. Promena modifikacije podrazumeva manje ispravke u programu dok promena verzije označava značajnije kvalitativne promene.
Izdavanjem ispravki programa program postaje pouzdaniji. Pouzdanost programa ne utiče na osobinu funkcionalnosti. Osoba koja razvija program mora da ima u vidu i da predvidi sva razumna očekivanja budućeg korisnika programa.