Windos 2000
在单位的机房里好不容易才找到一台安装 Windows 2000 Server SP4 操作系统的服务器,这台硕果仅存的服务器到本月底也要退役了。
Windows 2000 操作系统是没有预装任何版本的 .NET Framework 的。下图中的 Microsoft .NET Framework 2.0 是我为了在该服务器上运行一些 C# 语言写的小程序而安装的。
Windows XP
下图中的 Windows XP Professional SP3 操作系统是我们单位办公用机专用的,装机量非常的大。
同样,Windows XP 操作系统也没有预装 .NET Framework,下图中的 Microsoft .NET Framework 全家福也是我自己安装的。
Windows Server 2003
Windows Server 2003 操作系统最初叫作“Windows .NET Server”,后改成“Windows .NET Server 2003”,最终被改成“Windows Server 2003”,于2003年3月28日发布,并在同年四月底上市。正如原来的名字中的 .NET 所暗示的,Microsoft .NET Framework 1.1 已经成为该操作系统的组件了,不需要另外安装。2005年发售的 Windows Server 2003 R2 中内置了 Microsoft .NET Framework 2.0。除了前面提到的一台以外,我们机房中的其他服务器全部都是安装这个版本的操作系统。
下图的 Windows 组件向导中已经包括 Microsoft .NET Framework 2.0 了。
在添加或删除程序中可以看到其他版本的 Microsoft .NET Framework:
Windows Vista
下图中的 Windows Vista 是我购买的 Dell Inspiron 1520 本本预装的操作系统。
可以看出,Microsoft .NET Framework 3.0 (includes .NET 2.0) 已经成为 Vista 操作系统的组件了。
更高版本的 .NET Framework 就要自己安装了:
Windows 7
下图中的 Windows 7 专业版目前仅用来测试兼容性:
可以看出,Windows 7 操作系统已经内置了 .NET Framework 3.5 (includes .NET 2.0 and 3.0)。
Microsoft .NET Framework 4 还需要自己安装:
Windows 8
下图中的 Windows 8 Consumer Preview 是我到 Microsoft 网站下载后安装的。
可以看出,Windows 8 操作系统默认安装了 .NET Framework 4.5,并且 .NET Framework 3.5 (includes .NET 2.0 and 3.0)也是该操作系统的组件,但是默认没有启用该组件。
所以下图中就不包括任何版本的 .NET Framework 了。
如果在 Windows 8 操作系统中运行 .NET 2.0 的程序,就会弹出以下对话框。
测试程序
让我们写一个非常简单的程序来测试一下吧:
1 using System; 2 using System.IO; 3 4 static class Tester 5 { 6 static void Main() 7 { 8 Console.WriteLine("OS Version: " + Environment.OSVersion); 9 Console.WriteLine("CLR Version: " + Environment.Version); 10 } 11 }
该程序在各种 Windows 操作系统中的运行结果如下所示:
Windows 2000OS Version: Microsoft Windows NT 5.0.2195 Service Pack 4CLR Version: 2.0.50727.832Windows XPOS Version: Microsoft Windows NT 5.1.2600 Service Pack 3CLR Version: 2.0.50727.3625CLR Version: 4.0.30319.239Windows Server 2003OS Version: Microsoft Windows NT 5.2.3790 Service Pack 2CLR Version: 2.0.50727.3625CLR Version: 4.0.30319.239Windows VistaOS Version: Microsoft Windows NT 6.0.6002 Service Pack 2CLR Version: 2.0.50727.4216CLR Version: 4.0.30319.239Windows 7OS Version: Microsoft Windows NT 6.1.7601 Service Pack 1CLR Version: 2.0.50727.5420CLR Version: 4.0.30319.239Windows 8 Consumer PreviewOS Version: Microsoft Windows NT 6.2.8250.0CLR Version: 2.0.50727.6111CLR Version: 4.0.30319.17379
上述结果中的 CLR 2.0 和 CLR 4.0 是分别使用相应版本的 C# 编译器编译后两次运行的结果。
Windows 操作系统内核版本
各 Windows 操作系统的内核版本如下所示:
- Windows NT 5.0: Windows 2000
- Windows NT 5.1: Windows XP
- Windows NT 5.2: Windows Server 2003, Windows Server 2003 R2
- Windows NT 6.0: Windows Vista, Windows Server 2008
- Windows NT 6.1: Windows 7, Windows Server 2008 R2
- Windows NT 6.2: Windows 8
从上面可以看出,所谓的 Windows 7、Windows 8 不过是 Windows NT 6.1、6.2。而 Windows Server 2008 R2 相对于 Windows Server 2008 来说,进行了比较大的升级。
Components and Layers .NET Framework versions
上图来源于:。