POSIX 是否定义了上下文切换?

POSIX 是否定义了上下文切换?

是一个POSIX 上下文切换定义明确?这和C中切换线程是一样的吗? C 编译器是否可以生成上下文切换的所有内容,或者切换线程或切换“上下文”的例程是否仍然需要汇编编程?是否甚至定义了“上下文”的含义 - 它不是与线程相同吗?

答案1

POSIX 使用术语上下文切换至少用于两个不同的目的,而不试图严格定义它(甚至提供定义):

  • 之间切换线程, 和
  • 之间切换流程

相反,POSIX 假设您已经知道该术语的含义。例如,

3.118 CPU时间(执行时间)

执行进程或线程所花费的时间,包括代表该进程或线程执行系统服务所花费的时间。如果支持 Threads 选项,则进程的 CPU 时间时钟的值是实现定义的。根据此定义,进程中所有线程的所有执行时间之和可能不等于进程执行时间,即使在单线程进程中也是如此,因为实现可能会因在执行期间如何计算时间而有所不同。上下文切换或出于其他原因。

进一步阅读:

相关内容