Difference between revisions of "LU-LSP-b13:L04"

From DiLab
Jump to: navigation, search
(Praktiskais darbs #4)
(Praktiskais darbs #4)
Line 5: Line 5:
Šoreiz nekas pašiem nav jāprogrammē - tā vietā jāanalizē gatavas programmas darbība un kods.
Šoreiz nekas pašiem nav jāprogrammē - tā vietā jāanalizē gatavas programmas darbība un kods.


Programmas kods dots <del>[http://jupiter.cs.fmf.lu.lv/~kursi/lsp/pd4-2013.c šeit]</del> [https://www.dropbox.com/s/yjkllne9ydhr0uk/pd4-2013.c?dl=0 šeit]. Uzdevumi:
Programmas kods dots [https://www.dropbox.com/s/yjkllne9ydhr0uk/pd4-2013.c?dl=0 šeit]. Uzdevumi:
# '''Sakompilēt''' šo kodu, aizstājot NAME_FIRST_LETTER un SURNAME_FIRST_LETTER programmas kodā ar saviem personīgajiem iniciāļiem. Komanda:
# '''Kompilēt''' šo kodu, aizstājot NAME_FIRST_LETTER un SURNAME_FIRST_LETTER programmas kodā ar saviem personīgajiem iniciāļiem. Komanda:
gcc -Wall pd4.c -o pd4
gcc -Wall pd4.c -o pd4
# 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 failu sistē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.
# 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.



Revision as of 17:43, 20 February 2020

Praktiskais darbs #4

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:

  1. Kompilēt šo kodu, aizstājot NAME_FIRST_LETTER un SURNAME_FIRST_LETTER programmas kodā ar saviem personīgajiem iniciāļiem. Komanda:
gcc -Wall pd4.c -o pd4
  1. 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?
  2. Programmas darbības laikā Linux kodols uztur tai atbilstošus failus /proc failu sistē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"!
  3. 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 iesniegt estudijas.lu.lv (Apraksts teksta veidā).