Bir mutex ve semafore arasinda nedir? Bir artım əməliyyatına girişi qorumaq üçün nədən istifadə edərdiniz?


cavab 1:

Semaphore'nın POSIX tərifi yaxşı bir başlanğıc nöqtəsidir:

Bir semafora, dəyəri heç vaxt sıfırdan aşağı düşməyən bir tamdır. Semaforlarda iki əməliyyat edilə bilər: semafora dəyərini birə artırmaq; və semafora dəyərini bir-bir azaldır. [1]

Konseptual olaraq, bir mutex, dəyəri heç bir dəyəri aşmamalı olan əlavə bir mülk olan semafordur.

Bu əlavə məhdudiyyət, bir muteksin həyata keçirilməsini və istifadəsini iki ayrı şey kimi nəzərdən keçirməyə əsas vermək üçün semaforun tətbiqi və istifadəsindən kifayət qədər fərqləndirir.

Qeydlər

[1] sem_overview (7): POSIX semaforlarına ümumi baxış


cavab 2:

Semafore daha ümumi bir termindir.

"Mutex" "qarşılıqlı xaricolma üçün semafor" ifadəsidir. Bu, hər zaman mutex tərəfindən qorunan məlumatları yalnız bir icra ipindən istifadə etməyə imkan verən semaforun bir növüdür.

Semaphore ilə qorunan məlumatların istənilən vaxt istənilən sayda maksimum sayda istifadə edilə biləcəyi sayılan semaforalar da var. Ancaq bunlar daha nadirdir.

Bir artıma girişi qorumaq üçün, ehtimal ki, bir mutex lazımdır.

Sayılmış semafor sabit ölçülü növbələr üçün faydalıdır. Növbədə N yuvası varsa, növbəyə əşyalar yazmaq üçün N yazıçılarını oyatmaq olar. Növbədə M maddələr varsa, M mövzularını növbədən oxumağa imkan verə bilərsiniz.

Qeyd edək ki, hər iki halda, bir anda yalnız bir ipin dəyişdirilməsini təmin etmək üçün ya mutex ya da bəzi atom dəyişənləriniz ola bilər. B. yazı üçün göstərici / indeks və ya oxumaq üçün göstərici / indeks.


cavab 3:

Semafore daha ümumi bir termindir.

"Mutex" "qarşılıqlı xaricolma üçün semafor" ifadəsidir. Bu, hər zaman mutex tərəfindən qorunan məlumatları yalnız bir icra ipindən istifadə etməyə imkan verən semaforun bir növüdür.

Semaphore ilə qorunan məlumatların istənilən vaxt istənilən sayda maksimum sayda istifadə edilə biləcəyi sayılan semaforalar da var. Ancaq bunlar daha nadirdir.

Bir artıma girişi qorumaq üçün, ehtimal ki, bir mutex lazımdır.

Sayılmış semafor sabit ölçülü növbələr üçün faydalıdır. Növbədə N yuvası varsa, növbəyə əşyalar yazmaq üçün N yazıçılarını oyatmaq olar. Növbədə M maddələr varsa, M mövzularını növbədən oxumağa imkan verə bilərsiniz.

Qeyd edək ki, hər iki halda, bir anda yalnız bir ipin dəyişdirilməsini təmin etmək üçün ya mutex ya da bəzi atom dəyişənləriniz ola bilər. B. yazı üçün göstərici / indeks və ya oxumaq üçün göstərici / indeks.