ОС1/Модификације септембар 2024 — разлика између измена

Извор: SI Wiki
Пређи на навигацију Пређи на претрагу
(Нова страница: {{tocright}} Sledeće modifikacije su se pojavile na odbrani projekta u septembru 2024. == Modifikacija za 20 bodova == Implementirati sve potrebne metode, sistemske pozive za implementaciju sinhronizacije niti. * C++ API: <code>static void Thread::pair(Thread* t1, Thread* t2)</code> Ova metoda uparuje niti prosleđene kao paramtere. Pretpostaviti da će svaka nit biti uparena sa tačno jednom niti. Takođe implementirati nestatičku metodu: * C++ API: <code>vo…)
 
Ред 3: Ред 3:


== Modifikacija za 20 bodova ==
== Modifikacija za 20 bodova ==
Implementirati sve potrebne metode, sistemske pozive za implementaciju sinhronizacije niti.
Implementirati sve potrebne metode, sistemske pozive za implementaciju sinhronizacije niti uparivanje.
* C++ API: <code>static void Thread::pair(Thread* t1, Thread* t2)</code>
* C++ API: <code>static void Thread::pair(Thread* t1, Thread* t2)</code>



Верзија на датум 29. септембар 2024. у 16:23

Sledeće modifikacije su se pojavile na odbrani projekta u septembru 2024.

Modifikacija za 20 bodova

Implementirati sve potrebne metode, sistemske pozive za implementaciju sinhronizacije niti uparivanje.

  • C++ API: static void Thread::pair(Thread* t1, Thread* t2)

Ova metoda uparuje niti prosleđene kao paramtere. Pretpostaviti da će svaka nit biti uparena sa tačno jednom niti.

Takođe implementirati nestatičku metodu:

  • C++ API: void Thread::sync()

koja vrši sinhronizaciju niti: - Ako je jedna nit pozvala ovu metodu, a druga ne, tekuća nit se blokira. - Kada druga nit pozove ovu metodu, obe niti mogu nastaviti izvršavanje. - Metoda se može pozvati proizvoljan broj puta.

Takođe obezebediti da svaka korisnička nit ima jedinstveni identifikator, počevši od 1.

Test

Bio je dat kostur onoga što nit treba da izvršava, a to je da se niti sinhronizuju u for petlji sa 3 iteracije. Trebalo je, po uzoru na ostale, dodati 8. test koji će imati run metode sa prilagođenim potpisom testa datim u postavci. Test je trebalo da testira samo C++ api.

Modifikacija za 30 bodova