LU-LSP-b13:L05

From DiLab
Jump to: navigation, search

Praktiskais darbs #5

Realizēt programmu, kas beidz darbību, notiekot taimera signālam.

Darbības beigšanu realizēt caur longjmp uz main() funkciju, no kuras tad notiek return 0;.

Izmantojamās funkcijas:

Par signāliem kārtīgi mācīsimies vēlāk! Neliels ieskats, kas var noderēt: [1]

Uzmanību, konkrētais praktiskais darbs nestrādās ar striktu c90/c99 standartu, jo tam nepieciešami POSIX signāli, kas standartā nav iekļauti. Šajā PD atļauts kompilēt ar jaunāko standartu, vai korektāk - izmantot kompilatora slēdzi "-D_POSIX_C_SOURCE"

Koda šablons:

#include <setjmp.h>
#include <signal.h>
#include <stdio.h>
#include <unistd.h>

// TODO: jūsu kods te!

int main(void)
{
    // TODO: jūsu kods te!


    // taalaako kodu nemainiit!

    // taimeris uz 3 sekundeem
    alarm(3);

    // bezgaliigs cikls
    while (1);

    // atgriezh kaut kaadu nenulles kodu, lai kompilators nesuudzeetos
    return -1;
}


Risinājumus nosūtīt uz lektora e-pastu. iesūtīt estudijas.lu.lv, sadaļā PD5 Iesniedzamais fails jānosauc šādi: LSP_PD5_vards_uzvards.c. Tas nav jāarhivē. Subject: "LSP PD5 vards uzvards".