Re:[OSy] thread_wakeup
Tomas Pop
Tomas.Pop at seznam.cz
Thu Nov 9 22:31:02 CET 2006
Zdravim,
V nasi verzi toho nijak neosetrujeme, vlakno muze probudit kdokoli, kdo na nej ma handle, ale to je v v okamziku, ktery tady zminujes obvykle prave jen fronta synchronizacniho primitiva.
Krasnou bezesnou noc vsem.
> ------------ Původní zpráva ------------
> Od: Tomas Tuma <tom.tuma at seznam.cz>
> Předmět: [OSy] thread_wakeup
> Datum: 09.11.2006 22:22:49
> ----------------------------------------
> Zdravim,
>
> v zadani je uvedeno:
> -------------------------------
> * int thread_wakeup (thread_t thr)
>
> Funkce odblokuje zadane vlakno. Volajici vlakno pokracuje v behu,
> neni v dusledku tohoto volani preplanovano. Funkce vraci EINVAL
> pokud je identifikace vlakna neplatna, jinak EOK.
> ------------------------------
>
> V nasem kernelu jsou vlakna uspana na synchronizacnich primitivech v suspended
> stavu a jsou probouzena pomoci thread_wakeup. Pokud by vsak thread_wakeup
> na takto uspane vlakno zavolal nekdo jiny nez je synchronizacni primitivum,
> nemelo by se podle meho nazoru takove vlakno probudit a volajicimu by se mela
> ohlasit nejaka chyba - vlakno je uspane, ale nechce byt vzbuzeno jinak nez samo
> ocekava.
>
> Vyse uvedena definice thread_wakeup to neumoznuje. Je dobry napad si zadani
> "rozsirit"? Nebo se jedna o prapodivne specifikum naseho kernelu?
>
> Pekny vecer vsem
> Tom
>
> _______________________________________________
> OSy mailing list
> OSy at nenya.ms.mff.cuni.cz
> http://nenya.ms.mff.cuni.cz/mailman/listinfo/osy
>
>
>
More information about the NSWI004
mailing list