由于 I/O 指令是需要从用户模式切换到内核的特权指令,printf 是否也被视为特权指令?执行 printf 指令时是否有模式切换?
问问题
276 次
1 回答
0
printf 是否也被视为特权指令?
不,printf
不是特权,也不是指令,它是函数调用。
执行 printf [函数调用] 时是否有模式切换?
是的,最终在 printf 内部它会执行一个write 函数调用,并将传递给内核模式。但是请注意,由于缓冲的原因,第一次调用时可能不会传递到内核模式printf
,并且可能会延迟到缓冲区已满或被fflush
调用。
于 2015-11-23T19:19:18.143 回答