【发布时间】:2013-10-28 09:41:10
【问题描述】:
我的理解是等待进程是进程在恢复活动之前等待某个事件完成的情况。处于等待状态的程序或进程在等待状态期间处于非活动状态。
基本上在上面等待某些事件发生。
睡觉呢?
【问题讨论】:
标签: unix
我的理解是等待进程是进程在恢复活动之前等待某个事件完成的情况。处于等待状态的程序或进程在等待状态期间处于非活动状态。
基本上在上面等待某些事件发生。
睡觉呢?
【问题讨论】:
标签: unix
Sleep 导致进程放弃其剩余的时间片并在给定的持续时间内保持不可运行状态 Vs Wait:暂停执行直到事件完成。
【讨论】:
一个过程,正如你所说的那样 - 等待 on 一个事件。睡眠是一种时间驱动的等待。
【讨论】:
请在维基百科上查看:http://en.wikipedia.org/wiki/Process_state。
A "ready" or "waiting" process has been loaded into main memory and is awaiting execution on a CPU
它在等待数据,与其他进程交互,就像一个等待用户查询的Apache服务器,这是一个更正常的进程状态......
【讨论】:
"wait" : 如果您执行了命令,shell 将等待(保持)并且不会再执行任何命令,直到命令成功完成并切换到下一个。
"sleep" : 如果你运行的命令是 sleep 10,那么它会花 10 秒不输出任何东西。因此,shell 在睡眠过程的内部等待中花费了 10 秒。
【讨论】:
睡觉: 发出此命令是为了在参数中提到的指定时间限制内暂停系统的执行。
例如
sleep 50
上面指定的 UNIX 操作系统中 shell 的执行暂停 50 秒。
等待: wait 导致等待参数中指定的进程或参数中指定的作业等待。如果未指定任何内容,则管道中的所有作业都处于等待状态,即当前处于活动状态的所有当前子进程都处于等待状态。等待也返回返回状态。如果一个孩子在调用时已经退出(所谓的“僵尸”过程),该函数立即返回。孩子使用的任何系统资源都被释放。返回状态一般是流水线进程中最后一个作业的退出状态,进入等待状态。在未指定作业或流程的情况下,返回状态将为零。
UNIX操作系统中wait命令的一般语法是
wait n
其中 n 是可选的,表示进程或作业
【讨论】:
在 Unix 中
等待:是一个进程正在等待一些外部事件,例如从网络接收数据、从磁盘读取字节等... p>
Sleeping:是一个进程在一段时间内将其自身置于unrannable 状态的事实,它在unix 中是通过警报系统调用完成的
Waiting 进程和Sleeping 进程实际上都是waiting 用于某些外部事件或进入ready 状态的信号,以便它可以被调度程序拾取并馈送到CPU继续执行(running state)
TLDR
它们都是WAITING 状态。
【讨论】: