Difference between revisions of "LU-LSP-b13:L05"
(→Praktiskais darbs #5) |
|||
| Line 11: | Line 11: | ||
Par signāliem kārtīgi mācīsimies vēlāk! Neliels ieskats, kas var noderēt: [https://www.gnu.org/software/libc/manual/html_node/Handler-Returns.html#Handler-Returns] |
Par signāliem kārtīgi mācīsimies vēlāk! Neliels ieskats, kas var noderēt: [https://www.gnu.org/software/libc/manual/html_node/Handler-Returns.html#Handler-Returns] |
||
Uzmanību, konkrētais praktiskais darbs nestrādās ar striku 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 - izmntot kompilatora slēdzi "-D_POSIX_C_SOURCE" |
|||
Koda šablons: |
Koda šablons: |
||
| Line 18: | Line 20: | ||
#include <signal.h> |
#include <signal.h> |
||
#include <stdio.h> |
#include <stdio.h> |
||
#include <unistd.h> |
|||
// TODO: jūsu kods te! |
// TODO: jūsu kods te! |
||
Revision as of 15:54, 23 October 2018
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:
- setjmp()
- longjmp()
- sigaction() (piemērs)
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 striku 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 - izmntot 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".