IT 지식/CS 기초

컴퓨터의 구성 요소 및 프로그램, 프로세스, 스레드

Security Engineer 2024. 8. 7. 00:15

컴퓨터의 구성 요소

  • Computer = H/W + S/W
  • S/W는 Applicaition과 System S/W로 구분된다.
  • 가장 대표적인 System S/W는 OS(Operating System)이다.

 

 

프로그램, 프로세스, 스레드

  • 프로그램은 설치하는 것이다. → 프로그램 = DISK 안에 파일로 저장되어 있다.
  • 설치된 프로그램을 실행하면 프로세스가 생성된다. → 프로세스 = 실행되고 있는 프로그램
  • 프로세스 = 파일로 되어 있는 프로그램의 일부가 메모리에 적재된다.
  • 스레드는 프로세스 속에 존재하는 실행 단위이다.
  • 스레드는 프로세스에게 할당된 자원을 공유한다. → 할당된 메모리를 공유
  • 프로세스는 최소 1개의 스레드를 갖는다.
  • 컴퓨터라는 세상에서 '나'는 프로세스라는 모습으로 존재한다.
  • Shell = Window 탐색기 = 나

 

 

 

용도에 따른 기억 공간(메모리)의 구분

그림1 - 메모리 용도를 집에 비유

  • 메모리는 용도에 따라 구분한다. = Stack / Heap
  • Stack = Thread가 사용 (개별 공간: 각 침실)
  • Heap = Process 전체가 사용 (공용 공간: 거실, 주방/식당 등)
  • Thread 4개가 작동한다. = 각 Thread가 자기의 Stack을 가지고 있다. = 4개의 Stack 존재

 

 

결론

  • Computer = H/W + S/W(Application, System)
  • 프로그램을 실행하면 프로세스가 된다.
  • 프로세스 안에 스레드가 속해 있다.
  • Shell = Window 탐색기 = 나

 

 

 

 

 

 

 

참고

https://www.inflearn.com/course/%EB%84%93%EA%B3%A0%EC%96%95%EA%B2%8C-%EC%BB%B4%EA%B3%B5-%EC%A0%84%EA%B3%B5%EC%9E%90