??? ??

? ?? ?? ??? ???? ?? ?????. lock_kernel()? ???? ??? ???? unlock_kernel()? ?????. ?? ??_locked()? ??? ???? ?? 0? ?? ?? 0? ?? ?? ?0? ?????. ?: 2.5 ?? ??(? ?? ??? ??? ?? 2.4)?? Linux ??? ??? ??? ? ????. ? ??? ???? ?? ????? ???? ???? ???? ?? ??? ?? ?????? ????? ??? ? ????. ?? ??? ??? SMP? ?? ??? ??? ????. ???? ?? ??? SMP ??? ?? ?????? ???? ??? SMP ?? ??? ???? ???? ?????. ??? ? ?? ??? ?? ??? ???????. ?? ?? ??? ????? ?? ???(? CPU? ???? ??? ???) ?? ???? ???? ??? CPU? ???? ???? ?? ? ????. ?? ????? SpinLock? ???? ??? ?? ???. ? ????? ?? ??? ???? ??? ????? SpinLock? ??? ??? ???. ??? ?? ??? ?? ??? ?? SpinLock? ??? ?????.

??? SpinLock? ?? ???? ??? ?? ?? ??? ????. ????? ???? ??? ????? ??? ???? ?????? ? ?? ??? ???? ?? ??? ??? ? ????. ??? ??? ??? ??? ???? ??????. ??? ???? ?? ??? ?? ???? ???? ??????. ?? C ??? ???? ???? ??? ?? ????? ?????. ?? ?? void set_bit(int nr, void *addr)? ?????. ? ??? ??? ???? ???? „nr-th” ??1? ????? ?????. ???? ???? „?? ??” ?????? ?????. ? ????? ?? ??? ???? ?? ??? ???? ??? System.Collections.Generics.Generics.Queue ???? ?????.

.NET Framework ?? 4? ???? ?? ?? ?????? ?? ??? ??? ??? ???? ?? System.Collections.Concurrent.ConcurrentQueue? ???? ????. ??? ? ?? ??? ??? ?? ??? ????. ??, ?? ???? ?? ?? ??? ?? ????? ???? ????? ?? ????. ??, ??? ?? ?????? ?????. ??? ???? ?? ??? ?? ?????. ?? ???? ??? ?? ?? ???? ???? ?? ? ??? ?? ?????. i++? ?? ??? ?????. ??? i? ??, ??? ???? ??? ??? ??? ???? ???? ?? ? ? ??? ??? ?? ? ?? ??? ????? ?? ????.

?? ???? ??? ??? ??? ?????. ???? ???? ???? ???? ???? ???? ? ?? ??? ????. ?? ??? ??? ?? ?????: ?? ?????? Mutex ? ??? ??? ??????. ???? ????? ???? ?????. ? ? ? ? ??? ????? ?? ??? ?? ?? ??? ?? ???? ?? ?? ? ?? ???. ??? ??? ???? ???? ???? ???? ???? ? ????. ?? ????? x86 ???? ??? ???? ???? ?????. ??? ?? ?? 80386 ?? ?????? ?????. ? ?? ??? ?? ??(etx_gloabl_??)? ????? ? ?? ???? ??? ??? ?????.

??? ??? ????? ?? ?? ?? ?? ? ????. ? ? ?? ?? ?????. ? ??? ?? ?? 1? ???? ????. Mutex ???? ???? ??? ? ?? Mutex? ???? ????? ? ? ?? ???? ???? ??? ? ?? ??? ?? ??? ?????. ?? ???? ?? ??. ???? ?? ??? ?? ?? ?? ?????.