본문 바로가기
운영체제

[OS] 프로세스란

by justkeepgoing 2020. 12. 28.
728x90
반응형

1. 프로세스 정의

실행 중에 있는 프로그램을 의미

프로세스 내부에는 최소 하나의 스레드를 가지고 있으며 스레드 단위로 스케줄링

 

2. 프로세스 메모리 구조

  • Stack 영역 : 지역변수, 매개변수, 리턴 값 등 사용되었다가 사라지는 데이터 저장 영역
  • Heap 영역 : 동적할당을 위한 메모리 영역(C언어 - malloc, free, C++언어-new,delete, Java언어- GC가 해결)
  • Data 영역 : 전역변수, static(정적) 변수, 배열, 구조체
  • Code 영역 : 실행 파일 내의 명령어가 위치하는 곳, 기계어로 제어되는 메모리 영역

3. 프로세스 스케줄링

CPU를 사용하려고 하는 프로세스들 사이의 우선 순위 관리(CPU 할당 순서 및 방법 결정)

처리율과 이용률을 증가시키고 오버헤드, 응답시간, 반환시간, 대기시간을 최소화 시키는 방법

 

4. 프로세스 상태변화

  • 준비(waiting) : I/O나 다른 이벤트가 발생하기를 기다리는 것, 작업이 끝나면 ready 상태로 돌아감
  • 실행(running) : CPU가 해당 프로세스를 실행
  • 대기/보류(blocked) : I/O 자원 요청 후 즉시 할당 받을 수 없어, 할당 될때까지 기다리는 상태

 

반응형

 

 

 

 

 

반응형

'운영체제' 카테고리의 다른 글

[OS] 컴파일러 vs 인터프리터  (0) 2020.12.23
[OS] 운영체제란  (0) 2020.12.22