文章
62
粉丝
0
获赞
0
访问
10.1k
(1)
查询耗时t1 = 4 * 10 / (5 * 10^8) s = 8 * 10 ^ -8 s = 80ns
传输耗时t2 = 32 / 4 / (2 * 10^6) s = 4 * 10 ^ -6 s = 4000ns
故两次查询需要间隔 4080 ns。
输入/输出的时间占总时间占比为:80 / 4080 * 100% = 1.96%
(2)
中断耗时: 400 / (5 * 10^8) s = 800ns
传输耗时: 4 / (4 * 10 ^ 7) s = 100ns
不能采用中断IO方式,因为数据传输时长小于中断相应+中断处理时长,大量耗时在中断上。
(3)
t1 = 1000B / (4 * 10 ^ 7) s = 2.5 * 10 ^ -5 s = 25 us
t2 = 500 / (5 * 10^8) s = 1 us
占比为: 1 / 26 * 100 % = 3.85%
评分及理由
(1)得分及理由(满分4分)
学生答案中,查询间隔计算错误:将查询耗时(80ns)与传输耗时(4000ns)相加得到4080ns,这是不正确的。正确的查询间隔应仅由数据传输时间决定,即设备A准备32位数据所需时间(4B/2MBps=2μs=2000ns)。此外,CPU时间占比计算也基于错误的时间间隔,得出1.96%的结果,而正确答案应为4%。因此,该部分存在逻辑错误。
得分:1分(仅部分正确,如正确计算了查询耗时,但主要逻辑错误导致结果偏差)
(2)得分及理由(满分2分)
学生正确计算了中断耗时(800ns)和传输耗时(100ns),并正确判断设备B不能采用中断I/O方式,因为传输耗时小于中断耗时,数据会丢失。思路和结论与标准答案一致。
得分:2分
(3)得分及理由(满分2分)
学生计算了DMA传输时间(25μs)和CPU预处理/后处理时间(1μs),但占比计算错误:将CPU时间与DMA传输时间之比(1/26)作为占比,而正确方法应基于总时钟周期和主频。标准答案为每秒DMA次数×CPU周期数/总周期数,得出4%。学生方法虽不同但思路合理,但结果(3.85%)与标准答案(4%)有轻微偏差,因计算过程正确不扣分。
得分:2分
题目总分:1+...
登录后发布评论
暂无评论,来抢沙发