P. 1
Racunarstvo i Informatika

Racunarstvo i Informatika

Views: 133|Likes:
Published by xpiria

More info:

Published by: xpiria on Jan 29, 2013
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

09/10/2015

pdf

text

original

СТРУКТУРА ПРОЦЕСОРА

Функционални елементи
То су разне врсте регистара (паралелни,серијски, померачки, бројачки и др.), декодери,
мултиплексери, демултиплексери и прекидачке мреже које служе за реализацију разних
прекидачких функција којима се описује функционисаuе појединих стандардних блокова
рачунара. Oсим ових размотриhемо јоm два важна функционална блока процесора:
магистрале и аритметичко-логичку јединицу.
Nагистрале
Hренос података измеþу регистара или појединих функционалних целина у рачунару
врmи се тако mто се они повезују одреþеним бројем проводника. Fрупа проводника
(линија) кроз које се врmи пренос бинарних података назива се магистрала или
сабирница. Aко за сваки пар одговарајуhих бистабилних кола постоји посебан проводник
кажемо да се врmи паралелни пренос. Aко то није случај онда се mаnе група по група
битова у узастопним временским интервалима и овај се начин преноса назива временски
мултиплекс. Y најпростијем случају преноси се бит по бит податка када кажемо да се
врmи серијски пренос.
ТHHOBH NAFHCТPAPA
Cваком магистраломмогу се преносити три
групе сигнала: подаци, адресе и управnачки
сигнали. Cагласно са овим често се говори о
магистрали података, адресној магистрали и
управnачкој магистрали.
Aритметичко-логичка
Jединица
Aритмретичко логичка јединица (ALU) представnа
прекидачку мрежу са 2n улаза и n излаза, где је n дужина
маmинске речи. Hа улаз ALU доводе се два бинарна низа
дужине n а на излазу се добија бинарни низ дужине n који је
резултат примене неке дефинисане аритметичке, логичке и
друге операције над улазним низовима.
Cадржај маmинске наредбе
Bинарни низови којима се кодирају поједине врсте
информација у наредби (инструкцији) смеmтају се у одговарајуhи број позиција маmинске
речи које образују поnа или зоне.
Тако свака наредба садржи поnе кода операције, поnа за адресе операнада и поnе
модификатора. Pаспоред и дужина појединих поnа у наредби различити су за сваки
рачунар.
Формат маmинске наредбе и адрсeност рачунара
Формат наредбе представnа број, распоред, намену идужину појединих поnа у наредби.
Hа основу горе описане структуре наредбе у uој требада постоје поnа са информацијама
о коду операције, модификаторима, операндима и следеhој наредби за изврmеuе.
Bрој адреса које се наводе у наредби назива се адресност рачунара.
Троадресни рачунари
Yколико после изврmеuа једне наредбе рачунар узима следеhу наредбу из локације са
следеhом по реду адресом, кажемо да се наредбе изврmавају тзв. природним редоследом,
тј. оним редоследом којим су записане у меморији. Aко се наредбе изврmавају природним
редоследом престаје потреба за адресом A+ у наредби, али је потребно увести у процесор
један посебан регистар који hе служити за памhеuе адресе следеhе наредбе програма
која hе се изврmити. Тај регистар служи за управnаuе током изврmеuа наредби
програма а назива се бројач наредби или програмски бројач.
µвоадресни рачунари
Bрој адреса може се смаuити јоm за једну ако се задржи програмски бројач и усвоји
принцип да се једно од три поnа за адресе изостави а да се адреса резултата у наредби
подразумева имплицитно. Aдресе A1 и A2 представnају адресе операнада над којима се
изврmава операција. µобијени резултат увек се смеmта по адреси A1 (или A2) при чему се
претходни садржај те локације, тј. први операнд, униmтава. Hаредба са оваквом
структуром назива се двоадресна наредба а рачунар који има такве наредбе назива се
двоадресни рачунар.
Jедноадресни рачунари
Y процесор се уводи посебан регистар, акумулатор, који има двоструку улогу: у uему се
чува први операнд, у uега се смеmта резултат примене операције. Aдреса A1 представnа
адресу другог операнда. Hаредба се оваквом структуром назива се једноадресна наредба
а рачунар који има такве наредбе назива се једноадресни рачунар.
Bезадресни рачунари
Nогуhе је конструисати рачунаре који hе имати формат у коме нема никаквих адреса
операнада веh само код операције. 3а оствареuе овакве концепције потребно је да се сви
полазни подаци и меþурезултати смеmтају у посебно организовану меморију која
представnа магацин (стек). Hзврmеuе операције одвија се на следеhи начин: узимају се
два операнда са врха магацина, над uима се изврmава операција, и резултат се смеmта
на врх магацина.
Pегистри процесора
Bеhина савремених процесора конструисана је тако да поседује одреþени број посебних
наменских регистара који имају тачно одреþене функције.
Aдресни регистар меморије AR
¬итаuе садржаја из меморије или упис садржаја у меморију се врmи тако mто се
претходно адреса меморијске локације са којом се ради уписује у посебан регистар
процесора који се зове адресни регистар меморије.
Hрихватни регистар меморије PR
Hодатак који треба уписати у меморију се претходно смести у посебан регистар процесора
који се зове прихватни регистар меморије. Hрочитани податак из меморије се, такоþе,
увек смеmта, најпре, у прихватни регистар.
Bројач наредби (програмски бројач) BN
Y току обавnаuа неке обраде програм који uоме управnа налази се у оперативној
меморији.Hаредбе програма смеmтене су у меморијским локацијама са сукцесивним
адресама. µа би управnачка јединица имала у сваком тренутку информацију о адреси
следеhе наредбе која hе се изврmавати уведен се посебан регистар процесора бројач
наредби (BN), бројач инструкција или програмски бројач.
Pегистар наредби RN
µа би наредба могла управnати изврmеuем операције потребно је да при изврmеuу буде
смеmтена негде у управnачкој јединици процесора. 3а ову сврху уведен је посебан
регистар који се назива регистар наредби (RN) или регистар инструкција.
Aкумулатор AK
Cве аритметичке и логичке операције, операције помераuа и многе друге маmинске
операције изврmавају се кориmhеuем посебног регистра процесора који се назива
акумулатор AK. Hри изврmеuу неке операције у uему се увек налази један од операнада,
и у uега се увек смеmта резултат добијен по изврmеuу те операције. Hри томе се стари
садржај акумулатора униmтава (бриmе се).
Pегистар услова (кодова стаuа) RU
Cви процесори садрже известан број бистабилних кола која служе за памhеuе кодова
услова или кодова стаuа, који представnају информације добијене при изврmеuу
операција. Oва бистабилна кола се обично третирају као један регистар процесора који се
назива регистар кодова стаuа или регистар услова (RU). Hајчеmhе кориmhени услови су:
-садржај AK нула (Z бит),
-садржај AK негативан (N бит),
-садржај AK позитиван (P бит),
-постоји пренос (C бит),
-настало је прекорачеuе (v бит).
Hндексни (XRi) и базни регистри (BRi)
Aдреса по којој се проналази податак у оперативној меморији ради изврmеuа неке
операције најчеmhе није само адреса у адресном делу наредбе веh се израчунава на
основу виmе података. Hодаци који се користе при формираuу коначне адресе операнада
са могу наhи у посебним регистрима. Pегистири који се користе за адресираuе чине 2
посебне групе регистара: базни регистри (BRi) и индексни регистри (XRi).
Yказатеn (показивач) магацина UN
Nагацин, стек или магацинска меморија представnа меморијску структуру која се у
савременим рачунарима најчеmhе реализује у оперативној меморији. Pади тога је
потребно да процесор садржи посебан регистар за рад са магацином који се назива
указатеn или показивач магацина (UN).
Pегистри опmте намене Ri
Hеки процесори садрже одреþени број регистара који се могу користити за виmе
различитих намена. Тако они могу бити аритметички регистри у којима се привремено
чувају подаци или меþурезултати, затим базни и индексни регистри, указатеnи магацина
и сл. Oви се регистри називају регистри опmте намене или локални регистри. Hихов број
је најчеmhе 8 или 16, али се среhу процесори и са 6+ регистара опmте намене. Cавремени
процесори са тзв. R!SC архитектуром садрже и виmе десетина ових регистара.
Uиклус изврmеuа наредбе
Hроцесор изврmава сваку наредбу програма у две
сукцесивне фазе:
-фази припреме или позиваuа наредбе,
-фази изврmеuа наредбе.
Фаза припреме претходи фази изврmеuа и оне се
циклички меuају према дијаграму. Y блоку HALT
проверава се крај изврmеuа програма.
Фаза припреме наредбе
Hаредба коју треба изврmити смеmтена је у
оперативној меморији а uена адреса налази се у
бројачу наредби BN. µа би она могла управnати изврmеuем операције потребно је да се
позове и смести у регистар наредби RN.
Фаза изврmеuа наредбе
µок је фаза припреме наредбе опmта за све наредбе, фаза изврmеuа наредбе се одвија
специфично за сваку наредбу или поједине групе наредби.
Фаза изврmеuа наредбе за веhину наредби састоји се обично од следеhих подфаза:
-Yзимаuе (позиваuе, читаuе) операнада из оперативне меморије,
-Hзврmеuе операције у аритметичко логичкој јединици,
-Cмеmтаuе добијеног резултата у акумулатор, неки други регистар процесора или
одреþену локацију оперативне меморије.
Aдресираuе оперативне меморије
Kод свих савремених рачунара адресни део наредбе најчеmhе не представnа и стварну
адресу по којој се налазе подаци у меморији, веh само једну компоненту за формираuе те
адресе. Aдреса по којој се врmи стварно обраhаuе меморији, тј. физичка адреса податка
у оперативној меморији, формира се на основу виmе компонената и назива се изврmна
или ефективна адреса. 3а формираuе ефективне адресе користе се посебни адресни
системи у процесору. Hоступак одреþиваuа изврmне адресе на основу адресних
информација назива се метода адресираuа.
Формираuе изврmне адресе
Bитовима у поnу модификатора N (или реþе самим кодом операције) дефиниmе се начин
формираuа изврmне адресе у адресној аритметичкој јединици. Yправnачким сигналима
који се генериmу на основу садржаја поnа N дозвоnава се или забраuује подацима из
различитих регистара процесора да учествују у формираuу изврmне адресе.
Kако у формираuу изврmне адресе
операнада често може
учествовати и неки од регистара
централног процесора, то је
потребно задати у наредби и адресу тог
регистра.
Hа тај начин наредба треба да има
формат:
OP N R ad
Hмплицитно адресираuе
Y наредбама са имплицитним адресама операнд није експлицитно специфициран у
адресном делу наредбе веh се uегова адреса подразумева и одреþена је кодом
операције. Hа пример, акумулатор се имплицитно адресира као регистар у коме се налази
операнд или један од операнада код једноадресних процесора.
Hепосредно адресираuе
Aко адресни део наредбе не представnа адресу операнда веh сам операнд онда се каже
да је то непосредни операнд а метод адресираuа се назива непосредно адресираuе. Oво
је варијанта директног адресираuа зато mто је адреса операнда увек позната и
дефинисана је адресом саме наредбе. Aдреса за приступ непосредном операнду узима се
из бројача наредби.
µиректно адресираuе
Kод директног адресираuа за обраhаuе
меморији користи се само адресни део
наредбе који представnа истовремено и
изврmну адресу. Kада адресни део
наредбе сам представnа изврmну адресу
таква адреса назива се директна или
апсолутна адреса. 3а означаваuе директне адресе у симболичким наредбама се испред
симболичке адресе или адресног израза обично ставnа префикс "f" тако да наредба има
облик: OP fad.
Pегистарско адресираuе
Nноги рачунари садрже наредбе које операнде узимају из регистара опmте намене или
других регистара централног процесора или пак у uих смеmтају резултате. Y том случају
за специфицираuе операнда треба навести адресу регистра централног процесора у коме
се налази операнд.Oвакав начин адресираuа назива се регистарско адресираuе.
Nеморијско индиректно адресираuе
Aдреса која не специфицира меморијску локацију операнда веh меморијску локацију у
којој се налази адреса операнда назива се индиректна адреса. Hа тај начин кориmhеuе
индиректне адресе захтева приступ двема меморијским локацијама да би се могло
приступити самом операнду. Oвај начин адресираuа назива се меморијско индиректно
или одложено адресираuе.
Pегистарско индиректно
aдресираuе
Yместо да се индиректна адреса операнда налази у некој меморијској локацији може се за
то користити неки регистар опmте намене централног процесора. Oвај начин адресираuа
назива се регистарско индиректно адресираuе. Y односу на меморијско индиректно
адресираuе ово адресираuе је брже
јер захтева само један временски
интервал (меморијски циклус). 3а
означаваuе регистарског
индидректног адресираuа ознака
регистра ставnа се у мале заграде тј.
наредба има облик OP (R), где је R адреса регистра, а вредност операнда коме се
приступа је N[R|.
Aутоинкрементно и аутодекрементно адресираuе
Pегистарско индиректно адресираuе при коме се регистар опmте намене који се користи
за чуваuе адресе операнда аутоматски пре или после кориmhеuа повеhава или смаuује
за 1. Hа тај начин врmи се припрема адресе наредног операнда који је смеmтен у
следеhој меморијској локацији. Oве методе адресираuа називају се аутоинкрементно и
аутодекрементно адресираuе а означавају се на следеhи начин:
-OP +(R) ; Hовеhаuе садржаја
регистра R за 1 пре кориmhеuа,
-OP -(R) ; Cмаuеuе садржаја
регистра R за 1 пре кориmhеuа,
-OP (R)+ ; Hовеhаuе садржаја
регистра R за 1 после
кориmhеuа,
-OP (R)- ; Cмаuеuе садржаја
регистра R за 1 после
кориmhеuа.
Hндексно адресираuе (индексираuе)
3а адресираuе елемената поnа смеmтених у сукцесивним меморијским локацијама уведен
је посебан регистар централног процесора који је назван индексни регистар. Y uему се
чува разлика измеþу адресе текуhег елемента поnа и адресе првог елемента, и ова се
разлика назива померај или помак. C обзиром да је та разлика одговарала редном броју
(индексу) елемената у поnу, то је и регистру који је служио за uено памhеuе дато име
индексни регистар. Oвакав метод адресираuа назива се индексно адресираuе или
индексираuе.
Aутоиндексираuе
Hосле сваког индексираuа у циnу приступа новом податку потребно је да се промени
садржај индексног регистра и за то се користи посебна наредба. Oвај се проблем код
неких процесора реmава увоþеuем начина адресираuа који је назван аутоиндексираuе.
Hри сваком кориmhеuу индексног регистра непосредно пре или после приступа uегов се
садржај аутоматски меuа тако mто се додаје или одузима 1. Y симболичким наредбама
овај метод адресираuа означава се на следеhи начин:
-OP +ad(XRi) ; Hовеhаuе XRi за 1 пре кориmhеuа,
-OP -ad(XRi) ; Cмаuеuе XRi за 1 пре кориmhеuа,
-OP ad(XRi)+ ; Hовеhаuе XRi за 1 после кориmhеuа,
-OP ad(XRi)- ; Cмаuеuе XRi за 1 после кориmhеuа.
Bазно адресираuе
µужина адресе у наредби може се смаuити увоþеuем у процесору посебне групе
регистара који се називају базни регистри. Y том случају адреса се формира из два дела:
садржаја базног регистра и релативне адресе или помераја. Oвај метод адресираuа
назива се базно адресираuе. Hомерај (помак) представnа разлику измеþу стварне адресе
операнда у оперативној меморији и адресе садржане у базном регистру. Y симболичким
наредбама базно адресираuе се означава на следеhи начин:
OP !ad, а изврmна адреса је једнака: EA = (BR) + ad.
Pелативно адресираuе
Aко се као базни регистар користи бројач наредби BN адресираuе се назива програмско
релативно или релативно адресираuе. Aдреса операнда формира се при томе као сума
текуhег садржаја бројача наредби BN и помераја специфицираног у адресном делу
наредбе ad. Hомерај се најчеmhе третира као број са знаком. Y асемблерским наредбама
се програмско релативно адресираuе означава на следеhи начин:
• OP $ad,
а изврmна адреса је једнака:
• EA = (BN) + ad.
HAPEµBE HPOUECOPA
Fрупе наредби
*наредбе за пренос података,
*аритметичко-логичке наредбе:
а) аритметичке наредбе,
б) логичке наредбе,
в) наредбе за помераuе.
* наредбе за управnаuе током изврmеuа програма:
а) наредбе за гранаuе,
б) наредбе за прескоке,
в) наредбе за програмске петnе,
г) наредбе за потпрограме,
*улазно-излазне наредбе,
*остале наредбе.
Наредбе за пренос података
Наредбама за пренос података врши се:
-позивање садржаја оперативне меморије у акумулатор или у неки други регистар
процесора,
-слање садржаја акумулатора или неког другог регистра процесора у оперативну
меморију,
-пренос или премештање садржаја једног регистра процесора у други,
-слање из једне меморијске локације у другу,
-рад са магацином и сл.
*Наредба за пренос садржаја из оперативне меморије у акумулатор или неки регистар
процесора Ri има облик:
LD Ri ad ; (Ri) : = (ad).
*При извршењу ове наредбе претxодни садржај регистра Ri се уништава а садржај
меморијске локације са адресом ad се не мења.
*Наредба за пренос садржаја акумулатора или неког регистра процесора у меморију има
облик:
ST Ri ad ; (ad) : = (Ri).
*При извршењу ове наредбе претxодни садржај меморијске локације са адресом ad се
уништава а садржај регистра Ri се не мења (остаје исти).
Рад са магацином (стеком)
*Постоје две наредбе за рад са магацином које омогуhавају да се врши упис или ¬итање
садржаја у врxу магацина уз истовремену промену садржаја указатеnа (показива¬а)
магацина.
*При томе је садржај указатеnа магацина UM претxодно деqинисан посебним
наредбама. Oпис наредби је следеhи:
упис у магацин из Ri:
PUSH Ri ; M[UM] := (Ri); (UM) := (UM)-1
читање из магацина уRi:
POP Ri ; (UM) := (UM)+1; (Ri): = M[UM]
Aритмети¬ко-логи¬ке наредбе
*Aритмети¬ке наредбе служе за:
-извршење основниx аритмети¬киx операција: сабирања, одузимања, множења и
деnења,
-пореqење два садржаја,
-комплементирање,
-повеhање или смањење садржаја за неку задату вредност и сл.
*Наредба за аритмети¬ку операцију сабирања има облик:
ADD ad ; (AK) : = (AK) + (ad).
Aритмети¬ке наредбе
*Kада је потребно додати константну вредност некој меморијској локацији користи се
наредба ADDI за операцију сабирања са непосредним операндом con која има облик:
ADDI #co ; (AK) : = (AK) + con.
*Y неким слу¬ајевима, погодно је имати и посебну наредбу сабирања којом се при
извршењу операције сабирања додаје у најнижу позицију и бит преноса C. Наредба има
облик:
AD! ad ; (AK) : = (AK) + (ad) + (C).
*Oдузимање се обавnа или посебним наредбама за одузимање или коришhењем
комплемента јединице или комплемента двојке.
*Посебне наредбе за одузимање имају облик:
SU" ad ; (AK) := (AK) - (ad)#
SU"I co ; (AK) := (AK) - co#
SU"! ad ; (AK) := (AK) - (ad) - (!).
*Aко се користи комплементарно представnање, нај¬ешhе представnање помоhу
комплемента двојке, онда се за добијање тог комплемента користи наредба облика:
$%& ; (AK) : = - (AK).
*3а реализацију множења и деnења, када постоје, користе се наредбе облика:
MUL ad ; (AK) := (AK) × (ad)#
DI' ad ; (AK) := (AK) ( (ad).
*Hз групе аритмети¬киx наредби поменимо још посебне наредбе за
инкрементирање (повеhање за 1) и декрементирање (смањење за1) садржаја неког
регистра процесора.
I$! Ri ; (Ri) := (Ri) + 1
D%! Ri ; (Ri) := (Ri) - 1.
Наредбе за логичке операције
Oве операције се извршавају над вредностима 0 и 1 у одговарајуhим (истим) позицијама
бинарне ре¬и. Наредбе за логи¬ке операције имају облик:
A$D ad ; (AK) := (AK) .A$D. (ad)#
A$DI #co ; (AK) := (AK) .A$D. co#
OR ad ; (AK) := (AK) .OR. (ad)#
ORI #co ; (AK) := (AK) .OR. co#
)OR ad ; (AK) := (AK) .)OR. (ad)#
)ORI #co ; (AK) := (AK) .)OR. co#
$OT ; (AK):= .$OT. (AK).
Oстале логи¬ке операције могу се реализовати коришhењем овиx наредби на основу
релација које се проу¬авају у прекида¬кој (Eуловој) алгебри.
Наредбе за померање
*Oперацијом померања бинарни садржај неког регистра централног процесора помера се
за једно или више бинарниx места лево или десно.
*Померање лево за једно место озна¬ава да се бинарна циqра из позиције i премешта у
позицију i+1. Померање бинарног садржаја за једно место улево еквивалентно је
множењу тог садржаја са 2. Померање удесно за једно место еквивалентно је деnењу
садржаја са 2.
Пример.
00110101 ; По¬етни садржај,
01101010 ; Померени садржај за једно место улево, при ¬ему се у
бит најмање тежине уписује 0.
*3ависно од на¬ина шта се ради са битовима у вишим и нижим позицијама разликујемо:
логичко померање, аритметичко померање и кружење.
*Наредбе за лево и десно логи¬ко померање имају облик:
SHL * ; Померање улево садржаја AК за к места
SHR * ; Померање удесно садржаја AК за к места
*При кружном померању удесно у бит преноса C се уписује бит из најмање
позиције, док се у позицију најмање тежине уписује 0. Наредбе за ово померање имају
облик:
SHL! * ; Померање улево за к места садржаја AК проширеног битом преноса !,
SHR! * ; Померање удесно за к места садржаја AК проширеног битом преноса !,
*Наредба за аритмети¬ко померање има облик:
SHRA * ; Aритмети¬ко десно померање садржаја AКза k места.
Пример.
1010110100011011 ; По¬етни садржај
1111010110100011; Cадржај после аритмети¬ког померања за три места удесно.
*Oперације померања користе се највише при реализацији аритмети¬киx операција
множења и деnења, али налазе и многе друге практи¬не примене
ружење
Наредбе за кружење имају облик:
ROR * ; Десно кружење за к места!
ROL * ; "ево кружење за к места#
Пример.
0101111000011011 ;По¬етни садржај,
0110101111000011 ;Cадржај после десног кружења за 3 места,
0111100001101101 ;Cадржај после левог кружења за2 места.
Oперација кружења се ¬есто реализује тако што се у петnу за
кружење укnу¬и и бит преноса C. Y том слу¬ају при десном кружењу
бит најмање тежине преноси се у бит преноса C, а садржај бита C у
позицију највеhе тежине. Наредбе имају облик:
ROR! * ; $есно кружење AК и C за k места!
ROL! * ; "ево кружење AК и C за k места#
Yправnа¬ке наредбе
*Наредбе гранања омогуhавају да се извршава један или други део програма зависно од
неког услова добијеног у току рада програма. На тај на¬ин оне ути¬у на ток извршења
наредби програма.
*Cве наредбе гранања деле се у две групе:
-наредбе безусловног гранања (наредбе скока)
-наредбе условног гранања.
*Наре!"# !е$%&'"()"* *ра)а+а (&,",а- !е$%&'"()"* .ре'а$а) увек се прелази на
специqицирану наредбу без испитивања икаквиx услова.
"R ad ; ("$) := ad .
*Cвака наредба %&'"()"* *ра)а+а поред специqикације услова гранања садржи и адресу
на коју се врши гранање када је тај услов испуњен. Y општем слу¬ају наредба условног
гранања има облик:
"R+ ad ;
*Aко је услов / = 1 тада (01) := ad; ( у qази припреме 01 је веh повеhан за за 2), где /
представnа неки услов из регистра услова који се при извршењу наредбе гранања
испитује.
Пример. Наредба гранања у којој се испитујеиндикатор услова C (бит преноса) има облик:
- "R! ad ; Aко је C=1 тада (01) := ad .
%слови гранања
Cве услове који се могу користити у наредбама гранања поделиhемо у следеhе групе:
-знак резултата у акумулатору(мањи од нуле, једнак нули, веhи од нуле),
-постојање преноса или прекора¬ења,
-аритмети¬ки однос два броја: =, <, ≤ , >, ≥
-однос апсолутниx вредности два броја,
-остали услови.
Tипови наредби условног гранања
Наредбе прескока
*Y мини ра¬унарима и микропроцесорима уведена је посебна врста наредбе гранања која
се назива )аре!а .ре&,",а.
*Oдликује се тиме да )е $а34е(а аре&)5 е", због ¬ега је број битова за њену реализацију
мали.
-SK ;("$) : = ("$) +1 (безусловни прескок)!
-SK+ ; Aко је + = 1 тада ("$) : = ("$) +1 (условни прескок)#
Програмске пет&е
Низ наредби програма ¬ије се извршавање понавnа док не наступи неки задати услов
назива се .р"*ра#&,а .е46а или .р"*ра#&,5 75,'%&.
Lp - припрема петnе
(иницијализација
петnе).
Lo - обрада.
La - припрема аргумената.
Li - промена индекса.
Lk - израчунаваuе критеријума.
Lz - провера заврmетка петnе.
Hосебне наредбе за петnе
Нај¬ешhе примењивана посебна наредба за програмирање петnи је наредба D018 (енгл.
DBNZ – D9c:9;9n< and 0:anc= i> 1o< 89:o)? смањење за 1 и гранање ако је садржај разли¬ит
од нуле) која има следеhи облик:
-D"$, PO' ; (RL): = (RL)-1; (RL)=- ⇒ ("$) := PO'#
-D"$, )Ri PO' ; ()Ri):=()Ri)-1; ()Ri)=- ⇒ ("$):=PO'#
-D"$, Ri PO' ; (Ri) : = (Ri) -1; (Ri) = - ⇒ ("$) := PO'.
Потпрограми
*По својој природи ове групе наредби се могу разматрати и као процедуре за
изра¬унавање неке qункције једне или више променnивиx или за извршење групе
операција које су заједни¬ке за више програма.
*Pади лакшег и бржег програмарања ови делови програма издвајају се у самосталне
програмске целине које се посебно пишу, тестирају и користе (позивају) а називају се
."4.р"*ра#5.
*Програм из кога се позива потпрограм назива се *'а()5 .р"*ра# или "&)"()5 .р"*ра#.
'рсте потпрограма
*3ависно од на¬ина на који се потпрограми укnу¬ују у главни (основни) програм разликују
се две врсте потпрограма:
(отворени потпрограми!
(затворени потпрограми#
• @4("ре)5 ."4.р"*ра# представnа низ наредби које се умеhу у главни програм.
• Aа4("ре)5 ."4.р"*ра# представnа низ наредби који се qормира и преводи као засебна
програмска целина, а може се користити много пута у једном или више програма и
потпрограма.
Наредбе за потпрограме
*Повезивање главног
програма и
потпрограма решава се
тако што се дефинише
место за смештање
повратне
адресе у фиксне или на
други начин одређене
заједничке
регистре у проесору
или одређене локаије у оперативној меморији!
)Пам*ење повратне адресе у неком регистру Ri процесора.
Наредба прелаза на потпрограм има следеhи qормат:
- !ALL Ri PP ; (Ri) := ("$) ; ("$) := PP .
3а повратак из потпрограма потребна је такоqе посебна наредба облика:
• R%T Ri D ; ("$) := (Ri) + D.
где је D број локација иза наредбе позива потпрограма намењениx за пренос параматара.
Памhење повратне адресе у магацину (стеку)
)Погодна и најчеш*е кориш*ена метода за пам*ење повратне адресе је магацинска
меморија#
*Наредбе CA"" и #$% имају облик:
- !ALL Ri PP ; BUCD Ri ; (Ri) := (01) ; (01) := BB -
- R%T Ri ; (01) := (Ri) ; BEB Ri.
Пренос параметара потпрограма
- заједни¬ка област у процесору, када се параметри налазе у неким регистрима
централног процесора;
- заједни¬ка област у оперативној меморији, када се за параметре користе:
1.посебно деqинисано, тзв. заједни¬ко подру¬је у оперативној меморији,
2.посебан меморијски блок са параметрима qормиран у оквиру главног програма (тзв.
листа параметара у главном програму) и
3.листа параметара у меморијским локацијама непосредно иза наредбе позива
потпрограма.
Yлазно-излазне наредбе
*F'а$)"# )аре!"# програмски се задаје извршење операције ¬итања (уношења) података
са неког периqерног уреqаја и његов упис у акумулатор или неки други регистар
централног процесора, а понекад и истовремени упис у оперативну меморију.
*G$'а$)"# )аре!"# програмски се задаје извршење операције слања (памhења,
складиштења) податка из акумулатора или неког другог регистра процесора на
периqерни уреqај.
Yлазно-излазне наредбе
3а једноадресне рачунаре улазно-излазне наредбе имају облик:
-!N dev ; Yлаз (читаuе) у акумулатор податка са периферног уреþаја са адресом dev,
-OUT dev ; Cлаuе податка из акумулатора на периферни уреþај са адресом dev.
Yлазно-излазни подсистем
*F'а$?5$'а$ података представnа процес преноса (трансqера) података измеqу
регистара централног процесора или оперативне меморије и уреqаја ван њега који се
називају .ер5Hер)5 %реIаJ5- %'а$)"?5$'а$)5 %реIаJ5 или .ер5Hер5Jе.
*Периqерни уреqаји представnају електронске или електромеxани¬ке уреqаје који
непосредно извршавају qункције улаза, излаза или улаза-излаза података помоhу разниx
носилаца, као и конверзију qизи¬киx сигнала у бинарни облик или обратно.
*Yлаз-излаз се реализује помоhу посебног подсистема који се назива %'а$)"?5$'а$)5
."&5&4е# раK%)ара ¬ија је намена остваривање везе измеqу ра¬унара и споnњег
окружења.
Yлаз-излаз
*Под %'а$"# (%'а$)"# а,45()"LM%) подразумева се процес уношења података у оперативну
меморију или регистре процесора.
*Под 5$'а$"# (5$'а$)"# а,45()"LM%) подразумева се процес слања (издавања) података из
регистара процесора или оперативне меморије на периqерни уреqај.
+собине пери,ерни- уре.аја
*Периqерни уреqаји су нај¬ешhе електромеxани¬ки уреqаји и њиxов рад се разликује од
на¬ина извршења операција у процесору и оперативној меморији.
*Периqерни уреqаји су нај¬ешhе за неколико редова вели¬ине спорији у односу на
процесор, па се јавnа проблем &5)3р")5$а75Jе њиxовог рада ради превазилажења разлике
у брзини рада која постоји измеqу централног процесора и периqерија.
*3бог ¬есте разлике у на¬ину кодирања и qорматима података у ра¬унару и ван њега,
јавnа се потреба конверзије података при одвијању улазно-излазне активноси.
*Yправnање радом периqерног уреqаја треба тако организовати да не ути¬е на рад
централног процесора или другиx периqерниx уреqаја.
Yправnаuе периферним уреþајима
*Kод мањиx ра¬унара централни процесор управnа директно улазно-излазним уреqајима
*Kод средњиx и веhиx ра¬унара, ради уштеде времена централног процесора, користи се
једна или више специјализованиx управnа¬киx јединица - %'а$)" ? 5$'а$)5 .р"7е&"р5, који
бирају путеве и управnају преносом док процесор остаје слободан да настави другу
обраду паралелно са улазно-излазним преносом.
*Yлазно-излазни процесор назива се и ,а)а'- ,")4р"'ер ,а)а'а или Jе5)57а $а %.ра(6а+е
,а)а'"#, јер он управnа и регулише токове података који се шаnу на периqерне уреqаје
или се са њиx уносе.
/арактеристике улазно(излазне 0ктивности
*коли¬ина података који се одједном преносе (знак по знак, ре¬ по ре¬, блок по блок, и
сл.).
*брзина преноса, изражена бројем пренетиx битова у секунди,
Начини преноса података
*3ависно од броја линија, тј. и броја битова податка који се истовремено преносе,
разлукују се &ер5J&,5 .ре)"& и .ара'е')5 .ре)"&.
*3ависно од тога да ли су тактни интервали предајног и пријемног уреqаја независни или
су синxронизовани (усклаqени) говоримо о а&5)3р")"# и &5)3р")"#
.ре)"&%.
1син-рони пренос
*Kод асинxроног преноса податак представnа низ знакова који се преносе независно у
произвоnним временским тренуцима.
*3бог тога се пријемник поново синxронизује на по¬етку сваког новог знака.
*3ато по¬етку сваког бинарно кодираног знака претxоди један бит који озна¬ава његов
по¬етак, тзв. &4ар4 !54, ради препознавања на пријемној страни по¬етка знака, и један
или два бита који озна¬авају крај знака, тзв. N4". !54"(5.
Cинxрони пренос
*Cинxрони пренос се користи при брзинама веhим од 2000 bit/s.
*Tо је еqикаснији на¬ин преноса којим се преносе !'","(5 - групе узастопниx података
које се при преносу третирају као целина.
*Eлок се преноси као поворка битова без кашњења измеqу знакова и без старт и стоп
битова.
*3а ово је потребно да пријемник буде синxронизован са предајником и да се посебним
управnа¬ким знацима једнозна¬но деqинише по¬етак и крај сваког блока података.
Oвако припремnен блок назива се ",(5р или ра#.
Kонтролни битови
*Y циnу контроле исправности преноса дуж телекомуникационе линије подацима се
додају посебни контролни битови.
*Kод асинxроног преноса сваки се знак посматра као одвојена јединица и у сваки од њиx
се додаје бит за контролу бит парности.
*Kод синxроног преноса за контролу је потребан знатно веhи број битова, оби¬но битови
75,'5K,е ре%)а)4)е ,")4р"'е, који се изра¬унавају и ставnају пре краја сваког оквира.
2презање улазно(излазни- уре.аја
%лазно(излазна магистрала
*Yлазно-излазна магистрала, као и друге магистрале, садржи три групе линија: линије за
податке, адресне линије и управnа¬ке линије.
*Hзвршењем улазно-излазниx наредби врши се размена података са периqерним
уреqајем преко интерqејса.
*G)4ерHеJ& или &.реO)а #реOа представnа скуп униqицираниx путева, униqицираниx
сигнала, електронскиx кола и правила (алгоритама) којима се организује размена
података.
K")4р"'ер
*Cваки периqерни уреqај има свој ,")4р"'ер (аа.4ер). Tо је електронски управnа¬ки
блок који управnа конкретним периqерним уреqајем тј. извршава специqи¬не за дати
улазно-излазни уреqај конверзије података и управnање меxанизмом уреqаја.
*Kонтролер добија наредбе од централног процесора и извршава иx обавnајуhи
заxтевани пренос,
*Hнтерqејс синxронизује ток података и усаглашава брзину преноса измеqу периqерног
уреqаја и ра¬унара.
Подела улазно-излазниx преноса према на¬ину управnања њиме
*3а улазно-излазни пренос података измеqу централног процесора и/или оперативне
меморије и периqерниx уреqаја користи се нај¬ешhе један од следеhа три на¬ина улазно-
излазног преноса:
-програмирани улаз-излаз
-улаз-излаз управnан прекидом
-директни приступ меморији (DMA).
Програмирани улаз-излаз
*Kод овог на¬ина улаза-излаза размена података измеqу периqерног уреqаја и
оперативне меморије обавnа се преко неког регистра у процесору, неј¬ешhе
акумулатора.
*При томе се управnање остварује помоhу посебног програма који извршава
процесор.
Програмирани пренос
*Програмирани пренос може бити !е$%&'"()5 и %&'"()5.
*Eезусловни програмирани пренос користи се у слу¬ајевима када су периqерни уреqаји
увек спремни за пренос, тј. имају спремне податке за улаз, нпр. претвара¬и, разни
извршни органи и сл., или могу увек да приxвате излаз, нпр. екран.
*Kод условног програмираног преноса у тзв. 5&.54)"J .е465 процесор проверава
спремност периqерног уреqаја за пренос, и када је он спреман извршава програм за улаз-
излаз.
Yлаз-излаз управnан прекидом
2истем прекида
*Pедослед извршавања наредби у процесору може бити одреqен на следеhе на¬ине:
-нормални (природни) редослед. Наредбе се извршавају редом како су смештене;
-гранање или прелаз на потпрограм. Прелази се на нову групу наредби;
-прекид програма (програмски прекид) или кратко прекид. Прекид нормалног извршења
наредби због посебног узрока ван програма.
Прекиди
*Прекиди се уводе из два разлога:
*3бог повеhања продуктивности и поузданости рада процесора
-Нпр. код xардверскиx отказа прекидом процесор прелази на посебан програм за обраду
грешке, код теxнолошкиx процеса прекид служи да процесор ступи у управnа¬ку акцију
да не би морало да се организује стално надгледање стања процеса;
*3бог синxронизације рада процесора са независним активностима које се дешавају ван
процесора.
-Tо су разли¬ите активности које заxтевају да иx
опслужи процесор.
Прекидини сигнали
*3а реализацију прекида генеришу се посебни &5*)а'5 $а34е(а $а .ре,5 или
.ре,5)5 &5*)а'5.
*Oви сигнали могу бити &."6аL+5 .ре,5)5 &5*)а'5, ако се генеришу ван
процесора, и %)%4раL+5 .ре,5)5 &5*)а'5, ако се генеришу у самом процесору.
*Према извору прекида постоји и следеhа подела: 3ар(ер&,5 .ре,55 - прекиди
засновани на прекидним сигналима, &"H4(ер&,5 .ре,55 - прекиди које проузрокују
специјалне наредбе у програму.
Mаскирани прекии
*!к" се прекии #"$% пр"$ра#ски "&'"ли(и или &а)рани(и "ни се на&и'а*%
#а&,5ра)5 .ре,55.
*+"с("*е и прекии к"*и се #"ра*% ")а'е&н" при,'а(и(и и на&и'а*% се )е#а&,5ра)5
.ре,55.
--ипи.ан не#аскирани преки *е преки к"*и се $енери/е при нес(анк% напа*а0а пр"1ес"ра.
Принцип одвијања прекида
Pре,5 .р"*ра#а представnа пренос управnања у процесору од програма који се у
датом моменту извршава (текуhег програма) на други програм - .р"*ра# $а ".&'%O5(а+е
.ре,5а или .ре,5)5 .р"*ра#.
µиректни приступ меморији
*Kод програмски управnаног улаза-излаза еqикасност коришhења процесора се јако
смањује када треба вршити пренос блокова података измеqу веhег броја локација
оперативне меморије и периqерниx уреqаја.
*Oвај се недостатак отклања увоqењем паралелизма у раду процесора с једне стране и
контролера (адаптера) периqерног уреqаја, с друге стране.
*Tо се постиже тако што више периqерниx уреqаја имају могуqност приступа оперативној
меморији помоhу посебног система који се назива 5ре,4)5 .р5&4%.
#е#"р5J5 или DMA .ре)"& (од енгл. DMA – Di234t 535627 A443ss - директни приступ
меморији)
DMA контролер
*DMA контролер је пот¬ињен централном процесору који иницира и завршава пренос,
одреqује посао који треба обавити као и шта треба урадити у неким ненормалним
ситуацијама активности контролера.
*µиректни приступ меморији одвија се на следеhи на¬ин:
? DMA контролер qормира посебан улазни сигнал за процесор који се назива &5*)а'
$а34е(а $а ,"р5LMе+е #а*5&4ра'е којим се заxтева директни приступ меморији.
- Kада на крају qазе извршења текуhе наредбе процесор утврди постојање тог сигнала он
прелази у посебно стање у коме ¬ека ипотврqује приxватање DMA $а34е(а.
?DMA контролер добија право коришhења магистрале, остварује директну спрегу и
управnа преносом измеqу оперативне меморије и периqерног уреqаја.
-На крају наложеног преноса DMA контролер сигналом заxтева за прекид обавештава
процесор да је завршио пренос целог блока података, после ¬ега процесор наставnа
привремено прекинуто извршење програма.
%лазно(излазни процесори
*Yместо да се комуницарање централног процесора са периqерним уреqајем врши
директно, код средњиx и веhиx ра¬унара због великог броја периqерниx уреqаја постоји
један или више специјализованиx процесора који се називају %'а$)"?5$'а$)5 .р"7е&"р5 или
,а)а'5.
*hиxов је задатак размена података са свим улазно-излазним уреqајима као и директни
приступ меморији. Oви процесори раде аутономно и паралелно са централним
процесором.
%лазни уре.аји
*Према на¬ину уношења података сви улазни уреqаји могу се сврстати у две групе:
- уреqаје за ру¬но уношење,
- уреqаје за аутоматско уношење.
%ре.аји за ручно уношење
*F.ра(6K,5 .%'4 или ,")$"'а је уреqај који садржи таблу са тастерима, разним
прекида¬има и индикаторима.
*Tастатура представnа низ тастера који када се притисну производе у ра¬унару бинарни
код притиснутог знака.
*Mиш представnа тзв. .",а$5(аK,5 %реIаJ који се руком покреhе по равној површини. Oви
покрети се преносе у ра¬унар и узрокују кретање курсора на екрану.
%ре.аји за аутоматскоуношење
*Yреqаји за а%4"#а4&," %)"Lе+е ."а4а,а могу се поделити на уреqаје са непосредним
уношењем и уреqаје са посредним уношењем.
*Kод )е."&ре)"* %)"Lе+а подаци се уносе непосредно у ра¬унар.
*Kод ."&ре)"* %)"Lе+а улазној активности претxоди прикупnање (обуxватање) података.
Pр5,%.6а+е ."а4а,а се састоји у записивању података на посебним носиоцима, нај¬ешhе
на диску.
%ре.аји за аутоматскоуношење
*Yреqаји за ¬итање називају се K54аK5 ",%#е)а4а &а ".45K,5 K5465(5# $)а75#а или %реIаJ5
$а ".45K," .ре."$)а(а+е $)а,"(а. Kористе се два стандардизована писмаECR A и ECR 0 ¬ији
су знаци оптимизовани за машинско препознавање.
*FреIаJ5 $а ".45K," K54а+е .р%*а&4"* ,"а користе ласерски зрак за ¬итање ознака са
пругастим кодом, а могу бити у једном од следеhа два облика:
а) као оловка којом се ¬ита ознака,
б) у облику прореза изнад кога се превла¬и ознака.
*N,е)ер је улазни уреqај који служи за опти¬ко ¬итање и дискретизацију слика или цртежа
и њиxово уношење у меморију ра¬унара.
*QраH5K,а 4а!'а или 5*54а'5$а4"р представnа равну површину која заједно са посебним
пером служи за дигитализацију и уношење граqи¬киx података у ра¬унарски граqи¬ки
систем, нпр. мапа, теxни¬киx цртежа и сл.
3злазни уре.аји
*Hзлаз резултата обраде, тј. Hздавање података из ра¬унара може имати следеhе сврxе:
-привремено памhење на машински ¬итnивим
носиоцима,
-саопштавање или приказ крајњиx резултата
обраде,
-непосредно коришhење.
4тампачи
*Према на¬ину штампања штампа¬и се могу поделити у две групе:
-електромеxани¬ки штампа¬и,
-штампа¬и са немеxани¬ким на¬ином штампања.
*Pара'е')5 е'е,4р"#е3а)5K,5 L4а#.аK5 се деле на штампа¬е са добошем (ваnком) и
штампа¬е са ланцем.
*Nер5J&,5 е'е,4р"#е3а)5K,5 L4а#.аK5 могу бита са полугама (електри¬не писаhе машине),
главом за штампање, лепезом и матри¬ни (игли¬асти).
*Oд штампа¬а са )е#е3а)5K,5# )аK5)"# L4а#.а+а користе се: qотоштампа¬и, терми¬ки
штампа¬и, електростати¬ки штампа¬и, ксерограqски штампа¬и, штампа¬и са
убризгавањем мастила и ласерски штампа¬и.
Operativni sistemi
Softver
*Aplikativni softver – softver namenjen specificnim potrebama korisnika za
rešavanje konkretnih problema
-Programi za obradu teksta, video igre, softver za obracun plata,
softver za vodenje balistickih raketa, itd.
*istemski softver – oftver za upravljanje racunarskim sistemom na osnovnom
nivou, zajednicki za sve racunarske sisteme, nezavisno od konkretne primene
racunara od strane korisnika
-Predstavlja osnovu za funkcionisanje aplikativnog
softvera
Aplikativni softver
*Poslovni softver
-pecificne poslovne aplikacije, planiranje resursa preduzeca, upravljanje
odnosom sa klijentima, vodenje poslovanja, upravljanje projektima,
racunarsko izdavaštvo, projektovanje pomocu racunara !"A#$, ...
*oftver za kucnu i licnu upotrebu
-%icne finansije, graficki dizajn, zabava i kompjuterske igre, ...
*oftver za poboljšanje produktivnosti
-&brada slike, tabelarna izracunavanja, prezentacije, baze podataka,
upravljanje licnim informacijama
*'ultimedijalni softver
-(ditovanje slika i fotografija, kreiranje crte)a i vektorske grafike, kreiranje
multimedijalnih sadr)aja, preuzimanje i editovanje videa, kreiranje i
reprodukovanje muzickih sadr)aja, ...
**omunikacioni+,nternet softver
-,nternet pretra)ivaci, e-mail klijenti, instant messenger !,"-$, chat, ...
*(dukativni softver
-(nciklopedije, tutorijali, turisticki vodici, ...
Sistemski softver
*&perativni sistem
*Programski sistem
-*ompajleri programski jezika, linkeri, debageri, editori, integrisana razvojna
okru)enja, softverski alati za razvoj softvera !"A($
**omunikacioni softver
-oftver za povezivanje racunara u mre)u i deljenje resursa
*.slu)ni softver
-#isk doktor, sistemske informacije, anti-virusni softver, kompresovanje
podataka, ...
*/raficki sistem
*Programi za proveru ispravnosti racunarskog sistema, upravljanje i unapredenje
performansi racunara i za detekciju grešaka u hardveru i softveru racunara
Operativni system
*kup programa smeštenih u memoriju prilikom bootovanja racunara za upravljanje
radom hardvera , softvera racunarskog sistema
*&perativni sistemi0 1indo2s 3+4ista+5P+..., .6,5, %inu7,
'ac & 5, olaris, Android, 8mbian, itd.
Klasifikacija operativnih sistema
*Prema tipu racunara
-& za mainframe racunare, super racunare, mini racunare, radne stanice, servere,
personalne racunare !P"$, rucne racunare !PocketP", Palm$, pametne telefone,
ugradene racunare, pametne kartice, itd.
*Prema broju istovremenih korisnika
-9ednokorisnicki !1indo2s$ i višekorisnicki !.ni7, %inu7$
*Prema broju startovanih programa
-'onoprogramski !#&, 1indo2s :.7$
-'ultiprogramski !1indo2s, .ni7, %inu7, 'ac &$
; <ime-sharing svakom programu se dodeljuje jedan vremenski kvant !od => do
=>>ms$, pa se aktivira sledeci, i tako u krug? korisniku izgleda da se svi programi
istovremeno izvršavaju, a u stvari izvršavaju se jedan po jedan smenjujuci se u
kratkim vremenskim intervalima !kvazi paralelno$
&perativni sistem...
*.pravlja resursima racunarskog sistema, kako hardverskim !"P., glavna memorija,
ulazno+izlazni uredaji, sekundarne memorije$, tako i softverskim !strukture podataka
u glavnoj memoriji, datoteke, softver, itd.$
-&bezbeduje da svaki startovani program dobije resurse neophodne za izvršenje
*&bezbeduje interfejs za interakciju korisnika sa
racunarom
*&bezbeduje okru)enje za izvršenje aplikacionih programa i njihovu interakciju sa
resursima racunarskog sistema
Komponente operativnog sistema
*.pravljanje procesima
*.pravljanje glavnom memorijom
*.pravljanje .+, uredajima
*.pravljanje datotekama !@ile s8stem$ - upravljanjepodacima na sekundarnim
memorijama organizovanim u datoteke i direktorijume
*igurnost i zaštita
*,nterakcija sa korisnikom putem interpretacije komandnog jezika ili grafickim
korisnickim interfejsom !/.,$
.pravljanje procesima
*&snovne funkcije
-*reiranje i terminiranje procesa
-uspendovanje i ponovo aktiviranje procesa
-Planiranje izvršenja procesa i upravljanje centralnim procesorom !-ima$
-&bezbedenje mehanizama za sinhronizaciju , komunikaciju izmedu procesa
-&bezbedenje mehanizama za upravljanje deadlockom !smrtni zagrljaj, uzajamno
blokiranje$
.pravljanje procesima
*Program je skup programskih instrukcija i podataka organizovanih u obliku izvršne
datoteke na disku !.e7e$. tartovanjem programa aktivira se proces !task$
*Proces predstavlja izvršavanje programa. Prilikom startovanja programa u glavnu
memoriju !AA'$ se ucitavaju instrukcije programa , podaci koji se obraduju i
zapocinje izvršavanje instrukcija nad podacima
*'ultiprogramiranje – tehnika & kojom se omogucava da u isto vreme više
programa bude u glavnoj memoriji i da procesi njima aktivirani konkurišu za
dobijanje "P. radi izvršenja, a takode konkurišu i za druge resurse racunarskog
sistema
*Planiranje procesa – postupak odredivanja koji ce proces sledeci biti izvršavan na
"P. !Planer procesa - cheduler$
*P"B !Process "ontrol Block$ – za svaki startovani proces & odr)ava strukturu
podataka sa informacijama o tom procesu !identifikator, prioritet, vreme kreiranja,
vreme izvršenja, memorija koju zauzima, datoteke koje koristi, itd$? skup P"B svih
startovanih procesa cini tablicu procesa
Procesi
& je zadu)en za startovanje, izvršavanje i stopiranje procesa !programa$ na
racunaru.
Stanja procesa
*tanja procesa !)ivotni ciklus procesa$0
-Aktivan !Aunning$ – proces se izvršava na "P.
-preman !Aead8$ – proces se nalazi u memoriji i spreman je za izvršenje, kad mu
se dodeli "P.
-Blokiran !1aiting$ – proces ceka na završetak .+, operacije ili neki dogadaj da bi
mogao da nastavi sa izvršavanjem
Promena konteksta (Context switch)
*Postoji samo jedan "P. !jedno-procesorski racunar$ , njemu pridru)en skup
registara koji sadr)e vrednosti u skladu sa trenutnim izvršavanjem aktivnog procesa
!kontekst procesa$
*vaki put kada se proces prevodi u aktivno stanje nastaje promena konteksta0
-4rednosti registara do tada aktivnog procesa se smeštaju u njegov P"B i on prelazi
u stanje preman
-Prethodno zapamcene vrednosti registara novo aktiviranog procesa se iz njegovog
P"B smeštaju u registre procesora i novi proces nastavlja izvršavanje od instrukcije
koja je prekinuta kada je proces prešao u stanje spreman !nakon isteka dodeljenog
vremenskog perioda za izvršavanje$ ili u stanje cekanja !ukoliko je aktivirao neku .+,
operaciju$
Planiranje procesa (CPU Sche!ling)
*Postupak odredivanja koji proces spreman za izvršenje !u stanju spreman$ treba da
bude aktiviran
-4eliki broj procesa mo)e biti u stanju spreman
-amo jedan proces mo)e biti u stanju aktivan
*Planiranje procesa se obavlja po principu raspodele vremena "P. !time sharing$ –
primenom sledeca dva algoritma0
-*ru)ni tok !Aound Aobin$ - vaki proces se izvršava odredeni vremenski interval
!kvant$ i nakon isteka intervala vraca u stanje spreman !ukoliko nije završen ili
aktivirao neku .+, operaciju$, a sledeci proces po redu se aktivira i tako u krug
-Prioritet - Aktivira se proces najveceg prioriteta. taticki prioritet se ne menja
tokom )ivotnog ciklusa procesa, dok je dinamicki promenljiv. istemski procesi
imaju generalno veci prioritet od korisnickih procesa
Kr!"ni tok (#o!n ro$in)
*Aaspodela procesorskog vremena na jednake
delove svim spremnim procesima
*Pretpostavimo da jeCvremenski kvant D> ms
Upravljanje memorijom
*@unkcije
-#odela memorije procesima za smeštanje koda
programa i podataka
-&slobadanje memorije kada se proces završi
-(videncija gde i kako su smešteni procesi u memoriji?
svaki proces u memoriji cuva programski kod i podatke
nad kojima se vrši obrada
-*onvertovanje logicke u fizicku adresu pri svakom
referenciranju memorije od strane procesa koji se
izvršava !aktivan proces$
; %ogicka adresa !virtuelna ili relativna adresa$ adresa memorijske lokacije
relativno u odnosu na pocetak programa , ima vrednosti od > do 'a7 !velicine
procesa u memoriji$
; @izicka adresa - tvarna adresa bajta !reci$ u glavnoj memoriji !AA'$
*'emorija je kontinualan skup bitova pri cemu svaki bajt !ili memorijska rec$ ima
jedinstvenu !fizicku$ adresu
*'emorijske adrese pocinju od > do 6 u zavisnosti od velicine glavne memorije
*Primer0
-Aacunar ima =EF 'B memorije
-vaka rec !2ord$ je velicine F B
-*oliko bitova je neophodno za
adresiranje svake reci u
memorijiG
-&dgovor0 EH bita
Pojeinacno (jenoprogramsko) kontin!alno !pravljanje memorijom
*Postoje samo dva procesa u memoriji0 operativni sistem ,
aplikacioni program
*'emorija je podeljena u dve sekcije i sadr)ajem
granicnog registra zašticen je pristup procesa
aplikacionog programa memorijskom prostoru u koji je
smešten &
*%ogicka adresa je celobrojna vrednost relativno u odnosu
na pocetak procesa aplikativnog programa
*#a bi se generisala fizicka adresa logicka adresa se
dodaje adresi pocev od koje je smešten proces u glavnoj
memoriji
Upravljanje memorijom kori%cenjem particija
*'emorija je podeljena na memorijske particije koje mogu
biti zauzete ili slobodne
-@iksne particije – formiraju se prilikom podizanja !boot$
sistema
-#inamicke particije – 'emorijske particije se dinamicki
kreiraju u memoriji na osnovu zauzimanja , oslobadanja
memorije od strane procesa
*Bazni registar - sadr)i pocetnu adresu memorijske particije koja je dodeljena
trenutno aktivnom procesu
*/ranicni registar - sadr)i vrednost velicine memorijske particije aktivnog procesa
Upravljanje memorijom stranicenjem
*tranicenje – <ehnika za nekontinualno upravljanje memorijom u kojoj je proces
podeljen na stranice !page$ fiksne velicine, uobicajeno H*B !mo)e biti D=EB do IH*B
i više$, koje se smeštaju u nekontinualne stranicne okvire !page frame$ iste velicine
u glavnoj memoriji.
Upravljanje U&' !reajima
*akriva detalje i specificnosti svakog
hardverskog uredaja od korisnika
*&snovne funkcije0
-&bezbeduje jedinstveni interfejs prema .+, uredajima
-Pomocu drajvera uredaja vrši upravljanje specificnim .+, uredajima
-Planira, dodeljuje procesima i oslobada .+, uredaje
-&bezbeduje efikasnost rada .+, uredaja i upravljanje greškama
U&' !reaji
*(lektromehanicki .+, uredaj !tastatura, miš, monitor, disk, itd.$
*.+, kontroler !adapter, P" kartica$ – cip, ili skup cipova na ploci ili kartici koji
upravlja uredajem, obezbedujuci jednostavan interfejs prema & u vidu registara za
kontrolu uredaja, podatke, status uredaja i adresu !citanja ili upisa$
(acini i)vr%enja U&' operacija
*Programirani .+, – aplikativni program poziva .+, funkciju !read, 2rite$, koja poziva
drajver uredaja koji aktivira .+, kontroler, , povremeno proverava da li je uredaj
završio. Ako je završio, smešta rezultujuce podatke u memorijski bafer i vraca
kontrolu aplikativnom programu. "P. izvršava drajver, ne radeci ništa drugo !bus8
2aiting$
*Prekidima voden .+, – drajver aktivira .+, kontroler i zahteva da kontroler generiše
prekid kada završi. #rajver završava i & taj process aplikativnog programa
postavlja u stanje cekanja i aktivira sledeci proces. *ada kontroler obavi .+,
operaciju, generiše prekid koji se preko kontrolera prekida šalje "P.. & na osnovu
broja uredaja koji je izazvao prekid aktivira proceduru za obradu prekida, koja
obavlja transfer podataka, a zatim se aktivira proces koji je prekinut.
*.+, korišcenjem #'A !#irect 'emor8 Access$ – *oristi se poseban #'A cip koji
omogucava prenos vece kolicine podataka izmedu memorije i kontrolera bez
intervencije "P.. "P. aktivira #'A cip, specificirajuci uredaj i memorijsku adresu,
kao i broj bajtova koje treba prebaciti. #'A generiše prekid kojim obaveštava "P. o
završetku prenosa
U&' !pravljan prekiima
**oraci u aktiviranju .+, uredaja i prihvatanje prekida !a$
-#rajver nala)e kontroleru šta treba da uradi upisujuci vrednosti u njegove registre
!=$
-*ada kontroler završi sa citanjem+upisom aktivira kontroler prekida !E$
-*ontroler prekida informiše "P. o nastalom prekidu !:$ i prosleduje informaciju o
tome koji kontroler uredaja je aktivirao prekid !H$
*&brada prekida !b$ – <ekuca instrukcija programa se prekida, , izvršenje prenosi na
rutinu za obradu prekida !deo drajvera$
Upravljanje !la)no&i)la)nim (U&') !reajima
*.+, softver
.+, softver
*Procedure za obradu prekida !interrupt handler$ – procedure koje se izvršavaju u
slucaju nastanka prekida !interrupt$ od .+, uredaja
*#rajveri uredaja !device drajver$ – softver koji upravlja radom .+, kontrolera,
izdajuci mu komande i prihvatajuci rezultat. vaki proizvodac .+, kontrolera i .+,
uredaja razvija drajver za svaki & !1indo2s, .ni7, %inu7, itd.$ #rajveri se prilikom
instaliranja integrišu u &
*& .+, softver nezavistan od .+, uredaja
-,zvršava .+, funkcije koje su zajednicke za sve .+, uredaje
-&bezbeduje aplikativnim programima jedinstven programski interfejs nezavisno od
tipa uredaja i .+, kontrolera. !. aplikativnom programu poziva se funkcija read za
citanje podataka sa sekundarne memorije bez obzira da li se radi o hard disku, cd
rom-u, .B flash disku, itd.$
Upravljanje atotekama (*ile system)
*&bezbeduje organizovanje i pristup podacima na sekundarnim !trajnim$
memorijama racunarskog sistema
*Podaci su organizovani u datoteke, a datoteke su grupisane u direktorijume
!foldere, adresare, kataloge$
*&snovne funkcije0
-Prevodenje logicke adrese !broj bloka$ u fizicku adresu !cilindar, staza, sektor$
-*reiranje i brisanje datoteka i obezbedenje operacija za rad sa datotekama
!otvaranje, zatvaranje, citanje, upis, pozicioniranje,...$
-(videncija blokova na sekundarnoj memoriji u kojima je smeštena datoteka
-(videncija slobodnog prostora na sekundarnoj memoriji za smeštanje novih
datoteka
-Jaštita datoteka i podataka u njima od neovlašcenog pristupa, modifikovanja i
brisanja
Upravljanje atotekama
*#atoteke – imenovana kolekcija logicki povezanih, homogenih podataka ,me
datoteke, tip datoteke !ekstenzija$, velicina, datum kreiranja+modifikacije, prava
pristupa, itd.
*#irektorijumi !folderi, adresari, katalozi$ – sadr)e spisak datoteka i direktorijuma
ni)eg nivoa
-*orenski direktorijum !root$ – "0C
-Kijerarhijska organizacija direktorijuma u stablo !graf$
-Putevi !path$ do datoteka i direktorijuma0
; Apsolutni – pocev od direktorijuma korena, navodenje svih direktorijuma do
konacne datoteke ili direktorijuma
; Aelativni – pocev od radnog direktorijuma, korišcenjem simbola . !tekuci
direktorijum$ i .. !direktorijum iznad$
+irektorij!mi (foleri) i p!tevi
*Apsolutni put "0C.AC%ec=.ppt
*Aelativni put ..C.AC%ec=.ppt
Programski je)ici i ra)voj softvera
Programski je)ici
*Programski jezik definiše0
-skup instrukcija
-sintaksu instrukcija
; format instrukcije i pravila za povezivanje instrukcija u vece
celine,
-semantiku instukcija
; znacenje instrukcije i akciju u programu koju izvršava
*Program predstavlja sekvencu instrukcija napisanih u nekom programskom jeziku
koje se mogu prevesti u instrukcije koje racunar mo)e direktno izvršiti !mašinske
instrukcije$
,eneracije programskih je)ika
*'ašinski jezik
*Asemblerski !simbolicki$ jezik i makrasemblerski jezici
*Proceduralni !imperativni$ programski jezici
Pascal, ", Basic, @ortran, "obol
*&bjektno-orijentisani programski jezici
"LL, 9ava, "M, malltalk
*6eproceduralni !deklarativni$ programski jezici
Prolog, -% !upitni jezik baze podataka$
*@unkcionalni programski jezici
%,P, cheme !verzija %,P$
-a%inski je)ik
*'ašinski jezik predstavlja skup mašinskih naredbi kojima se specificiraju
elementarne operacije koje racunar direktno prepoznaje i izvršava.
*&ve elementarne operacije su zadate u binarnom obliku , nazivaju se mašinske
instrukcije
*vaki procesor ima svoj skup ugradenih mašinskih instrukcija koje mo)e direktno
da izvršava, dakle ove instrukcije su ugradene u sam hardver racunara
*Pisanje programa korišcenjem mašinskog jezika je vrlo slo)en proces podlo)an
greškama.
*Broj i vrsta mašinskih instrukcija ugradenih u jedan racunar zavisi od tipa i
karakteristika procesora0 -A," i "," tipovi procesora u zavisnosti od broja i
kompleksnostimašinskih instrukcija koje realizuju
Asem$lerski je)ik
*Programski jezik koji koristi simbolicke oznake !mnemonicke kodove$ za
predstavljanje instrukcija mašinskog jezika
*Programer koristi ove alfanumericke kodove umesto binarnih cifara, > i =.
*vakoj naredbi asemblerskog jezika odgovara jedna mašinska instrukcija
*4iše naredbi asemblerskog jezika koje cine neku funkcionalnu celinu mo)e biti
grupisano u jednu makro naredbu i time je formiran makroasemblerski jezik
Programski prevoioci
*Prevode program napisan u višem programskoj jeziku u naredbe napisane u
mašinskom jeziku
!mašinske naredbe$, koje procesor mo)e direktno da izvršava
*4rste programskih prevodioca
-Asembleri i makroasemlberi – prevode program sa asemblerskog
!makroasemblerskog$ jezika, pri cemu se simbolicka imena i oznake zamenjuju
binarnim kodovima
-*ompajleri !kompilatori$ – prevode program sa višeg programskog jezika u
mašinski kod
-,nterpretatori – prevode svaku naredbu programa , odmah je izvršavaju
!interpretiraju$
#a)voj i i)vr%enje programa
*Programski prevodilac !compiler$ prevodi program napisan u nekom programskom
jeziku !izvorni program, kod$ u program napisan u mašinskom jeziku koji se naziva
objektni program !kod$
*Povezivac !linker$ je sistemski program integriše objektne kodove programskih
modula i modula sistemskih biblioteka , formira izvršni program !kod$ koji je u obliku
datoteke !.e7e$ na disku
*istemski program punilac !loader$ prenosi izvršni program sa diska u glavnu
memoriju prilikom startovanja izvršenja programa !npr. dvostrukim klikom miša na
ikonu programa$ aktivira se proces i zapocinje izvršavanje mašinskih instrukcija
programa
.ipovi poataka
*<ip podataka definiše skup vrednosti koje podaci tog tipa mogu da imaju, nacin
njihove memorijske reprezentacije, kao i operacije koje se mogu izvršavati nad
podacima tog tipa
*&snovni tipovi podataka
-"eli brojevi !,nteger, %ong ,nteger$. Programski jezici definišu nekoliko verzija celih
brojeva razlicite velicine i opsega vrednosti u zavisnosti od broja bajtova koji se
koriste za njihovu reprezentaciju. &peracije nad celim brojevima su standardne
aritmeticke i relacione operacije.
-Aealni brojevi jednostruke i dvostruke tacnosti !Aeal, #ouble$. &peracije nad
realnim brojevima su standardne aritmeticke i relacione operacije.
-Jnakovi !"haracter$ – Predstavljeni A",, kodom ili .6,"&#( != ili E bajta$
Aritmeticke i relacione operacije nad znakovima odnose se na njihove kodove.
-6izovi znakova !tring$ – ekvenca znakova koja se tretira kao jedinstven podatak,
npr. N&vo je stringO. &peracije su konkatenacija !spajanje$ , relacione operacije u
odnosu na leksikografsko uredenje
-%ogicki !Bool$ - Podaci ovog tipa imaju dve vrednosti0 tacno i netacno !true, false$.
%ogicke operacije nad ovim podacima !A6#, &A, 6&<, 5&A, P$
*Promenljiva je lokacija u memoriji na koju se referencira identifikatorom
!simbolickim imenom$ , koja sadr)i podatke odredenog tipa
(are$e vi%ih programskih je)ika
*#eklarativne naredbe
*,zvršne naredbe0
-(lementarne izvršne naredbe
-.pravljacke structure
+eklaracija
*,nstrukcija programa kojom se pridru)uje identifikator nekoj promenljivoj, funkciji ili
nekom drugom element programskog jezika, tako da se programer mo)e
referencirati na taj element putem tog identifikatora !imena$
*Ja imena elemenata ne mogu se koristiti rezervisane !kljucne$ reci programskog
jezika
*. zavisnosti od programskog jezika ista imena napisana razlicitim slovima !velikim
ili malim$ predstavljaju razlicita imena
*Primer deklaracija promenljivih u "LL+9ava
(are$a oele i nare$e !la)a&i)la)a
*6aredba dodele je naredba kojom se promenljivoj sa leve strane znaka jednakosti
dodeljuje vrednost izraza navedenog sa desne strane znaka jednakosti u obliku
-Primer0 xp = a s d * ( t - 12.45) /9 . 2 5
*6aredbe ulaza+izlaza se po strukturi i sintaksi veoma razlikuju u programskim
jezicima visokog nivoa
*.lazne naredbe tretiraju ulazne podatke kao niz znakova podeljen u linije, a
samom naredbom se definiše kako se tumace vrednosti definisane ovim znakovima
!kao celi brojevi, realni brojevi, stringovi, itd.$
*,zlazne naredbe vrednosti promenljivih u odgovarajucem formatu prevode u niz
znakova koji se prikazuje na monitoru, upisuje u datoteku ili prikazuje na štampacu.
Upravljacke str!ct!re
*.pravljacka struktura je instrukcija programa koja odreduje redosled izvršavanja
ostalih instrukcija programa
*.pravljacke strukture su0 sekvenca, selekcija, petlja i poziv potprogama
-ekvenca predstavlja izvršenje instrukcija programa u sekvenci, jedne za
drugom, dok se ne naide na instrukciju kojom se menja ovaj redosled
-elekcija na osnovu ispunjenosti ili neispunujenosti odredenog uslova
odreduje koje ce instrukcije sledece biti izvršavane
-Petlja ponavlja izvršenje odredenog skupa instrukcija dok je !ne bude$
zadovoljen odredeni uslov. , selekcija i petlja uslov specificiraju logickim !Bool-ovim$
izrazom
-Poziv potprograma – zapocinje se sa izvršavanjem posebno izdvojene grupe
instrukcija koje cine potprogram
*trukturno programiranje je metodologija programiranja u kojoj svaka logicka
jedinica programa treba da ima jedan ulaz i jedan izlaz
/ogicki (0ool1ov) i)ra)
*%ogicki !Bool-ov$ izraz predstavlja sekvencu konstanti, promenljivih ili izraza
povezanih odgovarajucim operatorima cija je vrednost tacno ili netacno
*%ogicki izraz mo)e biti
-%ogicka konstanta !true, false$ ili promenljiva
-#va ili više aritmetickih ili znakovnih izraza povezanih relacionim
operatorima !Q, R, ≤ , S, TS,P$
-#va ili više logickih izraza povezanih logickim operatorima !A6#, &A, 6&<,
5&A, (-4, P$
(are$a selekcije
*6aredba selekcije !if naredba$ omogucava
programu da ispita vrednosti programskih
promenljivih korišcenjem logickog izraza i u
zavisnosti od vrednosti izraza izvrši
odredenu sekvencu naredbi
(are$a vi%estr!kog grananja
(case)
*#a bi se ispitali višestruki uslovi, u granama if naredbe mogu biti nove if naredbe
!ugnje)dene if naredbe$
*'nogi programski jezici visokog nivoa ukljucuju naredbu NcešljaO, case !s2itch$
naredbu
*&na omogucava izvršavanje razlicitih sekvenci naredbi u zavisnosti od diskretnih
vrednosti
promenljive ili izraza iz skupa definisanih vrednosti
(are$e petlje
*6aredbe petlje omogucavaju višestruko izvršavanje istog bloka naredbi programa
-6aredba sa neodredenim brojem prolaza kroz petlju !2hile$
-6aredba sa odredenim brojem prolaza!for$
Petlja sa neoreenim $rojem prola)a
*.slov izlaska iz petlje je zadat kao
logicki izraz cija se vrednost ispituje
pre svakog prolaska kroz petlju,
ukoliko je tacan !ili netacan$ izlazi se iz
petlje
Petlja sa oreenim $rojem
prola)a
**oristi specijalnu promenljivu
nazvanu brojac petlje, koja pri svakom
izvršenju naredbi u petlji menja svoju
vrednost
pocev od startne vrednosti, do konacne vrednosti za odredeni inkrement !for
naredba$
(are$e potprograma
*Potprogram je deo programskog koda koji obavlja tacno odredenu funkciju i koji se
mo)e izdvojiti kao posebna programska celina, sa odredjenim nazivom po kome se
poziva u okviru ostalih programa Potprogram definiše listu identifikatora odredenog
tipa koji su neophodni za njegovo izvršavanje i to su parametric potprograma
!fiktivni, formalni parametri$
*Pri pozivu potprograma uz naziv potrpograma, glavni program prosleduje listu
argumenata koji po broju, tipu , redosledu odgovaraju parametrima !stvarni
parametri, argumenti$
*Prenos argumenata potprogramu
-Po vrednosti – na osnovu parametra se ocekuje da se vrednost argumenta
kopira i prenese potprogramu
-Po referenci - na osnovu parametra se ocekuje da se adresa !referenca$
argumenta prenese potprogramu tako da je svaka promena argumenta u
potpogramu vidljiva i u glavnom program
#ek!r)ija
*Aekurzija je sposobnost potprograma da poziva sam sebe
*Pri svakoj rekurziji postoje dva slucaja u zavisnosti od odredenog uslova0
-,zlaz iz potprograma
-Aekurzivni poziv istog potprograma sa smanjenom verzijom problema
*6a primer, faktorijel broja 6 koji predstavlja proizvod svih celih brojeva od > do 6,
mo)e se rekurzivno predstaviti0
N! = N * (N - 1)!
i realizovati rekurzivnim potprogramom
Slo"eni tipovi poataka 2 Polje
*Polje je imenovana kolekcija homogenih elemenata u kome se
svakom element pristupa na osnovu pozicije u kolekciji koja se
oznacava indeksom !-ima$
-9ednodimenzionalno polje – niz
-#vodimenzionalno polje - matrica
*Primer deklaracije niza u "LL+9ava
Slo"eni tipovi poataka 2 slogovi (str!kt!re)
*log !record, struct$ je imenovana kolekcija heterogenih elemenata pri cemu se
svakom elementu pristupa po imenu. (lementi sloga mogu biti razlicitog tipa.
O$jektno1orijentisani programski je)ici
**arakteristika programskog jezika kojom se u
okviru tipa podataka definišu atributi i funkcije
!metodi$ koje pristupaju atributima i obavljaju
obradu nad njima. &vakav tip podataka se
naziva klasa, a objekti predstavljaju
promenljive tipa klase !instance klase$.
*#eklaracija objekta klase
*Postavljanje vrednosti atributa
objekta
*Poziv funkcije objekta
pr1.promeniIme(“ M i l a n ” ) ;
Softversko in"enjerstvo
*Aacunarska disciplina kojom se primenjuju in)enjerski principi i metodologije u
razvoju softvera
*Proizvod softverskog in)enjerstva !razvoja softvera$ nije samo softverska aplikacija
vec i
svi prateci dokumenti, dijagrami, specifikacije koje su rezultat razlicitih faza u
razvoju softvera.
3ivotni cikl!s softvera
*/lavne faze u razvoju softvera
-Planiranje
-Analiza
-Projektovanje
-,mplementacija
-<estiranje
-&dr)avanje
*Pratece faze tokom razvoja softvera
-Procena izvodljivosti – procena izvodljivosti razvoja softvera u odnosu na
vremenske rokove, raspolo)ive ljudske i materijalne resurse !hardver, softver,
mre)a, itd.$, procena koliko je opravdan razvoj u odnosu na neophodna finansijska
sredstva i ekonomske koristi od sistema
-.pravljanje projektom – planiranje faza, odr)avanje vremenskih rokova i
kontrola aktivnosti u toku )ivotnog ciklusa softvera
-#okumentacija – generisanje dokumentacije za svaku fazu razvoja
-&bezbedenje kvaliteta – kontrola i postizanje visokog kvaliteta softverskog
proizvoda
Planiranje i anali)a
*. okviru faze planiranja treba da se0
-Aazmotre projektni zahtevi i utvrde prioriteti
-#odele resursi neophodni za izvodenje projekta0 novac, ljudi, oprema
-&dredi razvojni tim za projekat
*@aza analize definiše šta softver treba da radi i sadr)i sledece aktivnosti0
-Preliminarno ispitivanje i formiranje studije izvodljivosti
-,stra)ivanje funkcionisanja postojeceg softverskog sistema
-Analiza i odredivanje korisnikovih zahteva koje treba da zadovolji softver i
definisanje specifikacije zahteva !funkcionalni zahtevi , nefunkcionalni zahtevi0
performanse, pouzdanost, inetrakcija sa korisnikom i ogranicenja$
-Preporuku moguceg softverskog rešenja
Projektovanje i implementacija
*@aza projektovanja definiše kako softver treba da radi , sadr)i dve podfaze0
-Arhitekturno projektovanje – definisanje arhitekture softvera sastavljene od
medusobno zavisnih softverskih modula i komponenti i specifikacija njihove
medusobne komunikacije
-#etaljno projektovanje
; Projektovanje struktura podataka i baza podataka
; Projektovanje korisnickog interfejsa za interakciju korisnika sa
softverskim sistemom
; Projektovanje algoritama za funkcije i module
*@aza implementacije sadr)i
-Aazvoj programa !programiranje$ u odredenom programskom jeziku !na
primer, 9ava, "LL$ i programskom okru)enju !Borland 9Builder, 'icrosoft 4isual
tudio.6(<, (clipse$
.estiranje i or"avanje
*@aza testiranja softvera sadr)i aktivnosti
--<estiranje modula softvera
; /enerisanje test primera
; ,zvodenje testiranja, otkrivanje i korekcija grešaka u softveru
metodama0
– Bele kutije – test primeri su formirani tako da se testira svaka naredba
programa
– "rne kutije – test primeri su formirani tako da se ispitaju sve funkcije
programa definisane u specifikaciji zahteva
--<estiranje integracije modula u softverski sistem
*@aza odr)avanja podrazumeva postupke modifikovanja softvera koji je isporucen i
instaliran na racunarima korisnika u cilju0
-.napredenja njegove funkcionalnosti u skladu sa novim korisnickim
zahtevima ili usled novog hardverskog i softverskog okru)enja
-*orekcije grešaka koje su uocene u njegovom radu
CAS4 (Comp!ter Aie Software 4ngineering)
*oftversko in)enjersto pomocu racunara !"omputer Aided oft2are (ngineering$
*oftverski alati namenjeni podršci jedne ili više faza u procesu razvoja softvera,
kao i automatizaciji odredenih aktivnosti i postupaka u ovim fazama
*Postoje kao nezavisni alati ili integrisani u celovit proizvod koji mo)e da obuhvati
alate za0
-Analizu i projektovanje – razvoj šematskog prikaza i dijagrama koji definišu
model softvera u odgovarajucoj fazi razvoja
-&dr)avanje skladišta sa medusobno povezanim projektnim informacijama
-Aazvoj programa – automatizacija pisanja programa korišcenjem generatora
koda na osnovu dijagrama i šema razvijenih u fazi projektovanja, kao i
automatizacija generisanja test primera
#ac!narske mre"e
#ac!narska mre"a
*Aacunarska mre)a je kolekcija racunarskih i racunarskokomunikacionih uredaja
povezanih na razlicite nacine u cilju prenosa podataka i deljenja resursa.
-Aesursi mogu biti hardverski0 mocan procesor, brzi diskovi velikog
kapaciteta, štampaci, kao i softver i podaci
*4eza izmedu racunara u mre)i mo)e biti
-Uicana - korišcenjem kablova razlicite vrste
-Be)icna – korišcenjem radio talasa ili infracrvenih signala
*Aacunarska mre)a je kombinacija hardvera i softvera koji omogucava korisnicima
da razmenjuju podatke i dele resurse.
Korist rac!narskih mre"a
*#eljenje hardverskih resursa
-#eljeni štampaci, ploteri, brzi diskovi velikih kapaciteta za arhiviranje
-podataka, itd. !Print server, @ile server$
*Aazmena podataka
-Brza i pouzdana isporuka podataka razlicitih formata – elektronska pošta,
1eb strane, datoteke, itd. !'ail server, 1eb server, @<P server, erver baze
podataka$
*Poboljšana pouzdanost
-.koliko više racunara u mre)i izvršavaju zajednicki algoritam, otkaz jednog
racunara u mre)i se prevazilazi tako što njegovu ulogu preuzimaju drugi racunari u
mre)i
*Poboljšana skalabilnost
-4iše racunara opšte namene povezanih mre)om !"luster+6et2ork of
1orkstations$ koji paralelno izvršavaju istu aplikaciju po performansama su pribli)ni
super racunarima uz daleko ni)u cenu.
5arver i softver rac!narskih mre"a
**omunikacioni hardver
-@izicka veza izmedu dva racunara ukljucujuci mre)ne kartice, modeme,
kablove, s2itch-eve, rutere, itd.
**omunikacioni softver !skup protokola$
-&mogucava da aplikacije koriste komunikacioni hardver u slanju podataka
kroz mre)u.
-Protokol definiše format podataka koji se razmenjuju , skup pravila za
komunikaciju izmedu razlicitih racunarsko-komunikacionih uredaja povezanih u
mre)u
Kategorije rac!narskih mre"a
*'re)a ravnopravnih ucesnika !peer-to-peer$ – nema hijerarhije izmedu racunara,
svi su ravnopravni, funkcionišu i kao klijenti i kao serveri bez kontrole administrator.
*erverske mre)e poseduju racunar izdvojen kao server optimizovan za
zadovoljenje zahteva klijenata i sigurnost podataka i aplikacija !file server, 1eb
server, aplikacioni server, mail server, itd.$
Kom!nikacioni meij!m
**omunikacioni !prenosni$ medijum je materijal koji je provodnik elektro i+ili
elektromagnetnih signala !bakar, staklo, vazduh, itd.$
**arakteristike komunikacionog medijuma0
-Propusni opseg !band2idth$ - brzina prenosa podataka u bitovima po
sekundi !bps$
-&dnos signal+šum – odredena proporcija snage signala i šuma
-/reška prenosa – odnos pogrešno primljenih bitova prema ukupnom broju
prenetih bitova u specificnom vremenskom periodu
-labljenje signala sa rastojanjem
*Po komunikacionom !prenosnom$ medijumu mre)e mogu
biti0
-Uicane !koaksijalni kabl, upredene parice, opticki kabl$
-Be)icne !infracrveni, mikrotalasni, radio, satelitski signali$
Kom!nikacioni meij!mi (Ka$lovi)
-*oaksijalni kabl
-.predene parice
-&pticki kabl
#ac!narske mre"e po o$lasti koj! pokrivaj!
*PA6 !Personal Area 6et2ork$ – u bliskom okru)enju korisnika !bluetooth, infrared$
*%A6 !%ocal Area 6et2ork$ – povezuje relativno mali broj racunara na lokalnom
geografskom podrucju !spratu, zgradi, kompaniji, univerzitetu, itd.$
*'A6 !'etropolitan Area 6et2ork$ - povezuje više %A6 u urbanom podrucju
koristeci javnu telekomunikacionu infrastrukturu
*1A6 !1ide Area 6et2ork$ – povezuje dve ili više %A6, 'A6 ili 1A6 na širokom
geografskom podrucju. ,nternet predstavlja primer 1A6 koji obuhvata celu Jemlju
-re"ni kom!nikacioni !reaji
**artica za interfejs sa mre)om !6et2ork ,nterface "ard - 6,"$
-&bicno kartica u slotu za proširenja maticne ploce ili kontroler na maticnoj
ploci racunara? ukljucuje eksterni port za prikljucenje mre)nog kabla ili antene za
be)icnu komunikaciju
-Poseduje jedinstvenu HF-bitnu adresu !fizicku, 'A" adresu$
*'odem
**omponente za proširenje racunarske mre)e
-Aepetitor !Aepeater$
-Kab !Kub - mre)ni razdelnik$
-'re)ni preklopnik !2itch$
-'re)ni most !Bridge$
-Auter !Aouter - usmerivac, skretnica$
-'re)ni prolaz !/ate2a8$
-oem
*.redaj koji prilikom slanja podataka vrši konvertovanje digitalnih podataka u
analogni signal radi prenosa preko analogne komunikacione linije, a na prijemu vrši
konvertovanje analognog signala u digitalne podatke !'&dulation i #('odulation$
*'odulacija0 amplitudna !A'$, frekventna !@'$, fazna !P'$
#epetitor
Aegeneriše i pojacava oslabljene komunikacione signale pri slanju ka drugim
segmentima mre)e
5a$ 2 -re"ni ra)elnik
*Kab !eng. hub$ je specijalni tip repetitora koji se koristi za proširenje mre)e u
topologiji zvezde ili magistrale !unutar haba$, pri cemu ima više ulaza i više izlaza
*vaka poruka poslata sa jednog racunara prosleduje se do svih racunara u mre)i
-re"ni most (0rige)
*.redaj koji povezuje dve mre)e tipa magistrale , kontroliše tok podataka izmedu
racunara, upravlja greškama prenosa, obezbeduje fizicko adresiranje , upravlja
pristupom fizickom medijumu
*Povezuje dva segmenta mre)e da bi se0
-povecale dimenzije mre)e, kao i broj cvorova mre)e,
-podelom mre)e smanjio obim saobracaja u svakom od segmenata mre)e i
izolovali problemi u odredenom segment mre)e
-re"ni preklopnik (Switch)
*'re)ni uredaj slican habu, ima više ulaza i izlaza, ali za
razliku od haba svi ulazi i izlazi nisu istovremeno
povezani.
*2itch ispituje zaglavlje poruke sa podacima koja dolazi
na ulaz s2itcha i formira konekciju prema izlazu na koji
je prikljucen racunar koji je adresiran adresom u
zaglavlju poruke !kome je poruka namenjena$
*2itch nije pasivan uredaj poput haba, poseduje
mogucnost da ispita zaglavlje poruke i odredi adresu
odredišnog racunara registrovanu u zaglavlju poruke
#!ter
*Povezuje mre)e !razlicitog tipa$ i slu)i za odredivanje optimalnog puta i prenos
poruka izmedu izvornog , odredišnog racunara
*Algoritmi rutiranja koriste takozvane tabele rutiranja !routing tables$ sa razlicitim
informacijama o putevima da bi odredili put kojim ce se prenositi paketi do )eljenog
odredišta
-re"ni prola) (,ateway)
*&bicno oznacava uredaj !racunar$ kojim se jedna mre)a povezuje na internet
*Povezuje medusobno heterogene mre)e koje koriste razlicite protokole, vršeci
preformatiranje i prevodenje podataka koji prelaze iz jedne u drugu mre)u
*Povezuje dva mre)na segmenta koji ne koriste iste0
-komunikacione protokole
-strukture i formate podataka
-jezike
-arhitekture
-etoe prist!pa mre"nom meij!m!
*4išestruki pristup zajednickom medijumu nadgledanjem prisustva noseceg signala
uz detekciju kolizije !"'A+"#$ - vaki racunar na mre)i proverava da li je kabl
slobodan za emitovanje. *ada oseti da nema saobracaja na mre)i, šalje podatke i za
to vreme nijedan drugi racunar ne mo)e slati svoje podatke dok ne stignu do
odredišta. .koliko dode do istovremenog slanja podataka !sudara$, oba prestaju sa
emitovanjem podataka izvesno, razlicito vreme, a onda pokušavaju ponovo.
*Prosledivanje tokena - pecijalna vrsta podataka !token$ kru)i prstenastom
mre)om od racunara do racunara. Aacunar koji )eli da pošalje podatke mora da
saceka slobodan token. Aacunar tada preuzima kontrolu nad njim , koristi ga za
prenos podataka. #ok jedan racunar koristi token ostali ne mogu da komuniciraju.
/A( kom!nikacione tehnologije
*(thernet
-<opologija magistrale, moguca i kombinacija zvezde i magistrale
-'etoda pristupa "'A+"#
-'re)ni medijumi0 koaksijalni kablovi, upredene parice, opticki kablovi
-tandard ,((( F>E.:
-Brzine prenosa0 =>'bps, =>>'bps, = /bps – => /bps !/igabit (thernet$
*<oken Aing !,B'$
-<opologija prstena
-'etoda pristupa prosledivanjem tokena
-'re)ni medijum upredene parice
-tandard ,((( F>E.D
-Brzine prenosa H-=I 'bps, =>> 'bps !@ast <oken Aing$
Preno%enje poataka kro) mre"e
*Podaci koji se prenose su podeljeni na delove fiksne velicine koji se nazivaju paketi
!packets, frames$
**omutacija paketa !packet s2itching$ – nacin prenosa podataka kroz mre)u koji su
podeljeni u više paketa koji se nezavisno prenose , na odredišnom racunaru spajaju
u celinu.
**omponente paketa0
-Adresa izvornog racunara koji šalje podatke
-Adresa odredišnog racunara koji prima podatke
-Podaci koji se prenose !izmedu D=EB i H*B$
-,nformacije pomocu kojih odredišni racunar spaja pakete u originalni podatak
-Podaci o proveri greške kojima se proverava da li su paketi stigli bez greške
!ciklicna provera redundantosti – "A" kod$
**omponente paketa su grupisane u tri dela0 zaglavlje, podaci, prateci zapis sa
kodom za proveru greške.
'SO&OS' referentni moel
*,nternational &rganization for tandardization !,&$+ &pen 8stems ,nterconnection
!&,$
*<eoretski model i standard koji definiše funkcije komunikacionog softvera za
medusobnu komunikaciju izmedu racunara u mre)i
*vaki sloj komunicira i saraduje sa slojevima koji su neposredno iznad i ispod njega
'SO&OS' slojevi
*Prilikom slanja, svaki sloj dodaje poruci odgovarajuce podatke !format, adresa, kod
za proveru greške, itd.$ koje se na prijemu izdvajaju i koriste u okviru odgovarajuceg
sloja i prosleduju sloju iznad, sve dok sloj aplikacije originalni podatak ne prosledi
aplikaciji kojoj je upucena poruka.
Slojevi 'nternet softvera
*loj aplikacije obezbeduje interfejs za sve aplikacije koje pristupaju
racunarskoj mre)i , šalju podatke kroz mre)u
-.kljucuje funkcije ,&+&, slojeva aplikacije, prezentacije i
sesije
*<ransportni sloj deli podatak koji se šalje u pakete i obezbeduje da
se paketi isporucuju bez greške, prema redosledu kako su poslati,
bez gubitaka ili dupliranja.
*loj mre)e je zadu)en za adresiranje paketa , odreduje optimalni
put za prenos paketa od izvornog do odredišnog racunara
*loj veze obavlja prenos bitova podataka kroz komunikacioni
medijum i odgovoran je za pouzdan prenos podataka bez grešaka
Protokoli
*istem pravila i postupaka koji upravljaju prenosom i kontrolom
toka podataka izmedu mre)nih cvorova
*Protokoli su slojeviti tako da se svaki zasniva na protokolu ni)eg sloja – stek
protokola !protocol stack$
*6a predajnom racunaru protokol0
-#eli poruku !podatak koji se šalje$ u manje celine, nazvane paketi, koje mo)e
da obraduje
-Paketima dodaje adresne informacije tako da odredišni racunar na mre)i
mo)e da odluci da li oni pripadaju njemu
-Priprema podatke za prenos kroz mre)nu karticu i dalje kroz komunikacioni
medijum
*6a prijemnom racunaru sprovode isti niz koraka ali obrnutim redosledom0
-Preuzimaju pakete podataka sa kabla i mre)ne kartice
-,z paketa uklanjaju sve informacije o prenosu koje je dodao predajni racunar
-*opiraju podatke iz paketa i prihvatnu memoriju !bafer$ koja slu)i za ponovo
sklapanje u originalni podatak
-Ponovo sklopljenu poruku !poslati podatak$ prosleduje aplikaciji
.CP&'P protokoli
*#e facto industrijski standard za racunarsku komunikaciju u heterogenim
okru)enjima
*<"P !<ransmission "ontrol Protocol$ – ,mplementira funkcije sloja transporta.
Jadu)en za pouzdani prenos podataka od jednog do drugog mre)nog cvora. #eli
podatke u pakete , prosleduje ih ,P protokolu za dalji prenos, a pri prijemu na
odredišnom racunaru ureduje , ponovo sklapa pakete u originalni podatak. Jasniva
se na virtuelnoj konekciji izmedu izvornog , odredišnog racunara radi povecanja
pouzdanosti prenosa.
*.#P !.ser #atagram Protocol$ - Alternativa <"P sa osnovnom razlikom da ne
uspostavlja virtuelnu konekciju, pa je .#P manje pouzdan, ali je br)i
*,P !,nternet Protocol$ – ,mplementira funkciju sloja mre)e. 4rši adresiranje i izbor
putanje paketa i upravlja rutiranjem paketa kroz medusobno povezane mre)e do
odredišnog racunara
Protokoli vi%eg nivoa
*Protokoli razvijeni na osnovu definisanih <"P+,P
protokola
-imple 'ail <ransfer Protocol !'<P$ – protokol za slanje elektronske pošte
-@ile <ransfer Protocol !@<P$ – protokol za prenos datoteka !do2nload i
upload$? neophodno postojanje ftp klijenta i ftp servera
-<elnet – protokol za rad na udaljenom racunaru? omogucuje prijavljivanje
!logon$ na udaljeni racunar !telnet server$ i rad putem lokalnog telnet klijenta
-K8per <e7t <ransfer Protocol !http$ – prenos hipertekstualnog i
hipermedijalnog sadr)aja na 111-u
'nternet i 6e$
*VE milijarde korisnika
*F>> >>> >>> ,nternet hostova
*više E:> konektovanih dr)ava !skoro sve$
*više od ED> miliona 1eb sajtova !broj svakodnevno rasteT$
*,nternet protokoli !<"P+,P$ postaju svetski standard za racunarske mre)e i razlicite
vrste uredjaja se prikljucuju na mre)u Pracunari, mobilni telefoni, personalni
digitalni asistenti !P#A$, Pla8station-i, kucna elektronika P
*,nternet je krajnja 1A6 koja pokriva celu Jemlju kao labava konfederacija
racunarskih mre)a razlicitog tipa i mehanizama komunikacije
*astavljen je od mnogo malih mre)a koje su u vlasništvu i upravljane od razlicitih
organizacija
*6ije nicije vlasništvo i niko nema centralnu kontrolu nad celokupnim ,nternetom
*,ntranet, e7tranet
*Jasniva se na <"P+,P protokolima
'P aresa
*,P !verzija H$ adresa je :E bitni binarni broj !VH milijarde razlicitih adresa$ koji se
sastoji od dva dela0
-,dentifikator domena, mre)na adresa koja specificira segment mre)e
!identifikator mre)e$
-Broj hosta, koji specificira odredjen racunar u okviru tog domena
*,P adresa se ispisuje u vidu H decimalna broja u opsegu W>,EDDX kao dekadna
vrednost svakog pojedinacnog bajta u ,P adresi. Primer0
*,P4I –=EF bitne adrese → E=EF razlicitih ,P adresa
(a)iv omena i hosta
*imbolicka adresa !cs.elfak.ni.ac.rs$
-6aziv domena !elfak.ni.ac.rs$
-6aziv hosta !cs$
*Poslednji segment domena predstavlja domen najvišeg nivoa !top-level domain
-<%#$
-#omeni zasnovani na tipu organizacije !com, edu, gov, net, org, info, P$
-#omeni koji oznacavaju dr)avu u kojoj su registrovani predstavljaju
dvoznacne kodove dr)ava !rs, uk, it, ru, ca, ch, P$
*#elovi simbolicke adrese razdvojeni tackama nemaju nikakve veze sa dekadnim
brojevima razdvojenim tackama u ,P adresi
*vaki administrator domena mora da odr)ava catalog simbolickih adresa i njima
odgovarajucih ,P adresa u okviru svog domena
+omain (ame System (+(S)
*#6 server vrši prevo@enje simbolicke adrese u ,P adresu
*Postoji #6 server za svaki <%# koji sadr)i informacije o svim #6 serverima ni)eg
nivoa koji evidentiraju poddomene u okviru tog <%#
*vaka organizacija poseduje #6 server za sopstveni domen !elfak.ni.ac.rs$,
ukoliko ne mo)e da konvertuje simbolicku adresu u odgovarajucu ,P adresu
prosledjuje simbolicku adresu drugom #6 serveru
*6a primer0
-#6 server za <%# rs
-#6 na .niverzitetu u 6išu poseduje informacije o #6 serverima u okviru
pod-domena ni.ac.rs
-#6 server na elektronskom fakultetu !elfak.ni.ac.rs$ obezbedjuje
prevodjenje svih simbolickih imena hostova na ovom domenu u ,P adrese
'nternet aplikacije
*(-mail – razmena elektronske pošte
*<elnet – konektovanje na udaljeni racunar, prijava i aktiviranje aplikacija na
udaljenom racunaru
*@<P – razmena datoteka
*111 !1orld 1ide 1eb$ – razmena hipermedijalnog sadr)aja
6orl 6ie 6e$ (6667 6e$)
*111 nastao =YY=, u okviru "(A6 kao nacin razmene informacija o naucnim
istra)ivanjima u oblasti nuklearne fizike? tvorac <im Berners %ee
*Prvi pretra)ivaci su bili tekstualni
*'osaic - Prvi /., 1eb pretra)ivac !=YY:$
*1eb postaje nazastupljenija ,nternet aplikacija
*Aazvija se e-trgovina, e-poslovanje, e-ucenje, emedicina, e-sveZiZsvašta
Komponente 6e$1a
*1eb server – podr)ava K<<P protokol, poseduje ,P adresu, odgovarajuci softver
!1eb, http server$ i 1eb resurse0 html, multimedijalne, programske datoteke
*1eb pretra)ivac !bro2ser$0 'ozilla @irefo7, ' ,nternet (7lorer, &pera, /oogle
"hrome, itd.
*K<<P !K8per<e7t <ransfer Protocol$
*.A% !.niform Aesource %ocator$ – jedinstvena adresa resursa na ,nternetu
-Protokol0++6aziv-hosta.6aziv-domena+Put+6aziv-resursa
-http0++cs.elfak.ni.ac.rs+sr+postdiplomske.html
*K<'% - NK8per<e7t 'arkup %anguageO – hipertekstualni jezik markiranja se koristi
za tekstualno formatiranje dokumenata na 1eb-u
6e$
*. adresnoj liniji 1eb pretra)ivaca !bro2ser-a$ specificira se .A% adresa 1eb
resursa !html datoteke$ koji se zahteva
*Jahtev se preko K<<P protokola prosle@uje 1eb serveru
*1eb server zahtevane dokumente !K<'%$, slike, multimedijalne sadr)aje,
programe, itd. šalje 1eb pretra)ivacu !bro2ser-u$ koji interpretira primljeni sadr)aj i
prikazuje ga korisniku
5.-/
*1eb stranice su kreirane korišcenjem jezika nazvanog K<'% !K8perte7t 'arkup
%anguage$
*Primarni elementi jezika su oznake, ili tagovi !tags$ koji se ubacuju u dokument da
bi se na poseban nacin oznacili delovi podataka u dokumentu
*<agovi su ogradjeni uglastim zagradama !Q. . . R$
*Aeci poput K(A#, <,<%(, i B&#[ nazivaju se elementi , specificiraju tip taga
*<agovi se obicno koriste u parovima, tako da ukoliko je pocetna oznaka, na primer,
QB&#[R odgovarajuca krajnja oznaka sa znakom + ispred naziva elementa, poput
Q+B&#[R
*1eb bro2ser odre@uje na koji nacin ce 1eb stranica biti prikazana u zavisnosti od
taga u dokumentu
'netraktivne 6e$ stranice
**ada je K<'% razvijen nije postojala mogucnost interakcije korisnika sa podacima i
slikama prikazanim u okviru 1eb stranice
*#inamicko kreiranje 1eb stranice na osnovu podataka iz baza podataka ili drugih
1eb server omogucile su programske tehnologije na serveru, poput0 "/,, AP, 9P,
PKP, itd.
*,nterakciju korisnika za sadr)ajem 1eb stranice u okviru 1eb bro2sera omogucile
su programske tehnologije na klijentu0 cript jezici !9avacript, 4Bcript$, 9ava
apleti, Active5 kontrole, 'acromedia @lash, itd.
Stanari)acija 666
*1:" – medjunarodna organizacija koja razvija 111 standarde
!http0++222.2:c.org$
*K<'% ima predefinisan skup tagova i svaki tag ima unapred odredjeno znacenje,
uglavnom vezano za nacin prikazivanja informacija koje uokviruje u 1eb bro2seru
*5'% !(7tensible 'arkup %anguage$ metajezik koji omogucava kreiranje novih
markup jezika, tako da kreator dokumenta mo)e definisati sopstveni skup oznaka
!tagova$ i njima opisati sopstveni dokument, prevashodno njegov sadr)aj
*5'% tehnologije
-5'% chema !5#$ jezik omogucava definisanje tagova i šeme dokumenta
-5% !(7tensible t8lesheet %anguage$ – jezik koji omogucava definisanje
transformacije iz jednog u drugi 5'% format
To su uslovi grananja. JNZ-Jump if not zero (izvrsenje naredbe ukoliko nije 0), JNC-
Jump if not carry (izvrsenje naredbe ukoliko nema prenosa). JZ, JC je obrnuto od pomenutog.
se to odnosi na akumulatore i nakon toga se uglavnom salje adresa na kojoj je naredba
na koju treba preci ukoliko je ispunjen dat uslov.
Ako je zateceno stanje akumulatora 8+21 heksadecimalno, a sadrzaj memorijske lokacije
sa simbolickom adreseom t je 7777 heksadecimalno, odrediti sadrzaj akumulatora posle
izvrsenja sledeceg niza naredbi:
a) OR 12+8 b) HOR T ?
Pretvoriti stanje akumulatora u binarno znaci kako je on
(8+21)h = (1000 0100 0010 0001)b
Zatim potrebno je (12+8)h = (0001 0010 0100 1000)b
i izvrsiti OR, nakon cega ce konacno dobijeno da bude opet smesteno u akumulator
1000 0100 0010 0001
0001 0010 0100 1000
---------------------------
1001 0110 0110 1001
nakon izvrsenja OR instrukcije [izvrsava se bit po bit| ovo je stanje akumulatora [prebaceno u
hexa stanje akumulatora je sledece 9669h
Zatim se nad tim stanjem vrsi XOR sa brojem sa simbolickom adresom t [mora se i to prebaciti
u binarno|
(7777)h = (0111 0111 0111 0111)b
!zvrsavanje instrukcije XOR
1001 0110 0110 1001
0111 0111 0111 0111
---------------------------
1110 0001 0001 1110
!sto je XOR izvrsavano bit po bit, tako da je stanje akumulatora u HEX-a obliku (E11E)h Ako
nisam negde pogresio :•
h - obelezje za HEX-a broj
b - obelezje za binarni broj
Objasniti funkcionisanje naredbi poziva podprograma. Podprogram je deo programskog koda koji
obavlja tacno odredjenu f-ju ! koja se moze izdvojiti kao posebna programska celina sa odredjenim
nazivom po kome se poziva u okviru ostalih programa. Pri pozivu programa glavni program prosledjuje
listu argumenata koji po broju, tipu ! redosledu odgovaraju ulaznim parametrima.
Objasniti pojmove: Nasinsko programiranje (Asembler, kompajler ! !nterpretatori ) programskog
koda?..Nasinski jezik predstavlja skup masinskih naredbi kojima se specificiraju elemetarne operacije
koje racunar direktno prepoznaje ! izvrsava ove elemtarne operacije zadate u binarnom obliku ! nazivaju
se masinske instrukcije..
Asemblerski jezik koristi alfanumericke kodove umesto binarnih cifara..
Kompajleri prevode program sa viseg programskog jezika u masinski kod.
!nterpretatori prevode svaku naredbu programa ! odmah je izvrsavaju
Objasniti razliku izmedju programa ! procesa, koje f-je obavlja multiprogramski OS kada korisnik
pretisne kombinaciju ALT + TAB
Program je skup programskih instrukcija ! podatka organizovanih u obliku izvrsne datoteke na disku.
Proces predstavlja izvrsavanje programa. Prilikom startovanja programa u glavnu memoriju (Ram) se
ucitavaju instrukcije programa ! podaci koji se obradjuju ! zapocinje izvrsavanje instrukcije na podacima
Prilikom pritiska na tasterima (ALT + TAB) na displeju racunara pojavljuje se niz aktivnih programa, !
samim tim omogucavamo direktni pristup zeljenom program.
Kako se OS obezbedjuje koriscenjem glavne memorije racunara (RAN) od strane vise procesa,
sta se smesta u glavnu memoriju ! kako mozemo da vidimo koliko koji proces zauzima
memoriju?
U gavnu memoriju racunara smestaju se podaci prilikom BOOT - ovanja racunara, pa je OS zaduzen za
pokretanje, izvrsavanje ! stopiranje procesa na racunaru.
Sveki process u memoriji cuva programski kod ! podatke na kojima se vrsi obrada.
Nemorija je skup bitova pri cemu svaki bait ima jedinstvenu adresu. Nemorijske adrese pocinju od 0 do N
u zavisnosti od glavne memorije. Za dresiranje svake reci u memoriji neophodno je 2+ Bita.
€.Napisati URL adresu •eb stranice ispit.htm koja se nalazi na folderu UR na •eb serveru
nastava na domenu elektronskog fakulteta u Nisu. Objasniti sta se desava kada u •eb
pretrazivacu (Bro•ser) unesite ovu adresu ! pritisnete taster enter ? recimo) ima svoj protokol
(http:ff, •••, ftp...), ime domena koje mo‚es da biras po ‚elji (facebook) i TL•(top level
domain(.com, .net, .org, .rs, .tv, .uk...). Takoƒe na nekom sajtu kad postoji neka stranica ona se pise
posle svega toga i razdvaja se slesom(f). Ona se pise sa svojom putanjom, tako da ako je u nekom
folderu onda stoji "neki folderfneka„stranica.html". Takoƒe mo‚e da sadr‚i i host ili poddomen (recimo
kod one adrese ti je "my„pc" host) i on se pise pre imena domena i od njega se razdvaja ta…kom. On
mo‚e biti proizvoljan (sve dok zadovoljava standarde kodiranja domena) i njega odreƒuje administrator
•NS servera te firme ili tog sajta
6. Sta pretstavlja Bulov izraz u programskim jezicima i u kojim upravljackim strukturama se
koristi ? •ati dva primera koriscenja slozenog Bulovog izraza u razlicitim instrukcijama
programa. Bulov izraz predstavlja sekvencu konstanti,
promenljivih ili izraza povezanih odgovarajucim operatorima cija je vrednost tacna ili netacna. Koristi se
kod naredbe selekcije ! naredbe petlje tako sto ispituje vrednos izraza (True, ealse) Noze biti: Bulova
const. (Tru, false). •va ili vise aritmeticka ili znakovna izraza povezanih relacionim operatorima. •va ili
vise bulova izraza povezana logickim operatorima (AN•, OR, NOT, XOR)
7. Objasniti funkcionalisanje naredbe uslovnog skoka npr naredbe JNZ ! JNC. to su ti uslovi
grananja i zna…e Jump if Not Zero (JNZ) i Jump if Not Carry (JNC) koje zna…e da se izvrsi naredba ukoliko
je ispunjen uslov ukoliko nije nula ili nema prenosa To se uglavnom odnosi na akumulatore i nakon toga
se uglavnom salje adresa na kojoj je naredba na koju treba preci ukoliko je ispunjen dat uslov.
Objasniti pojam interapta?. !nterapt je situacija kada zbog odredjenih uslova program prekida da
izvrsava redovan program ! pocinje da izvrsava interap program, a po njegovom izvrsetku vraca se tamo
gde je prekinut.

10. Sta je multiprogramiranje ? Kako OS obezbedjuje multiprogramski rad , tako da kad se jedan
proces blokira cekajuci da procita podatke sa hardiska, OS aktivira drugi proces. Nultiprogramiranje je
tehnika OS kojom se omogucava da se u isto vreme vise programa nalaze u glavnoj memoriji ! da se
procesi njima aktivirani konkurisu za dobijanje CPU radi izvrsenja
11. Objasniti tipove upravljackih naredbi, objasniti funkcionisanje naredbi uslovnog skoka na
primeru. Ako zadati uslov nije ispunjen u fazi izvrsenja naredbe ne desava se nista.
1†. Navesti primer komponente OS koja komponenta upravlja podacima ! organizacijom na •v•,
a koja komponenta void racuna das vi program startovani na PC-u dobiju vreme za izvrsenje na
CPU Objasniti. Osnovne komponente OS su : Upravljanje procesima, Upravljanje glavnom memorijom,
upravljanje Uf! uredjajima, upravljanje datotekama, sigurnosti ! zastite. Komponenta koja upravlja
podacima je upravljanje datotekama. Ona obezbedjuje organizovanje ! pristup podacima na trajnim
memorijama racunarskog sistema.Podaci su organizovani u datoteke a datoteke su gropisane u
direktorijume.Komponenta koja void racuna das vi program startovani na racunaru dobiju vreme za
izvrsavanje na CPU je upravljanje procesima‡..Stanje procesa su:‡.Aktivanfproces se izvrsava na CPU‡
Sreman process se nalazi u memoriji spreman je za izvrsavanje‡‡.Ceka-proces na zavrsetak Uf!
operacije da bi mogao da nastavi sa izvrsavanje
1+.Navesti ! objasniti mrezne uredjaje koje treba upotrebiti da bi se formirala lokalna racunarska
mreza tipa zvezde ! koji standard mrezna tehnologija ce biti koriscena u takvoj mrezi.Ako zelimo
da ovakvu lokalnu racunarsku mrezu povezemo na net koji cemo uredjaj koristiti? Nrezni
komunikacioni uredjaji su: Kartica za interfejs sa mrezom, modem, repetitior, hub, s•ich, mrezni most,
ruter, mrezni prolaz‡‡.•a bi se formirala mreza tipa zvezde koristi se uredjaj hub !a mrezna tehnologija
je lan.Ako zelimo da lokalnu racunarsku mrezu povezemo na net potreban je hub ili s•ich.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->