【问题标题】:Process scheduler and thread scheduler进程调度器和线程调度器
【发布时间】:2012-04-23 01:08:23
【问题描述】:

我正在阅读有关进程和线程的 galvin 章节 从进程来看,多个进程是由cpu调度器或短期调度器调度的,随之而来的概念是线程是一条执行路径,一个进程可以包含多个线程。 现在我想到了一个场景,假设cpu调度程序使用循环算法调度一个进程执行,现在假设调度进程有50个线程,现在在这种情况下,同一个进程的线程是如何调度的,上下文如何切换b /w 线程,进程发生 可以请 sm 详细解释一下整个场景吗,我将非常感谢您

【问题讨论】:

    标签: cpu scheduler


    【解决方案1】:

    进程是一个正在执行的程序,程序员的工作是决定该进程中的线程数以及如何调度它们。这取决于他希望程序运行的顺序。 因此,一旦进程处于运行状态,它就会运行程序员计划运行的线程。 即使在线程并发运行的情况下,程序员也可以决定哪些线程可以并发运行,哪些不能。我希望这能消除您的疑虑。

    【讨论】:

    • 嗯,这不是很详细,但要回答这个问题,进程被划分为时间片,系统每秒为每个进程分配一定数量的时间片,调度程序不必公平关于谁获得更多时间片,此外,进程可以选择如何使用它们的时间片,方法是将它们已分配的片进一步划分为称为线程的帧。因此,除了在您的情况下,每个进程都是循环的,各个进程可能会循环轮询它们的时间片。
    猜你喜欢
    • 2016-06-21
    • 1970-01-01
    • 1970-01-01
    • 2013-09-03
    • 2017-03-24
    • 1970-01-01
    • 2018-07-28
    • 2014-10-03
    • 2012-08-16
    相关资源
    最近更新 更多