Kada koristiti mutex_lock_interruptible?

Sadržaj:

Kada koristiti mutex_lock_interruptible?
Kada koristiti mutex_lock_interruptible?

Video: Kada koristiti mutex_lock_interruptible?

Video: Kada koristiti mutex_lock_interruptible?
Video: Kada koristiti WIE, a kada ALS na njemačkom jeziku? 🇩🇪 | Vokabula 2024, Rujan
Anonim

Koristite funkciju mutex_lock_interruptible da omogućite da vaš vozač bude prekinut bilo kojim signalom. To implicira da bi vaš sistemski poziv trebao biti napisan tako da se može ponovno pokrenuti. (Također pogledajte ERESTARTSYS.)

Mogu li zaključati spinlock u jednom CPU-u i otključati ga drugim CPU-om?

Upotreba spinlocka na sustavu s jednom jezgrom/jednom CPU-om obično nema smisla, budući da sve dok prozivanje spinlocka blokira jedinu dostupnu CPU jezgru, nijedna druga nit se ne može pokrenuti i budući da se nijedna druga nit ne može pokrenuti, ni brava se neće otključati.

Mogu li nazvati Kmalloc Gfp_kernel dok držim spinlock?

Ne možete, međutim, učiniti sve što će spavati dok držite spinlock. Na primjer, nikada ne pozivajte nijednu funkciju koja dodiruje korisničku memoriju, kmalloc s GFP_KERNEL zastavicom, bilo koju funkciju semafora ili bilo koju funkciju rasporeda dok držite spinlock. … Semafori u Linuxu su brave za spavanje.

Što je Spinlock_t?

int spin_trylock(spinlock_t lock) Zaključava spinlock ako već nije zaključan. Ako se ne može dobiti zaključavanje, izlazi s greškom i ne okreće zaključavanje. spin_lock_irq: spin_lock_irq(spinlock_t lock)

Što je mutex kernela?

U Linux kernelu, muteksi se odnose na određeni primitiv za zaključavanje koji provodi serijalizaciju na sustavima dijeljene memorije, a ne samo na generički izraz koji se odnosi na 'međusobno isključenje' koji se nalazi u akademske zajednice ili sličnih teorijskih udžbenika.

Preporučeni: