题3
题目
下列关于系统调用的说法中, 正确的是 ( )。
I. 用户程序使用系统调用命令, 该命令经过编译后形成若干参数和陷入指令
II. 用户程序使用系统调用命令, 该命令经过编译后形成若干参数和屏蔽中断指令
III. 用户程序创建一个新进程, 需使用操作系统提供的系统调用接口
IV. 当操作系统完成用户请求的系统调用功能后, 应使 CPU 从内核态转到用户态
A. I、III B. III、IV
C. I、III、IV D. II、III、IV
分析
陷入指令是进入内核态的指令
我觉得逻辑是,有1必然有5,所以我选C
解
C
系统调用需要触发陷入指令, 如基于 x86 的 Linux 系统, 该指令为 int 0x80 或 sysenter, 1 正确。
程序设计无法形成屏蔽中断指令, II 错误。
用户程序通过系统调用进行进程控制, III 正确。
执行系统调用时 CPU 状态要从用户态转到内核态, 这是通过中断来实现的, 当系统调用返回后, 继续执行用户程序, 同时 CPU 状态也从内核态转到用户态, IV 正确。