windows 版本
msinfo32 : windows 如何区分 bios 与EFI 启动
systeminfo 没有窗口界面,msinfo32 有窗口
ver 与winver 命令:
winver ver mssysinfo32
方法 1:使用系统信息 (System Information)
- 打开系统信息:
- 按
Win + R
,输入msinfo32
并按回车。
- 按
- 检查 BIOS 模式:
- 在系统信息窗口中,找到
BIOS 模式
(BIOS Mode)字段:- 如果显示为 Legacy,说明是 BIOS 模式。
- 如果显示为 UEFI,说明是 UEFI 模式。
- 在系统信息窗口中,找到
方法 2:检查磁盘分区类型
BIOS 和 UEFI 对磁盘分区的要求不同:
- BIOS 使用 MBR(主引导记录)。
- UEFI 使用 GPT(全局唯一标识分区表)
如何区分 Server 与 Windows 10/11
尽管 ver
输出中,Windows Server 2016 及更高版本的内核版本号与 Windows 10/11 相同(10.x.xxxxx
),它们在以下几个方面有所区别
er
命令在 Windows Server 系统中同样显示内部版本号,而这些版本号与 Windows Server 的正式名称也有对应关系。以下是常见 Windows Server 系统及其版本号的对应表:
Windows Server 正式名称 | 版本号(ver 显示) | 备注 |
---|---|---|
Windows NT Server 4.0 | 4.00.1381 | 与 Windows NT Workstation 4.0 共享相同的内核。 |
Windows 2000 Server | 5.00.2195 | 第一代基于 NT 内核的企业级服务器操作系统。 |
Windows Server 2003 | 5.2.xxxx | 与 Windows XP 64 位版本共享内核,但更优化服务器功能。 |
Windows Server 2008 | 6.0.xxxx | 与 Windows Vista 同一内核,添加了服务器功能。 |
Windows Server 2008 R2 | 6.1.xxxx | 基于 Windows 7 内核,首次仅提供 64 位版本。 |
Windows Server 2012 | 6.2.xxxx | 基于 Windows 8 内核,引入了初代 Metro UI。 |
Windows Server 2012 R2 | 6.3.xxxx | 基于 Windows 8.1 内核,改善性能和稳定性。 |
Windows Server 2016 | 10.0.14393 | 与 Windows 10 1607 同一内核,是第一个“长期服务版本”。 |
Windows Server 2019 | 10.0.17763 | 基于 Windows 10 1809 内核,强调混合云功能。 |
Windows Server 2022 | 10.0.20348 | 基于 Windows 10 21H2 内核,面向长期服务的稳定性改进版本。 |
ver
命令显示的信息通常是 Windows 内部的版本号,它与 Windows 的正式名称(如 Windows 10 或 Windows 11)存在对应关系。以下是常见的版本号与对应的 Windows 系统的对应表:
Windows 正式名称 | 版本号(ver 显示) | 备注 |
---|---|---|
Windows 95 | 4.00 或 4.00.950 | 最早的 GUI 操作系统,DOS 内核。 |
Windows 98 | 4.10.1998 | 改进版的 Windows 95。 |
Windows ME | 4.90.3000 | 基于 Windows 9x 系列,最后的 DOS 内核系统。 |
Windows NT 4.0 | 4.00.1381 | 第一代 NT 内核系统。 |
Windows 2000 | 5.00.2195 | NT 内核,企业市场为主。 |
Windows XP | 5.1.2600 | 非常经典的操作系统。 |
Windows Vista | 6.0.xxxx | 视觉效果大幅升级,但性能争议较多。 |
Windows 7 | 6.1.xxxx | 广受欢迎的版本,Vista 的改进版。 |
Windows 8 | 6.2.xxxx | 引入 Metro 界面,传统桌面使用体验变动较大。 |
Windows 8.1 | 6.3.xxxx | Windows 8 的改进版,增加了传统桌面支持。 |
Windows 10 | 10.0.xxxx | 微软转向持续更新模式,不再推出全新代号的版本。 |
Windows 11 | 10.0.xxxx | 和 Windows 10 同为 NT 10 内核,但有 UI 和功能改进。 |
细节说明:
- NT 内核从 Windows 2000 开始:Windows XP 及后续版本均基于 NT 内核。
- Windows 10 和 Windows 11 的内核版本号相同:二者均显示为
10.0.xxxx
,但通过具体构建号(Build Number,如 19045)可以进一步区分。 - 构建号的作用:构建号是微软对版本更新的编号,可以帮助精确判断系统的更新情况。例如:
- Windows 10 21H2:
10.0.19044
- Windows 11 22H2:
10.0.22621
- Windows 10 21H2:
package main import ( "fmt" "syscall" "unsafe" ) // OSVERSIONINFOEX structure type OSVERSIONINFOEX struct { DwOSVersionInfoSize uint32 DwMajorVersion uint32 DwMinorVersion uint32 DwBuildNumber uint32 DwPlatformId uint32 SzCSDVersion [128]uint16 } // RtlGetVersion declaration var ( modNtdll = syscall.NewLazyDLL("ntdll.dll") procRtlGetVersion = modNtdll.NewProc("RtlGetVersion") ) func GetWindowsVersion() (major, minor, build uint32, err error) { var osInfo OSVERSIONINFOEX osInfo.DwOSVersionInfoSize = uint32(unsafe.Sizeof(osInfo)) ret, _, _ := procRtlGetVersion.Call(uintptr(unsafe.Pointer(&osInfo))) if ret != 0 { err = syscall.Errno(ret) return } major = osInfo.DwMajorVersion minor = osInfo.DwMinorVersion build = osInfo.DwBuildNumber return } func main() { major, minor, build, err := GetWindowsVersion() if err != nil { fmt.Println("Error getting Windows version:", err) return } fmt.Printf("Windows Version: %d.%d.%d\n", major, minor, build) // Check if version is greater than 6.2.xxxx if major > 6 || (major == 6 && minor > 2) || (major == 6 && minor == 2 && build > 0) { fmt.Println("Version is greater than 6.2.xxxx") } else { fmt.Println("Version is not greater than 6.2.xxxx") } }
go 获取版本代码
32位Windows NT系统包括:[注 8]
- Windows NT 3.1
- Windows NT 3.5
- Windows NT 3.51
- Windows NT 4.0
- Windows 2000
- 32位 Windows XP
- 32位 Windows Vista
- 32位 Windows 7
- 32位 Windows 8
- 32位 Windows 8.1
- 32位 Windows 10
- 32位 Windows Server 2003/2003R2/2008
支持x64架构的Windows产品有:
- Windows XP Professional x64 Edition
- Windows Server 2003/2003R2全线产品(Web版除外)
- Windows Vista/7
- Windows Server 2008/2008R2/2012/2012R2全线产品
- Windows 8/8.1
- Windows 10
- Windows 11
https://zh.wikipedia.org/wiki/Microsoft_Windows