multithreading - 为什么进程调度不叫线程调度?

标签 multithreading process operating-system

我发现 Linux 和 Windows 都调度线程而不是进程。

Source

所以我不明白为什么我们又叫它“进程调度”。我们不应该称之为线程调度吗?同一进程的线程共享内存的想法似乎只是一个技术细节,在实际运行线程时必须注意(我们可以假设同一进程的 2 个线程是共享内存的 2 个单线程进程)。

是否有任何操作系统可以调度进程,当进程运行时,专门决定如何运行它的线程?

最佳答案

操作系统调度的线程是一个相对较新的功能。就在不久之前,Unix 上的单独执行路径意味着创建一个全新的进程。所以存在历史阻力。

一些系统(Unix 变体,VMS)调度进程,而不是线程。进程调度很可能仍然是实时操作系统的发展方向。

关于multithreading - 为什么进程调度不叫线程调度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25228642/

相关文章:

Java并发: CopyOnWriteArrayList behavior

linux - 如何使用多线程进行 zlib 压缩(相同输入源)

这段 C 代码可以创建僵尸进程吗?

c - 如何从独立环境中关闭计算机?

c++ - 试图理解fork函数返回值的逻辑

c - 在linux中调度两个线程两个打印数字模式

C# 获取 Windows 服务启动的日期/时间

c# - 使用 String args[] 在 C# 中调用进程

windows - 用户变量和系统变量有什么区别?

java - Volatile:为什么要阻止编译器重新排序代码