Mutex_lock_interruptible-dan qachon foydalanish kerak?

Mundarija:

Mutex_lock_interruptible-dan qachon foydalanish kerak?
Mutex_lock_interruptible-dan qachon foydalanish kerak?
Anonim

Drayveringizni har qanday signal bilan toʻxtatishga ruxsat berish uchun mutex_lock_interruptible funksiyasidan foydalaning. Bu sizning tizim chaqiruvingiz qayta ishga tushirilishi uchun yozilishi kerakligini anglatadi. (Shuningdek qarang: ERESTARTSYS.)

Bir protsessorda spinlockni qulflab, boshqa protsessorni qulfdan chiqarish mumkinmi?

Bir yadroli/bitta protsessorli tizimda spinlocklardan foydalanish odatda ma'noga ega emas, chunki spinlock so'rovi mavjud bo'lgan yagona protsessor yadrosini to'sib qo'ysa, boshqa hech qanday oqim ishlay olmaydi va boshqa hech qanday ish zarracha ishlay olmaydi, qulf ham ochilmaydi.

Spinlock ushlab turganda Kmalloc Gfp_kernel-ga qo'ng'iroq qilsam bo'ladimi?

Siz, spinlockni ushlab turganda uyquga ketadigan hech narsa qila olmaysiz. Misol uchun, hech qachon foydalanuvchi xotirasiga, GFP_KERNEL bayrog'i bilan kmallocga, har qanday semafor funksiyalariga yoki har qanday jadval funksiyasiga hech qachon qo'ng'iroq qilmang. … Linuxdagi semaforlar uyqu qulflari.

Spinlock_t nima?

int spin_trylock(spinlock_t lock) Spinlokni qulflaydi agar u allaqachon qulflanmagan bo'lsa. Agar qulfni ololmasa, u xato bilan chiqadi va qulfni aylantirmaydi. spin_lock_irq: spin_lock_irq(spinlock_t lock)

Yadro mutexi nima?

Linux yadrosida mutekslar umumiy xotira tizimlarida ketma-ketlashtirishni ta'minlaydigan maxsus qulflash primitiviga ishora qiladi, va faqat "o'zaro istisno" ga ishora qiluvchi umumiy atamaga emas, balki umumiy xotira tizimlarigaakademik yoki shunga o'xshash nazariy darsliklar.

Tavsiya: