gpt4 book ai didi

system - CPU如何处理 sleep 功能?

转载 作者:行者123 更新时间:2023-12-04 16:48:51 25 4
gpt4 key购买 nike

当执行 sleep(10) 或等效语句时 CPU 会做什么。当 CPU 也进行上下文切换时,它如何准确地等待 60 秒使这个进程进入等待状态。

最佳答案

sleep 函数通常要求操作系统将 CPU 分配给另一个进程。实际上,有一个特殊的进程(通常称为“空闲”),如果没有其他进程等待 cpu,它会获取 cpu。在英特尔处理器上,空闲进程执行特殊指令(等待),这会停止处理器(然后,它不会执行更多指令)。无论处理器是否分配给空闲进程,它仍然响应硬件中断(由其他计算机硬件产生的特殊信号,以防硬件想要通知处理器某些事件)。中断源之一是计时器 - 它每 10 毫秒左右向 cpu 发送一次中断(取决于具体的计算机和操作系统)。作为对计时器事件的响应,操作系统可以将 cpu 分配回执行 sleep 的进程 - 如果指定的时间过去了。

由于操作系统能够以 1 个计时器滴答的精度测量时间,因此您的进程将在指定的时间 +- 2 个滴答内准备就绪。如果您的 cpu 目前很忙,您的进程会在一些额外的延迟后分配 cpu。

关于system - CPU如何处理 sleep 功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31383064/

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