- 프로그램이 메모리에 올라가면 프로세스가 됨 (인스턴스화)
- 운영체제의 CPU 스케줄러에 따라 CPU가 프로세스 실행
프로세스와 컴파일 과정
전처리 과정 : 소스코드 주석 제거/ 헤더파일 병합
컴파일러 : 오류처리, 코드 최적화 작업으로 어셈블리어로 변환
어셈블러 : 어셈블리어는 목적코드로 변환
링커 : 라이브러리 함수 또는 다른 파일들과 목적 코드를 결합해서 실행파일을 만듦
PCB(Process Control Block)
컨텍스트 스위칭
PCB를 교환하는 과정
한 프로세스에 할당된 시간이 끝나거나 인터럽트에 의해 발생
많은 프로그램이 동시에 진행되는 것이 아니라 여러 프로세스의 컨텍스트 스위칭을 통해 실행되는 것
유휴 시간 : 다른 프로세스가 실행 중일 때의 idle time
캐시미스
스레드에서의 컨텍스트 스위칭
멀티 프로세싱
멀티 스레딩
출처
『면접을 위한 CS 전공지식 노트』