Hvornår skal mutex_lock_interruptible bruges?

Indholdsfortegnelse:

Hvornår skal mutex_lock_interruptible bruges?
Hvornår skal mutex_lock_interruptible bruges?

Video: Hvornår skal mutex_lock_interruptible bruges?

Video: Hvornår skal mutex_lock_interruptible bruges?
Video: Mutex Lock 2024, November
Anonim

Brug mutex_lock_interruptible-funktionen for at tillade, at din chauffør bliver afbrudt af ethvert signal. Dette indebærer, at dit systemkald skal skrives, så det kan genstartes. (Se også ERESTARTSYS.)

Kan jeg låse en spinlock i én CPU og låse den op en anden CPU?

At bruge spinlocks på et enkelt-kerne/single-CPU-system giver norm alt ingen mening, da så længe spinlock-pollingen blokerer den eneste tilgængelige CPU-kerne, kan ingen anden tråd køre, og da ingen anden tråd kan køre, låsen låses heller ikke op.

Kan jeg ringe til Kmalloc Gfp_kernel, mens jeg holder en spinlock?

Du kan dog ikke gøre noget, der vil sove, mens du holder en spinlock. Kald for eksempel aldrig nogen funktion, der berører brugerhukommelsen, kmalloc med GFP_KERNEL-flaget, nogen semaforfunktioner eller nogen af skemafunktionerne, mens du holder en spinlock. … Semaforer i Linux er sovende låse.

Hvad er Spinlock_t?

int spin_trylock(spinlock_t lock) Låser spinlocken hvis den ikke allerede er låst. Hvis den ikke kan opnå låsen, afsluttes den med en fejl og drejer ikke låsen. spin_lock_irq: spin_lock_irq(spinlock_t lock)

Hvad er en kerne-mutex?

I Linux-kernen henviser mutexes til en bestemt låseprimitiv, der gennemtvinger serialisering på delte hukommelsessystemer, og ikke kun til det generiske udtryk, der refererer til 'gensidig udelukkelse', som findes i den akademiske verden eller lignende teoretiske lærebøger.

Anbefalede: