_OSI 사용하여 ACPI에서 Windows 버전을 식별하는 방법

이 항목에서는 ACPI(고급 구성 및 전원 인터페이스) ASL(원본 언어)에서 _OSI 메서드를 사용하여 호스트 운영 체제를 식별하는 방법을 설명합니다. ASL 작성기는 이 방법을 사용하여 향후 운영 체제 버전을 지원하고 운영 체제가 요청된 인터페이스 수준에 따라 동작을 변경할 수 있도록 하는 펌웨어를 만들 수 있습니다.

이 정보는 다음 운영 체제에 적용됩니다.

  • Windows 11, 버전 22H2

  • Windows 11

  • Windows 10, 버전 2004

  • Windows 10, 버전 1903

  • Windows 10, 버전 1809

  • Windows 10, 버전 1803

  • Windows 10, 버전 1709

  • Windows 10, 버전 1703

  • Windows 10 버전 1607

  • Windows Server Technical Preview

  • Windows 10

  • Windows Server 2012 R2

  • Windows 8.1

  • Windows Server 2012

  • Windows 8

  • Windows Server 2008 R2

  • Windows 7

  • Windows Server 2008

  • Windows Vista

  • Windows Server 2003

  • Windows XP

_OSI 메서드

모든 최신 버전의 Windows 운영 체제는 ACPI(고급 구성 및 전원 인터페이스) 사양의 구성 요소를 지원합니다. ACPI 사양은 운영 체제가 전원 관리 및 구성을 위해 펌웨어 제공 제어 메서드를 실행할 수 있도록 해석된 언어인 ASL(ACPI 원본 언어)을 정의합니다. ASL 작성기가 호스트 운영 체제 버전을 식별하는 기능을 개선하기 위해 ASL은 _OSI(운영 체제 인터페이스 수준)를 제공합니다.

ASL 작성기는 _OSI 메서드를 사용하여 호스트 운영 체제에서 지원하는 ACPI 인터페이스의 버전을 쉽게 확인할 수 있습니다. 이 버전 관리 방법은 향후 운영 체제를 지원하고 운영 체제가 요청된 인터페이스 수준에 따라 동작을 변경할 수 있도록 하는 펌웨어를 만드는 솔루션을 제공합니다.

정의된 _OSI

_OSI 메서드에는 인수 하나와 반환 값이 하나씩 있습니다. 인수는 각 운영 체제에 대해 및 로 정의된 문자열입니다. 반환 값은 인터페이스가 지원되지 않는 경우 0x00000000, 인터페이스가 지원되는 경우 0xFFFFFFFF.

ACPI 사양의 최신 버전은 호스트 운영 체제 버전 식별을 넘어 _OSI 메서드의 사용 사례를 확장했습니다.

그러나 Windows는 시스템에서 실행되는 Windows의 호스트 버전을 식별하는 용도로만 _OSI 지원합니다.

_OSI 메서드는 다음과 같이 정의됩니다.

  • _OSI - 운영 체제 인터페이스

인수

각 운영 체제에 대해 및 로 정의된 문자열입니다. 예를 들면 다음과 같습니다.

  • Windows 8.1 및 Windows Server 2012 R2용 "Windows 2013"

  • Windows 8 및 Windows Server 2012 "Windows 2012"

  • Windows 7 및 Windows Server 2008 R2용 "Windows 2009"

  • Windows XP용 "Windows 2001"

  • Windows Server 2003용 "Windows 2001.1"

반환 값

반환 값은 다음과 같습니다.

  • 운영 체제가 인수의 버전을 지원하지 않는 경우 0x00000000.

  • 운영 체제가 인수의 버전을 지원하는지 0xFFFFFFFF.

Windows에 대한 인수 세부 정보 _OSI

아래 표에는 해당 _OSI 문자열을 사용하여 ASL이 식별할 수 있는 Windows 버전이 나와 있습니다.

_OSI 메서드에 대한 인수가 이전 버전의 Windows를 지정하는 경우 Windows 운영 체제는 0xFFFFFFFF 반환합니다. 예를 들어 Windows 7은 "Windows 2009"(Windows 7) 및 "Windows 2006"(Windows Vista) 모두에 대한 0xFFFFFFFF 반환합니다.

Windows 운영 체제용 _OSI 문자열

OSI 문자열 대상 OS
Windows 2000 Windows 2000
Windows 2001 Windows XP
Windows 2001 SP1 Windows XP SP1
Windows 2001.1 Windows Server 2003
Windows 2001 SP2 Windows XP SP2
Windows 2001.1 SP1 Windows Server 2003 SP1
Windows 2006 Windows Vista
Windows 2006 SP1 Windows Vista SP1
Windows 2006.1 Windows Server 2008
Windows 2009 Windows 7, Win Server 2008 R2
Windows 2012 Windows 8, Win Server 2012
Windows 2013 Windows 8.1
Windows 2015 Windows 10
Windows 2016 Windows 10 버전 1607
Windows 2017 Windows 10, 버전 1703
Windows 2017.2 Windows 10, 버전 1709
Windows 2018 Windows 10, 버전 1803
Windows 2018.2 Windows 10, 버전 1809
Windows 2019 Windows 10, 버전 1903
Windows 2020 Windows 10, 버전 2004
Windows 2021 Windows 11
Windows 2022 Windows 11, 버전 22H2

구현 참고 사항

_OSI 가능한 한 빨리 실행할 수 있도록 _SB scope 아래의 _INI 메서드에서 운영 체제를 식별하는 루틴을 배치합니다.

이 배치는 운영 체제에서 _OSI 메서드에 대한 문자열 인수를 기반으로 기능을 사용할 수 있도록 하기 때문에 중요합니다.

추가 리소스

고급 구성 및 전원 인터페이스 사양