Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

simulacija izvrsavanja procesa sa redom prioriteta (seminarski)

[es] :: C/C++ programiranje :: simulacija izvrsavanja procesa sa redom prioriteta (seminarski)

[ Pregleda: 3845 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

virtualx
bihać - BIH

Član broj: 5930
Poruke: 3383
*.PPPoE-4633.sa.bih.net.ba.

ICQ: 11


+4 Profil

icon simulacija izvrsavanja procesa sa redom prioriteta (seminarski)28.12.2006. u 17:46 - pre 210 meseci
dajte ako tko ima ,ili zna sajt na kojem ima literature za ovo nek jaci.
imam seminarski sa temom:
simulacija izvrsavanja procesa sa redom prioriteta

ako tko moze pomoci za literaturu nek javi.
 
Odgovor na temu

virtualx
bihać - BIH

Član broj: 5930
Poruke: 3383
*.PPPoE-6976.sa.bih.net.ba.

ICQ: 11


+4 Profil

icon Re: simulacija izvrsavanja procesa sa redom prioriteta (seminarski)04.01.2007. u 17:23 - pre 209 meseci
zar nitko ne moze pomoci bar malo

 
Odgovor na temu

de_c0der

Član broj: 127698
Poruke: 107
*.adsl.net.t-com.hr.



Profil

icon Re: simulacija izvrsavanja procesa sa redom prioriteta (seminarski)04.01.2007. u 19:54 - pre 209 meseci
Lol, pojasni malo temu... ovaj naslov mi nista ne znaci!!??
 
Odgovor na temu

NrmMyth
Ivan Maček
Split

Član broj: 63456
Poruke: 849
*.adsl.net.t-com.hr.

Sajt: www.dump.hr


Profil

icon Re: simulacija izvrsavanja procesa sa redom prioriteta (seminarski)05.01.2007. u 14:41 - pre 209 meseci
Valjda je sbrha seminara da ti sam dodjes do nekog rijesenja problema, inace...
 
Odgovor na temu

de_c0der

Član broj: 127698
Poruke: 107
*.adsl.net.t-com.hr.



Profil

icon Re: simulacija izvrsavanja procesa sa redom prioriteta (seminarski)07.01.2007. u 21:05 - pre 209 meseci
Ne znam u kom smislu da to uradis...

Znas da svaki proces moze imati slijedece prioritete:
Realtime
High
AboveNormal
Normal
LowNormal
Low

I vidis da su svi MS na High, dok vecina korisnickih progama na Normal.. mada se to lako moze mijenjat..
Zatim to znaci kolko ce kojem procesu biti udijeljeno procesorskog vremena, CPU sheduling (googlaj)...a to sve zbog visezadacnosti, jer se samo jedan thread moze izvrsavat i on ima Running stanje, dok ostali cekaju u redu i tako se postize privid visezadacnosti (takvi sustavi su Windows, Linux...) dok primjer jednozadacnosti moze biti MS-DOS!

Stanja procesa mogu biti:
New-novokreiran proces
Ready-proces ceka na izvrsavanje kad procesor postane slobodan jer se trenutno neki drugi proces izvrsava
Running-proces kojeg CPU trenutno izvrsava, i takav moze biti samo jedan na jednoprocesorskom sistemu
Blocked/Waiting-proces ceka na neki eksterni dogadjaj (ne moze se izvrsavati dok se dogadjaj ne izvrsi).. recimo da imas proces koji cita neki ogroman fajl, on preko nekog API-ja, recimo ReadFile cita taj fajl... prelazi se u ring 0 procesorski mod i dispatcher zamjenjuje kontekst threadova (minimalni) i zatim se izvrsava neki drugi proces dok ovaj ceka hardwareski interrupt od I/O uredjaja koji cita onaj fajl
Terminated-proces je izvrsio sa izvodjenjem i mice se sa liste

Svaki proces je opisan sa procesnim kontrolnim blokom (PCB-Process Control Block), dok je svaki thread odredjen sa TCB-em (Thread Control Block)... oni sadrze sve potrebne informacije o procesu/threadu kao sto su:
lokacija u memoriji gdje se nalazi proces, stanje procesa, PC (program conuter ili ti fensi EIP-Extended Instruction Pointer, registar koji sadrzi adresu koja ce se slijedeca izvrsit), stanje ostalih registara, PID (jedinstveni identifikacijski broj procesa), prioritet procesa (gore sam ti nabrojao koji mogu bit), neke opcenite podatke koji su pridruzeni procesu (npr. lista otvornih datoteka, tablica stranica, TLB)...

Ako ne razlikujes proces od niti .. proces je program ucitan u glavnu memoriju koji se izvrsava i dinamicki mijenja, i svaki proces mora sadrzavat barem jedan thread... proces se dakle sastoji od thredova i oni se "paralelno" izvrsvaju u tom procesu! Primjer je tekst procesor, recimo MS Word.. on ako pise recimo neki ogroman fajl i ako ima jedan thread korisnik nece nista moci upisivat u Word jer ce bit "smrznut"... pa zato se koriste thredovi (niti, dretve ).. i onda jedna nit sluzi ta upisivanje tog nekog ogromnog fajla, a druga nit radi sa korisnikom i cita i obradjuje sta on trazi (operacije nad tekstom i slicno)


E sad.. sta je dispatcher?
Dispatcher ti je modul unutar jezgre OS-a koji implementira zamjenu konteksta (sprema/ucitava stanja thredova) i zasluzan je za pokretanje novog threada i jos ponesto sto mi se neda sad objasnjavat...
Kada dispatcher da CPU nekom threadu postavlja se pitanje kako on dobije nazad CPU, tj. kako dobije kontrolu, postoje 2 nacina:
1.)thread sam izaziva dogadjaje kojima predaje kontrolu dispatcheru (tu ti spadaju recimo kada thread ide u waiting stanje radi cekanja obavljanja neke I/O operacije, zatim ako se thread blokira pozivajuci WaitForSingleObject radi nekog dogadjaja ili pak ako dobrovoljno da CPU vrijeme izvrsavanja nekom drugom threadu pozivanjem Sleep() funkcije)
2.)dogadjaji izazvani bez utjecaja threada (tu ti spadaju prekidi, tipa pritisak tipke na tipkovnici, disk I/O je zavrsen ili nesto deseto)

Za to moze posluzit i tajmer.... i zato postoje 2 vrste visezadacnosti:
1.)Preemptive (iznudjena)
-to znaci da thread koji se trenutno izvrsava moze biti prekinut u izvrsavanju (prelazak iz running stanja u ready) i tu imas primjer Round Robin (RR)..veca pravednost jer se radi preko tajmera i svaki thread ima isto CPU vrijeme (osim onih koji imaju veci prioritet)...................npr. tipicni vremenski interval je 10-100 milisekundi, dok je tipicno vrijeme za zamjenu konteksta 100-1000 instrukcija :P
Windows XP koristi internal od 20ms, dok Windows 2003 server koristi tajmer interval od 100 ms

2.)Non-preemptive (neizudjena)
-to znaci da kad neki thread zapocne izvrsvanja nista ga ne moze prekinut vec on dobrovoljno daje nekom drugom vrijeme preko wait() i yield() funkcija... primjer FIFO:
TCB1->TCB2->TCB3->|CPU|->TCB4->TCB5->i sad ide opet tu TCB1 i tako u krug


I sad ima tu na tone jos toga, od mutexa, semafora, primjera, zaebavanja i sl.. al mi se fakat neda vise pisat, jedva sam se natjero da ti ovo napisem!!
Ako mi nabavis mail, broj telefona ili nesto deseto od Angeline Jolie i da je preko toga dobijem napisem ti cijeli seminarski sa svime )) Dobijes 5+ ;P

poz i nadam se da sam ti pomogo :P
 
Odgovor na temu

virtualx
bihać - BIH

Član broj: 5930
Poruke: 3383
*.PPPoE-4026.sa.bih.net.ba.

ICQ: 11


+4 Profil

icon Re: simulacija izvrsavanja procesa sa redom prioriteta (seminarski)10.01.2007. u 21:37 - pre 209 meseci
stvarno nemam pojma sta znaci ova tema.
pogledacu u knjigu demistificirani c++ pa viditi imali sta o ovome.

kako mene uvijek moze zapasti neka lijeva tema,svi oko mene dobili neki sort da urade.

 
Odgovor na temu

de_c0der

Član broj: 127698
Poruke: 107
*.adsl.net.t-com.hr.



Profil

icon Re: simulacija izvrsavanja procesa sa redom prioriteta (seminarski)11.01.2007. u 14:10 - pre 209 meseci
Nemas sta gledat u Demistificirani C++ jer tamo nemas nista o tome...

Pazi, nije problem to al si dao premalo informacija, nisi valjda i ti dobio sam naslov?

Sta ti znaci "simulacija"... , na koji se OS ovo odnosi, koliko procesora treba imat taj sustav na kojem ce se vrsit simulacija, ako je viseprocesorni sustav dal taj OS njih tretira simetricno ili asimetricno, zatim kolko procesa treba bit, razlika je ako radis simulaciju na 2 procesa ili na 100 procesa, kolko svaki proces ima threadova i sl. stvari?

Googlaj, trazi...

btw. imas tako gadnih sort algoritama i prastarih tako da mislim da ti je ipak ovo bolje, a i na kraju korisnije jer ces ipak nesto korisno i nacuit a ne se zamarat algoritmima za sortiranje..

poz
 
Odgovor na temu

virtualx
bihać - BIH

Član broj: 5930
Poruke: 3383
*.PPPoE-5672.sa.bih.net.ba.

ICQ: 11


+4 Profil

icon Re: simulacija izvrsavanja procesa sa redom prioriteta (seminarski)12.01.2007. u 19:07 - pre 209 meseci
profesor je svima rekao samo temu.
moracu ga pitati u vezi detalja,sta konkretno treba.
ustvari to i nije profesor
on je 4-ta godina pa nama predaje

znaci samo je rekao temu: simulacija izvrsavanja procesa sa redom prioriteta.
znaci to trebam raditi u c++ , a os ne znam ,valjda windows ,ostale nismo ni spominjali i radimo u windowsu.
1 procesor
a pitacu ga sa koliko procesa treba raditi.

 
Odgovor na temu

[es] :: C/C++ programiranje :: simulacija izvrsavanja procesa sa redom prioriteta (seminarski)

[ Pregleda: 3845 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.