gpt4 book ai didi

linux tasklets - 执行顺序

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:21:59 28 4
gpt4 key购买 nike

在我的大学里,我正在从事一个涉及一些内核编程的项目。其中一部分是可加载内核模块,它为某个给定的中断注册中断处理程序。

现在我已经共享了中断处理程序和 tasklet 使用的数据结构,我想知道我是否可以确定 tasklet 的执行顺序与它们被调度的顺序相同,或者它是否未定义?

例如,我的中断处理程序在时间 t1 和时间 t2 被调用,每次调用都执行 tasklet_schedule(&customTasklet);。现在,我可以确定在 t1 时间安排的 tasklet 将首先执行吗?

最佳答案

预定 tasklet存储在列表中;系统以 FIFO 顺序读取此列表,因此:是 t1t2 之前执行.

在这里some code了解机制。

编辑

正如 CL 所提醒的,每个 CPU 都有一个 tasklet 列表;所以当你调度一个 tasklet 时,你是在事件的 CPU 上调度它。所以 tasklet 在同一个 CPU 上被序列化。如果你安排t1联合国 CPU1 和 t2在 CPU2 上可能会发生 t2t1 之前执行.

关于linux tasklets - 执行顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20050378/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com