SlideShare uma empresa Scribd logo
1 de 8
Baixar para ler offline
프로세스
W2 운영체제
프로세스란? 현재 실행 중인 프로그램
프로세스 메모리 구조
프로세스 스케줄링
프로세스 제어 블록
프로세스의 상태 (상태 전이)
특징
•시분할 작업의 단위 : 시분할 시스템에서 볼 때, 분할 시간마다 그 대상이 되는 작업 단위
•병행 실행이 가능 :프로세스 간 통신이 필요
•하나의 프로그램이 여러 프로세스 생성 가능
* 프로세스 통신 (ICP) : 프로세스끼리 자원이나 데이터를 서로 주고받는 행위
프로세스는 본래 독립적이나, 상황에 따라 프로세스끼리 협력해야하는 경우가 있는데, 이 경우 프로
세스 간 자원/데이터 공유가 필요
ICP의 종류 : PIPE, Named PIPE, Message Queue, Shared Memory, Memory Map, socket
프로세스의 메모리 구조
Code : 프로그램을 실행 시키면 실행파일 내에 존재하는 명령
어가 메모리 상에 올라가야 프로그램을 동작 시킬 수 있다.
Data : 전역 변수나 static 변수의 할당을 위해 존재하는 공간
Stack : 지역 변수 할당과 함수 호출 시 전달 되는 인자 값들을
저장하기 위한 공간
Heap : C의 malloc, calloc와 C++, Java의 new를 통한 동적
할당을 위해 존재하는 공간
Code
Process
Data
Stack
Heap
프로세스 스케줄링 CPU를 사용하려고 하는 프로세스들 사이의 우선 순위를 관리하는 일
스케줄링은 처리율과 CPU 이용률을 증가 시키고
오버헤드 / 응답시간 / 반환시간 / 대기시간을 최소화 시키기 위한
•장기 스케줄링 : 어떤 프로세스가 시스템 자원을 차지할 수 있도록 할 것인가를
결정하여 큐로 보내는 작업
•중기 스케줄링 : 어떤 프로세스들이 CPU를 할당 받을 것인지 결정하는 작업
•단기 스케줄링 : 프로세스가 실행되기 위해 CPU를 할당 받는 시기와 특정
프로세스를 지정하는 작업
종류 : 비선점형 스케줄링, 선점형 스케줄링, 정적 스케줄링, 동적 스케줄링
프로세스 제어 블록? 프로세스를 관리하기 위해 필요한 프로세스 요소들의 자료구조
Pointer
Process State
Process Number
Program Counter
Registers
Memory Limits
Open File Lists
Misc. Accounting and
Status Data
Pointer : 프로세스의 상태가 전환될 때,
프로세스의 현재 위치를 유지하기 위해
이용하는 스택 포인터
Process State : 프로세스의 현 상태
Process Number (PID) : 운영체제로
부터 할당 받은 고유 식별자
Registers : 누산기, 베이스, 레지스터와
범용 레지스터 등의 CPU 레지스터
Memory Limits : 메모리 관리 시스템
에 관한 정보가 저장되어 있다
Open Files List : 프로세스를 위해 열린
파일 목록
프로세스 상태 (상태 전이)
•제출 : 작업을 처리하기 위해 사용자가 작업을 시스템에 제출한 상태
•접수 : 제출된 작업이 스풀 공간인 디스크의 할당 위치에 저장된 상태
•준비 : 프로세스가 프로세스를 할당 받기 위해 기다리고 있는 상태
•실행 : 준비 상태 큐에 있는 프로세스가 프로세서를 할당받아 실행되는 상태
•대기 : 프로세스에 입출력 처리가 필요하면 현재
실행 중인 프로세스가 중단 되고, 입출력 처리가
완료될 때까지 대기하고 있는 상태
•종료 : 프로세스의 실행이 끝나고 프로세스 할당이
해제된 상태
•Dispatch : 준비 상태에서 대기하고 있는 프로세스 중 하나가
프로세스 상태 (상태 전이)
•Dispatch : 준비 상태에서 대기하고 있는 프로세스 중 하나가
프로세스를 할당 받아 실행 상태로 전이되는 과정
•Wake Up : 입출력 작업이 완료 되어 프로세스가 대기 상태에서
준비 상태로 전이 되는 과정
•Spooling : 입출력 장치의 공유 및 상대적으로 느린 입출력 장치의 처리 속도를 보완

Mais conteúdo relacionado

Semelhante a Process (프로세스의 개념, 특징, 정의)

(120128) #fitalk sql server anti-forensics
(120128) #fitalk   sql server anti-forensics(120128) #fitalk   sql server anti-forensics
(120128) #fitalk sql server anti-forensicsINSIGHT FORENSIC
 
20170908 tech day-9th-재미없는 java runtime process 디버그-김성중
20170908 tech day-9th-재미없는 java runtime process 디버그-김성중20170908 tech day-9th-재미없는 java runtime process 디버그-김성중
20170908 tech day-9th-재미없는 java runtime process 디버그-김성중ymtech
 
DeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun Kim
DeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun KimDeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun Kim
DeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun KimGruter
 
171220 웹프로그래밍 web app 토렌트 관리체계
171220 웹프로그래밍 web app 토렌트 관리체계171220 웹프로그래밍 web app 토렌트 관리체계
171220 웹프로그래밍 web app 토렌트 관리체계우진 신
 
Windows 성능모니터를 이용한 SQL Server 성능 분석
Windows 성능모니터를 이용한 SQL Server 성능 분석Windows 성능모니터를 이용한 SQL Server 성능 분석
Windows 성능모니터를 이용한 SQL Server 성능 분석Sung wook Kang
 
[OS] Operating System 5 layer
[OS] Operating System 5 layer[OS] Operating System 5 layer
[OS] Operating System 5 layerssuserb2b4e71
 
Hadoop distributed file system rev3
Hadoop distributed file system rev3Hadoop distributed file system rev3
Hadoop distributed file system rev3Sung-jae Park
 
[pgday.Seoul 2022] PostgreSQL구조 - 윤성재
[pgday.Seoul 2022] PostgreSQL구조 - 윤성재[pgday.Seoul 2022] PostgreSQL구조 - 윤성재
[pgday.Seoul 2022] PostgreSQL구조 - 윤성재PgDay.Seoul
 
Infra as Code with Packer, Ansible and Terraform
Infra as Code with Packer, Ansible and TerraformInfra as Code with Packer, Ansible and Terraform
Infra as Code with Packer, Ansible and TerraformInho Kang
 
클라우드/IDC 운영자를 위한 서버 및 도커 컨테이너 모니터링 솔루션 (old version)
클라우드/IDC 운영자를 위한 서버 및 도커 컨테이너 모니터링 솔루션 (old version)클라우드/IDC 운영자를 위한 서버 및 도커 컨테이너 모니터링 솔루션 (old version)
클라우드/IDC 운영자를 위한 서버 및 도커 컨테이너 모니터링 솔루션 (old version)옥시즌
 
운영체제 Sig2
운영체제 Sig2운영체제 Sig2
운영체제 Sig2YoungGun Na
 
Linux 강의자료 ed10
Linux 강의자료 ed10Linux 강의자료 ed10
Linux 강의자료 ed10hungrok
 
고성능 빅데이터 수집 및 분석 솔루션 - 티맥스소프트 허승재 팀장
고성능 빅데이터 수집 및 분석 솔루션 - 티맥스소프트 허승재 팀장고성능 빅데이터 수집 및 분석 솔루션 - 티맥스소프트 허승재 팀장
고성능 빅데이터 수집 및 분석 솔루션 - 티맥스소프트 허승재 팀장eungjin cho
 
DB Monitoring 개념 및 활용 (박명규)
DB Monitoring 개념 및 활용 (박명규)DB Monitoring 개념 및 활용 (박명규)
DB Monitoring 개념 및 활용 (박명규)WhaTap Labs
 
서버 H/W, S/W 인벤토리 Auto Discovery 솔루션
서버 H/W, S/W 인벤토리 Auto Discovery 솔루션서버 H/W, S/W 인벤토리 Auto Discovery 솔루션
서버 H/W, S/W 인벤토리 Auto Discovery 솔루션옥시즌
 
OS Process, Thread, CPU Scheduling에 대해 알아봅시다.pdf
OS Process, Thread, CPU Scheduling에 대해 알아봅시다.pdfOS Process, Thread, CPU Scheduling에 대해 알아봅시다.pdf
OS Process, Thread, CPU Scheduling에 대해 알아봅시다.pdfHo Jeong Im
 
[OS] Context switching
[OS] Context switching[OS] Context switching
[OS] Context switchingssuserb2b4e71
 
주니어 개발자의 서버 로그 관리 개선기
주니어 개발자의 서버 로그 관리 개선기주니어 개발자의 서버 로그 관리 개선기
주니어 개발자의 서버 로그 관리 개선기Yeonhee Kim
 

Semelhante a Process (프로세스의 개념, 특징, 정의) (20)

(120128) #fitalk sql server anti-forensics
(120128) #fitalk   sql server anti-forensics(120128) #fitalk   sql server anti-forensics
(120128) #fitalk sql server anti-forensics
 
System+os study 3
System+os study 3System+os study 3
System+os study 3
 
20170908 tech day-9th-재미없는 java runtime process 디버그-김성중
20170908 tech day-9th-재미없는 java runtime process 디버그-김성중20170908 tech day-9th-재미없는 java runtime process 디버그-김성중
20170908 tech day-9th-재미없는 java runtime process 디버그-김성중
 
04 프로세스
04 프로세스04 프로세스
04 프로세스
 
DeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun Kim
DeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun KimDeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun Kim
DeView2013 Big Data Platform Architecture with Hadoop - Hyeong-jun Kim
 
171220 웹프로그래밍 web app 토렌트 관리체계
171220 웹프로그래밍 web app 토렌트 관리체계171220 웹프로그래밍 web app 토렌트 관리체계
171220 웹프로그래밍 web app 토렌트 관리체계
 
Windows 성능모니터를 이용한 SQL Server 성능 분석
Windows 성능모니터를 이용한 SQL Server 성능 분석Windows 성능모니터를 이용한 SQL Server 성능 분석
Windows 성능모니터를 이용한 SQL Server 성능 분석
 
[OS] Operating System 5 layer
[OS] Operating System 5 layer[OS] Operating System 5 layer
[OS] Operating System 5 layer
 
Hadoop distributed file system rev3
Hadoop distributed file system rev3Hadoop distributed file system rev3
Hadoop distributed file system rev3
 
[pgday.Seoul 2022] PostgreSQL구조 - 윤성재
[pgday.Seoul 2022] PostgreSQL구조 - 윤성재[pgday.Seoul 2022] PostgreSQL구조 - 윤성재
[pgday.Seoul 2022] PostgreSQL구조 - 윤성재
 
Infra as Code with Packer, Ansible and Terraform
Infra as Code with Packer, Ansible and TerraformInfra as Code with Packer, Ansible and Terraform
Infra as Code with Packer, Ansible and Terraform
 
클라우드/IDC 운영자를 위한 서버 및 도커 컨테이너 모니터링 솔루션 (old version)
클라우드/IDC 운영자를 위한 서버 및 도커 컨테이너 모니터링 솔루션 (old version)클라우드/IDC 운영자를 위한 서버 및 도커 컨테이너 모니터링 솔루션 (old version)
클라우드/IDC 운영자를 위한 서버 및 도커 컨테이너 모니터링 솔루션 (old version)
 
운영체제 Sig2
운영체제 Sig2운영체제 Sig2
운영체제 Sig2
 
Linux 강의자료 ed10
Linux 강의자료 ed10Linux 강의자료 ed10
Linux 강의자료 ed10
 
고성능 빅데이터 수집 및 분석 솔루션 - 티맥스소프트 허승재 팀장
고성능 빅데이터 수집 및 분석 솔루션 - 티맥스소프트 허승재 팀장고성능 빅데이터 수집 및 분석 솔루션 - 티맥스소프트 허승재 팀장
고성능 빅데이터 수집 및 분석 솔루션 - 티맥스소프트 허승재 팀장
 
DB Monitoring 개념 및 활용 (박명규)
DB Monitoring 개념 및 활용 (박명규)DB Monitoring 개념 및 활용 (박명규)
DB Monitoring 개념 및 활용 (박명규)
 
서버 H/W, S/W 인벤토리 Auto Discovery 솔루션
서버 H/W, S/W 인벤토리 Auto Discovery 솔루션서버 H/W, S/W 인벤토리 Auto Discovery 솔루션
서버 H/W, S/W 인벤토리 Auto Discovery 솔루션
 
OS Process, Thread, CPU Scheduling에 대해 알아봅시다.pdf
OS Process, Thread, CPU Scheduling에 대해 알아봅시다.pdfOS Process, Thread, CPU Scheduling에 대해 알아봅시다.pdf
OS Process, Thread, CPU Scheduling에 대해 알아봅시다.pdf
 
[OS] Context switching
[OS] Context switching[OS] Context switching
[OS] Context switching
 
주니어 개발자의 서버 로그 관리 개선기
주니어 개발자의 서버 로그 관리 개선기주니어 개발자의 서버 로그 관리 개선기
주니어 개발자의 서버 로그 관리 개선기
 

Process (프로세스의 개념, 특징, 정의)

  • 2. 프로세스란? 현재 실행 중인 프로그램 프로세스 메모리 구조 프로세스 스케줄링 프로세스 제어 블록 프로세스의 상태 (상태 전이)
  • 3. 특징 •시분할 작업의 단위 : 시분할 시스템에서 볼 때, 분할 시간마다 그 대상이 되는 작업 단위 •병행 실행이 가능 :프로세스 간 통신이 필요 •하나의 프로그램이 여러 프로세스 생성 가능 * 프로세스 통신 (ICP) : 프로세스끼리 자원이나 데이터를 서로 주고받는 행위 프로세스는 본래 독립적이나, 상황에 따라 프로세스끼리 협력해야하는 경우가 있는데, 이 경우 프로 세스 간 자원/데이터 공유가 필요 ICP의 종류 : PIPE, Named PIPE, Message Queue, Shared Memory, Memory Map, socket
  • 4. 프로세스의 메모리 구조 Code : 프로그램을 실행 시키면 실행파일 내에 존재하는 명령 어가 메모리 상에 올라가야 프로그램을 동작 시킬 수 있다. Data : 전역 변수나 static 변수의 할당을 위해 존재하는 공간 Stack : 지역 변수 할당과 함수 호출 시 전달 되는 인자 값들을 저장하기 위한 공간 Heap : C의 malloc, calloc와 C++, Java의 new를 통한 동적 할당을 위해 존재하는 공간 Code Process Data Stack Heap
  • 5. 프로세스 스케줄링 CPU를 사용하려고 하는 프로세스들 사이의 우선 순위를 관리하는 일 스케줄링은 처리율과 CPU 이용률을 증가 시키고 오버헤드 / 응답시간 / 반환시간 / 대기시간을 최소화 시키기 위한 •장기 스케줄링 : 어떤 프로세스가 시스템 자원을 차지할 수 있도록 할 것인가를 결정하여 큐로 보내는 작업 •중기 스케줄링 : 어떤 프로세스들이 CPU를 할당 받을 것인지 결정하는 작업 •단기 스케줄링 : 프로세스가 실행되기 위해 CPU를 할당 받는 시기와 특정 프로세스를 지정하는 작업 종류 : 비선점형 스케줄링, 선점형 스케줄링, 정적 스케줄링, 동적 스케줄링
  • 6. 프로세스 제어 블록? 프로세스를 관리하기 위해 필요한 프로세스 요소들의 자료구조 Pointer Process State Process Number Program Counter Registers Memory Limits Open File Lists Misc. Accounting and Status Data Pointer : 프로세스의 상태가 전환될 때, 프로세스의 현재 위치를 유지하기 위해 이용하는 스택 포인터 Process State : 프로세스의 현 상태 Process Number (PID) : 운영체제로 부터 할당 받은 고유 식별자 Registers : 누산기, 베이스, 레지스터와 범용 레지스터 등의 CPU 레지스터 Memory Limits : 메모리 관리 시스템 에 관한 정보가 저장되어 있다 Open Files List : 프로세스를 위해 열린 파일 목록
  • 7. 프로세스 상태 (상태 전이) •제출 : 작업을 처리하기 위해 사용자가 작업을 시스템에 제출한 상태 •접수 : 제출된 작업이 스풀 공간인 디스크의 할당 위치에 저장된 상태 •준비 : 프로세스가 프로세스를 할당 받기 위해 기다리고 있는 상태 •실행 : 준비 상태 큐에 있는 프로세스가 프로세서를 할당받아 실행되는 상태 •대기 : 프로세스에 입출력 처리가 필요하면 현재 실행 중인 프로세스가 중단 되고, 입출력 처리가 완료될 때까지 대기하고 있는 상태 •종료 : 프로세스의 실행이 끝나고 프로세스 할당이 해제된 상태 •Dispatch : 준비 상태에서 대기하고 있는 프로세스 중 하나가
  • 8. 프로세스 상태 (상태 전이) •Dispatch : 준비 상태에서 대기하고 있는 프로세스 중 하나가 프로세스를 할당 받아 실행 상태로 전이되는 과정 •Wake Up : 입출력 작업이 완료 되어 프로세스가 대기 상태에서 준비 상태로 전이 되는 과정 •Spooling : 입출력 장치의 공유 및 상대적으로 느린 입출력 장치의 처리 속도를 보완