운영체제7 프로세스 상태전이, 스케줄링 알고리즘 #3 프로세스/ 프로그램/ 프로세서 차이 프로세스: 실행중인 프로그램 프로그램: 하드디스크 등에 저장되어 있는 실행 파일 프로세서: 일반적으로 CPU를 뜻함. 프로세스 상태 전이도 프로세스의 상태는 생성 / 준비 / 실행 / 대기 / 완료 5개의 단계로 이루어져 있다. 프로세스 상태 설명 Create - 프로세스가 생성되는 단계 - 주기억장치에 적재되지않고 보조기억장치에 저장 Ready - CPU를 사용하여 실행 준비 된 상태 - 우선순위가 높은 프로세스가 CPU를 할당받는다. Running - 프로세스가 CPU를 차지하여 실행중인 상태 Waiting - 기다림(wating) 또는 블록(block) 상태 - I/O 동작의 완료 등 사건 발생을 기다리는 상태 Terminated - 프로세스의 실행이 종료 프로세.. 2020. 2. 2. 프로세스(PROCESS) , 스레드(THREAD) #1 프로세스(Process) 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램 종종 스케줄링의 대상이 되는 작업(task)이라는 용어와 거의 같은 의미로 쓰인다. 운영체제로부터 시스템 자원을 할당받는 작업의 단위 프로세스와 프로그램의 차이 1) 프로그램(Program) 프로그램이란 어떤 작업을 위해 실행할 수 있는 파일을 뜻한다. 2) 프로세스(Process) 프로세스란 메모리에 올라와 CPU를 할당받고 프로그램이 실행되고 있는 상태를 말한다. 즉, 프로그램은 정적인 개념으로 실행파일들을 의미하고 프로세스는 동적인 개념으로 실행된 프로그램을 의미한다. 프로세스의 구조 프로세스는 각각 독립된 메모리 영역 (Code, Data, Stack, Heap)을 할당받는다. 기본적으로 하나의 프로세스안에는 메인 스레드.. 2020. 1. 9. 프로세스(PROCESS) , 스레드(THREAD) #2 단일 스레드 / 멀티 스레드 운영체제의 지원 여부에 따라 단일 스레드 , 다중 스레드로 나뉠 수 있다 프로세스에 하나의 제어 모델이 있으면 단일 스레드이며, 프로세스가 다수의 제어 스레드를 가진다면 다중 스레드 모델이다. 단일 스레드 하나의 프로세스에서 하나의 스레드 실행 하나의 레지스터와 스택으로 표현 멀티 스레드 프로그램을 다수의 실행 단위로 나누어 실행 프로세스 내에서 자원을 공유하여 자원 생성과 관리의 중복을 최소화 서버가 많은 요청을 효율적으로 수행 할 수 있는 환경 제공 각각의 스레드가 고유의 레지스터와 스택으로 표현됨 단일 스레드 / 멀티스레드의 장단점 단일 스레드 장점 1. 자원 접근에 대한 동기화를 신경 쓰지 않아도 된다. 2. 문맥 교환(context switch) 작업을 요구하지 않는.. 2020. 1. 7. 이전 1 2 다음