操作系统实验
操作系统
萌萌哒的瓤瓤
公众号:瓤瓤
坚持分享技术好文章
展开
-
操作系统实验多线程编程中的读者优先和写者优先
首先需要理解在线程无论是读者优先还是写者优先都需要尊重两种约束,就是读写与写写操作是无法同时进行的,能同时进行就只能是读读操作其次需要理解读者优先于写者优先的概念首先说的是读者优先许多人对读者优先的概念可能就直接是读者的优先权最大,这样的想法是错误的,假设已经在进行一个写线程了,那么这时候来的读线程是无法让写线程退出,在执行读线程的。只存在这说有一个读线程在执行,这时候又来了一个读...原创 2018-11-23 15:59:55 · 607 阅读 · 0 评论 -
操作系统实验之多线程操作之读者优先与写者优先第二版
之前作者做的那个实验有误,希望大家见谅,在室友的质疑之后觉得的确存在着很大的问题,所以自己今天又把一些逻辑上的漏洞又重新完善了一下。其实主要的逻辑漏洞又两个方面第一就是,最后没有在总时间内到达的线程,最终是不能直接按照到达时间排序完之后的顺序直接打印的,而应该是每一次,将一个轮回里面能够到达的线程按照那样的检查机构打印出来后,剩下的没有到达的线程也应该是重新打入那个队列,然后在按照之前的规则继续...原创 2018-11-26 10:49:34 · 501 阅读 · 0 评论 -
操作系统实验之存储管理
这里作者就先实现了两种置换方法第一种就是先进先出算法第二种就是最久未使用算法首先看到先进先出,我们最容易想到的就是队列了,所以实现起来比较简单第二个就是最久未使用,这里面的难点就是在如何判断哪个页号是最久未使用的那个,以及每次不管页号是否在内存中,都需要进行的操作。这里作者就不讲解了, 下面的源代码中会详细讲解。import java.text.DecimalFormat;import...原创 2018-11-27 20:44:13 · 1190 阅读 · 0 评论 -
操作系统实验之存储管理第二版
上篇博客作者只介绍了两种算法下面作者介绍另外两种算法第一种就是最佳置换算法,这种算法只在理论成立,但是在实际操作中是无法进行操作的,他的理念就是,每次置换的时候是置换出将来最晚使用的页号,所以可以达到最大程度上的节约置换的操作第二种就是最少使用算法,主要是通过计数每个页号在一定时间内出现的次数,然后置换出出现次数最少的那一个页号,这种算法要记得和最近最久未使用算法进行区别...原创 2018-11-27 22:27:18 · 596 阅读 · 0 评论 -
Java实现操作系统实验之磁盘调度
这一版的磁盘调度,作者只分析了磁盘通道号,之后作者会加入对最晚完成时间的分析。首先理解一下,什么是磁盘调度,磁盘调度的意思是,所有的进程都是在磁盘中得某个同道号中享受资源的,那么就会存在一个问题,我们是按什么顺序来执行这些进程呢,一种是按照最晚完成时间的前后来安排,这种可以使得任务能够顺序的执行。但是任务完成的时间会大大的增加。有一种就是按照磁盘的通道号的大小来操作,这样的话,能够更快速的完...原创 2018-11-28 10:28:43 · 1162 阅读 · 0 评论