计算机科学与技术 并发控制
计算机科学中的并发与并行的概念

计算机科学中的并发与并行的概念在计算机科学中,有两个重要的概念:并发和并行。
尽管它们听起来很相似,但它们代表着不同的概念和技术。
本文将深入探讨并发和并行的定义、区别以及在计算机科学中的应用。
一、并发与并行的定义并发是指在同一时间段内,多个任务在同一个处理器上交替执行。
这意味着这些任务可以在互不干扰的情况下同时进行,并且在给定的时间片内,每个任务都能够得到执行。
通过并发,我们可以实现更高效的任务处理和资源利用。
与此相反,所谓并行是指多个任务在同一时间同时执行。
这需要多个处理器或多个计算机的协同工作。
通过并行,我们能够大大提高任务的处理速度和系统的吞吐量。
尽管并发和并行有相似的目标,即增加任务处理量和效率,但它们的实现方式和技术方法却有所不同,下文将对这两者进行详细讨论。
二、并发的应用并发在计算机科学中有广泛的应用。
其中一个重要的应用领域是操作系统。
操作系统需要同时处理多个任务,如用户界面、后台进程和网络连接等。
通过实现并发,操作系统可以确保每个任务都可以得到适当的执行时间,从而保证系统的稳定性和高效性。
另一个常见的应用领域是数据库系统。
在数据库系统中,多个用户可能同时对数据库进行读取或写入操作。
通过并发控制技术,数据库系统能够保证数据的一致性和完整性,同时提供高并发的事务处理能力。
此外,并发还广泛应用于网络通信、多线程编程以及分布式系统等领域。
通过合理地利用并发,可以提高系统的响应速度和吞吐量,同时提升用户体验。
三、并行的应用与并发不同,要实现并行需要多个处理器或计算机的协同工作。
并行在计算机科学中的应用范围也非常广泛。
在科学计算中,一些复杂的数值计算问题可能需要大量的计算资源和时间。
通过并行计算,这些问题可以被划分为更小的子问题,然后在多个处理器上同时计算,从而加快计算速度。
另一个重要的并行应用领域是图形图像处理。
在现代计算机游戏和动画制作中,需要快速渲染大量的图像和图形。
通过并行计算,图像处理任务可以在多个计算单元上同时进行,从而加快渲染速度。
2022年江南大学计算机科学与技术专业《数据库原理》科目期末试卷B(有答案)

2022年江南大学计算机科学与技术专业《数据库原理》科目期末试卷B(有答案)一、填空题1、关系数据库中基于数学的两类运算是______________和______________。
2、SQL Server中数据完整性包括______、______和______。
3、在RDBMS中,通过某种代价模型计算各种查询的执行代价。
在集中式数据库中,查询的执行开销主要包括______和______代价。
在多用户数据库中,还应考虑查询的内存代价开销。
4、____________、____________、____________和是计算机系统中的三类安全性。
5、某事务从账户A转出资金并向账户B转入资金,此操作要么全做,要么全不做,为了保证该操作的完整,需要利用到事务性质中的_____性。
6、数据模型是由______________、______________和______________三部分组成。
7、在SELECT命令中进行查询,若希望查询的结果不出现重复元组,应在SEL ECT语句中使用______保留字。
8、在VB 6.0中,已经用Adobel连接到数据库,并已绑定到数据库中的某个关系表,现要通过此控件向表中插入数据,需要用到Adobel.Recordset的_____方法和Update方法,使用Adobel.Recordset的_____方法可以使当前行指针在结果集中向前移动一行。
9、数据仓库是______、______、______、______的数据集合,支持管理的决策过程。
10、对于非规范化的模式,经过转变为1NF,______,将1NF经过转变为2NF,______,将2NF经过转变为3NF______。
二、判断题11、数据模型的核心构成要素是数据结构。
()12、从计算机数据管理的角度看,信息就是数据,数据就是信息。
()13、在关系数据表中,属性的顺序是一定的,不能交换。
()14、等值连接与自然连接是同一个概念。
基于相似和谨慎等待的移动分布式实时数据库并发控制方法

来, 形成基 于相 似和谨慎等待的移动分布式 实时数据 库的并发控 制算法 , 以增加 系统并发性 , 少重启和 阻塞事务 的 减
数量 , 并通过判断事务是否断开 而探讨 了相应 的解决策略 , 降低 了断开问题 对 系统性能的影响 。 关键词 相似 , 谨慎 等待 , 于相似 和谨慎等待的移动分布式 高优先级 2阶段锁定 基
bok dta sc o , a w i d p e tdp l yb u gn rn at ndso n c o o odces f e c n l e rnat n men hl ao trl e oi yjd ig t sci i n et rn tt eraei l n eo c i e a c a o c nu
随着移动 计算技 术的快速发展 , 移动环境 下 实时事务 处理 的需求也不 断增加 。而造成 事务重 启和 阻塞 的 对
有限带宽和频繁 断开是移动 环境 下实时 系统特有的属性 , 因此过去针 对分布 式 实时数据 库 系统 的并发控制研 究并 不 能够直接应 用在移 动分布式实时数据库上 。把相似概 念和谨 慎等待 方案 与 高优 先级 2阶段锁 定 ( HP 2 L 结合起 D -P )
计算 机科 学 2 0 Vo. 5 o 1 0 8 13 N . 0
基 于 相 似 和 谨 慎 等 待 的移 动分 布 式 实 时数 据 库 并发 控 制 方 法
罗 琼 张 立 臣。
( 州大 学 物理 与 电子工程 学 院 广 州 50 0 ) 广 1O 6
摘 要
( 东工 业大 学计 算机 学 院 广 州 50 9) 广 10 0
Ab ta t W i in fc n e e o m e t i b l o src t sg iia t d v l p n n mo i c mp tn e h o o y, h r s a n r a ig d ma d f r r a-i e h e u ig t c n lg t e e i n ic e sn e n o e l m t t a s c i n p o e s i e lt n io me t W h r a i t d b n wi t a sn r n a t n r s a td a d b o k d a d r n a t r c s a r a— i e v r n n . o n me e e sl mie a d d h c u i g ta s c i e t r e n l c e n o
计算机科学与技术学科课程体系结构

30年代发展起来的算法理论,对在40年代后期出现的 存储程序型计算机的设计思想是有影响的。图灵提出的 理想计算机(称为图灵机)中的一种通用机就是存储程 序型的。
12.1.2 理论计算机科学
理论计算机科学主要包括:
自动机论与形式语言理论; 程序理论(包括程序正确性证明、程序验证
等); 形式语义学; 算法分析和计算复杂性理论。
12.1.3 形式语言理论
形式语言理论源于数理语言学中的乔姆 斯基理论。在这种理论中,形式语言分为 四种:
0型语言:短语结构语言,每个0型语言都是 递归可枚举集
1型语言:又名上下文有关语言 2型语言:又名上下文无关语言 3型语言:又名正则语言
12.1.4 程序设计理论
程序设计理论包括程序正确性证明和程 序验证
(4)算法与数据结构
介绍常用的数据表示和处理技术,包括顺序存 储和链接存储的线性表、栈和队列的表示和操 作;字符串的模式匹配算法;插入排序、选择 排序、快速排序等常见的内部排序方法;顺序 存储的数组的地址计算方法;树的存储结构、 遍历和线性表示;二叉树的遍历、存储和查找 ;穿线树和穿线排序;查找树、平衡树、 Huffman算法、B树等常见树的表示和有关算法 ;图的表示、遍历及应用。先修课程:高级语 言程序设计、离散数学。
计算机组成原理
主要内容包括计算机的发展概况、系统 结构、数据的表示方法及其主要部件、内 部的指令系统和存储系统、输入输出设备 的结构和工作原理、CPU与外设间传送数 据的控制方法。
自考计算机科学与技术之系统结构填空题

1. 问题中具有可同时进行运算或操作的特性称为___。
答案:并行性2. 多处理机要实现的是更高一级的___、___间的并行处理。
答案:作业任务3. 多级立方体网络采用___和___两种控制方式。
答案:级控制部分级控制4. 在主、辅存之间增加一级电子磁盘,使___不会过大,有利于降低___,以获得同样的e。
答案:r 对H的要求5. 自定义数据的表示形式有两种,它们是___和___。
答案:标志符数据表示数据描述符6. 流水线按处理级别可分为部件级___、___和三种。
答案:系统级处理机级7. 在层次化存储系统中,___是最高层次的存储部件。
答案:Cache8. 开发计算机系统的并行性,一般采用___、___和___这三种方法。
答案:资源共享时间重叠资源重复9. 访Cache的时间一般是访主存时间的___至___。
答案:1411010. 数据描述符主要用于描述___、___、___等成块的数据。
答案:向量数组记录11. 使用多处理机的主要目的是用多个处理机___执行多个任务来提高___。
答案:并发,解题速度12. 指令的操作码优化编码方法有___和___。
答案:哈夫曼编码,扩展编码(次序可换)13. 在可表示浮点数的负数区间,规格化浮点数的最大负数值由尾数的___与阶码的___组合而成。
答案:最大负数值,最小负数值14. 输入输出系统的发展经历了三个阶段,对应于三种方式,即___、直接存储器访问(DMA)及___方式。
答案:程序控制I/O,I/O处理机15. Cache存储器系统是由___和___构成的二级存储系统。
答案:Cache,主存(次序可换)16. 解释一条机器指令的微操作可归并成取指令、___和___三个部分。
答案:分析,执行17. 分布式存储器结构的并行处理机的每个处理单元PE都有自己的___存储器,只能被___直接访问。
答案:局部,本处理单元18. 程序员编程用的地址是___,主存物理地址是程序在主存中的___。
2022年苏州科技大学计算机科学与技术专业《数据库原理》科目期末试卷A(有答案)

2022年苏州科技大学计算机科学与技术专业《数据库原理》科目期末试卷A(有答案)一、填空题1、SQL Server中数据完整性包括______、______和______。
2、数据仓库创建后,首先从______中抽取所需要的数据到数据准备区,在数据准备区中经过净化处理______,再加载到数据仓库中,最后根据用户的需求将数据发布到______。
3、在一个关系R中,若每个数据项都是不可再分割的,那么R一定属于______。
4、若事务T对数据对象A加了S锁,则其他事务只能对数据A再加______,不能加______,直到事务T释放A上的锁。
5、关系代数运算中,基本的运算是______________、______________、______________、______________和______________。
6、采用关系模型的逻辑结构设计的任务是将E-R图转换成一组______,并进行______处理。
7、数据库管理系统的主要功能有______________、______________、数据库的运行管理以及数据库的建立和维护等4个方面。
8、从外部视图到子模式的数据结构的转换是由______________实现;模式与子模式之间的映象是由______________实现;存储模式与数据物理组织之间的映象是由______________实现。
9、数据仓库是______、______、______、______的数据集合,支持管理的决策过程。
10、SQL语言的数据定义功能包括______、______、______和______。
二、判断题11、连接是数据库最耗时的操作。
()12、全码的关系模式一定属于BC范式。
()13、视图就是一个虚表,保存视图时,保存的是视图的定义。
()14、等值连接与自然连接是同一个概念。
()15、视图是可以更新的。
()16、可以用UNION将两个查询结果合并为一个查询结果。
大学生自荐计算机科学与技术专业热爱编程

大学生自荐计算机科学与技术专业热爱编程尊敬的XXX先生/女士:初次见面,您好!我是一名大学生,热爱并专注于计算机科学与技术专业,特别是编程方向。
我衷心希望能够参与贵公司的计算机相关岗位,并向您自荐一下。
一、个人介绍我于XXXX年进入XX大学计算机科学与技术专业学习,至今已拥有X年的计算机编程经验。
在校期间,我积极参加各类与计算机相关的课程和实践,通过自学和团队合作项目,已经熟练掌握了多种编程语言,包括但不限于C/C++、Java、Python等。
我也具备扎实的数据结构和算法基础,并且经常参与编程竞赛,注重提升自己的解决问题能力和团队协作精神。
二、专业技能和项目经历1. 专业技能• 熟练掌握多种编程语言及开发工具;• 具备扎实的计算机基础和数据结构、算法知识;• 理解并能有效应用面向对象编程思想;• 熟悉常用数据库和网络编程技术;• 具备良好的学习能力和问题解决能力;2. 项目经历在大学期间,我积极参与了一些与计算机科学和编程相关的项目,以下是其中两个较为代表性的项目:项目一:XXX软件开发• 项目描述:本项目致力于开发一款方便用户管理、数据处理和可视化分析的XXX软件。
• 我的角色:作为核心开发成员之一,参与了软件需求分析、系统设计、编码实现和测试等全过程。
• 实现技术:使用Java编程语言开发,采用MVC架构,结合Spring和Hibernate框架,使用MySQL数据库,前端使用HTML/CSS/JavaScript等技术。
• 成果评价:该软件成功上线并投入使用,用户反馈良好,得到了领导的高度认可。
项目二:XXXX系统优化• 项目描述:该项目的目标是优化公司的XXXX系统,提升系统的性能和稳定性。
• 我的角色:作为团队成员之一,负责参与需求分析、代码优化和性能测试等工作。
• 实施方案:通过内存管理优化、算法改进和并发控制等手段,减少系统的响应时间和安全漏洞。
• 成果评价:系统性能得到显著提升,稳定性得到改善,公司内部用户的投诉和故障率都有明显下降。
计算机科学与技术导论

04 数据结构与算法
数据结构概述
数据结构定义
数据结构是数据元素的集合以及定义在这些元素之间的相互关系。
数据结构分类
根据数据的组织方式,数据结构可分为线性结构、树形结构和图形 结构等。
数据结构应用
数据结构在计算机科学中广泛应用于解决各种问题,如排序、搜索、 图论等。
常见数据结构
线性数据结构:包括 数组、链表、队列、 栈等。
因特网与互联网技术
01
因特网概述
因特网是全球最大的、覆盖范围最广的计算机网络,由成千上万的局域
网和广域网互联而成。
02
互联网技术
互联网技术包括TCP/IP协议族、HTTP协议、FTP协议、SMTP协议等,
这些技术使得不同计算机系统之间能够进行可靠的数据传输和信息交换。
03
互联网的应用
互联网的应用非常广泛,包括万维网、电子邮件、文件传输、远程登录
通过传感器和网络技术 实现物体与物体之间的 连接和信息交换,可应 用于智能家居、智能交 通等领域。
研究软件开发和维护的 方法和技术,提高软件 质量和开发效率,可应 用于企业级应用开发等 领域。
02 计算机硬件基础
计算机硬件概述
计算机硬件
是指计算机系统中由电子、机械和光 电元件等组成的物理装置的总称,是 计算机系统中实现计算、存储、输入 输出等功能的基础部件。
常见程序设计语言
常见的程序设计语言有C、Java、Python和JavaScript等。
应用软件
应用软件定义
应用软件是指专门用于完成特定任务或提供特定服务的计算机软 件。
应用软件分类
应用软件可分为办公软件、图像处理软件、浏览器等。
应用软件发展
随着互联网和移动互联网的发展,应用软件的功能越来越丰富, 用户体验也越来越重要。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
An Introduction to Database System
第11章 并发控制
An Introduction to Database System
上节内容复习
事务的概念和性质
故障的种类
– – – 事务故障 系统故障 介质故障
恢复中最经常使用的技术
– – 数据库转储 登记日志文件
结果明明卖出两张机票,数据库中机票余 额只减少1 丢失修改
并发控制概述(续)
并发操作带来的数据不一致性
– 1.丢失修改(Lost Update) – 2.不可重复读(Non-repeatable Read) – 3.读“脏”数据(Dirty Read)
记号
– – R(x):读数据x W(x):写数据x
– – 多处理机系统中,实现多个事务真正的并行 运行 最理想的并发方式
本章讨论的数据库系统并发控制技术 是以单处理机系统为基础的
并发控制(续)
事务并发执行带来的问题
–
–
会产生多个事务同时存取同一数据的情况
可能会存取和存储不正确的数据,破坏事务 隔离性和数据库的一致性 (ACID)
数据库管理系统必须提供并发控制 机制 并发控制机制是衡量一个数据库管 理系统性能的重要标志之一
–
–保证事务的隔离性保数据库的一致性并发控制概述(续)
并发操作带来数据的不一致性实例 [例11.1]飞机订票系统中的一个活动序列
① 甲售票点(事务T1)读出某航班的机票余额A,设A=16; ② 乙售票点(事务T2)读出同一航班的机票余额A,也为16 ; ③ 甲售票点卖出一张机票,修改余额A←A-1,所以A为15 ,把A写回数据库; ④ 乙售票点也卖出一张机票,修改余额A←A-1,所以A为 15,把A写回数据库
可串行性(Serializability)
– 是并发事务正确调度的准则
–
一个给定的并发调度,当且仅当它是可串行 化的,才认为是正确调度
可串行化调度(续)
[例11.2]现在有两个事务,分别包含下 列操作:
– – 事务T1:读B;A=B+1;写回A 事务T2:读A;B=A+1;写回B
现给出对这两个事务不同的调度策 略
事务可以释放任何数据项上的任何类型的锁,但 是不能再申请任何锁
两段锁协议(续)
例 事务Ti遵守两段锁协议,其封锁序列是 :
Slock A Slock B Xlock C Unlock B Unlock A Unlock C ;
|←
扩展阶段 →
|
|←
收缩阶段
→|
事务Tj不遵守两段锁协议,其封锁序列是:
–
消
选择一个处理死锁代价最小的事务,将其撤
–
释放此事务持有的所有的锁,使其它事务能
继续运行下去
第十一章 并发控制
11.1 11.2 11.3 11.4 11.5 11.6 11.7 *11.8 11.9 并发控制概述 封锁 封锁协议 活锁和死锁 并发调度的可串行性 两段锁协议 封锁的粒度 其他并发控制机制 小结
本节内容——并发控制
11.1 11.2 11.3 11.4 11.5 11.6 11.7 *11.8 11.9 并发控制概述 封锁 封锁协议 活锁和死锁 并发调度的可串行性 两段锁协议 封锁的粒度 其他并发控制机制 小结
并发控制
多用户数据库系统
允许多个用户同时使用的数据库系统
– 飞机定票数据库系统
– 在对任何数据进行读、写操作之前,事务首 先要获得对该数据的封锁 – 在释放一个封锁之后,事务不再申请和获 得任何其他封锁
两段锁协议(续)
“两段”锁的含义 事务分为两个阶段
– 第一阶段是获得封锁,也称为扩展阶段
事务可以申请获得任何数据项上的任何类型的锁 ,但是不能释放任何锁
–
第二阶段是释放封锁,也称为收缩阶段
三级封锁协议
– 一级封锁协议加上事务T在读取数据R之前必 须先对其加S锁,直到事务结束才释放。
三级封锁协议可防止丢失修改、读脏数 据和不可重复读。
使用封锁机制解决不可重复读问题
可重复读
– 事务T1在读A,B之前,先对A,B 加 S锁 – 其他事务只能再对A,B加S锁, 而不能加X锁,即其他事务只能读 A,B,而不能修改 – 当T2为修改B而申请对B的X锁时 被拒绝只能等待T1释放B上的锁 – T1为验算再读A,B,这时读出 的B仍是100,求和结果仍为150, 即可重复读 – T1结束才释放A,B上的S锁。T2 才获得对B的X锁
封锁粒度
封锁对象的大小称为封锁粒度 (Granularity) 封锁的对象:逻辑单元,物理单元 例:在关系数据库中,封锁对象:
4.封锁协议小结
三级协议的主要区别
– 什么操作需要申请封锁以及何时释放锁(即持锁 时间) 封锁协议级别越高,一致性程度越高
不同的封锁协议使事务达到的一致性级别不同
–
表11.1 不同级别的封锁协议和一致性保证
第十一章 并发控制
11.1 11.2 11.3 11.4 11.5 11.6 11.7 *11.8 11.9 并发控制概述 封锁 封锁协议 活锁和死锁 并发调度的可串行性 两段锁协议 封锁的粒度 其他并发控制机制 小结
–
–
银行数据库系统
特点:在同一时刻并发运行的事务数可达数 百上千个
并发控制(续)
多事务执行方式
(1)事务串行执行
– 不能充分利用系统资源,发挥数据库共享
资源的特点
(2)交叉并发方式(轮流交替)
– 并没有真正地并行运行,但能够减少处 理机的空闲时间,提高系统的效率
并发控制(续)
(3)同时并发方式(simultaneous concurrency)
– 事务T1在对C进行修改之前 ,先对C加X锁,修改其值后 写回磁盘 – T2请求在C上加S锁,因 T1已在C上加了X锁,T2只能 等待 – T1因某种原因被撤销,C 恢复为原值100 – T1释放C上的X锁后T2获 得C上的S锁,读C=100。避 免了T2读“脏”数据 不可重复读
3. 三级封锁协议
使用封锁机制解决丢失修改问题
例如
– 事务T1在读A进行修改之前 先对A加X锁 – 当T2再请求对A加X锁时被拒 绝 – T2只能等待T1释放A上的锁 后获得对A的X锁 – 这时T2读到的A已经是T1更 新过的值15 – T2按此新的A值进行运算, 并将结果值A=14写回到磁盘 。避免了丢失T 的更新。 没 不可重复读 有丢失修改
11.4 活锁和死锁
封锁技术可以有效地解决并行操 作的一致性问题,但也带来一些新
的问题
– – 死锁 活锁
活锁
避免活锁:采用先来先服务的策略
(a)活 锁
死锁
(b) 死锁
解决死锁的方法 两类方法
1. 死锁的预防
(1)一次封锁法
(2)顺序封锁法
2. 死锁的诊断与解除 (1)超时法 (2)等待图法
死锁的诊断与解除(续) 解除死锁
第十一章 并发控制
11.1 11.2 11.3 11.4 11.5 11.6 11.7 *11.8 11.9 并发控制概述 封锁 封锁协议 活锁和死锁 并发调度的可串行性 两段锁协议 封锁的粒度 其他并发控制机制 小结
11.2 封锁 什么是封锁 基本封锁类型 锁的相容矩阵
什么是封锁
封锁就是事务T在对某个数据对象(例如 表、记录等)操作之前,先向系统发出请 求,对其加锁 加锁后事务T就对该数据对象有了一定的 控制,在事务T释放它的锁之前,其它的事 务不能更新此数据对象。
11.3 封锁协议
什么是封锁协议
– 加锁时约定的规则 何时申请X锁或S锁 持锁时间 何时释放 – 对封锁方式规定不同的规则,就形成了各种 不同的封锁协议,它们分别在不同的程度上为 并发操作的正确调度提供一定的保证。
保持数据一致性的常用封锁协议 三级封锁协议
– 1.一级封锁协议 – 2.二级封锁协议 – 3.三级封锁协议
基本封锁类型
– – 排它锁(Exclusive Locks,简记为X锁) 共享锁(Share Locks,简记为S锁)
排它锁(X锁,写锁)
若事务T对数据对象A加上X锁,
只允许T读取和修改A,其它任何事务都不能再 对A加任何类型的锁,直到T释放A上的锁
保证其他事务在T释放A上的锁之前不能 再读取和修改A
读“脏”数据
2. 二级封锁协议
二级封锁协议
– 一级封锁协议加上事务T在读取数据R之前必 须先对其 加S锁,读完后即可释放S锁。
二级封锁协议可以防止丢失修改和读“ 脏”数据。
在二级封锁协议中,由于读完数据后即 可释放S锁,所以它不能保证可重复读。
使用封锁机制解决读“脏”数据问题
例如:不读“脏”数据
若并发事务的一个调度是可串行化 的,不一定所有事务都符合两段锁协 议
两段锁协议(续)
两段锁协议与防止死锁的一次封 锁法
– 两段锁协议并不要求事务必须一次将所有要使
用的数据全部加锁,因此遵守两段锁协议的事
务可能发生死锁
第十一章 并发控制
11.1 11.2 11.3 11.4 11.5 11.6 11.7 *11.8 11.9 并发控制概述 封锁 封锁协议 活锁和死锁 并发调度的可串行性 两段锁协议 封锁的粒度 其他并发控制机制 小结
第十一章 并发控制
11.1 11.2 11.3 11.4 11.5 11.6 11.7 *11.8 11.9 并发控制概述 封锁 封锁协议 活锁和死锁 并发调度的可串行性 两段锁协议 封锁的粒度 其他并发控制机制 小结
11.1 并发控制概述
事务是并发控制的基本单位 并发控制机制的任务
– 对并发操作进行正确调度
11.1 11.2 11.3 11.4 11.5 11.6 11.7 *11.8 11.9 并发控制概述 封锁 封锁协议 活锁和死锁 并发调度的可串行性 两段锁协议 封锁的粒度 其他并发控制机制 小结