Operating system 多进程并行运行时CPU周期的分布?

Operating system 多进程并行运行时CPU周期的分布?,operating-system,multiprocessing,cpu-usage,round-robin,Operating System,Multiprocessing,Cpu Usage,Round Robin,我的问题是,cpu周期是否分配给不同的进程 循环时尚 问题的内容是: 我有windows系统,比如说我打开了这10个不同的进程 在媒体播放器中播放音乐、在写字板中键入、在记事本中键入、在浏览器中冲浪等 当我在写字板上打字时,音乐会在后台不间断地播放。我想知道怎么做 come音乐播放器具有连续的CPU周期。我的理解是,操作系统在不同的应用程序之间旋转cpu周期 以循环方式处理,但这种切换太快,最终用户无法发现中断 在音乐中(虽然实际上是中断的)a)CPU填充声卡中的缓冲区,在CPU执行其他操作时,

我的问题是,cpu周期是否分配给不同的进程 循环时尚

问题的内容是:

我有windows系统,比如说我打开了这10个不同的进程 在媒体播放器中播放音乐、在写字板中键入、在记事本中键入、在浏览器中冲浪等

当我在写字板上打字时,音乐会在后台不间断地播放。我想知道怎么做 come音乐播放器具有连续的CPU周期。我的理解是,操作系统在不同的应用程序之间旋转cpu周期 以循环方式处理,但这种切换太快,最终用户无法发现中断 在音乐中(虽然实际上是中断的)

a)CPU填充声卡中的缓冲区,在CPU执行其他操作时,声卡从缓冲区播放。因此,CPU不必一直关心声卡

b) 进程之间的切换发生在毫秒甚至微秒的时间范围内,所以作为人类,你不会注意到这一点

c) 无事可做的进程(如写字板等待按键)告诉操作系统它们处于空闲状态,因此操作系统不会给它们任何时间,直到发生什么事情(按键或移动窗口,因此必须重新绘制)


d) CPU速度很快。即使您可以每秒键入10个键,CPU也不会为每个键花费超过100微秒的时间(实际上要少得多,但该值使计算更容易),因此,当您以10键/秒的速度键入时,CPU的工作时间为1毫秒/秒。因此,在键入时,您将占用0.1%的CPU时间。您甚至不会看到taskmanager中的CPU使用率上升。

简单的循环是一种在一组进程(线程)之间共享计算资源的方法,而不是在Windows中使用的方法。每个线程都有其静态和动态优先级。
调度器
选择具有最高优先级的线程来运行,并给它一个执行时间段。如果线程完全占用了该时间段,则调度程序会以预防性方式将其从执行中调出,或者如果线程没有其他事情要做(例如,它正在等待IO操作的结束),则该线程可能会将剩余的时间段交还给系统

在你的特定问题中,还有另一件事可以创造出连续不断的声音。这是缓冲。媒体播放器预先从媒体中读取数据,然后将其排队等待硬件播放。因此,硬件应始终事先有一个缓冲数据,否则声音会中断。如今,我们的计算机功能强大,即使在显著的负载下也能为硬件提供必要的数据流


在过去,如果你一次运行多个应用程序,系统开始从磁盘交换进程(从操作系统的角度来看,这比给媒体播放器运行的机会更重要),那么你可以在静默的间隙播放音乐。

进入处理器的周期不是循环的,因为循环制意味着股份平等,而不是。 您可以使用优先级(windows)或nice(Linux)更改所有周期分配百分比。CPU在两个周期之间进行动态分配

在您的上下文中,将更多的优先级放在声音上,您将在按键重复速度上获得延迟。(就像你在133Mhz的计算机上做的那样)

大量额外信息: 通常的问题是,CPU是使pc充满活力的唯一因素。 但事实并非如此。是核心,但不是引擎

你们的声音并不像我们想象的那个样被主处理器处理。音频芯片是为手机设计的。他们得到了具体的声音芯片处理负载。所以,如果你推播放。。。CPU推动播放,绘制播放器,将信息(mp3 mb文件)放入ram,然后发送到声音芯片,声音芯片完成这项艰巨的工作

无论如何,计算机的工作流程不是CPU->键盘->CPU或者类似的。 您必须检查存储声音的RAM,并将其传送到声音芯片。 延迟、当前状态、当前负载

主板是路betteen组件(微型,cpu,声音,vga,其他),所以总总线MHz(周期)的总和比你的cpu功率要重要得多

作为最后一点。如果在其他应用程序/进程中使用声音时遇到问题,只需为该进程添加更多优先级即可

声音播放器的“背景状态”可能是其自身优先级降低的原因之一……但我不确定

我知道那不是一个很酷的asnwer。也许可以重新编辑它们。 把想法摆在桌面上

我建议你用同一个文件尝试至少3个声音播放器。 如果没有任何更改,请尝试使用3个txt编辑器。 如果什么都没有改变,我们就进入了太空

我想是RAM,如果不是,是主板。 因为你没有发布任何关于你的系统的数据,我不能再说什么了。 如果您有4gb内存,则不是。
如果你有133Mhz的CPU,我们需要谈谈:)

哇。我可以长时间超过10公里/秒,但我需要我的四只手(是的,猴子必须)像愤怒的猴子一样不停地敲击(再敲击!)我的键盘。这个问题更适合StackExchange网络的超级用户站点。谢谢Serge。你所说的“现在我们的计算机功能强大,即使在显著的负载下也能为硬件提供必要的数据流”是什么意思?另一个问题是你说的“在你的特定问题中,还有另一件事可以创造出连续不断的声音。这是缓冲。媒体播放器预先从媒体中读取数据,然后将其排队等待硬件播放。因此,硬件应始终事先有一个缓冲数据,否则声音会中断。“我想你的意思是,在媒体播放器读取缓冲数据到硬件播放之前,需要CPU周期。一旦完成,就不需要CPU周期。只需硬播放缓冲数据。这是我的理解