从版本宏定义谈
Windos
的版本(一)
你想知道
Windows
有哪些版本号码?如果你是开发人员,可以从微软的
SDK
中可以看出一些:
//
// _WIN32_WINNT version constants
//
#define _WIN32_WINNT_NT4 0x0400
#define _WIN32_WINNT_WIN2K 0x0500
#define _WIN32_WINNT_WINXP 0x0501
#define _WIN32_WINNT_WS03 0x0502
#define _WIN32_WINNT_WIN6 0x0600
#define _WIN32_WINNT_VISTA 0x0600
#define _WIN32_WINNT_WS08 0x0600
#define _WIN32_WINNT_LONGHORN 0x0600
#define _WIN32_WINNT_WIN7 0x0601
上面的内容是摘自最新的
Win7
SDK
中的
sdkddkver.h
。
一、
WIN 32
位有哪些版本
我们可以看到,
Windows
的版本从最开始的版本
4.0
发展到现在是
6.1
。每个版本的名称是:
-
4.0
版本的
Windows
被称作
Windows NT 4
-
5.0
的版本的
Windows
被称作
Windowns 2000
-
5.1
的
Windows
版本被称作
Windows XP
-
5.2
的
Windows
版本被称作是
Windows Server 2003
-
6.0
的
Windows
版本被称作是
Windows Vista
或者是
Windows Longhorn
,或者是
Windows Server 2008
-
6.1
的
Windows
版本被称作是
Windows 7.
二、
Win 7
的版本号为什么不是
7.0
比较奇怪的事情是,尽管
Windows
7
带有一个数字
7
,可视它的版本号只是比上一个系统
Windows Vista
大一个次要版本号,是
6.1
。这是为什么,据微软官方博客的说法是:
“
Windows 2000
的代码版本号是
5.0
,我们推出
Windows XP
时,用的是
5.1
,尽管
XP
是一次重大升级,我们为了最大限度保持应用程序的兼容,仍然没有改变主要的版本号。后来,我们有了
Windows Vista,
就是
Windows 6.0
,所以,作为我们另一个重大升级,
Windows
下一版本号叫
Windows 7
是自然而然的事
在用
Windows 5.1
作为
XP
版本号的时候,我们是为了帮助开发者保持
API
的兼容,在
Windows Vista
版本改为
6.0
的时候,我们得到不少教训,因改变基本版本号而导致严重的兼容问题。所以,我们决定将
Windows 7
的版本号定为
Windows 6.1
......
有人会认为将
Windows
7
的版本号定为
6.1
是否意味着
Windows 7
是一次小的升级,并非如此。
Windows 7
是一次重大的革命性创新,我们使用
6.1
的唯一原因是必须保持应用程序的兼容。”
看到没有,官方的说法是为了保持应用程序的兼容性所以只改变了次要版本号。不过在我看来,
Win 7
相对
Vista
来说改变并不是很大,改变一下次要版本也反应了
Win 7
的改变不是实质和核心的改变,最多是微软为了在
Vista
营销失败情况下修改自己错误而特意打出的一张牌,让我们这些用户忘记不愉快的
Vista
,痛痛快快扔掉
XP
,赶快掏钱,换成
Win7
。
三、
4.0
以前的版本在哪儿?
从我们在上边可以看到,起始的版本号是
4.0
,难道
Windows
一出生就是大高个
4.0
?
当然不是,之前还是有很多版本。微软也不能独立于客观事物发展变化的规律,一下子就能吃过胖子。最开始的
Windows
版本是
1.0
,接着是
2.0
,不过接触过当时这两个版本的人现在也不多了,原因很简单,一是
Windows
当时功能是相当简陋的,也很丑,另外是当时还有比
Windows
好看得多的
Apple
的
Macintosh
,
Windows2.0
努力模仿的就是它。
微软随后推出了著名的
Windows 3.0
,这个“千呼万唤始出来”的操作系统一面世便在商业上取得惊人的成功,但是在
1994
年时被苹果公司控告侵权,展开了著名的
“Look and Feel
”
诉讼官司。
从
Windows 1.0
到
3.0
,它们有一个共同点,那就是它们都属于
WIN 16
,而在
4.0
以后都是
WIN 32
。
分享到:
评论