什么是不间断的过程?

问题描述 投票:141回答:5

有时,当我在Linux上编写程序,并由于某种错误而崩溃时,它将变成不间断的进程,并永远运行直到我重新启动计算机(即使注销)。我的问题是:

  • 什么导致进程不间断?
  • 如何阻止这种情况发生?
  • 这可能是一个愚蠢的问题,但是有什么方法可以在不重新启动计算机的情况下中断它?
linux scheduling preemption
5个回答
182
投票
要了解这意味着什么,您需要了解可中断系统调用的概念。典型的例子是read()。这是一个系统调用,可能需要很长时间(几秒钟),因为它可能涉及旋转硬盘驱动器或移动磁头。在这段时间的大部分时间内,该进程将处于睡眠状态,并阻塞硬件。

45
投票

22
投票

0
投票

-3
投票
© www.soinside.com 2019 - 2024. All rights reserved.