Linux内核中处理并发与竞争的互斥体的驱动实现
一. 简介
上一篇文章学习了 Linux内核提供的处理并发与竞争的方法:互斥体,也就是互斥锁。
文章地址如下:
Linux内核处理并发与竞争的一种方法:互斥体-CSDN博客
本文编写向驱动代码加入互斥体,来说明互斥体的使用方法。
二. Linux内核中互斥体的驱动代码
1. 准备工程代码
这里的互斥体代码在前面 8_semaphore工程代码的基础上进行更改。
(1)首先,创建 8_mutex工程目录,将 8_semaphore工程拷贝到 8_mutex工程目录下:
wangtian@wangtian-virtual-machine:~/zhengdian_Linux/Linux_Drivers$ mkdir 8_mutex
wangtian@wangtian-virtual-machine:~/zhengdian_Linux/Linux_Drivers$ cp ./8_semaphore/* ./8_mutex/ -rf
2)拷贝 8_semaphore实验目录中 .vscode文件及其下文件。
将8_semaphore工程代码下的 .vscode文件及其下文件拷贝 到 8_mutex工程目录下(.vscode文件下的文件设置了驱动代码会调用到 Linux内核源码的路径):
wangtian@wangtian-virtual-machine:~/zhengdian_Linux/Linux_Drivers$ cp ./8_semaphore/.vscode/ ./8_mutex/ -rf
(3) 清除8_mutex工程目录下之前编译生成的目标文件:
wangtian@wangtian-virtual-machine:~/zhengdian_Linux/Linux_Drivers/8_mutex$ make clean