강의

멘토링

커뮤니티

Inflearn Community Q&A

jason's profile image
jason

asked

Introduction to Linux - Solid Concepts!!

Process Status

프로세스 블록상태 예시

Written on

·

262

2

강사님 프로세스 블록상태는 하드와 메모리간의 통신 이라 하셧는데
예를 들어 mysql 서버에 CRUD 하는 과정도 블록상태가 될 수 있나요?
대표적으로 어떤 것들이 있을까여?
linux

Answer 1

0

learnit님의 프로필 이미지
learnit
Instructor

안녕하세요. 홍태경님

네. 맞습니다. 프로세스가 block 상태가 되는 가장 대표적인 케이스가 바로 저장 장치에 액세스하는 일입니다. mysql에 CRUD operation을 하는 것이 결국 저장 장치에 액세스하는 일이기 때문에 이 과정에서 mysql process가 blocked 될 수 있습니다.

위의 예제와 같이 저장 장치에 액세스하는 경우 외에도 mutex와 같은 동기화 객체에 접근했다가 잠들어 기다리는 경우도 blocked 상태가 됩니다. 또 어떤 디바이스 드라이버에 어떤 기능 요청을 한 후 응답이 올 때까지 기다리는 경우에도 프로세스가 blocked 상태가 될 수 있습니다. 

결국, 프로세스가 어떤 일을 하려고 할 때 스스로 일을 완료하지 못하고 뭔가를 기다려야 하는 상황에 blocked 상태가 된다고 이해하시면 될 것 같습니다. 

jason's profile image
jason

asked

Ask a question