gpt4 book ai didi

tss - 任务切换为64位

转载 作者:行者123 更新时间:2023-12-01 21:15:43 30 4
gpt4 key购买 nike

在x86中,可以使用TSS在运行中的进程之间进行任务切换,但是建议仅使用一个TSS(根据需要)并执行软件任务切换,特别是如果要将内核移植到不支持该功能的其他硬件上,则尤其如此。没有TSS。

在x86-64(64位)中,没有TSS(例如,它不执​​行x86中的任何操作),那么,有人在没有它的情况下如何进行任务切换(从那时起,您将至少使用一个)?

最佳答案

您可以像在其他平台上一样进行操作:存储适当寄存器的内容:

  • 堆栈指针
  • 指令指针
  • 哪种通用寄存器适合于体系结构
  • 您需要维护的任何其他状态(FPU/MMX/SSE寄存器等)

    为您要转离的任务,并为您要转为的任务恢复相同。

    通常,这是通过将所有状态推送到要从其切换的堆栈上,然后将其弹出到要切换到的堆栈上来完成的。这样,只有堆栈指针需要传递或由内核管理,以跟踪后台等待的内容。

  • 关于tss - 任务切换为64位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25787368/

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