【问题标题】:On a multi-core machine which task_struct does the current macro return?在多核机器上,当前宏返回哪个 task_struct?
【发布时间】:2016-06-14 03:56:56
【问题描述】:

据我所知,内核中的当前宏返回正在运行的进程的 task_struct 但在多核机器的情况下会发生什么?它是否返回在任何内核上运行的任何随机进程的 task_struct?

【问题讨论】:

    标签: linux-kernel scheduled-tasks multicore


    【解决方案1】:

    task_struct 首先代表线程。没有描述过程的专用结构。 'current' 宏返回一个指向线程的 task_struct 的指针,给定 cpu 上的内核在该上下文中执行。由于一个线程最多只能在一个 cpu 上执行,因此不会有任何混淆的可能性。如果你有 n 个 cpu,它们都在执行来自不同线程的东西。

    【讨论】:

    • 是的,这意味着当前:-)
    猜你喜欢
    • 2017-04-18
    • 1970-01-01
    • 2011-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-30
    • 2012-05-23
    相关资源
    最近更新 更多