본문 바로가기
Microsoft/Windows

Microsoft가 Windows 11을 발표하면서 TPM과 최신 CPU를 요구한 이유?

by Rubik 2021. 7. 1.

Windows 11 발표 이후, 6년만의 새로운 Windows라는 점, 확 바뀐 UI/UX 등등 많은 관심을 모았습니다. 

 

특히 Windows 11에서는 이전 Windows와는 달리 최소사양을 깐깐히 본다는 소식이 알려지면서 PC상태 확인 프로그램을 다운받아 Windows 11로 업그레이드가 가능한 사양인지 확인하는 사람들이 많았습니다. 이때 구매한지 얼마되지 않은 PC인데도 업그레이드가 불가능하다는 메세지를 확인하는 사례가 많아 논란이 있었습니다.

 

Microsoft는 이후 블로그를 통해 조금 더 자세한 내용을 밝혔으나, 영문으로만 제공되었고 기술적 내용을 제외하여 기술한 바람에 여전히 많은 논란과 오해가 돌고 있어, 제가 아는 한 자세히 설명해보려 합니다.

 

Microsoft가 최신 CPU와 TPM을 요구한 배경

 

Microsoft가 Windows 11을 설계하면서, 어떠한 용도와 상황에서도 PC의 최대 성능을 발휘할 수 있고 최상의 경험을 제공하는 것을 목표로 삼았습니다. 그리고 그 목표를 달성하기 위해 아래와 같은 원칙을 세웠습니다.

  1. 보안
    • Windows 11은 보안을 강화하기 위해 Windows Hello, 장치 암호화, virtualization-based security(VBS), hypervisor-protected code integrity(HVCI), 그리고 보안 부팅(Secure Boot)을 사용할 수 있는 하드웨어를 필수로 요구합니다. Microsoft의 자료에 따르면, 이러한 보안 기능을 사용하면 악성코드의 공격을 60% 정도 막을 수 있다고 합니다.
  2. 안정성
    • 새로운 Windows 드라이버 모델을 도입함으로서 99.% 크래시가 감소하여 OS의 안정성이 높아집니다
  3. 호환성
    • 기존에 사용하던 앱을 Windows 11에서도 원활하게 사용할 수 있도록, Office와 Microsoft Teams와 동일하게 2코어 이상과 1Ghz 이상의 프로세서, 4GB 메모리, 64GB 저장소를 최소 사양으로 요구합니다.

 

그럼 이 VBS, HVCI 등등이 무엇이길래 최신 CPU를 요구하는가요?

VBS는 virtualization-based security의 줄임말로, 하드웨어 가상화 기술을 이용하여 일반 OS 환경으로부터 분리되고 안전한 메모리 구역을 만드는 기능입니다. Windows는 Hyper-V라는 이름의 가상화 소프트웨어(하이퍼바이저)를 내장하고 있으며, 이 가상화 기술을 이용해 OS에서 가장 중요한 부분을 VSM(Virtual secure mode) 라는 별도의 공간에서 분리해서 실행합니다. 

 

HVCI는 Hypervisor-protectd Code Integrity의 줄임말로, OS코드와 드라이버가 변조되지 않았으며 서명이 되었는지 확인하고 안전하다고 확인된 코드만 실행하도록 도와주는 기능입니다.

 

이렇게 VBS와 HVCI를 사용하므로써 악성코드가 Windows 커널에 침입하더라도 VBS와 HVCI가 OS의 핵심 부분을 보호하고 악성코드의 악성 행위를 차단하여 PC를 보호합니다.

 

그러나 VBS와 HVCI와 같은 가상화 기술을 사용하면 성능과 배터리 수명에 큰 영향을 끼칩니다. 그렇기에 Windows 10에서는 필수적으로 요구하지 않았습니다.

 

Windows 11에서는 VBS와 HVCI가 기본적으로 요구됩니다. 하지만 성능과 배터리에 영향을 주지 않고도 가상화 기술을 사용하기 위해서는 Intel VT와 AMD-V 기술, VT와 AMD-V의 확장 명령어인 Second level address translation(SLAT), I/O 가상화 기술인 VT-d와 AMD-Vi, TPM 2.0, HVCI와 호환되는 장치 드라이버, UEFI 메모리 보고 기능이 필요하기에 하드웨어 요구 사양이 높아졌습니다.

 

또 HVCI 기능을 위해 하이퍼바이저가 코드를 확인할 때 성능 저하를 최소화하기 위해 CPU 제조사와 협력하여 

인텔의 Mode-based execute control for EPT(MBEC), AMD의 Guest Mode Execute Trap(GMET), ARM(퀄컴)의 Translation table stage 2 Unprivileged Execute-never(TTS2UXN)이라는 새로운 하드웨어 기능을 개발했습니다. 

인텔은 7세대 코어 프로세서 (카비 레이크)부터 MBEC를, AMD는 Zen 2 아키텍쳐부터 GMET를 지원합니다.

 

CPU가 이러한 기능을 지원한다면, VBS와 HVCI와 같은 보안 기능이 활성화되도 성능에 큰 영향을 주지 않습니다, 하지만 지원하지 않는다면 CPU의 부하가 늘어나 성능이 감소합니다. 그렇기에 Windows 11은 최신 CPU를 요구한다고 볼 수 있습니다. 

 

VBS와 HVCI와 같은 보안 기술을 도입하고 기본값으로 활성화하면 PC를 더욱 안전하게 사용할 수 있고 시스템의 안정성 또한 높아집니다, 하지만 그러기 위해서는 최신 하드웨어를 요구하게 될 수밖에 없게 되었던 것입니다..