以下关于IA-32/Linux系统调用的叙述中,错误的是( )。
A: 系统调用是一种特殊的异常类型,IA-32中把它的中断类型号设定为128
B: 系统调用使用陷阱指令实现,Linux系统中可执行int $0x80指令进行系统调用
C: 执行陷阱指令过程中所完成的操作类似于异常/中断响应过程中完成的任务
D: 所有系统调用有统一的入口,即系统调用处理程序system_call第一条指令地址
A: 系统调用是一种特殊的异常类型,IA-32中把它的中断类型号设定为128
B: 系统调用使用陷阱指令实现,Linux系统中可执行int $0x80指令进行系统调用
C: 执行陷阱指令过程中所完成的操作类似于异常/中断响应过程中完成的任务
D: 所有系统调用有统一的入口,即系统调用处理程序system_call第一条指令地址
举一反三
- 针对系统调用API xyz(), Linux系统中系统调用的三层皮指的是如下哪三项 A: 系统调用API xyz()函数 B: int 0x80 + 系统调用号—— system_call C: 中断服务程序sys_xyz() D: 中断返回程序ret_from_sys_call
- 以下是关于IA-32/Linux中call指令和int$0x80指令比较的叙述,其中错误的是()。 A: call指令为同一特权级过程调用,而int$0x80指令实现对内核服务例程的调用 B: call指令和int$0x80指令执行过程中,都会将下一条指令的地址保存在栈中 C: call指令和int$0x80指令都有对应返回指令,前者是ret指令,后者是iret指令 D: call指令和int$0x80指令执行前,都会由mov指令将参数值传送到栈中保存
- 有关系统功能调用的描述错误的是 。 A: 应用程序使用系统功能调用会引起中断。 B: 高级语言中不能使用系统功能调用,只用汇编程序才能通过INT指令使用。 C: 在LINUX中,每一个系统功能调用都有一个确定的编号。 D: 应用同程序通过系统功能调用可以进入核态。
- 假设P为调用过程,Q为被调用过程,程序在IA-32处理器上执行,以下有关过程调用的叙述中,错误的是() A: C语言程序中的函数调用就是过程调用 B: 从P传到Q的实参无需重新分配存储空间 C: 从P跳转到Q执行应使用CALL指令 D: 返回地址是CALL指令下一条指令的地址,被保存在栈中
- Linux中,fork()系统调用产生的子进程在系统调用处理过程中从()处开始执行。 <br/>______