Java class fajl deasembler (Delphi 4.0)
|
Ovaj program je u stvari prakticni dio mog diplomskog rada "Java virtualna masina."
Program ima mogucnost deasembliranja Java class fajlova, (cita instrukcije za
Java virtualnu masinu i vrijednosti elemenata iz strukture Java class fajla. Program
ne cita apsolutno sve vrijednosti iz strukture Java class fajla jer njih ima mnogo,
nego samo one najinteresantnije - instrukcije, repozitorij konstanti...).
Struktura Java class fajla je detaljno opisana u specifikaciji JVM-e koja se moze
besplatno download-ovati ovdje.
|
|
Java class fajl je u stvari masinski kod za Java virtualnu masinu koji nastaje
kompajliranjem izvornog Java koda. Svaka implementacija Java virtualne masine cita Java
class fajlove, tako da ovaj program sadrzi jedan mali dio funkcionalnosti JVM-e.
Na slici sa lijeve strane je prikazan izgled programa
u toku rada. Preko donjih linkova mozete download-ovati exe verziju programa i izvorni
kod programa. Program je radjen u Delphi 4.0 razvojnom okruzenju i ima oko 1600 linija koda.
|
Izgled pokrenutog programa
|
|
exe (Java class deasembler)   |
  izvorni kod (Java class deasembler)
|
|
Problem gladnih filozofa (Java JDK 1.2.2)
|
Program je seminarski rad u okviru predmeta PSS na cetvrtoj godini odsjeka za RI.
Ilustruje rad sa vise niti (eng. multi threading) koje pristupaju istoj varijabli pri cemu
je taj pristup sinhronizovan (samo jedna nit moze u jednom trenutku pristupati varijabli).
|
|
Program je radjen u Javi 1.2.2 i moze se pokrenuti i kao aplet u okviru web stranice a i
kao samostalna aplikacija iz DOS prozora na Windows operativnom sistemu.
NAPOMENA: Ako download-ujete ovaj program, morate ga pokrenuti iz DOS komandne linije
(pomocu appletviewer-a u JDK okruzenju - Windows 9x, 2000.),
jer u web browser-u ne radi.
|
Izgled pokrenutog programa
|
|
kompajlirani program (Gladni filozofi)   |
  izvorni kod (Gladni filozofi)
|
|
WMS (Java JDK 1.2.2)
|
WMS - Weather Monitoring Station. Program je seminarski rad u okviru predmeta PSS na cetvrtoj
godini odsjeka za RI. Dosta je jednostavniji od gornjeg programa i u stvari bilo je teze
napraviti svu potrebnu dokumentaciju uz program nego sam program.
|
|
Prije izrade programa
bilo je potrebno izraditi modele objekata koji se nalaze u WMS stanici i koje ce imati program.
Program je radjen u Javi 1.2.2 i moze se pokrenuti i kao aplet u okviru web stranice a i
kao samostalna aplikacija iz DOS prozora na Windows operativnom sistemu.
Uz izvorni kod programa prilozena je i dokumentacija koju je trebalo izraditi (Word dokumenti)
sa programom (layout, state transition, class,... dijagrami).
NAPOMENA: Ako download-ujete ovaj program, morate ga pokrenuti iz DOS komandne linije
(pomocu appletviewer-a u JDK okruzenju - Windows 9x, 2000.),
jer u web browser-u ne radi.
|
Izgled pokrenutog programa
|
|
kompajlirani program (WMS)   |
  izvorni kod (WMS)
|
|
Simpleks metoda (Delphi 4.0)
|
Program je radjen u okviru predmeta Matematika 3 na trecoj godini umjesto pismenog
ispita (zajedno sa donjim programom - Gradijentna metoda). Rjesava zadatak linearnog
programiranja i nalazi optimalno rjesenje sistema jednacina.
|
|
Napisan je u Delphi 4.0 okruzenju za oko mjesec dana.
Jednacine se unose kao obicni tekst u tekst editor,
i pri tome treba paziti da se nepoznate (X1...Xn) zajedno sa svojim koeficijentima
unose po redu (od manjih ka vecim) jer u suprotnom program ne samo da nece raditi, nego
moze srusiti Windows-e.
Najvise vremena u izradi ovog programa potroseno je na sto elegantniji interfejs za unos
jednacina, tako da se jednacine unose kao u tekst editor a ne u tabelu kao kod vecine
rjesenja.
|
Izgled pokrenutog programa
|
|
exe (Simpleks metoda)   |
  izvorni kod (Simpleks metoda)
|
|
Gradijentna metoda (Delphi 4.0)
|
Program je radjen u okviru predmeta Matematika 3 na trecoj godini umjesto pismenog
ispita (zajedno sa gornjim programom - Simpleks metoda). Rjesava zadatak nelinearnog
programiranja i nalazi rjesenje jednacine uz postavljena ogranicenja.
|
|
Napisan je u Delphi 4.0 okruzenju. Za izradu je bilo potrebno preko mjesec dana.
Najvise vremena je potroseno na prilagodjavanje programa da bi koristenje bilo sto
jednostavnije. Tako program analizira string (koji sadrzi jednacinu) koji unosi
korisnik i pronalazi broj nepoznatih, najvisi stepen u jednacini i u zavisnosti od
tih podataka formira nizove potrebne za rad Gradijentne metode.
U program su ugradjene
procedure koje omogucavaju kvadriranje binoma i nalazenje prvog izvoda iz jednacina
koje su date kao string pri cemu i rezultat vracaju kao string. Za implementiranje
ovih procedura potroseno je najvise vremena i ove procedure mozete naci u izvornom
kodu ispod.
|
Izgled pokrenutog programa
|
|
exe (Gradijentna metoda)   |
  izvorni kod (Gradijentna metoda)
|