정의

<aside> 📌 프로세스 : 운영체제로부터 자원을 할당받은 작업의 단위 스레드 : 프로세스가 할당받은 자원을 이용하는 실행 흐름의 단위

</aside>


프로그램

<aside> 📌 파일이 저장 장치에 저장되어 있지만, 메모리에는 올라가 있지 않은 정적인 상태

</aside>

  1. 메모리에는 올라가 있지 않은 : 아직 운영체제가 프로그램에게 독립적인 메모리 공간을 할당해 주지 않았다.
  2. 정적인 상태 : 아직 실행되지 않고 가만히 있다.

프로세스

특징

  1. 운영체제는 프로세스마다 각각 독립된 메모리 영역을 할당해준다.

    <aside> 👉 각각 독립된 메모리 영역을 할당해 주기 때문에 프로세스는 다른 프로세스의 변수나 자료에 직접 접근할 수 없다.

    </aside>

  2. 운영체제로부터 시스템 자원을 할당 받는다.

  3. 다른 프로세스의 자원에 접근하려면 프로세스 간의 통신(IPC)을 사용해야 한다.

  4. 프로세스는 기본적으로 1개 이상의 스레드를 갖는다.


스레드