1981年8月12日
IBM推出内含Microsoft的16位元作业系统 MS-DOS 1.0的个人电脑,这是MS问世的第一款操作系统,主要通过命令行的方式来进行交互。MS-DOS是我第一个接触的操作系统,那时还小,依稀记得是3.0左右。
![]()

1985年11月
微软推出Windows 1.0,售价100美元,这是微软发布的第一款GUI的操作系统,不过评价不高:-(

1987年12月9日
微软发布Windows 2.0,售价仍然为100美元。尽管其借鉴了不少Mac OS的东西,但依然没有得到人们的肯定。

1990年5月22日
微软推出Windows 3.0,在界面、人性化和内存管理等诸多方面做出了较大的改动,终于得到了用户的认同!并且,MS在91年底发布了多语言的 Windows 3.0版本,为Windows在非英语国家的推动起到了极大的推动作用。

1992年3月18日
微软发布Windows 3.1版,其销量在2个月内就突破百万大关!这个版本添加了不少对多媒体等的支持。

1993年
微软发布Windows NT 3.1,宣布进入企业服务器操作系统的市场。这个版本是和IBM在OS/2的基础上联合研制的。
1994年
Windows 3.2的中文版发布。国内不少人从这个版本开始接触Windows,我就是其中之一:-)

1995年8月24日
这是微软走向霸主地位的一刻,这个月里,MS推出了让世界为之惊叹的Windows 95!在MS的强大促销攻势之下,Win 95在4天之内就突破了百万大关!从这款操作系统开始,Windows彻底抛弃了对DOS的完全依赖,并从此开始了世人皆知的“Wintel”垄断时代!
1996年8月
NT4.0推出,这是MS服务器OS走向成熟的一步,直到目前都有不少企业仍在使用。同年11月,Windows CE 1.0发布,这是一款面向嵌入式系统的OS,至此,微软的帝国之势已然清晰。

1998年6月25日
(就在我14岁生日的前3天)Windows 98,一款至今尚有不少用户使用的操作系统面世,这款在95基础上研制的OS改良了硬件标准的支持,例如MMX和AGP。其它特性包括对FAT32文件系统的支持、多显示器、Web TV的支持和整合到Windows图形用户界面的Internet Explorer,称为活动桌面(Active Desktop)。 。加上在99年6月10日面世的98 SE,微软的个人桌面垄断已经形成!
P.S. 这款OS在很长一段时间内被认为是玩游戏的最佳平台,直到XP的推出:)我也曾在这里堕落过很长时间......

2000年9月14日
这一天,微软推出了Window ME,这可以认为是9X系列的终结版,但是非常的不稳定,受到很多的批评,我也没用过:P
2000年12月19日
主要面向商业用户的Window 2000面世,包含新的NTFS文件系统、EFS文件加密、增强硬件支持等新特性,向一直被unix系统垄断的服务器市场发起了强有力的冲击,硬生生地从ibm、hp、sun公司口中抢下一大块地盘。Win 2K包含4个版本:
(1)Windows 2000 Professional 即专业版,用于工作站及笔记本电脑。它的原名就是Windows NT 5.0 Workstation。最高可以支持双处理器,最低支持64MB内存,最高支持2GB内存。
(2)Windows 2000 Server 即服务器版,面向小型企业的服务器领域。它的原名就是Windows NT 5.0 Server。最高可以支持4处理器,最低支持128MB内存,最高支持4GB内存。
(3)Windows 2000 Advanced Server 即高级服务器版,面向大中型企业的服务器领域。它的原名就是Windows NT 5.0 Server Enterprise Edition。最高可以支持8处理器,最低支持128MB内存,最高支持8GB内存。
(4)Windows 2000 Datacenter Server 即数据中心服务器版,面向最高级别的可伸缩性,可用性与可靠性的大型企业或国家机构的服务器领域。最高可以支持32处理器,最低支持256MB内存,最高支持64GB内存。
2001年10月25日
Windows XP发布。Windows XP是微软把所有用户要求合成一个操作系统的尝试,和以前的windows桌面系统相比稳定性有所提高,而为此付出的代价是丧失了对基于DOS程序的支 持。由于微软把很多以前是由第三方提供的软件整合到操作系统中,XP受到了猛烈的批评。这些软件包括防火墙、媒体播放器(Windows Media Player),即时通讯软件(Windows Messenger),以及它与Microsoft Pasport网络服务的紧密结合,这都被很多计算机专家认为是安全风险以及对个人隐私的潜在威胁。这些特性的增加被认为是微软继续其传统的垄断行为的持 续。
Windows XP,或视窗XP是微软公司最新发布的一款视窗操作系统。Windows XP于2001年8月24日正式发布(RTM,Release to Manufacturing)。它的零售版于2001年10月25日上市。Windows XP原来的代号是Whistler。字母XP表示英文单词的“体验”(experience)。Windows XP的外部版本是2002,内部版本是5.1(即Windows NT 5.1),正式版的Build是5.1.2600。 微软最初发行了两个版本:专业版(Windows XP Professional)和家庭版(Windows XP Home Edition),后来又发行了媒体中心版(Media Center Edition)和平板电脑版(Tablet PC Editon)等。
Windows XP Professional
专业版除了包含家庭版的一切功能,还添加了新的为面向商业用户的设计的网络认证、双处理器支持等特性,最高支持2GB的内存。主要用于工作站、高端个人电脑以及笔记本电脑。
Windows XP Home Edition
家庭版的消费对象是家庭用户,用于一般个人电脑以及笔记本电脑。只支持单处理器;最低支持64MB的内存(在64MB的内存条件下会丧失某些功能),最高支持1GB的内存。

2003年4月
Windows Server 2003发布;对活动目录、组策略操作和管理、磁盘管理等面向服务器的功能作了较大改进,对.net技术的完善支持进一步扩展了服务器的应用范围。
Windows Server 2003有四个版本:Windows Server 2003 Web服务器版本(Web Edition)、 Windows Server 2003标准版(Standard Edition)、 Windows Server 2003企业版(Enterprise Edition)以及Windows Server 2003数据中心版(Datacenter Edition)。Web Edition主要是为网页服务器(web hosting)设计的,而Datacenter是一个为极高端系统使用的。标准和企业版本则介于两者中间。
Windows Server 2003是目前微软最新的服务器操作系统。
一开始,该产品叫作“Windows .NET Server”,改成“Windows .NET Server 2003”,后最终被改成“Windows Server 2003”,于2003年3月28日发布,并在同年四月底上市。
Windows Server 2003有Web版 、标准版 、企业版和数据中心版等多个版本。

200X年Y月Z日
微软将发布最新款的操作系统Vista,现在已有Beta2测试版可以下载,不过对硬件要求较高,我这老掉牙的本本就只能对它说886......
不过网上倒是口水一片啊!
IBM推出内含Microsoft的16位元作业系统 MS-DOS 1.0的个人电脑,这是MS问世的第一款操作系统,主要通过命令行的方式来进行交互。MS-DOS是我第一个接触的操作系统,那时还小,依稀记得是3.0左右。

1985年11月
微软推出Windows 1.0,售价100美元,这是微软发布的第一款GUI的操作系统,不过评价不高:-(

1987年12月9日
微软发布Windows 2.0,售价仍然为100美元。尽管其借鉴了不少Mac OS的东西,但依然没有得到人们的肯定。

1990年5月22日
微软推出Windows 3.0,在界面、人性化和内存管理等诸多方面做出了较大的改动,终于得到了用户的认同!并且,MS在91年底发布了多语言的 Windows 3.0版本,为Windows在非英语国家的推动起到了极大的推动作用。

1992年3月18日
微软发布Windows 3.1版,其销量在2个月内就突破百万大关!这个版本添加了不少对多媒体等的支持。

1993年
微软发布Windows NT 3.1,宣布进入企业服务器操作系统的市场。这个版本是和IBM在OS/2的基础上联合研制的。
1994年
Windows 3.2的中文版发布。国内不少人从这个版本开始接触Windows,我就是其中之一:-)

1995年8月24日
这是微软走向霸主地位的一刻,这个月里,MS推出了让世界为之惊叹的Windows 95!在MS的强大促销攻势之下,Win 95在4天之内就突破了百万大关!从这款操作系统开始,Windows彻底抛弃了对DOS的完全依赖,并从此开始了世人皆知的“Wintel”垄断时代!
1996年8月
NT4.0推出,这是MS服务器OS走向成熟的一步,直到目前都有不少企业仍在使用。同年11月,Windows CE 1.0发布,这是一款面向嵌入式系统的OS,至此,微软的帝国之势已然清晰。

1998年6月25日
(就在我14岁生日的前3天)Windows 98,一款至今尚有不少用户使用的操作系统面世,这款在95基础上研制的OS改良了硬件标准的支持,例如MMX和AGP。其它特性包括对FAT32文件系统的支持、多显示器、Web TV的支持和整合到Windows图形用户界面的Internet Explorer,称为活动桌面(Active Desktop)。 。加上在99年6月10日面世的98 SE,微软的个人桌面垄断已经形成!
P.S. 这款OS在很长一段时间内被认为是玩游戏的最佳平台,直到XP的推出:)我也曾在这里堕落过很长时间......

2000年9月14日
这一天,微软推出了Window ME,这可以认为是9X系列的终结版,但是非常的不稳定,受到很多的批评,我也没用过:P
2000年12月19日
主要面向商业用户的Window 2000面世,包含新的NTFS文件系统、EFS文件加密、增强硬件支持等新特性,向一直被unix系统垄断的服务器市场发起了强有力的冲击,硬生生地从ibm、hp、sun公司口中抢下一大块地盘。Win 2K包含4个版本:
(1)Windows 2000 Professional 即专业版,用于工作站及笔记本电脑。它的原名就是Windows NT 5.0 Workstation。最高可以支持双处理器,最低支持64MB内存,最高支持2GB内存。
(2)Windows 2000 Server 即服务器版,面向小型企业的服务器领域。它的原名就是Windows NT 5.0 Server。最高可以支持4处理器,最低支持128MB内存,最高支持4GB内存。
(3)Windows 2000 Advanced Server 即高级服务器版,面向大中型企业的服务器领域。它的原名就是Windows NT 5.0 Server Enterprise Edition。最高可以支持8处理器,最低支持128MB内存,最高支持8GB内存。
(4)Windows 2000 Datacenter Server 即数据中心服务器版,面向最高级别的可伸缩性,可用性与可靠性的大型企业或国家机构的服务器领域。最高可以支持32处理器,最低支持256MB内存,最高支持64GB内存。

2001年10月25日
Windows XP发布。Windows XP是微软把所有用户要求合成一个操作系统的尝试,和以前的windows桌面系统相比稳定性有所提高,而为此付出的代价是丧失了对基于DOS程序的支 持。由于微软把很多以前是由第三方提供的软件整合到操作系统中,XP受到了猛烈的批评。这些软件包括防火墙、媒体播放器(Windows Media Player),即时通讯软件(Windows Messenger),以及它与Microsoft Pasport网络服务的紧密结合,这都被很多计算机专家认为是安全风险以及对个人隐私的潜在威胁。这些特性的增加被认为是微软继续其传统的垄断行为的持 续。
Windows XP,或视窗XP是微软公司最新发布的一款视窗操作系统。Windows XP于2001年8月24日正式发布(RTM,Release to Manufacturing)。它的零售版于2001年10月25日上市。Windows XP原来的代号是Whistler。字母XP表示英文单词的“体验”(experience)。Windows XP的外部版本是2002,内部版本是5.1(即Windows NT 5.1),正式版的Build是5.1.2600。 微软最初发行了两个版本:专业版(Windows XP Professional)和家庭版(Windows XP Home Edition),后来又发行了媒体中心版(Media Center Edition)和平板电脑版(Tablet PC Editon)等。
Windows XP Professional
专业版除了包含家庭版的一切功能,还添加了新的为面向商业用户的设计的网络认证、双处理器支持等特性,最高支持2GB的内存。主要用于工作站、高端个人电脑以及笔记本电脑。
Windows XP Home Edition
家庭版的消费对象是家庭用户,用于一般个人电脑以及笔记本电脑。只支持单处理器;最低支持64MB的内存(在64MB的内存条件下会丧失某些功能),最高支持1GB的内存。

2003年4月
Windows Server 2003发布;对活动目录、组策略操作和管理、磁盘管理等面向服务器的功能作了较大改进,对.net技术的完善支持进一步扩展了服务器的应用范围。
Windows Server 2003有四个版本:Windows Server 2003 Web服务器版本(Web Edition)、 Windows Server 2003标准版(Standard Edition)、 Windows Server 2003企业版(Enterprise Edition)以及Windows Server 2003数据中心版(Datacenter Edition)。Web Edition主要是为网页服务器(web hosting)设计的,而Datacenter是一个为极高端系统使用的。标准和企业版本则介于两者中间。
Windows Server 2003是目前微软最新的服务器操作系统。
一开始,该产品叫作“Windows .NET Server”,改成“Windows .NET Server 2003”,后最终被改成“Windows Server 2003”,于2003年3月28日发布,并在同年四月底上市。
Windows Server 2003有Web版 、标准版 、企业版和数据中心版等多个版本。

200X年Y月Z日
微软将发布最新款的操作系统Vista,现在已有Beta2测试版可以下载,不过对硬件要求较高,我这老掉牙的本本就只能对它说886......
不过网上倒是口水一片啊!

尽管FreeBSD为用户提供了不少的工具,但要想完成任务,经常还需要安装更多的应用软件。为此,FreeBSD提供了从源代码开始安装的ports技术和直接安装二进制代码的packages技术。目前已经有超过一万个第三方的应用程序供大家使用。
先来看看ports安装。默认的,所有的ports都位于/usr/ports目录下,由Makefile(指出程序应该如何编译及安装在系统的哪些地方)、distinfo(用于文件校验)、pkg-descr(描述该软件的功能等)、pkg-plist(即将被安装的所有文件的列表)、pkg-message,和一个files目录(包含编译和安装需要用到的补丁)。
需要注意,port里仅仅包含如何编译源代码的指令,而不包含真正的源代码。源代码需要从网上或cd上获取,并可能被开发者发布成任何格式(通常是tar或gzip压缩格式)。并且,只有root才能安装ports,而在安装前最好去vuxml.freebsd.org看看是否存在与该port相关的安全问题。
在进入相关目录后,使用make命令就可以开始安装port了。ports会首先在/usr/ports/distfiles下查找是否存在相应源代码,否则会按照Makefile中的指示在网上下载源代码。最后,系统将开始编译源代码。
在编译结束后将返回命令行,此时就可以使用make install命令安装port了。在安装结束后最好使用make clean删除临时工作目录,释放磁盘空间,并避免在升级port时出错。(也可以使用make install clean命令一次性完成上述3个分开的步骤,portslean -D用来清理整个的临时文件空间)
安装好的port可用“pkg_delete port名”来删除,pkg_version -v则可列出提供更新版本的ports信息。portupgrade用来升级port,-a参数表示升级所有安装的port,-i表示在升级前先确认,-R则可指定要升级的port,-P则表示用已编译好的package来升级。
再来看看package的安装。可以使用“pkg_add -r package名”的命令来进行安装,其中参数-r是用来自动从远程主机获得package,若有本地安装包则可省略该参数。
注:所有package都可以通过ftp从ftp://ftp.freebsd.org/pub/freebsd/ports/packages/下载
此外,可以使用pkg_info来列出已安装的所有软件包列表和描述,pkg_version来比较本地package版本与ports目录中的版本是否一致,pkg_delete pkg名 来删除一个安装好的软件。顺便说一句,所有已安装的package信息都保存在/var/db/pkg目录下。
参考资料:The FreeBSD Documentation Project
先来看看ports安装。默认的,所有的ports都位于/usr/ports目录下,由Makefile(指出程序应该如何编译及安装在系统的哪些地方)、distinfo(用于文件校验)、pkg-descr(描述该软件的功能等)、pkg-plist(即将被安装的所有文件的列表)、pkg-message,和一个files目录(包含编译和安装需要用到的补丁)。
需要注意,port里仅仅包含如何编译源代码的指令,而不包含真正的源代码。源代码需要从网上或cd上获取,并可能被开发者发布成任何格式(通常是tar或gzip压缩格式)。并且,只有root才能安装ports,而在安装前最好去vuxml.freebsd.org看看是否存在与该port相关的安全问题。
在进入相关目录后,使用make命令就可以开始安装port了。ports会首先在/usr/ports/distfiles下查找是否存在相应源代码,否则会按照Makefile中的指示在网上下载源代码。最后,系统将开始编译源代码。
在编译结束后将返回命令行,此时就可以使用make install命令安装port了。在安装结束后最好使用make clean删除临时工作目录,释放磁盘空间,并避免在升级port时出错。(也可以使用make install clean命令一次性完成上述3个分开的步骤,portslean -D用来清理整个的临时文件空间)
安装好的port可用“pkg_delete port名”来删除,pkg_version -v则可列出提供更新版本的ports信息。portupgrade用来升级port,-a参数表示升级所有安装的port,-i表示在升级前先确认,-R则可指定要升级的port,-P则表示用已编译好的package来升级。
再来看看package的安装。可以使用“pkg_add -r package名”的命令来进行安装,其中参数-r是用来自动从远程主机获得package,若有本地安装包则可省略该参数。
注:所有package都可以通过ftp从ftp://ftp.freebsd.org/pub/freebsd/ports/packages/下载
此外,可以使用pkg_info来列出已安装的所有软件包列表和描述,pkg_version来比较本地package版本与ports目录中的版本是否一致,pkg_delete pkg名 来删除一个安装好的软件。顺便说一句,所有已安装的package信息都保存在/var/db/pkg目录下。
参考资料:The FreeBSD Documentation Project
FreeBSD是一个多任务的操作系统,也就是说同时可以执行多个程序。一个执行中的程序就是进程。
每个进程都有一个由系统临时分配的唯一标识,称为进程ID(可从1分配到99999),或PID。绝大多数的进程都有一个父进程,即用来启动该进程的进程。但是,在系统中有一个叫做init的进程,其PID始终为1,该进程在FreeBSD启动时由内核自动启动。
例如,用户在shell中执行指令ls,则ls对应的进程就是shell的子进程,shell是ls的父进程。
在FreeBSD中,可以使用ps和top两个指令来察看当前系统中进程的状态。其中,ps会显示当前运行的拥有控制终端的进程的状态,包括PID、运行其的终端、状态、占用的CPU时间和启动其的命令等。ps常用的参数包括:a显示所有运行的进程,u显示进程所属的用户和占用的内存,x显示出后台进程,ww显示完整的命令行。
附:在进程中,有一部分是有终端的,需要和用户进行交互来完成其功能。而另一部分是不需要和用户进行交互的,称为守护进程deamon(通常在名称后加上d表示)。
而top则显示所有的运行进程,包括PID、运行该进程的用户、运行的线程数、优先级、最大内存需求、当前占用内存、进程状态、占用CPU时间和百分比,以及运行该进程的命令等。并且,该进程会默认每2秒刷新一次状态,该参数可以用选项s修改。而在该命令的开始部分,则显示当前总进程数、进程状态统计、CPU状态、内存信息和交换分区的信息等。
在进程间进行通讯可以采用信号的机制。不同的信号根据不同的数字编号有着不同的含义,其中一些有特殊含义,另一些则可被应用程序进行解释。通常,用户只能给自己拥有的进程发送信息,而给其他人发送的信息则可能被kill拒绝。但root可以将各种信号发送给每个进程。
在某些情况下,FreeBSD可以向应用程序发送信号,例如段式违规信号(SIGSEGV)和闹钟信号(SIGALRM)等。可用来终结进程的信号有SIGTERM和SIGKILL,前者可以被进程自行决定是否终结,而接收到后者的进程则必须立刻被终结。
在FreeBSD中可以使用/bin/kill指令来发送信号,其语法是:
kill -s 信号 PID
其中常用的信号包括HUP、INT、QUIT、ABRT、KILL、ALRM、TERM等。
再来看看shell。shell就是命令行界面,其主要功能是从输入取得命令然后去执行之。FreeBSD内含了若干shell,如sh、tcsh等,可以自行选择使用何种shell(默认为csh)。shell的一大特点是能够自动补齐文件名(输入命令或文件名前几个字母后按tab键即可,若不能自动不全则发出响铃)。
shell的另一特点是利用环境变量运行,主要包括USER(当前用户名)、PATH(默认路径名)、DISPLAY(X11显示器的网络名称)、SHELL(当前使用的shell名)、TERM(用户终端的名字)、TERMCAP(各种终端功能所用终端分离编码的基本数据项目)、OSTYPE(操作系统类型)、MACHTYPE(CPU体系结构)、EDITOR(首选的文本编辑器)、PAGER(首选的文本页面调度程序)和MANPATH(联机手册路径)等。在csh下设置变量的指令为:
setenv 变量名 值
显示环境变量值的指令为:
echo $变量名
参考资料:The FreeBSD Documentation Project
每个进程都有一个由系统临时分配的唯一标识,称为进程ID(可从1分配到99999),或PID。绝大多数的进程都有一个父进程,即用来启动该进程的进程。但是,在系统中有一个叫做init的进程,其PID始终为1,该进程在FreeBSD启动时由内核自动启动。
例如,用户在shell中执行指令ls,则ls对应的进程就是shell的子进程,shell是ls的父进程。
在FreeBSD中,可以使用ps和top两个指令来察看当前系统中进程的状态。其中,ps会显示当前运行的拥有控制终端的进程的状态,包括PID、运行其的终端、状态、占用的CPU时间和启动其的命令等。ps常用的参数包括:a显示所有运行的进程,u显示进程所属的用户和占用的内存,x显示出后台进程,ww显示完整的命令行。
附:在进程中,有一部分是有终端的,需要和用户进行交互来完成其功能。而另一部分是不需要和用户进行交互的,称为守护进程deamon(通常在名称后加上d表示)。
而top则显示所有的运行进程,包括PID、运行该进程的用户、运行的线程数、优先级、最大内存需求、当前占用内存、进程状态、占用CPU时间和百分比,以及运行该进程的命令等。并且,该进程会默认每2秒刷新一次状态,该参数可以用选项s修改。而在该命令的开始部分,则显示当前总进程数、进程状态统计、CPU状态、内存信息和交换分区的信息等。
在进程间进行通讯可以采用信号的机制。不同的信号根据不同的数字编号有着不同的含义,其中一些有特殊含义,另一些则可被应用程序进行解释。通常,用户只能给自己拥有的进程发送信息,而给其他人发送的信息则可能被kill拒绝。但root可以将各种信号发送给每个进程。
在某些情况下,FreeBSD可以向应用程序发送信号,例如段式违规信号(SIGSEGV)和闹钟信号(SIGALRM)等。可用来终结进程的信号有SIGTERM和SIGKILL,前者可以被进程自行决定是否终结,而接收到后者的进程则必须立刻被终结。
在FreeBSD中可以使用/bin/kill指令来发送信号,其语法是:
kill -s 信号 PID
其中常用的信号包括HUP、INT、QUIT、ABRT、KILL、ALRM、TERM等。
再来看看shell。shell就是命令行界面,其主要功能是从输入取得命令然后去执行之。FreeBSD内含了若干shell,如sh、tcsh等,可以自行选择使用何种shell(默认为csh)。shell的一大特点是能够自动补齐文件名(输入命令或文件名前几个字母后按tab键即可,若不能自动不全则发出响铃)。
shell的另一特点是利用环境变量运行,主要包括USER(当前用户名)、PATH(默认路径名)、DISPLAY(X11显示器的网络名称)、SHELL(当前使用的shell名)、TERM(用户终端的名字)、TERMCAP(各种终端功能所用终端分离编码的基本数据项目)、OSTYPE(操作系统类型)、MACHTYPE(CPU体系结构)、EDITOR(首选的文本编辑器)、PAGER(首选的文本页面调度程序)和MANPATH(联机手册路径)等。在csh下设置变量的指令为:
setenv 变量名 值
显示环境变量值的指令为:
echo $变量名
参考资料:The FreeBSD Documentation Project