Uvod,gcc,gdb Flashcards
Sta su sistemski softveri?
Program koji ktrolise, upravlja i povezuje pojedinacne hardverske delove racunaskog sistema
Vrste sistemskih softvera?
1) operativni sistem
2) virtuelna masina
3) kompajler
4) punioc
5) asembler
6) linker
7)drajver
Sta su punioci?
Prevose fajl u memoriju i pripremaju ga za rad
Sta su drajveri?
Programi koji omogucavaju drugim programima da rade sa hardverskim jedinicama
Sta su prevodioci (kompajleri)?
Prevode program sa korisnickog jezika na objektini jezik slican masinskom
Sta su asmebleri i povezivaci?
Asembleri su programi koji prevode asmmblerski kod na masinski hod; jedna asemblerska naredba odgovara jednoj masinskoj
Povezivac povezuje sve objektne fajlove u jedan izvrsni
Sta su virtuelne masine?
Stvaraju privid da na jednoj fizickoj masini postoji vise logicnih masina
Kako izgleda proces prevodjenja, koje faze postoje?
1) makroprocesianje
2) kompajliranje
3) asembliranje
4) linkovanje/ povezivanje
Sta radi komanda gcc -save-temps -hello.c -o hello?
Prevodi c fajl u izvrsni fajl i cuva sve privremene fajlove nastale kroz faze prevodjenja
Faza makroprocesiranja?
Ubacuje u osnovni .c fajl neke izmene, koristeci direktive koje stoje uz #:
1) include -> ubacuje biblioteku u fajl
2) define -> menja makroime sa njegovom vrednoscu
Faza kompajliranja?
Korstimo cc1 prevodilac i hello.i fajl prevodimo u asemblerski fajl hello.s
1) gcc -print-prog-name=cc1
/putanja do kompajlera
2) /putanja do cc1 hello.i -s hello.s
Faza asembliranja?
Prevodi asemblerski fajl u objekti fajl
as -hello.s -o hello.o
Sta radi komanda objdump hello.o? I koje dodatke moze da ima?
- Daje podatke o datom objetnom fajlu
-M znaci da pise u intel sintaki
-d znaci da radi desembliranje, objetni fajl je napisao u asmeblerski
-f ispisuje hedere koje imamo
-t daje nam tabelu simbola
Faza povezivanja?
Povezuje sve objekte fajlove u jedan izvrsni fajl,
u ovoj fazi imamo neke objektne fajlove koje povezujemo kako bi program koji stvaramo mogao da se pokrene i izvrsi
Komanda gcc -v hello.c -o hello.o?
Ispisuje koje alate koristimo prilikom prevodjenja