
操作系统
东流-beyond the label
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
操作系统作业最近最少用置换算法LRU(C语言)
最近最少用置换算法:选择最近一段时间内最长时间没有被访问过得页面调出。还是采用单链表结构,用尾插法,需要记录head和tailLRU函数现实主要思想,代表存储页面的物理块结构,总是第一个结点为要被置换出的结点,按更新次序一次排序;实现思路:1.先将页号装入初始空白物理块,累加缺页中断次数;2.遍历单链表,确认是否命中,未命中则将第一个结点替换为当前要进入的页号,并且更新次序,即当前结点替...原创 2019-12-27 22:33:30 · 1115 阅读 · 2 评论 -
操作系统作业电梯调度算法C语言
获得用户输入数据,包括待访问的柱面号,移动臂运动方向,磁头当前所处位置。sort() :对柱面号序列进行从小到大的排序lift_dispatch(…):排序完成对序列采用电梯调度算法进行访问。总是优先考虑移动臂运动方向,然后结合考虑相距最近的柱面号,逐个访问,得出访问序列。输出访问序列。#include <stdio.h>#include <stdlib.h>...原创 2019-12-07 10:28:06 · 4564 阅读 · 0 评论 -
操作系统FIFO页面置换算法(C语言)
先进先出(FIFO)页面置换算法: 这是最早出现的置换算法。该算法总是淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰。该算法实现简单只需把一个进程已调入内存的页面,按先后次序存入一个时间数组,并将其中时间值最大的页面进行淘汰,并替换入新的页面就可以实现。用到了循环单链表结构,在替换时,确保指针h指向的总是将要被替换的,check用来遍历查找是否命中,否则替换,并且h=h->......原创 2019-11-22 23:42:17 · 10412 阅读 · 3 评论 -
操作系统可变式分区的分配和去配(最先适应分配算法c语言)
代码存在一个问题,就是在allocate和deallocate的函数体内,无法对原来就是空的链表进行插入,原来是因为只有一级指针,所以只能改变结点的值(包括一些值和指针指向)。例如假如我想要ftable=ftable->next;没有返回值ftable的话,修改是无效的;我想到解决方法可以是,采用二级指针(啊魔鬼),或者采用存在头结点的单链表,这样就不存在空链表了,或者把两张表合并成一张...原创 2019-11-17 17:00:33 · 2890 阅读 · 0 评论 -
操作系统非抢占式静态优先级调度算法(C语言)
**主要数据结构单链表(进程表,就绪进程表),结构体(结构化进程信息)**大致步骤:1.输入模块:接收进程信息,包括进程代号,进程创建时间,进程运行时间,进程优先级,得到进程表2.就绪进程判断模块:用Time记录系统当前运行的时间,得出就绪进程表**3.对就绪进程表按照优先序列排序注意点:state用来记录当前进程是否存在于就绪队列中;排序算法采用的是交换结点值的冒泡算法,而不是直...原创 2019-11-03 15:52:41 · 15747 阅读 · 4 评论 -
操作系统作业之银行家算法(c语言实现)
银行家算法分析:银行家算法数据结构:进程数 processNum资源类数 resourceNum系统剩余可利用资源Available,为一个含有m个元素的数组;最大需求矩阵Max,为一个processNumresourceNum数组进程当前已分配资源数Allocation,为一个processNumresourceNum数组进程尚需要的资源数Need,为一个processNum*re...原创 2019-10-21 18:00:58 · 6926 阅读 · 5 评论