拾题
首页 / 软考真题 / 操作系统基础 / 第 2 题

在支持多线程的操作系统中,假设进程 P 创建了线程 T1、T2 和 T3,那么下列说法正确的是(2)。

单选题

在支持多线程的操作系统中,假设进程 P 创建了线程 T1、T2 和 T3,那么下列说法正确的是(2)。

A. 该进程中已打开的文件是不能被 T1、T2 和 T3 共享的

B. 该进程中 T1 的栈指针是不能被 T2 共享的,但可被 T3 共享

C. 该进程中 T1 的栈指针是不能被 T2 和 T3 共享的

D. 该进程中某线程的栈指针是可以被 T1、T2 和 T3 共享的

答案:C

解析

答案:C

线程是进程内的执行单元,拥有独立的执行上下文:程序计数器、寄存器组、栈和栈指针等。因此,T1 的栈指针只属于 T1,不能被 T2、T3 共享,C 正确。

  • A 错:已打开文件属于进程资源,T1、T2、T3 共享同一文件描述符表。
  • B 错:栈指针是线程私有上下文,不能被 T2 共享,也不能被 T3 共享。
  • C 对:每个线程有独立栈,栈指针随线程切换保存和恢复。
  • D 错:不存在让所有线程共享某线程栈指针的常规机制。

延伸:线程共享代码段、数据段、堆、文件等;线程私有栈、寄存器、PC、线程局部存储。面试常考“线程共享/私有资源”的区分。

← 上一题 下一题 →

本单元其他题目

在拾题里做这套题