Loading...

6-17 死锁的检测

Course video 0 of 85

在多道程序设计系统中,同一时刻可能有许多进程/线程,它们之间存在两种基本关系:竞争关系和协作关系。并发进程/线程可能需要竞争使用资源,互斥是解决进程/线程间竞争关系的手段,为了避免竞争条件,引入临界区概念以解决进程互斥问题;为完成同一任务,某些进程/线程需要分工协作,同步是解决进程/线程间协作关系的手段,进程同步的主要目的是使协作的并发进程之间能有效地共享资源和相互协同工作,从而,使进程的执行过程具有可再现性和执行结果的惟一性。进程低级通信机制主要有:原子操作、锁机制、信号量和PV操作及管程;进程高级通信机制,如消息传递等。 死锁是系统中一组并发进程/线程因等待其他进程占有的资源而永远不能向前推进的僵化状态,对操作系统十分有害。系统产生死锁有四个必要条件:互斥条件、占有并等待条件、不剥夺条件和循环等待条件,以及解决死锁问题的三种策略和方法:死锁的预防、死锁的避免、死锁的检测和解除。 本章将讲述:并发程序设计的概念、并发进程的制约关系、临界区、临界区管理实现的尝试、临界区管理实现的硬件方式、PV操作与进程互斥、PV操作与进程同步、生产者消费者问题探究、管程概述、霍尔管程、霍尔管程的例、进程通信、高级进程通信机制、死锁的产生、死锁的防止、死锁的避免、死锁的检测。

Nanjing University
4.5 (128 ratings) | 11K Students Enrolled

About Coursera

Courses, Specializations, and Online Degrees taught by top instructors from the world's best universities and educational institutions.

Community
Join a community of 40 million learners from around the world
Certificate
Earn a skill-based course certificate to apply your knowledge
Career
Gain confidence in your skills and further your career