- 博客(9)
- 资源 (2)
- 收藏
- 关注
原创 经典的进程同步问题-----读者-写者问题详解
经典的进程同步问题-----读者-写者问题详解 本文和接下来几篇博文是对上篇文章(进程同步机制)的一次实践,通过具体的例子来加深理论的理解,会用三个经典的进程同步问题来进行讲解,并且会配有伪代码和Java实践(使用多线程模拟),深入的进行讲解。 进程同步问题是一个非常重要且相当有趣的问题,本文我们对其中比较有名的读者-写者问题来进行探讨。读者-写者问题是指保证一个Writer进程必须与其他...
2019-11-25 08:34:08 7750 10
原创 经典的进程同步问题-----哲学家进餐问题详解
本文和接下来几篇博文是对上篇文章(进程同步机制)的一次实践,通过具体的例子来加深理论的理解,会用三个经典的进程同步问题来进行讲解,并且会配有伪代码和Java实践(使用多线程模拟),深入的进行讲解。 进程同步问题是一个非常重要且相当有趣的问题,本文我们对其中比较有名的哲学家进餐问题来进行探讨。哲学家进餐问题是诸进程间竞争临界资源而导致死锁的典型例子,具有很大的代表性,因此在这里我们也对其进行...
2019-11-25 08:33:21 39945 22
原创 经典的进程同步问题-----生产者-消费者问题详解
经典的进程同步问题-----生产者-消费者问题详解 本文和接下来几篇博文是对上篇文章(进程同步机制)的一次实践,通过具体的例子来加深理论的理解,会用三个经典的进程同步问题来进行讲解,并且会配有伪代码和Java实践(使用多线程模拟),深入的进行讲解。 进程同步问题是一个非常重要且相当有趣的问题,因而吸引了很多学者对他进行研究,比如在前几篇博客中提到的老熟人迪杰斯特拉,由此也产生了一系列经典的...
2019-11-25 08:32:47 17544
原创 Java并发编程模拟管程(霍尔Hoare管程、汉森Hansan管程、MESA管程)
在前面个两篇博文中,我们使用Java模拟了AND型信号量和信号量集,本文将使用Java来模拟管程,关于管程的一些理论知识,可以参考另一篇博客。 对于管程,在这里我们不做具体的讨论了。不过对于Java和管程之间的一些事,还是很有意思的。Java中,每个对象其实都一个Monitor(java中翻译为监视器),Java中提供的synchronized关键字及wait()、notify()、not...
2019-11-21 19:19:16 4252 4
原创 进程通信方式总结与盘点
进程通信是指进程之间的信息交换。这里需要和进程同步做一下区分,进程同步控制多个进程按一定顺序执行,进程通信是一种手段,而进程同步是目标。从某方面来讲,进程通信可以解决进程同步问题。 首先回顾下我们前面博文中讲到的信号量机制,为了实现进程的互斥与同步,需要在进程间交换一定的信息,因此信号量机制也可以被归为进程通信的一种方式,但是也被称为低级进程通信,主要原因为:效率低:一次只可操作少量的...
2019-11-20 14:25:23 13612 2
原创 Java并发编程(JUC)模拟信号量集
上一文中,我们使用JUC模拟了AND型信号量,对于信号量集,他的特点就是一次可以申请多个资源,并且可以设置资源分配下限,让设计者可以更好的来控制进程的执行。如果对于进程同步机制还有什么疑惑,可以参考我的另一篇博客。 为了方便编程,并且信号量集在使用时更加方便,我们定义了一个SemaphoreUnit对象,用这个对象来记录申请的信号量类型,申请的数量和分配下限值,SemaphoreUnit定...
2019-11-17 12:22:05 1707 2
原创 Java并发编程(JUC)模拟AND型信号量
Java并发编程(JUC)模拟AND型信号量 AND型信号量可能大家都听说过并可能都有一定的理解,但是你有使用过么?今天就使用Java来模拟实现! 本文是对上篇文章(进程同步机制)的一次实践,通过JUC提供的一些机制来模拟一些OS中的AND型信号量,因为记录型型信号量可以等价于JUC中提供的Semaphore(信号量),但是对于AND型信号量因为一些原因(主要是过时了),JUC没有提供,今...
2019-11-16 09:36:57 2609 3
原创 进程同步机制-----为进程并发执行保驾护航
本文是对进程同步机制的一个大总结(9000+字吐血总结),涵盖面非常的全,包括了进程同步的一些概念、软件同步机制、硬件同步机制、信号量机制和管程机制,对每种机制结合代码做了详细的介绍,并且对琐碎的知识点和概念解释的非常清晰。 在前面的博客中讲述了进程的状态及其状态的转换,每种状态的含义和转换的原因。同样我们也知道,在OS引入了进程后,可以使系统中的多道程序可以并发的执行,进程的并发执行一方面极...
2019-11-07 10:24:53 4625 24
原创 操作系统进程状态和状态转换详解
进程的状态的转换与PCB详解 返回主目录 之前的有博文对进程和线程的区别进行了详细的介绍,并且说明了引入进程的目的是为了能够使程序并发的执行,并且可以对并发执行的程序加以描述和控制。这篇博文,我们就来对进程的状态转换来进行详细的分析。本文除了进程的状态转换,还穿插着对进程的控制的说明。 注意:本博文中进程均是在传统操作系统中的进程,既是OS进行资源分配的基本单位,也是OS进行调度的一个...
2019-11-01 10:33:02 14930 8
Atari游戏Roms.zip
2022-04-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人