⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 +

📁 linux内核学习笔记 希望想看的人可以很快下载到
💻
字号:
any problems, send mails to lysindybear@sina.com.cn

在linux系统中,锁大量存在,同时由于并发访问的问题,带来了一些代码上的困惑以及程序上容易出现的
错误。

在linux系统中,用于保护共享资源的锁有以下几种:
spin_lock, write_lock。
他们都可以对共享的资源,临界区进行访问控制,一般对临界区的访问,不论读还是写都要加锁。



这里要强调一点的是:临界资源的申请,这里有一个很容易犯错误的地方。
1.假设存在一个共享资源池pool。同时又一个她的一个缓冲区cache。

2.我们的进程要进行读操作,首先从cache中寻找,一般使用hash表的方式。如果没有找到,

3.我们要向共享资源池申请一个资源A,但是没有得到,我们必须对这个pool进行加锁操作,然后取出一个资源,解锁。

4.但是到了这里,我们要加倍的小心,我们解锁出来以后,一般要再检查一边cache,看是否我们请求的
资源已经在cache中了,这是因为,在我们申请资源的时候,可能别的进程已经请求了,特别时在牵涉到
有资源计数的系统,如果不进行这种操作,可能会产生计数不匹配

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -