文章

246

粉丝

0

获赞

15

访问

27.2k

头像
2025年(408)计算机学科专业基础综合试题 - 第46题回答
操作系统
发布于2025年11月9日 17:33
阅读数 56


评分及理由

(1)得分及理由(满分2分)

学生答案:PCB处于操作系统内核区,进程处于阻塞态。

标准答案:PCB位于内核区,执行scanf()时进程处于阻塞态。

评分分析:学生答案完全正确,准确指出了PCB位于内核区,以及执行scanf()等待输入时进程处于阻塞态。得2分。

(2)得分及理由(满分3分)

学生答案:main()代码位于用户栈,scanf、printf需要执行驱动程序。

标准答案:main()函数的代码位于只读代码段,其直接调用的scanf()和printf()需要执行驱动程序。

评分分析:学生答案存在一处错误。main()函数的代码应该位于只读代码段,而不是用户栈。用户栈是用于存储局部变量和函数调用信息的,而代码段存储程序指令。对于需要执行驱动程序的函数识别正确,scanf()和printf()确实需要通过驱动程序实现I/O操作。由于主要逻辑错误扣1分,得2分。

(3)得分及理由(满分3分)

学生答案:ptr分配在读写数据段中,length会分配在用户栈中,ptr指向字符串在动态生成的堆中。

标准答案:ptr被分配在可读写数据段,length在用户栈,ptr指向的字符串在运行时堆。

评分分析:学生答案完全正确。ptr是全局变量,分配在数据段;length是局部变量,分配在用户栈;ptr指向的字符串是通过malloc分配的,位于运行时堆。得3分。

题目总分:2+2+3=7分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发