본문 바로가기

운영체제(OS)/프로세스 관리

(2)
동기화 처리 및 데드락 Process Synchronization 협력하는 프로세스들 사이에서 실행 순서 규칙을 정하여 공유된 자원의 일관성 (consistency)을 보장하는 것 하나의 프로세스가 공유된 자원에 접근하고 난 뒤에 다른 프로세스가 쓰도록 만들어주어야 함 Critical Section (Shared Resource) nn개의 프로세스들이 있을 때, 이 프로세스들은 공유된 자원을 사용하기 위해 경쟁한다 (race condition). 각각의 프로세스에는 “code segment”라는 것이 있는데 일반적으로 “Critical Section (CS)”이라고 불린다. CS을 통해 공유된 자원에 접근할 수 있다. CS resource that “allows only one user at a time”. 위의 문장과 같이 ..
프로세스 구조 및 관리 기법 1. 프로세스 관리 1.1 프로세스의 개념 메모리에 올라가 실행 중인 프로그램 일반적으로 잡(JOB)이라는 용어와 혼동해서 사용 시분할 시스템 환경에서는 문맥 교환(context switch)을 위한 PCB를 가지는 객체 1.2 프로세스의 상태 프로세스는 실행, 준비, 봉쇄의 세가지로 구분된다. 실행 상태 : 프로세스가 CPU를 보유하고, 기계어 명령을 실행하고 있는 상태. 준비 상태 : 프로세스가 CPU만 보유하면 당장 명령을 실행할수 있지만 CPU를 할당받지 못한 상태. 봉쇄 상태 : CPU를 할당받더라도 당장 명령을 실행할 수 없는 프로세스의 상태. 1.3 프로세스 제어블록(PCB) 프로세스 관리를 위해 프로세스 정보를 담은 커널내의 자료구조 프로세스의 상태, 프로그램 카운터 값, CPU 레저스터값..