Małe zadania #2 i #2+¶
Napisać program używający wątków bez pomocy biblioteki wątków (surowe syscalle).
Program powinien:
Utworzyć nowy wątek w tej samej przestrzeni adresowej - zaalokować stos dla nowego wątku, użyć syscalla
clone
do uruchomienia kodu.W nowym wątku: wypisać 1000 razy
"A\n"
na standardowe wyjście (używając syscallawrite
), po czym zakończyć wątek (syscallexit
).W głównym wątku: wypisać 1000 razy
"B\n"
na standardowe wyjście (używając syscallawrite
), poczekać na zakończenie się nowego wątku (waitpid
), po czym zakończyć program (syscallexit_group
).
Zadanie można oddawać w dwóch wersjach:
#2 (łatwa, warta 1 punkt): używając funkcji
clone
,syscall
z libc.#2+ (trudna, warta 2 punkty): nie używając żadnych funkcji bibliotecznych, wołając syscalle z assemblera.