Difference between revisions of "LU-LSP-b12:L05"
(New page: ===Praktiskais darbs #6a=== Programmu analīze. Šoreiz nekas pašiem nav jāprogrammē - tā vietā jāanalizē gatavas programmas darbība un kods. Programmas kods dots [http://jupite...) |
|||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
===Praktiskais darbs # |
===Praktiskais darbs #5=== |
||
Programmu analīze. |
Programmu analīze. |
||
Line 7: | Line 7: | ||
Programmas kods dots [http://jupiter.cs.fmf.lu.lv/~kursi/lsp/pd5-2012.c šeit]. Uzdevumi: |
Programmas kods dots [http://jupiter.cs.fmf.lu.lv/~kursi/lsp/pd5-2012.c šeit]. Uzdevumi: |
||
# '''Sakompilēt''' šo kodu, aizstājot NAME_FIRST_LETTER un SURNAME_FIRST_LETTER programmas kodā ar saviem personīgajiem iniciāļiem. Komanda: |
# '''Sakompilēt''' šo kodu, aizstājot NAME_FIRST_LETTER un SURNAME_FIRST_LETTER programmas kodā ar saviem personīgajiem iniciāļiem. Komanda: |
||
gcc -Os -Wall |
gcc -Os -Wall pd5.c -opd6a |
||
# Palaist šo programmu. Noskaidrot, kādus sistēmas izsaukumus tā lieto. Kāds ir '''kopējais sistēmas izsaukumu skaits'''? Kāds konkrēti ir '''visbiežāk izmantotais''' sistēmas izsaukums? Kā izskaidrot lielo sistēmas izsaukumu skaitu? |
# Palaist šo programmu. Noskaidrot, kādus sistēmas izsaukumus tā lieto. Kāds ir '''kopējais sistēmas izsaukumu skaits'''? Kāds konkrēti ir '''visbiežāk izmantotais''' sistēmas izsaukums? Kā izskaidrot lielo sistēmas izsaukumu skaitu? |
||
# Programmas darbības laikā Linux kodols uztur tai atbilstošus failus /proc failusistēmā. Tie atrodami zem /proc/<pid>/, kur <pid> ir programmas identifikators. Pēc jūsu izvēles, '''iepazīstieties ar trīs tur atrodamiem failiem''' (vēlams, lai visiem kursā nebūtu izvēlēti vieni un tie paši.) Kā šie konkrētie faili varētu palīdzēt programmu atkļūdošanai vai kontrolei? (Runājot par kontroli, svarīgi ir tas, ka daži no failiem ir rakstāmi.) '''Uzrakstiet vienu-divus teikumus par katru.''' Nav obligāti skaidrot katru failā esošo skaitli, bet aptuveno ideju "kas šajā failā glabājas"! |
# Programmas darbības laikā Linux kodols uztur tai atbilstošus failus /proc failusistēmā. Tie atrodami zem /proc/<pid>/, kur <pid> ir programmas identifikators. Pēc jūsu izvēles, '''iepazīstieties ar trīs tur atrodamiem failiem''' (vēlams, lai visiem kursā nebūtu izvēlēti vieni un tie paši.) Kā šie konkrētie faili varētu palīdzēt programmu atkļūdošanai vai kontrolei? (Runājot par kontroli, svarīgi ir tas, ka daži no failiem ir rakstāmi.) '''Uzrakstiet vienu-divus teikumus par katru.''' Nav obligāti skaidrot katru failā esošo skaitli, bet aptuveno ideju "kas šajā failā glabājas"! |
||
Line 20: | Line 20: | ||
==== Iesūtīšana ==== |
==== Iesūtīšana ==== |
||
Risinājumus nosūtīt uz kursa asistenta e-pastu, '''rakstot atbildes vēstules tekstā'''. E-pasta "Subject" obligāti iekļaut burtus "LSP". |
Risinājumus nosūtīt uz kursa asistenta e-pastu, '''rakstot atbildes vēstules tekstā'''. E-pasta "Subject" kā parasti, obligāti iekļaut burtus "LSP". |
Latest revision as of 16:28, 9 October 2012
Praktiskais darbs #5
Programmu analīze.
Šoreiz nekas pašiem nav jāprogrammē - tā vietā jāanalizē gatavas programmas darbība un kods.
Programmas kods dots šeit. Uzdevumi:
- Sakompilēt šo kodu, aizstājot NAME_FIRST_LETTER un SURNAME_FIRST_LETTER programmas kodā ar saviem personīgajiem iniciāļiem. Komanda:
gcc -Os -Wall pd5.c -opd6a
- Palaist šo programmu. Noskaidrot, kādus sistēmas izsaukumus tā lieto. Kāds ir kopējais sistēmas izsaukumu skaits? Kāds konkrēti ir visbiežāk izmantotais sistēmas izsaukums? Kā izskaidrot lielo sistēmas izsaukumu skaitu?
- Programmas darbības laikā Linux kodols uztur tai atbilstošus failus /proc failusistēmā. Tie atrodami zem /proc/<pid>/, kur <pid> ir programmas identifikators. Pēc jūsu izvēles, iepazīstieties ar trīs tur atrodamiem failiem (vēlams, lai visiem kursā nebūtu izvēlēti vieni un tie paši.) Kā šie konkrētie faili varētu palīdzēt programmu atkļūdošanai vai kontrolei? (Runājot par kontroli, svarīgi ir tas, ka daži no failiem ir rakstāmi.) Uzrakstiet vienu-divus teikumus par katru. Nav obligāti skaidrot katru failā esošo skaitli, bet aptuveno ideju "kas šajā failā glabājas"!
- Opcionāls uzdevums papildus vērtējumam: izskaidrot programmas koda rindiņu, sākot no 120 rindiņas līdz 125 rindiņai, nozīmi un lietojumu.
Izmantojamie rīki
- strace utilīta
- ps utilīta
- proc failu sistēma (/proc)
Iesūtīšana
Risinājumus nosūtīt uz kursa asistenta e-pastu, rakstot atbildes vēstules tekstā. E-pasta "Subject" kā parasti, obligāti iekļaut burtus "LSP".