이것은 오히려 초보적인 질문입니다. sleep
예를 들어 bash 스크립트에서 명령이 실행 되면 어떤 일이 발생하는지 궁금합니다 . 해당 작업은 우선순위가 낮은 상태로 계속 실행됩니까?
답변1
일반적으로,sleep
은암소 비슷한 일종의 영양sleep
프로그램. 이 프로그램은 GNU 함수를 호출합니다.xnanosleep
, 이는 차례로 Linux를 호출합니다.nanosleep
시스템 호출. 그리고:
nanosleep() suspends the execution of the calling thread until either
at least the time specified in *req has elapsed, or the delivery of a
signal that triggers the invocation of a handler in the calling thread
or that terminates the process.
따라서 프로세스는 정의에 따라 실행되지 않고(우선순위가 무엇이든) 일시 중지됩니다.
이것을 테스트해 보세요:
sleep 10 & ps aux | grep $!
[1] 25682
muru 25682 0.0 0.0 7196 620 pts/13 SN 04:10 0:00 sleep 10
그만큼프로세스 상태이다 SN
:
S interruptible sleep (waiting for an event to complete)
N low-priority (nice to other users)
무시하세요 N
. 처음 시작할 때는 그랬을 것 같아요. 따라서 유효 상태는 sleep
입니다 interruptible sleep
.