操作系统--磁盘调度算法--FIFO,SSTF,SCAN,CSCAN

本文深入探讨了四种主要的磁盘调度算法:先来先服务(FIFO)、最短寻道时间优先(SSTF)、扫描(SCAN)和循环扫描(CSCAN),分析其工作原理、优缺点及其在操作系统中的应用。
摘要由CSDN通过智能技术生成

代码如下:

"""磁盘调度算法,FIFO,SSTF,SCAN,CSCAN"""
import random
from collections import deque
from functools import reduce

path_num = int(input("path_num:"))
Disk_path = [x for x in random.sample(range(0, 201), path_num)]
Begin_path = random.choice(range(0, 201))
Disk_path_order = []
Move_order = []
Sum_moving = 0
Average_moving = 0


class disknode:
    """都是新式类了"""
    def __init__(self):
        self.val = None
        self.next = None
        self.pre = None


def initial():
    global path_num, Move_order, Disk_path_order, Average_moving,Sum_moving
    Disk_path_order = []
    Move_order = []
    Average_moving = 0
    Sum_moving = 0


def display():
    print("初始磁道:", Begin_path)
    print("磁道请求序列:", Disk_path)
    print("磁道调度序列:", Disk_path_order)
    print("移动距离序列:", Move_order)
    print("总移动距离:", Sum_moving)
    print("平均移动距离:", Average_moving)


def fifo():
    global Average_moving, Sum_moving
    count = 0
    while count < len(Disk_path):
        if count == 0:
            Disk_path_order.append(Disk_path[count])
            Move_order.append(abs(Disk_path_order[count] - Begin_path))
        else:
            Disk_path_order.append(Disk_path[count])
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值