Cara mengidentifikasi versi Windows di ACPI dengan menggunakan _OSI
Topik ini menjelaskan cara menggunakan metode _OSI dalam Advanced Configuration and Power Interface (ACPI) Source Language (ASL) untuk mengidentifikasi sistem operasi host. Dengan menggunakan metode ini, penulis ASL dapat membuat firmware yang mendukung versi sistem operasi di masa mendatang dan memungkinkan sistem operasi untuk mengubah perilaku berdasarkan tingkat antarmuka yang diminta.
Informasi ini berlaku untuk sistem operasi berikut:
Windows 11, versi 22H2
Windows 11
Windows 10, version 2004
Windows 10, versi 1903
Windows 10, version 1809
Windows 10 versi 1803
Windows 10, versi 1709
Windows 10, versi 1703
Windows 10, version 1607
Pratinjau Teknis Windows Server
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
Metode _OSI
Semua versi terbaru dari sistem operasi Windows mendukung komponen Dari Konfigurasi Tingkat Lanjut dan Spesifikasi Power Interface (ACPI). Spesifikasi ACPI mendefinisikan bahasa yang ditafsirkan, ACPI Source Language (ASL), untuk memungkinkan sistem operasi menjalankan metode kontrol yang disediakan firmware untuk manajemen dan konfigurasi daya. Untuk meningkatkan kemampuan penulis ASL untuk mengidentifikasi versi sistem operasi host, ASL menyediakan Tingkat Antarmuka Sistem Operasi (_OSI).
Dengan menggunakan metode _OSI, penulis ASL dapat dengan mudah menentukan versi antarmuka ACPI yang didukung sistem operasi host. Metode penerapan versi ini menyediakan solusi untuk membuat firmware yang dapat mendukung sistem operasi di masa mendatang dan memungkinkan sistem operasi untuk mengubah perilaku berdasarkan tingkat antarmuka yang diminta.
_OSI ditentukan
Metode _OSI memiliki satu argumen dan satu nilai pengembalian. Argumen adalah string yang ditentukan oleh dan untuk setiap sistem operasi. Nilai yang dikembalikan 0x00000000 jika antarmuka tidak didukung atau 0xFFFFFFFF jika antarmuka didukung.
Versi terbaru spesifikasi ACPI telah memperluas kasus penggunaan metode _OSI di luar identifikasi versi sistem operasi host.
Namun, Windows mendukung _OSI hanya untuk penggunaan mengidentifikasi versi host Windows yang berjalan pada sistem.
Metode _OSI didefinisikan sebagai berikut:
- _OSI - Antarmuka Sistem Operasi
Argumen
String yang ditentukan oleh dan untuk setiap sistem operasi. Contohnya:
"Windows 2013" untuk Windows 8.1 dan Windows Server 2012 R2
"Windows 2012" untuk Windows 8 dan Windows Server 2012
"Windows 2009" untuk Windows 7 dan Windows Server 2008 R2
"Windows 2001" untuk Windows XP
"Windows 2001.1" untuk Windows Server 2003
Nilai kembali
Nilai yang dikembalikan adalah sebagai berikut:
0x00000000 jika sistem operasi tidak mendukung versi dalam argumen .
0xFFFFFFFF jika sistem operasi memang mendukung versi dalam argumen .
_OSI detail argumen untuk Windows
Tabel di bawah ini mencantumkan versi Windows yang dapat diidentifikasi ASL dengan menggunakan string _OSI yang sesuai.
Sistem operasi Windows mengembalikan 0xFFFFFFFF jika argumen ke metode _OSI menentukan versi Windows yang lebih lama. Misalnya, Windows 7 mengembalikan 0xFFFFFFFF untuk "Windows 2009" (Windows 7) dan "Windows 2006" (Windows Vista).
_OSI string untuk sistem operasi Windows
String OSI | Target 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, version 1607 |
Windows 2017 | Windows 10, versi 1703 |
Windows 2017.2 | Windows 10, versi 1709 |
Windows 2018 | Windows 10 versi 1803 |
Windows 2018.2 | Windows 10, version 1809 |
Windows 2019 | Windows 10, versi 1903 |
Windows 2020 | Windows 10, version 2004 |
Windows 2021 | Windows 11 |
Windows 2022 | Windows 11, versi 22H2 |
Catatan implementasi
Tempatkan rutinitas yang mengidentifikasi sistem operasi dalam metode _INI di bawah cakupan _SB sehingga _OSI dapat berjalan sedini mungkin.
Penempatan ini penting karena sistem operasi membuat fitur tersedia berdasarkan argumen string ke metode _OSI.