검색 여닫기
검색
메뉴 여닫기
501
215
4
1.9천
noriwiki
둘러보기
대문
최근 바뀜
임의의 문서로
미디어위키 도움말
특수 문서 목록
파일 올리기
환경 설정 메뉴 여닫기
notifications
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.
user-interface-preferences
한국어
개인 도구
로그인
Process context identifier 문서 원본 보기
noriwiki
문서 공유하기
다른 명령
←
Process context identifier
문서 편집 권한이 없습니다. 다음 이유를 확인해주세요:
요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다:
사용자
.
문서의 원본을 보거나 복사할 수 있습니다.
[[분류:운영체제]] [[분류:CPU 아키텍처]] [[분류:메모리 관리]] == 개요 == '''프로세스 컨텍스트 식별자(PCID, Process Context Identifier)'''는 현대 CPU(특히 x86의 확장된 페이지 테이블 기능)에서 제공되는 기능으로, 프로세스 간 문맥 전환 시 발생하는 오버헤드를 줄이기 위해 전체 TLB(Translation Lookaside Buffer)를 매번 플러시(초기화)하지 않고도 주소 공간 전환을 수행할 수 있도록 돕는다. == 배경 == 전통적으로 운영체제는 한 프로세스에서 다른 프로세스로 전환할 때, 이전 프로세스의 페이지 테이블과 관련된 TLB 엔트리를 무효화하거나 다시 로드해야 합니다. 이는 메모리 성능에서 중요한 역할을 하는 TLB 접근(lookup)에 큰 비용을 초래한다. PCID는 TLB 엔트리에 “프로세스(또는 주소 공간)별 ID(식별자)”를 태그 형태로 부여하여, 주소 공간 전환 시 이전 프로세스에 속했던 TLB 엔트리를 전부 제거(플러시)하지 않고, 단지 “현재 프로세스의 PCID와 일치하지 않는 엔트리”를 무시하도록 하는 방식을 제공한다. == PCID 작동 방식 == * 각 프로세스(또는 주소 공간)는 고유한 '''PCID'''를 할당 * CPU의 TLB 엔트리는 해당 PCID 태그와 함께 저장 * 문맥 전환 시, 운영체제는 새 프로세스의 CR3(페이지 테이블 베이스 레지스터)를 로드하고 적절한 PCID를 설정 * TLB에는 이전 프로세스의 엔트리가 남아있을 수 있지만, CPU는 “현재 설정된 PCID”와 일치하는 엔트리만 사용하여 주소 변환을 수행 == 장점 == # **TLB 플러시 오버헤드 감소**: 문맥 전환마다 전체 TLB를 비울(플러시) 필요가 줄어듬 # **성능 향상**: 불필요한 TLB 재로딩 과정을 피하므로, 문맥 전환 시의 메모리 접근 지연이 감소
Process context identifier
문서로 돌아갑니다.