메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

Intel User Interface Privilege Isolation

noriwiki
Ahn9807 (토론 | 기여)님의 2025년 10월 9일 (목) 12:56 판 (새 문서: == 개요 == Intel UIPI는 기존의 커널 의존적 IPC 메커니즘을 대체하기 위해, 하드웨어 수준에서 메시지 큐와 인터럽트 전달 메커니즘을 통합하였다. 각 프로세스는 사용자 공간 내에 존재하는 UIPI 엔드포인트(Endpoint)를 통해 다른 프로세스와 직접 데이터를 교환할 수 있다. === 기본 구조 === * '''UIPI 엔드포인트 (Endpoint)''': 각 프로세스는 하나 이상의 엔드포인트를 할...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

개요

Intel UIPI는 기존의 커널 의존적 IPC 메커니즘을 대체하기 위해, 하드웨어 수준에서 메시지 큐와 인터럽트 전달 메커니즘을 통합하였다. 각 프로세스는 사용자 공간 내에 존재하는 UIPI 엔드포인트(Endpoint)를 통해 다른 프로세스와 직접 데이터를 교환할 수 있다.

기본 구조

  • UIPI 엔드포인트 (Endpoint): 각 프로세스는 하나 이상의 엔드포인트를 할당받으며, 메시지 송신자와 수신자를 식별한다.
  • 메시지 큐 (Message Queue): 하드웨어가 관리하는 원자적 큐 구조로, 커널 개입 없이도 메시지 전송이 이루어진다.
  • UIPI 컨트롤러 (Controller): 하드웨어 내부의 제어 유닛으로, 메시지의 우선순위, 인터럽트 발생, 동기화 상태를 관리한다.

동작 방식

1. 송신 프로세스는 메시지를 엔드포인트에 작성한다. 2. UIPI 컨트롤러는 하드웨어적으로 메시지 큐에 이를 삽입한다. 3. 수신 프로세스의 엔드포인트에 인터럽트가 발생하며,

  지정된 콜백 혹은 폴링 루프를 통해 메시지를 수신한다.  

이 과정에서 커널 개입이 필요하지 않기 때문에, Context switchSystem call latency가 크게 줄어든다.

특징

  • 낮은 지연시간 — 커널 모드 전환 없이 사용자 공간 간 통신 가능
  • 높은 처리량 — 대용량 메시지 및 고빈도 이벤트 처리 지원
  • 유연한 인터럽트 처리 — 비동기, 동기 이벤트 모두 지원
  • 보안성 강화 — 커널 경로를 우회하지만, 권한 격리 정책은 하드웨어 수준에서 유지

기존 방식과 비교

구분 Signal 기반 IPC Poll 기반 IPC Intel UIPI
커널 개입 O X
응답 지연 높음 중간 매우 낮음
CPU 사용률 낮음 높음 낮음
이벤트 지원 비동기 한정 동기 한정 동기 / 비동기 모두
주요 장점 단순 구현 빠른 반응성 효율적 / 고성능 IPC

활용

Intel UIPI는 다음과 같은 영역에서의 응용이 가능하다.

한계

  • 기존의 커널 IPC와의 호환성 부족
  • 하드웨어 종속적 구조 — Intel 아키텍처 이외의 환경에서는 지원 불가
  • 보안 정책 커스터마이징의 제약

참고