10.3.2014
RAČUNARI I
PROGRAMIRANJE
Osnove softvera
Prof dr Milan Mišić
MSc Bojan Stojčetović
1
10.3.2014
Osnove softvera
•
•
•
•
SOFTVER - Skup instrukcija koje se nalaze u memoriji i upravljaju
hardverom tako da obradi zahteve korisnika
Promenom programa računar može da menja posao koji obavlja sa
istim hardverom
Program se piše (sastavlja) u koracima
– svaki korak rešava po jedan deo problema
Razvoj programa:
–
–
–
•
problema se rešava kroz niz koraka i opisuje prirodnim jezikom
pisanje programa
implementacija na odgovarajućem programskom jeziku
Bugs – greške u softveru, zbog kojih program ne daje očekivane
izlaze (krpljenja - “pečovanja” u toku eksploatacije)
2
10.3.2014
Osnove softvera
Program i algoritam
• Računar obavlja “jednostavne” aritmetičke i logičke operacije
nad podacima
• Navedene operacije se izvode brzo i tačno
• Program: skup instrukcija u čijoj osnovi su jednostavne
aritmetičke i logičke operacije
• Algoritam: skup procedura kojima se korak po korak rešava
određeni posao (poslovni proces)
• Posao programera:
– Algoritam realizovati u nekom programskom jeziku
– Dodati detalje, komentare i sl.
– Definisati procedure testiranja
– Ispraviti eventualne greške u softveru - debugging
3
10.3.2014
Osnove softvera
Računarski jezik
•
•
•
•
•
Mašinski jezik: je sistem instrukcija i podataka koje centralni
procesor u računaru neposredno izvršava.
Programski jezici: jezici visokog nivoa, nalaze se između
mašinskog jezika i prirodnog ljudskog jezika (C, C++, Java, Visual
Basic, ...)
Kompajleri: prevodioci jezika visokog nivoa u mašinski jezik
Drajveri: mali programi za upravljanje komponentama računara
(HD, miša, tastature...)
Grafički programi, CASE alati, ...: koriste se na jednostavan način,
da bi se zaobišla kompleksna sintaksa programskih jezika
4
10.3.2014
OSNOVE SOFTVERA
Osnovna podela softvera

Osnovne kategorije programa (softvera):
 Sistemski softver:



koordinira rad hardvera i niz drugih poslova “iza scene”
korisnici računara retko primećuju njegov rad
Aplikativni softver:

alat za pomoć računarskim korisnicima u rešavanju realnih sistemskih
problema

5
10.3.2014
OSNOVE SOFTVERA
SISTEMSKI SOFTVER



Sastoji se od računarskih programa koji kontrolišu i podržavaju rad
računarskog sistema i njegove aktivnosti na obradi podataka.
Računar se ne može pokrenuti niti uraditi bilo kakav zadatak bez sistemskog
softvera
Obuhvata:


Softver postavljen u ROM čipovima, koji služi za inicijalizaciju računara
Operativni sistem

6
10.3.2014
Osnove softvera
•
Operativni sistem obavlja:
–
–
–
–
–
–
–
Komunikaciju sa periferijama
Koordinaciju konkurentskog procesiranja - multitasking
Monitorisanje resursa, evidencija i bezbednosnih mehanizama
Upravljanje aplikativnim programima, podacima i CPU aktivnostima
Koordinaciju mrežnih komunikacija
Upravljanje memorijom i interfejs sa fajl sistemom
Upravljanje virtuelnom memorijom:
 virtuelna ekstenzija RAM
 kada se RAM napuni, podaci se prenose “swapped” na i sa HD sa
specijalnim fajlom
 ova oblast HD naziva se swap fajl, ili page fajl (u NTFS fajl sistemu)
 veličinu, lokaciju itd., konfigurišu korisnici
7
Glava 4

10.3.2014
Operativni sistem (OS) je kompleksan
programski sistem koji kontroliše i upravlja
uređajima i računarskim komponentama i
obavlja osnovne sistemske radnje. Operativni
sistem objedinjuje u jedinstvenu
funkcionalnu celinu hardver (delove
računara) i softver ( programe na računaru).
8
Glava 4
10.3.2014
Osnove softvera
Aplikativni softver
•
•
Podgrupa računarskog softvera koja se bavi
izvršavanjem tačno određenih zadataka
Korisničke aplikacije
•
•
softver za vođenje računovodstva, grafički programi, multimedijalni alati,
edukacija, igre, (MS Office, Adobe, Visio,...)
Svojstva aplikativnih programa:
•
•
•
izgrađeni su na bazi vizuelnih
metafora alata iz realnog sveta
proširuju ljudske mogućnosti
u nekom pogledu
povezuju korisnika i operativni
sistem
9
Osnove softvera
Softverski proizvodi
10.3.2014
•
Razlikuju se od drugih proizvoda:
•
•
•
•
•
•
•
Klasična dokumentacija:
•
•
Dokumentacija,
Upgrading (nadogradnja)
Kompatibilnost
Disclaimers (odricanje od odgovornosti)
Licenciranje
Distribucija
štampana dokumenta za instalaciju, uputstva itd.
Dokumentacija softvera:
–
–
–
–
Tutorial manual
Reference manual
Help fajlovi
On-line helpovi
10
10.3.2014
Osnove softvera
Upgrading (poboljšanje) softvera
•
•
•
•
•
•
•
•
Većina programa se lako koristi (standardni su)
Advanced features programa – zahtevaju uputstva
Proizvođači popravljaju svoje proizvode, uklanjaju bagove i dodaju
nove karakteristike (features)
Novi programi se izdaju svake godine
Korisnici mogu transformisati dati program u novu verziju (upgrade)
plaćanjem odgovarajuće takse proizvođaču datog softvera
Manje izmene se označavaju decimalnom tačkom (Win 3.11)
Veće izmene se označavaju sledećim brojem (Win 95)
Nestandardne oznake npr. kod Windows verzija OS (Win XP)
11
10.3.2014
Osnove softvera
•
Kompatibilnost
–
–
–
•
Obezbeđuje korektan rad
softvera na datom hardveru, OS
i periferijama
Programi napisani za jednu
vrstu računara (IBM) mogu da
ne rade na drugom tipu
računara (Mac)
Podržavaju prethodne verzije
Odricanja (disclaimers)
–
Proizvođači ograničavaju svoju
odgovornost za moguće
probleme u funkcionisanju
softvera, prodajući ga “kao što
jeste”
12
10.3.2014
Osnove softvera
• Licenciranje:
zaštita autorskih prava proizvođača komercijalnog
softvera
• zabranjuje se nelegalno kopiranje u cilju dalje
distribucije
• korisnik ne kupuje program već softversku licencu
(za korišćenje sw)
• Volume licence: ograničava broj instalacija
•
• Copyright
•
zaštićen softver koji se ne sme nelegalno kopirati
i distribuirati
• Physically
•
:
copy protection:
zaštita diskova i uređaja od nelegalnog korišćenja
softvera
13
10.3.2014
Osnove softvera
• Distribucija
licenciranih softvera:
– Direktna prodaja, partneri
– Maloprodajne prodavnice
– Kataloške porudžbine poštom, demo verzije
– Web sajtovi (e-knjižare), ...
• Softveri nezaštićeni autorskim pravima:
– Free of cost (besplatni) - Public domain software
– Shareware – dozvoljava se testiranje, vremenski su
ograničeni, sa ograničenim mogućnostima i sl.
14
10.3.2014
Osnove softvera
•
Integrisani softverski paketi:
• Obuhvataju više aplikacija dizajniranih tako da
rade zajedno
• Omogućavaju automatsko prebacivanje podataka
između pojedinih modula
• Cena im je niža u odnosu na kupovinu pojedinačnih
aplikacija
• Koristi se isti tip komandi u svakom od modula
Primer: Microsofte Office 2003/2007
15
10.3.2014
Osnove softvera
• Popularni
integrisani
paketi, AppleWorks i MS
Works po pravilu uključuju:
• Procesiranje
teksta
• Baze podataka
• Tabelarnu obradu
• Grafikčku obradu
• Komunikacije (web brauzer)
• Module za upravljanje
personalnim informacijama
(Personal information
management - PIM) - Outlook
16
10.3.2014
Osnove softvera
•
•
Paketi više aplikativnih softvera mogu se prodavati i kao
zasebni programi
Microsoft Office System - najpopularnija aplikativni paket
obuhvata:
–
–
–
–
–
Word (program za obradu teksta)
Excel (tabelarni program)
PowerPoint (program za grafičke prezentacije)
Access (baze podataka)
Outlook (program za upravljanje personalnim informacijama
i e-poštom
17
10.3.2014
Osnove softvera
•
Vertikalno tržište i specijalizovani
softver (custom applications)
•
•
Cena ovog softvera je mnogo veća od
aplikacija namenjenih masovnom tržištu
(npr. razvojni alati)
Softver prilagođen datom poslu:
•
•
•
•
•
•
Medicinski računi
Bibliotečki katalozi
Softver za referenciranje u pravnim poslovima
Upravljanje restoranima
Softverske potrebe pojedinačnih klijenata
Sistemi za upravljanje sadržajem (CMS)....
18
Glava 4
10.3.2014
Osnove softvera
Uslužni programi i drajveri uređaja
•
Uslužni (korisni) programi (utility)
–
–
•
Alati za održavanje sistema i ispravljanje svega onoga šta operativni sistem
nije automatski uradio
Pomoć korisnicima:
• Kopira fajlove između memorijskih jedinica
• Popravlja oštećene fajlove na disku
• Prevodi fajlove u formu pogodnu za čitanje pomoću drugih programa
• Štiti od virusa i drugih potencijalno opasnih programa
• Komprimuje fajlove tako da zauzimaju manje prostora na disku
• Obavlja i druge važne zadatke
Drajveri uređaja
–
–
Mali programi koji omogućavaju ulazno-izlaznim jedinicama, kao što su
tastatura, miš, štampač itd., da komuniciraju sa računarom
Uključeni su ili u OS ili su pridodati uz periferijske jedinice na disketi ili CD
19
Glava 4
10.3.2014
Osnove softvera
•
Symantec Norton Utilities je popularni korisnički paket koji
obuhvata softverske alate za obnavljanje oštećenih fajlova,
popravljanje oštećenih diskova i poboljšavanje performansi diska
20
10.3.2014
Osnove softvera
•
Microsoft Windows
•
•
•
Na početku Windows je bio
vrsta programa poznatog kao
ljuska (shell), koji stavlja
grafičko lice MS-DOS-u
Sa Windows 95 1995.g.,
Microsoft prelazi na potpuno
novi OS koji retko pokazuje
svoje MS-DOS poreklo
Poslednja verzija Windows-a
nema više nikakve veze sa
DOS prošlošću: Windows XP,
Vista
21
10.3.2014
Osnove softvera
Interaktivnost korisnika sa OS obezbeđuje:
Interfejs komandne linije (DOS)
GUI interfejs (Windows Desk Top PC)
•
•
Upravljanje datotekama
Fajlovi mogu biti razbacani po sistemu (fragmentovani), što
upravljanje čini teškim
Jedno od rešenja je logička organizacija fajlova (fajl sistem)
I Windows i Mac OS podržavaju pojam zajedničkih sistemskih
foldera sa samoobjašnjavajućim imenima:
•
•
•
–
–
–
My Documents (Dokumenta)
My Pictures (Slike)
My Music (Muzika)
22
10.3.2014
Osnove softvera
Korisnički interfejs
•
Disk operativni sistemi
– MS-DOS - u kome se
interakcija korisnika obavlja
karakternim znacima
(slovima, brojevima,
simbolima)
– Interfejs preko komandne
linije (komande se
ukucavaju)
– Interfejsi u formi menija komande se biraju iz lista
prikazanih na ekranu
(menu driven interface)
23
10.3.2014
Osnove softvera
•
Grafički korisnički
interfejs
•
(GUI – Graphical User
Interface)
– To je disk operativni
sistem u kome korisnik
interreaguje sa
računarom
pomoću miša
– Mac OS, Windows
24
10.3.2014
MALWARE (MALICIOUS SOFTWARE)



Destruktivni programi sa odredjenim štetnim dejstvima
Virusi (samokopirajući programi koji ubacuju svoj izvršni kod u druge
fajlove)
Crvi(worms) – zasebni programi koji se prenose i izvršavaju koristeći
slabosti operativnog sistema

Trojanci (Trojan horses) - instaliraju programe koji preuzimaju kontrolu
nad zaraženim računarom

Spyware - prikuplja i šalje informacije o ponašanju korisnika računara bez
njegovog znanja (brojevi kreditnih kartica ...)
25
10.3.2014
ANTIVIRUSNI SOFTVER






softver koji otkriva i uklanja viruse sa računara
anivirusni softver deluje preventivno
svaki antivirusni softver poseduje antivirusnu bazu, koja mora
biti redovno ažurirana
ažuriranje (update) antivirusne baze može se raditi na
mesečnom, nedeljnom ili što je najbolje, na dnevnom nivou
redovan update je od suštinske važnosti za funkcionalan rad
antivirusnog softvera
dobar antivirus softver poseduje mogućnost monitoringa
sistema, što može dovesti do usporenja rada računara
26
10.3.2014
ANTIVIRUSNI SOFTVER



monitoring (kontrola, nadgledanje) je posebno važno
prilikom pretraživanja Internet-a, slanja i primanja email pošte i ostalim aktivnostima na mreži
kod umreženih računara je teško ukloniti jednom
dobijene viruse zbog njihovog lakog širenja u
mrežnom okruženju
kod kućnih računara važna je provera e-mail poruka,
jer su sredstvo za prenos virusa
27
Download

Osnove softvera