오늘은 최근에 핫한 이슈인 CPU 이슈를 다뤄 보고자 합니다.


제가 쓴 글이 Microsoft의 공식 입장은 아니기 때문에 참조 정도로 사용하시고 직접 해당 내용들을 Microsoft 문서에서 읽어 보시기를 권해 드립니다.


이번 이슈는 Intel CPU때문에 더 이슈가되기는 하였지만 실제로는 거의 모든 CPU에 해당하는 이슈입니다.

이번 블로그에서는 다른 CPU와 다른 OS에 대해서는 이야기는 하지 않고 Windows 에 대한 이야기만 하고자 합니다.


제가 정리한 내용은 아래와 같습니다.

  • 1월 3일에 나온 Windows 패치는 Variant 1,3 (Spectre, Meltdown)에 대응하는 패치가 나온 것이다.
  • 1월 3일에 나온 Windows 패치 중 Variant 2에 대한 것은 Intel microcode, HW 의 Firmware가 패치 되어야 하지만 현재 Intel과 HW 의 패치는 제거 되었다
  • 1월 3일 패치는 일부 백신 제품과 충돌 이슈가 있어 백신을 업데이트하여 백신에서 QualityCompat 레지스트리 키를 설정한 경우에만 자동 업데이트를 통해서 받을 수 있다. 수동 업데이트의 경우에는 해당 레지스트리키 설정 여부와 관계 없이 설치 가능하다.
  • 패치를 설치 하는 것만으로 기능이 Enable 되는 것이 아니고 FeatureSettingsOverride, FeatureSettingsOverrideMask 레지스트리 키를 설정해야 Enable 된다.
  • Variant 2에 대한 이슈가 발생하여 Microsoft 에서 KB4078130를 발표 하였으며 이 것은 파일을 변경시키는 패치가 아니고 FeatureSettingsOverride와 FeatureSettingsOverrideMask 레지스트리 키를 변경하여 Variant 2에 대한 기능을 Disable 하는 것이다.
  • Variant 2에 대해서 Intel의 방식과 성능을 개선할 수 있다는 Google이 제안한 새로운 방법이 있는데 아직 Windows 에서는 Google 방식을 사용할지 공식 언급된 것은 없다.
  • Spectre 에 대해서는 인텔 방식과 구글 방식 모두 완벽하게 방어를 할 수 있는 것은 아니다. CPU 아키텍처가 바뀌어야 한다.
  • 성능 이슈는 해당 서버가 어떠한 워크 로드를 가지고 있느냐에 따라서 달라지고 OS Version에 따라서 달라질 수 있기 때문에 직접 테스트 해보는 것이 좋다.
  • SQL Server의 경우 믿을 수 없는 코드 (CLR, R, Python 등)이 실행될 수 있으므로 패치가 나왔다.
  • IE도 믿을 수 없는 코드가 실행될 수 있으므로 패치가 나왔다.
  • Hyper-V의 경우 Host에 MinVmVersionForCpuBasedMitigations 레지스티 키를 설정해야 적용되며 VM을 Cold boot 해야 한다.

감사합니다.







+ Recent posts