一、前言
为什么需要并发控制?
Linux是一个多任务操作系统,肯定会存在多个任务共同操作同一段内存或者设备的情况,
多个任务甚至中断都能访问的资源叫做共享资源,在驱动开发中要注意对共享资源的保护,也就是要处理对共享资源的并发访问。比如共享单车,大家按照谁扫谁骑走的原则来共用这个单车,如果没有这个并发访问共享单车的原则存在,只怕到时候为了一辆单车要打起来了。
二、并发与竞争
1、并发与竞争的定义
并发就是多个“用户”同时访问同一个共享资源,并发访问带来的问题就是竞争。
2、(Linux系统)并发产生的原因
- 多线程并发访问;
- 抢占式并发访问;
- 中断程序并发访问;
- 多核间并发访问。
3、并发产生的问题
并发会导致数据出错,而不是代码。