以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 计算机考研交流 』   (http://bbs.xml.org.cn/list.asp?boardid=67)
----  关于操作系统中作业/进程调度计算题的讨论  (http://bbs.xml.org.cn/dispbbs.asp?boardid=67&rootid=&id=39497)


--  作者:datoubaicai
--  发布时间:10/29/2006 2:50:00 PM

--  关于操作系统中作业/进程调度计算题的讨论
作业题:
2、某系统采用不能移动已在内存储器中作业的可变分区方式管理内存储器,现有供用户使用的内存空间100K,系统配有4台磁带机,有一批作业如下:
作业 进入时间 估计运行时间 内存需要 磁带机需要
JOB1 10:00     25分钟     15K         2台
JOB2 10:20     30分钟     60K         1台
JOB3 10:30     10分钟     50K         3台
JOB4 10:35     20分钟     10K         2台
JOB5 10:40     15分钟     30K         2台
该系统采用多道程序设计技术,对磁带机采用静态分配,忽略设备工作时间和系统进行调度所共花的时间,请分别写出采用"先来先服务调度算法"和"最短作业优先算法"选中作业执行的次序以及作业平均周转时间。
若允许移动已在内存中的作业,则作业被选中的次序又是怎样的呢?计算出作业平均周转时间。

不允许移动已在内存中作业的情况,答案见操作系统课程论坛 OS  classroom置顶帖,默认情况下进程调度算法和作业调度算法相同。即作业调度采用FCFS,进程调度也采用FCFS,作业调度采用SJF,进程调度采用优先级调度(优先级由作业的长短决定,作业越短优先级越高)分可抢占和不可抢占两种。
若允许移动已在内存中的作业,算了一下好像和不允许移动结果一样啊,因为即使内存可以移动满足要求了,磁带机还是不满足,还是不能进内存?大家算的结果是什么啊?

15.某系统采用不能移动已在内存中作业的可变分区方式管理内存,现有供用户使用的内
    存空间100K,系统配有4台磁带机,有一批作业如下:
作业     进入系统的时间    估计运行时间      内存需求     磁带机需求  优先数
JOB1           8:00            25分钟            15K            2台            6
JOB2           8:20            30分钟            60K            1台            3
JOB3           8:30            10分钟            50K            3台            4
JOB4           8:35            20分钟            10K            2台            5
JOB5           8:40            15分钟            30K            2台            1
JOB6           8:45             5分钟            10K            1台             2
该系统采用多道程序设计技术,对磁带机采用静态分配策略,忽略设备工作时间和系
统进行调度所共花的时间,作业调度算法采用“最短作业优先”,进程调度算法(即被调度程序选中在处理机上执行)采用优先数法(即优先数大的首先被调度)。请写出作业执行的次序以及作业平均周转时间。

我做的答案
1若进程调度是不可抢占的:
        进入系统时间    进入内存时间         执行时间段
JOB1   8:00               8:00              8:00-8:25  
JOB2   8:20               8:20              8:25-8:55
JOB3   8:30               9:15              9:15-9:25
JOB4   8:35               8:35              8:55-9:15
JOB5   8:40               9:25              9:30-9:45
JOB6   8:45               8:45              9:25-9:30            
2若进程调度是可抢占的:
        进入系统时间    进入内存时间         执行时间段
JOB1   8:00               8:00              8:00-8:25  
JOB2   8:20               8:20              8:25-8:35,8:55-9:15
JOB3   8:30               9:15              9:15-9:25
JOB4   8:35               8:35              8:35-9:55
JOB5   8:40               9:25              9:30-9:45
JOB6   8:45               8:45              9:25-9:30     
PS:作业进入内存的顺序和作业执行次序不是一个概念。

2006年真题 七.1
觉得这个题如果不假设出进程调度算法的话根本没法做,因为题目中说是多道程序系统,如果只给出作业调度是采用HRN,相当于啥条件也没说,这个题和作业题还不一样,那个有资源条件(内存,磁带机)限制,这个没有。
如果自己假设进程调度算法的话,那答案就五花八门了,也不知道陈向群是怎么想的,她出些这样模棱两可的题,不嫌自己改卷麻烦?03年二.1也有类似的问题,没给出时间片的大小。

按照操作系统助教的回复,这个题目好象应该这样做,默认进程调度是按最高响应比调度,并且是不可抢占的:
        进入系统时间   开始时间        执行时间段
Job1     8:00             8:00             8:00-9:10
job2     8:20             9:10             9:10-9:30
job3     8:40            10:10            10:10-10:50
job4     8:50             9:40             9:40-10:10
job5    9:00             9:30              9:30-9:40
2005年真题 七.1
这个是不是画出甘特图(Gantt Graph)就可以了?

2003年真题二.1
所有作业开始时刻设为0
1.时间片轮转算法,设时间片是2 由于每个作业获得公平的CPU时间,
      完成时刻
      C  20
      D  28
      B  34
      E  38
      A  40
平均周转时间 32分钟
2.优先级调度算法
     完成时刻
      D  6
      C  10
      A  22
      E  32
      B  40
平均周转时间 22分钟
3. FCFS
   完成时刻
   A 12
   B 20
   C 24
   D 30
   E 40
平均周转时间 25.2分钟
4. SJF
   完成时刻
   A 40
   B 18
   C 4
   D 10
   E 28
平均周转时间 20分钟

1998年真题,五
        进入系统时间   进入内存时间       执行时间段
Job1     8:30             8:30             8:30-8:40,9:10-10:30    
job2     8:40             8:40              8:40-9:10
job3     9:00             9:10             10:35-10:55
job4     9:20             10:55           10:55-11:10
job5     9:50             10:35           11:10-11:20
job6     10:10           10:30           10:30-10:35
平均周转时间:81.7

1993年 五
两种情况,因为在11:00,计算JOB3和JOB5的响应比相等。。。
1)
        进入系统时间   进入内存时间       执行时间段
Job1    10:00            10:00               10:00-10:10,11:30-11:55
job2     10:10            10:10               10:10-10:40
job3     10:15            11:30               11:55-12:40
job4     10:20            10:40               10:40-11:00
job5     10:30            11:00               11:00-11:30
2)

        进入系统时间   进入内存时间       执行时间段
Job1    10:00            10:00               10:00-10:10,11:00-11:25
job2     10:10            10:10               10:10-10:40
job3     10:15            11:00               11:55-12:40
job4     10:20            10:40               10:40-11:00
job5     10:30            11:25               11:25-11:55
平均周转时间77分钟
1991年 五
        进入系统时间   进入内存时间       执行时间段
Job1     8:00             8:00             8:00-8:20,9:55:10:35
job2     8:20             8:20              8:20-8:25, 9:25-9:55
job3     8:25             8:25              8:25-8:45
job4     8:30             8:30              9:00-9:25
job5     8:35             8:45              8:45-8:50
job6     8:40             8:50              8:50-9:00
平均周转时间60分钟
欢迎大家指正和讨论


[此贴子已经被Logician于2006-11-1 23:30:43编辑过]

--  作者:lionx
--  发布时间:11/1/2006 7:31:00 PM

--  
好帖!感谢!
就是有乱码……

--  作者:Logician
--  发布时间:11/1/2006 8:39:00 PM

--  
没有乱码呀。@_@
你刷新一下试试?
--  作者:lionx
--  发布时间:11/1/2006 9:19:00 PM

--  
就是第一个题目里的啊:

该系统采用多道程序设计技术,对磁带机采用静态分配,忽略设备工作时浜拖低辰械鞫人不ǖ氖奔洌敕直鹦闯霾捎?quot;


--  作者:Logician
--  发布时间:11/1/2006 11:37:00 PM

--  
嗯。确实。
现在改好了。
:)
--  作者:蝶影
--  发布时间:11/6/2006 12:26:00 PM

--  
我来"捣乱"一下,嘿嘿~~
--  作者:Logician
--  发布时间:11/6/2006 3:24:00 PM

--  
晕…………
--  作者:蝶影
--  发布时间:11/6/2006 9:13:00 PM

--  
不捣乱了,被人说了:要是再捣乱,Logician就把我封了.......
--  作者:mxf3306
--  发布时间:11/7/2006 3:45:00 PM

--  
lionx的发言还是乱码。有些真题题目条件确实给得很简略,只给出作业调度方式是无法确定进程是采用何种调度方式,也就无法得出进程的开始时间和是否能被抢占。
--  作者:蝶影
--  发布时间:11/8/2006 11:10:00 AM

--  有个疑问.......
若允许移动已在内存中的作业,算了一下好像和不允许移动结果一样啊,因为即使内存可以移动满足要求了,磁带机还是不满足,还是不能进内存?大家算的结果是什么啊?

我有个疑问,是先来先服务算法的
JOB1是最先运行的,没有异议吧,那JOB1就在10:25结束,同时释放了2台磁带机,但是由于JOB2只是占用一台磁带机,所以JOB1结束以后,应该有3台磁带机没有分配的,所以当10:30,JOB3来的时候,磁带机不是够的吗?.........


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
108.887ms