11.1.1 网络操作系统的功能
随着NOS的迅速发展,NOS的功能已相当丰富,本节将从NOS简介、NOS功能和特性、NOS的功能结构、NOS的逻辑构成、NOS与OSI/RM关系、NOS的工作模式几方面做介绍。
1.网络操作系统简介
网络操作系统(NOS)是网络的心脏和灵魂,是向网络计算机提供网络通信和网络资源共享功能的操作系统。它是负责管理整个网络资源和方便网络用户的软件的集合。由于网络操作系统是运行在服务器之上的,因此有时我们也把它称之为服务器操作系统。
网络操作系统与运行在工作站上的单用户操作系统或多用户操作系统由于提供的服务类型不同而有差别。一般情况下,网络操作系统是以使网络相关特性最佳为目的的,如共享数据文件、软件应用以及共享硬盘、打印机、调制解调器、扫描仪和传真机等。一般计算机的操作系统,如DOS和OS/2等,其目的是让用户与系统及在此操作系统上运行的各种应用之间的交互作用最佳。
目前,局域网中主要存在Windows、Linux、UNIX和Netware四类网络操作系统。
(1)Windows系列
Windows操作系统是由微软公司开发的,目前,各企业运行的版本主要有Windows 2000、Windows 2003和Windows 2008。
1)Windows 2000
Windows 2000是一个由微软公司发行于2000年的32位图形商业性质的操作系统。Windows 2000有4个版本:Professional、Server、Advanced Server和Datacenter Server。Windows2000 Professional是桌面操作系统,它的前一个版本是Windows NT4.0 Workstation,适合移动家庭用户使用,可以用于升级Windows9x和NT4。它以NT4的技术为核心,采用标准化的安全技术,稳定性高,最大的优点是不会再像Windows 9x那样频繁地出现非法程序的提示而死机。Windows 2000 Professional功能较强,对硬件要求相对较低,目的是用来在商务环境中替代Windows 95/98,以及Windows NT 4.0 Workstation。该版本可适用于任何规模商务环境中的桌面操作系统以及网络应用的客户端软件。
Windows 2000 Server是服务器版本,它的前一个版本是Windows NT 4.0Server版,Server在NT4的基础上做了大量的改进,在各种功能方面有了更大的提高。Server包含Professional专业版的所有功能和特性,并提供了简单而高效的网络管理服务。Windows 2000 Server是集成终端仿真服务的服务器操作系统。使用终端服务,用户可以从各种早期的设备上访问在服务器上运行的应用程序。例如,用户可以从无法在本地运行软件的硬件设备上访问虚拟Windows 2000 Professional桌面和32位Windows应用程序。由于它还提供远程访问服务(Remote Access Service,RAS)和Internet鉴别服务(Internet Authentication Service,IAS),可以用来改善分支办公室的网络访问能力。
Advanced Server是Server的企业版,它的前一个版本是WindowsNT4.0企业版。与Server版相比,Advanced Server具有更强大的特性和功能。它对SMP(对称多处理器)的支持要比Server更好,支持的数目可以达到4路。它包含Windows 2000服务器版的所有功能和特性,同时增强了扩展性和系统可用性,另外还提供了Windows集群(Clustering)和负载均衡功能。使用集群功能,可以将多台服务器连接在一起,以支持特定的任务,可以帮助诸如数据库的传统业务应用。该版本的设计目的和适用范围是大型企业网和需要较强数据库功能的场合应用。
Datacenter Server包含Windows 2000高级服务器版的所有功能,支持更多的内存和更多CPU,是Windows 2000系列产品中功能最强大的操作系统。该系统可用于大型数据库、经济分析、科学计算以及工程模拟等方面,还可用于联机交易处理。该版本的设计目的和适用范围是大型数据仓库(Data Warehouse)应用、在线事务处理OLTP应用以及大规模仿真应用等。
另外,所有版本的Windows 2000都有一些共同的新特征,如支持新的NTFS文件系统,允许对磁盘上的所有文件进行加密,增强对硬件的支持等。
2)Windows 2003
Windows 2003(全称Windows Server2003)是微软朝.NET战略进发而迈出的真正的第一步。Windows2003起初的名称是Windows.NET Server2003,2003年1月9日正式改名为Windows Server2003,它包括Standard Edition(标准版),Enterprise Edition(企业版),Datacenter Edition(数据中心版)、WebEdition(网络版)4个版本,每个版本均有32位和64位两种编码。它大量继承了WindowsXP的友好操作性和Windows 2000 Sever的网络特性,是一个能同时适合个人用户和服务器使用的操作系统。虽然在名称上,Windows 2 003又延续了Windows家族的习惯命名法则,但从其提供的各种内置服务以及重新设计的内核程序来说,Windows 2003与windows 2000/XP有着本质的区别。Windows 2003对硬件的最低要求不高,和Windows 2000 Server相仿,Enterprise.Edition版本对CPU频率要求133MHz以上,内存最小需求为128MB。
3)windows 2008
Microsoft Windows Server2008内置Web与虚拟化技术,旨在为各企业用户的服务器基础架构提供更高的可靠性与灵活性。它包含有全新的虚拟化工具、Web技术以及增强的安全性,不仅有助于节省时间、降低成本,而且还能为动态数据中心提供一个高性能平台。另外,诸如Internet Information Server7.0(IIS7)、Windows Server Manager以及Windows PowerShell等功能强大的新工具可对服务器进行更完善的控制,并极大优化Web、配置和管理任务。高级安全性与增强的可靠性,如网络访问保护(NAP)与只读域控制器(RODC),不仅显著提升操作系统的性能,而且还可保护服务器环境,为创建应用提供一个坚实的基础平台。
Windows Server 2008是一个功能强大的Web应用和服务平台,允许各企业用户高效提供基于Web的丰富体验。Windows Server 2008中的Internet Information Server 7.0(IIS7)不但提供改进的管理和诊断功能、更好的开发和应用工具,而且也大幅降低基础架构的成本。此外,它还是完全模块化、可扩展的Web服务器,具有增强的应用托管功能,同时保持出色的兼容性并能应对客户所面临的关键挑战。
使用Windows Server 2008内置的服务器虚拟化技术,企业用户可以极大降低成本、增加硬件使用率、优化基础架构并提高服务器可用性。Windows服务器的虚拟化技术使用基于64位Hypervisor平台来提高可靠性和可扩展性。借助Hyper-V,企业用户通过服务器整合优化硬件资源。此外,Hyper-V还和Windows Server2008集成,利用诸如故障转移群集等组件来提供高可用性,利用网络访问保护(NAP)隔离运行状况不佳的虚拟机。
Windows Server 2008是迄今为止最安全的Windows服务器,它拥有诸如网络访问保护(NAP)、联合权限管理(Federated Rights Management)以及只读域控制器(RODC)等加强的操作系统和安全创新,能够为企业用户的数据提供前所未有的保护。
Windows Server 2008包括增强的安全性和合规性、更高级的加密技术以及改进的审核和安全启动工具。它采用权限管理服务(RMS)、BitLocker以及组策略(GroupPolicy)等技术帮助企业用户防止数据被窃取。
Windows Server 2008是迄今为止最灵活和出色可靠的Windows服务器操作系统。Windows Server2 008采用诸如服务器核心(Server Core)、Power Shell、Windows Deployment Services(WDS)以及增强的网络和群集等全新技术和特性,确保为您提供最通用和最可靠的Windows平台,从而最大限度满足您的所有工作负荷和应用的需求。
(2)UNIX系列
UNIX操作系统(UNIX)是一个强大的多用户、多任务操作系统,支持多种处理器架构。
1)UNIX的发展
UNIX的发展可以分为两个阶段。
第一阶段为UNIX的初始发展阶段。UNIX最早由肯·汤普森(KenT hompson)和丹尼斯·利奇(Dennis Ritchie)于1969年在AT&T的贝尔实验室开发。UNIX最初是用汇编语言编写的,一些应用则是由叫做B语言的解释型语言和汇编语言混合编写的。此后的10年,UNIX在学术机构和大型企业中得到了广泛的应用。当时的UNIX拥有者AT&T公司以低廉甚至免费的许可将UNIX源码授权给学术机构做研究或教学之用,许多机构在此源码基础上加以扩充和改进,形成了所谓的UNIX“变种(Variations)”,这些变种反过来也促进了UNIX的发展,其中最著名的变种之一是由加州大学Berkeley分校开发的BSD产品。BSD在发展中也逐渐衍生出FreeBSD、OpenBSD和NetBSD3个主要的分支。
此后的几十年中,UNIX仍在不断变化,其版权所有者不断变更,授权者的数量也在增加。有很多大公司在取得了UNIX的授权之后,开发了自己的UNIX产品。由于B语言在进行系统编程时不够强大,所以Thompson和Ritchie对其进行了改造,并于1971年共同发明了C语言。1973年Thompson和Ritchie用C语言重写了UNIX。用C语言编写的UNIX代码简洁紧凑,易移植,易读,易修改,为此后UNIX的发展奠定了坚实的基础。
第二阶段为20世纪80年代,这是UNIX的丰富发展时期,在UNIX发展到了版本6之后,一方面AT&T继续发展内部使用的UNIX版本7,另一方面也发展了一个对外发行的版本,但改用System加罗马字母作版本号来称呼它。1982年,AT&T基于版本7开发了UNIX SystemⅢ的第一个版本,这是一个商业版本,仅供出售。为了解决混乱的UNIX版本情况,AT&T综合了其他大学和公司开发的各种UNIX,开发了UNIX SystemⅤRelease1。SystemⅢ和SystemⅤ都是相当重要的UNIX版本。这个新的UNIX商业发布版本不再包含源代码,所以加州大学Berkeley继续开发BSDUNIX,作为UNIX SystemⅢ和Ⅴ的替代选择。BSD对UNIX最重要的贡献之一是TCP/IP。4.2BSD中也派生出了多种商业UNIX版本如IBM的AIX,HP的HP-UX,SUN的Solaris和SGI的IRIX等。表11-1列出了不同的UNIX版本。
表11-1 UNIX版本
UNIX版本
2)UNIX操作系统的功能特性
UNIX是一个功能强大的多用户、多任务操作系统,它支持多种处理器架构,技术成熟,可靠性高,网络和数据库功能强,伸缩性突出以及开放性好。其突出特点主要有如下几个方面。
·系统安全、稳定。UNIX在安全性和稳定性等方面都有非常突出的表现,使用UNIX的服务器很少出现死机、系统瘫痪等现象。UNIX采取许多安全技术措施,它对文件和目录权限、用户权限及数据都有非常严格的保护措施,这为网络多用户环境中的用户提供了必要的安全保障。
·多用户、多任务操作系统。UNIX是一个通用的多任务、多用户的操作系统。多用户是指系统资源可以被不同的用户各自拥有使用,每个用户对自己的资源(如文件、设备)有特定的权限且互不影响。UNIX支持对用户的分组,系统管理员可以将多个用户分配在同一个工作组中。多任务是指计算机同时执行多个程序,而且各个程序的运行相互独立。运行UNIX的计算机在同一时间能够支持多个计算机程序,其中典型的是支持多个登录的网络用户。
·良好的用户界面。UNIX向用户提供了用户界面和系统调用两种界面。UNIX的传统用户界面是基于文本的命令行界面,即shell,它既可以联机使用,也可在文件中脱机使用。shell有很强的程序设计能力,可以将多条命令组合在一起,形成一个shell程序,这个程序可以单独运行,也可以与其他程序同时运行。UNIX还为用户提供了图形用户界面。它利用鼠标、菜单、窗口和滚动条等设施呈现给用户一个直观、易操作的图形化界面。
·设备独立性。UNIX的设备独立性是指操作系统把文件、目录与设备统一当成文件来看待,只要安装它们的驱动程序,任何用户都可以像使用文件一样使用这些设备,而不必知道它们的具体存在形式。当需要增加新设备时,系统管理员就在内核中增加必要的连接。这种连接(也称为设备驱动程序)保证每次调用设备提供服务时,内核以相同的方式处理它们。当新的、更好的外部设备被开发并交付给用户时,操作系统允许在这些设备连接到内核后,能够不受限制地立即访问它们。设备独立性的关键在于内核的适应能力。其他操作系统只允许一定数量或一定种类的外部设备连接,而具备设备独立性的操作系统能够容纳任意种类与任意数量的设备,因为每一个设备都是通过与内核的专用连接独立地进行访问。
·良好的移植性。UNIX是一种可移植的操作系统,能够在从微型计算机到大型计算机的任何环境和任何平台上运行。
·丰富的网络功能。UNIX长盛不衰的一个重要原因是它一开始就使用了TCP/IP作为主要的通信协议,从而使它与Internet之间最早建立了紧密的联系,体现出了自己的优势。UNIX服务器在Internet服务器中80%以上,占绝对优势。此外,UNIX还支持所有常用的网络通信协议,包括NFS、IPX/SPX、SLIP、PPP等,使得UNIX系统能方便地与已有的主机系统,以及各种局域网和广域网相连接,这也是UNIX具有出色的互操作性的根本原因。
当然,从应用的角度来看,UNIX也存在一些不足。UNIX对一般用户来说难以掌握,尤其是对没有网络安装和维护经验的用户,在短时间内掌握UNIX是非常困难的。因为UNIX系统自身非常庞大,不同功能之间的关联性很强。随着局域网操作系统的多元化,目前,UNIX的重点是大型的高端网络应用领域,如建立Internet网站、组建广域网或大型局域网等,在一般的中小型局域网中没有必要使用UNIX。
(3)Linux操作系统
Linux出现,最早始于一位名叫Linus Torvalds的芬兰赫尔辛基大学的学生。他最初是以MINIX(由一位名叫Andrew Tannebaum的计算机教授编写的一个微型UNIX操作系统示教程序)为开发平台,开发了第一个程序。随着程序的不断完善,他想设计一个代替MINIX的操作系统,这个操作系统可用于386、486或奔腾处理器的个人计算机上,并且具有UNIX操作系统的全部功能,于是开始了Linux雏形的设计。1993年,Linux的第一个“产品”Linux 1.0问世,并且是按完全自由发行版权发行,所有的源代码公开,任何人不得从中获利;1.3版开始,Linux向其他硬件平台移植;2.1版开始,Linux走向高端;2.4.17开始支持超线程。
1)Linux的主要特点
Linux是全面的多任务和真正的32位操作系统,性能高,安全性强。Linux是UNIX系统的变种,因此也就具有了UNIX系统的一系列优良特性,此外还具有以下特点。
·与UNIX兼容。现在,Linux已成为具有全部UNIX特征,遵从POSIX标准的操作系统。所谓POSIX是可移植操作系统接口(Portable Operating System Interface)的首字母缩写,遵从此标准,则为一个POSIX兼容的操作系统编写的程序,应该可以在任何其他的POSIX操作系统(即使是来自另一个厂商)上编译执行。事实上,几乎所有UNIX的主要功能都有相应的Linux工具和实用程序。对于UNIXSystemⅤ来说,其软件程序源码在Linux上重新编译之后就可以运行;而对于BSDUNIX,它的可执行文件可以直接在Linux环境下运行。因此,Linux实际上就是一个完整的UNIX类操作系统。Linux系统上使用的命令多数都与UNIX命令在名称、格式、功能上相同。Linux支持一系列的UNIX开发工具,几乎所有的主流程序设计语言都已移植到Linux上并可免费得到,如C、C++、Fortran77、ADA、PASCAL、Modual2、Modual3、Tcl/TkScheme、SmallTalk/X等。
·自由软件,源码公开。Linux项目从一开始就与GNU项目紧密结合起来,它的许多重要组成部分直接来自GNU项目。任何人只要遵守GPL条款,就可以自由使用Linux源程序。这样就激发了世界范围内热衷于计算机事业的人们的创造力。通过Internet,这一软件被迅速传播和使用。
·便于定制和再开发。在遵从通用性公开许可证(General Public License,GPL)版权协议的条件下,各部门、企业、单位或个人可根据自己的实际需要和使用环境对Linux系统进行裁剪、扩充、修改,或者再开发。
2)Linux的版本
核心版本的核心主要是Linux的内核,Linux内核的官方版本由Linus Torvalds本人维护着。核心版本的序号由3部分数字构成,其形式为major.Minor.patchlevel。其中,major为主版本号,minor为次版本号,两者共同构成了当前核心版本号;patchlevel表示对当前版本的修订次数。例如,2.4.18表示对核心2.4版本的第18次修订。根据约定,次版本号为奇数时,表示该版本加入新内容,但不一定很稳定,相当于测试版。次版本号为偶数时,表示这是一个可以使用的稳定版本。
发行版本是各个公司推出的版本,它们与核心版本是各自独立发展的。发行版本通常内附有一个核心源码,以及很多针对不同硬件设备的核心映像,所以发行版本是一些基于Linux核心的软件包。目前常见的Linux发行版本有:RedHat、Slackware、Debian、SuSE、Open Linux、Turbo Linux、RedFlag、Mandrake、BluePoint等。下面介绍常见的发行版本。
·RedHat Linux:http://www.redhat.com。
RedHat Linux是由RedHa t Software公司发布的,是当前著名的Linux版本。RedHat比其他流行的Linux版本问世得要晚,但它后来居上,其核心二进制码约有200MB。该产品支持Intel、Alpha和SPARC的很多硬件平台,有优秀的安装界面、独特的RPM(软件包管理器)升级方式、丰富的软件包、方便的系统管理界面及详细且完整的联机文档。其独有的RPM模块功能使得软件的安装非常方便。
单是RedHat也有以下多个版本可以选择。
RedHat系列:RedHat推出的个人桌面版本,目前的最高版本是9.0,同时也是最终的版本,取而代之的是FC系列。
Fedora Core系列:其实Fedora Project原来就是在Red Hat的基础上开发的。后来,RedHat宣布和Fedora Project联手,所以也可以把Fedora Project看成Red HatLinux的第二品牌。现在最高的版本应该是FC19,FC系列延续了Red Hat的热潮,在中国依然是使用数量最多的一族。
·Debian Linux:http://www.debian.org。
Debian Linux基于标准Linux内核,二进制码近400MB,而且安装也很方便。DebianLinux包含了数百软件包(为了方便用户使用,这些软件包都已经被编译包装为一种方便的格式—deb包,每一个软件包均为独立的模块单元,不依赖于任何特定的系统版本,每个人都能创建自己的软件包。Debian也称为GNU/Linux,与GNU的关系紧密,由一群自愿者进行维护和升级。Debian主要分3个版本:稳定版本(stable)、测试版本(testing)、不稳定版本(unstable)。
·SuSE:http://www.suse.com。
SuSE是德国最著名的Linux发行版,在全世界范围中也享有较高的声誉,SuSELinux以华丽的界面和极佳的易用性举世闻名。SUSE自主开发的软件包管理系统YaST也大受好评。SUSE于2003年年末被Novell收购,SuSE9.1是Novell收购SuSE和Ximian之后推出的第一个发行版。和其他任何Linux发行版一样,SuSE Linux9.1中包含了大部分开源社区中的软件以及一些非常流行的专有软件。
·TurboLinux:http://www.turboLinux.com。
TurboLinux公司从1997年夏天开始开发Linux操作系统,同年12月发售TurboLinux1.0版本。主要产品有TurboLinux Workstation(工作站,开发专用)、TurboLinux Server(服务器,网络服务专用)、TurboLinux ClusterServer(集群服务器)、TurboLinux DataServer(数据库服务器)、TurboLinux TurboHA(高可靠性集群服务器)、En-fuZion(并行计算集群服务器)及TurboLinux PowerSolutions(中小企业总体解决方案)。
·RedFlag:http://www.redflag-Linux.com。
红旗Linux是由北京中科红旗软件技术有限公司开发研制的,目前主要有服务器版本和桌面版本。服务器版本在以Intel和Alpha芯片为CPU的平台上运行,桌面版本可以在Intel、Pentium及ADM、Cryix等x86兼容处理机的个人计算机上运行。红旗Linux具有人性化、易用化的交互界面,采用KDE图形操作环境、类Windows的窗口界面风格和鼠标及快捷键操作方式;全程的中文信息处理平台,支持国家GB18030编码标准,拥有高达27000汉字的矢量字库,可以进行该编码的汉字输入及打印;提供符合用户使用习惯的操作界面;提供了多种汉字输入法;集成了丰富的应用软件,包括电话拨号工具、上网浏览器、邮件客户端等网络应用软件,以及功能强大的绘图软件、图片查看工具、MP3播放器等;具备更广泛的硬件支持能力和扩充性。
(4)NetWare
NetWare是Novell公司推出的网络操作系统,也是第一个不使用UNIX来实现PC机之间文件共享的网络操作系统。NetWare最重要的特征是基于基本模块设计思想的开放式系统结构。NetWare是一个开放的网络服务器平台,可以方便地对其进行扩充。NetWare系统对不同的工作平台、不同的网络协议环境以及各种工作站操作系统提供了一致的服务。该系统可以增加自选的扩充服务(如替补备份、数据库、电子邮件以及记账等),这些服务可以取自NetWare本身,也可取自第三方开发者。
NetWare是多任务、多用户的网络操作系统,它的较高版本提供系统容错能力。使用开放协议技术,各种协议的结合使不同类型的工作站可与公共服务器通信。这种技术满足了广大用户在不同种类网络间实现互相通信的需要,实现了各种不同网络的无缝通信NetWare通常使用IPX/SPX协议栈将消息从服务器传送到工作站。NetWare服务器对无盘工作站和游戏的支持较好,常用于教学网和游戏厅,主流是NetWare5版本,为需要在多厂商产品环境下进行复杂的网络计算的企事业单位提供了高性能的综合平台。
(5)几种网络操作系统的对比
各种操作系统都有其优缺点,各种操作系统对比如下。
1)Linux与UNIX的比较
从理念上来讲,Linux和UNIX是完全或部分开放源代码的系统。Linux的源代码完全开放,任何人都能得到源代码,并对源代码随意改动。基于UNIX的系统,如Sun或惠普的系统,其部分源代码对开源团体开放。Linux免费,UNIX昂贵;Linux移植性好,UNIX捆绑性强;Linux应用广泛,前途无量,UNIX基于高端,发展缓慢。
2)Linux与Windows的比较
与Windows相比,Linux操作系统可以从互联网上免费下载使用,而且Linux上的绝大多数应用程序也是免费可得的,Linux最早诞生于微机环境,一系列版本都充分利用了X86CPU的任务切换能力,使X86CPU的效能发挥得淋漓尽致,而这一点连Windows都没有做到。Linux充分利用了X86CPU的任务切换机制,实现了真正多任务、多用户环境,允许多个用户同时执行不同的程序,并且可以给紧急任务以较高的优先级。此外,Linux可以很好地运行在由各种主流RISC芯片(ALPHA、MIPS、PowerPC、UltraSFARC、HP-PA等)搭建的机器上。
从发展的背景看,Linux是从一个比较成熟的操作系统发展而来的,而Windows自成体系,无对应的相依托的操作系统。这一区别使得Linux的用户能大大地从UNIX团体贡献中获利。UNIX上的绝大多数命令都可以在Linux里找到并有所加强。UNIX的可靠性、稳定性以及强大的网络功能也在Linux身上一一体现。Linux遵循POSIX标准,使UNIX下许多应用程序可以很容易地移植到Linux下,而Windows则不行。
通过比较可以得知,UNIX具有非常好的安全性和实时性,广泛用在金融、银行、军事及大型企业网络上。Windows NT/2000/2003 Server/2003 Server是简单易用的操作系统,适合中小型企业及网站建设。Linux具有高的安全性和稳定性,一般用做网站的服务器和邮件服务器。Novell是工业控制、生产企业、证券系统比较理想的操作系统。
2.网络操作系统的功能和特性
一般地,计算机的操作系统(如DOS和OS/2等)的目的是让用户与系统及在此系统上运行的各种应用之间的交互作用最佳,而网络操作系统的基本任务是用统一的方法管理各主机之间的通信和共享资源的利用,它是以使网络相关特性达到最佳为目的的,如共享数据文件、软件应用以及共享硬盘、打印机、调制解调器、扫描仪和传真机等。
(1)网络操作系统的功能
为完成此任务,网络操作系统必须具有网络通信、资源管理、网络服务、网络管理、互操作及提供网络接口等基本功能。
1)网络通信
这是网络最基本的功能,其任务是在源主机和目标主机之间实现无差错的、透明的数据传输,它能完成以下主要功能。
·建立和拆除通信链路:为通信双方建立—条暂时性的通信链路。
·传输控制:对传输中的分组进行路由选择和流量控制。
·差错控制:对传输过程中的数据进行差错检测和纠正等。
通常这些功能由链路层、网络层和传输层硬件以及相应的网络软件共同完成。
2)资源管理
网络操作系统采用有效的方法统一管理网络中的共享资源(硬件和软件),协调各用户对共享资源的使用,保证数据的安全性和一致性,使用户在访问远程共享资源时能像访问本地资源一样方便。
3)网络服务
在前两个功能的基础上,网络操作系统向用户提供多种有效的网络服务,如电子邮件服务、远程访问服务、Web服务、文件传输服务以及共享打印服务等。
4)网络管理
网络管理最主要的任务是安全管理,主要反映在通过“存取控制”来确保数据的安全性,通过“容错技术”来保证系统故障时数据的可靠性。此外,还包括对网络设备故障进行检测、对使用情况进行统计等。
5)互操作
互操作就是把若干相同或不同的设备和网络互连,用户可以透明地访问各服务点、主机,以实现更大范围的用户通信和资源共享。
6)提供网络接口
向用户提供一组方便有效的、统一的、获取网络服务的接口以改善用户界面,如命令接口、菜单、窗口等。
总之,网络操作系统要处理资源的最大共享及资源共享的受限性之间的矛盾。一方面网络操作系统能够提供用户所需要的资源及其对资源的操作、使用,为用户提供一个透明的网络;另一方面网络操作系统对网络资源要有一个完善的管理,对各个等级的用户授予不同的操作使用权限,保证在一个开放的、无序的网络里,数据能够有效、可靠、安全地被用户使用。
(2)网络操作系统的特征
网络操作系统具有操作系统的基本特征,如并发性,包括多任务、多进程、多线程;共享性,包括资源的互斥访问、同时访问;虚拟性,即把一个物理上的对象变成多个逻辑意义的对象。网络操作系统也具有以下特征。
1)硬件独立性
网络操作系统应独立于具体的硬件平台,支持多平台,即系统应该可以运行于各种硬件平台之上。如既可以运行于基于X86的Intel系统,还可以运行于基于RISC精简指令集的系统。用户操作系统迁移时,可以直接将基于Intel系统的机器平滑转移到RISC系列主机上,不必修改系统。为此微软公司提出了HAL(硬件抽象层)的概念。HAL与具体硬件平台无关,改变硬件平台,只要改换其HAL,无须作其他变动,系统就可以作平稳转换。
2)网络特性
网络操作系统能够连接不同的网络,提供必要的网络连接支持;能够支持各种的网络协议和网络服务;具有网络管理的工具软件,能够方便地完成网络的管理。
3)有很高的安全性
网络操作系统能够进行系统安全性保护和各类用户的存取权限控制;能够对用户资源进行控制,提供用户对网络的访问方法。
当然,网络操作系统还具有可移植性和可集成性。在多用户环境下,网络操作系统给应用程序及其数据文件提供了足够的、标准化的保护。在多进程系统中,为了避免两个进程并行处理所带来的问题,可以采用多线程的处理方式。抢先式多任务就是操作系统不专门等待某一线程完成后,再将系统控制交给其他线程,而是主动将系统控制交给首先申请得到系统资源的其他线程,这样使得系统具有更好的操作性能。另外,支持SMP(对称多处理器)技术也是对现代网络操作系统的基本要求。
3.网络操作系统的功能结构
单机操作系统的最大特点是封闭性,即它有自己的用户、自己的资源、自己的规程和协议。用户只能利用特定的语言和操作命令,并按照系统的协议去控制作业的运行和调动各种资源。计算机系统一旦加入计算机网络后,为了适应同一网络中多系统、多用户信息交换的新局面,就要适当地改变封闭性的特性,于是就出现了面向网络的开放式计算机系统。由于入网后的计算机系统连接到通信网并与网中各种资源相连,所以不但大大地扩大了本机用户可用资源的范围,也使本身的用户范围从本机用户扩大到网际用户。这一新的情况实际上为原来的单机操作系统提供了一个网络环境,于是要求操作系统既要为本机用户提供简便有效的使用网络资源的手段,又要为网络用户提供使用本机资源的服务,即单机操作系统必须向网络环境下的操作系统发展。
为了实现这一要求,网络环境下的操作系统除了原计算机操作系统所具备的模块外还需配置一个网络通信管理模块。该模块是操作系统和网络之间的接口,它有两个界面,一个与网络相接,另一个与本机系统相连,分别称为网络接口界面和系统接口界面。其模型如图11-1所示。
图11-1 网络环境下的操作系统
网络接口界面的主要功能是使本机系统和网中其他系统之间实现资源共享,因此需要配置—套支持网络通信协议的软件,称为网络协议软件。系统接口界面的主要功能是实现本机系统中的系统进程或用户进程,以便简便地访问网中各种资源,也实现网络中其他用户访问本机资源。因此需要配置—套与原系统相一致的原语和系统调用命令。
4.网络操作系统的逻辑构成
目前所存在的NOS大都是网络环境下的操作系统,它们全部采用了层次结构,其分层方式与ISOOSI/RM大体相对应,NOS大多数采用客户机/服务器模式,在网络服务器上配置NOS的核心部分,对客户配置工作站网络软件,这样一来,就NOS的配置而言,NOS可分为网络环境软件、网络管理软件、工作站网络软件和网络服务软件4部分。
(1)网络环境软件
网络环境软件配置于服务器上,它使高速并发执行的多任务具有良好的网络环境;管理工作站与服务器之间的传送;提供高速的多用户文件系统。网络环境软件包括:多任务软件——用于支持服务器中多个进程(网络通信进程、多个服务器进程、磁盘进程、假脱机打印进程)的并发执行;传输协议软件——配合网络硬件,支持工作站与服务器之间的交互,传输协议软件分布于多个网络层次上,目前用得最多的TCP/IP协议软件;多用户文件系统形成软件——将DOS环境下的单用户文件系统形成多用户文件系统,以支持多用户对文件的同时访问和共享。总之,网络环境软件是强化网络环境所需的操作软件。
(2)网络管理软件
网络管理软件是用于网络管理的操作软件,包括安全性管理软件——通过对用户赋予不同的访问权限,对文件和目录规定不同的访问权限来实现对数据的保护,这种为管理所配置的软件就是安全性管理软件;容错管理软件——当采用容错技术保证数据不因系统故障而丢失或出错时采用的软件;备份软件——实现数据保护而备份时采用的软件;性能监测软件——对网络运行情况及网络性能进行监测而采用的软件。性能监测的范围是网络中分组的流量、服务器性能、硬盘性能、网络接口的操作情况等。
(3)工作站网络软件
工作站网络软件配置于工作站上,它能实现客户机与服务器的交互,使工作站上的用户能访问文件服务器的文件系统、共享资源。工作站网络软件主要有重定向程序和网络基本输入/输出系统。
1)重定向程序(Redirector)
对客户机/服务器模式而言,为了使用户能以相同的方式访问本地DOS系统与文件服务器,在工作站配置了DOS/网络请求解释程序,以正确导向工作站发出的请求,或导向到本地DOS(对本地请求)或导向到服务器(对服务器服务请求)。为了对DOS/网络请求解释程序标准化,1984年IBM公司推出了IBMPC网络的Redirector,其目的是使该程序成为IBMPC网的DOS请求解释程序的标准。Redirector很快被各大计算机公司所接受,已成为一个事实上的工业标准。
2)网络基本输入/输出系统(NETBIOS)
对客户机/服务器模式来说,为了使客户机能与服务器进行交互,使工作站对服务器的请求数据单元传送给服务器,使服务器的响应返送给工作站,就必须在工作站的网络应用软件和计算机网络的硬件之间配置按协议传输信息的传输协议软件,1984年IBM公司宣布Redirector的同时还宣布了NETBIOS,目的是使该程序成为IBMPC网的传输协议软件的标准。由于NETBIOS具有与硬件软件无关的特性,因而具有较好的移植性,NETBIOS主要支持ISOOS/RM的两个层次:支持数据链路层在网络的相邻工作站之间传送数据单元;支持会话层,以协调两工作站应用层之间的相互作用,应用程序可利用NETBIOS所提供的会话支持命令来请求开始会话、交换信息或结束会话等。
(4)网络服务软件
网络服务是面向用户的,它是否受到用户的欢迎主要取决于NOS所提供的网络服务软件是否完善。网络服务软件配置在系统服务器上或工作站上。NOS提供的网络服务软件主要有以下几种。
1)多用户文件服务软件
它为用户程序对服务器中的目录和文件进行有效访问提供了手段,即先由用户向服务器提出文件服务请求,然后由工作站网络服务软件将该请求传送给服务器。该软件既能保证多用户共享目录和文件,又保证两个以上工作站不能同时访问某一存储空间保证数据的安全性。
2)名字服务软件
用于管理网络上所有对象的名字,如进程名、服务器名、各种资源名、文件和目录名等。当用户要访问某一对象时,只需给出该对象的名字即可,并不需要知道该对象的物理地址,名字服务软件能实现寻址和定位服务。
3)打印服务软件
将用户的打印信息在服务器上生成假脱机文件,并送打印机队列中等待打印的软件。
4)电子邮件服务软件
工作站用户利用该软件把邮件发送给网中其他工作站的用户,实现多地、多址、广播式电子邮件服务。
5.网络操作系统与OSI/RM
对计算机网络(如局域网),常从3个侧面(功能特性、系统构成、体系结构)进行介绍,介绍网络操作系统也是这样。前面已从功能特性、系统构成方面对NOS进行了简略介绍,这里介绍NOS和OSI/RM的对应关系。目前操作系统的发展,使NOS在OSI/RM中的分布大致如图11-2所示。这种分布并未标准化。
图11-2 NOS在OSI-RM中的分布
从分层的角度讲,NOS主要包括3部分:网络驱动程序、网络协议软件和应用程序接口软件。
NOS几乎占据了OSI/RM的所有层,其中,网络驱动程序与网络主要硬件(分布于物理层和数据链路层)进行通信,驱动网络运行。例如,在局域网中网络驱动程序介于网络接口板(NIC)与网络协议软件之间,起中间联系作用。网络协议软件是在整个网络范围内传送数据单元所必需的通信协议软件。主要分布于OSI/RM的第2~7层。应用程序接口操作软件用于应用软件与网络协议软件的通信,支持NOS实现高层服务。下面介绍局域网的NOS分层结构。
(1)网络驱动程序
就局域网而言,网卡生产厂商必须提供每种网卡对应的驱动程序,以确保各种网卡都采用国际标准协议。通常,厂商随同网卡提供适用于不同操作系统的各种驱动程序。网络驱动程序屏蔽了网卡接收和发送数据单元的复杂处理过程,它直接对网卡的各种控制/状态寄存器、DMA(直接存储器存取)、I/O(输入/输出)端口进行硬件级操作。
(2)网络协议软件
由于网络协议软件几乎分布在网络的所有层,因此它直接关系到网络操作系统的性能。例如,高速网络协议的软件会实现NOS的高速处理。
(3)应用程序接口软件(API)
应用层提供多种应用协议和服务,其中应用服务与应用程序之间的接口软件完成本地系统与网络环境的联系。这种软件也属于NOS。
6.网络操作系统的工作模式
网络操作系统的工作模式主要有以下3种。
(1)对等式网络
在对等式网络结构中,没有专用的服务器,每一个节点之间的地位相同,因此对等网也常常被称为工作组。对等网一般常采用星形拓扑结构,最简单的对等网就是使用双绞线直接相连的两台计算机。在对等网络中,计算机的数量通常不会超过10台,网络结构相对比较简单。
对等网除了共享文件之外,还可以共享打印机以及其他网络设备。因为对等网不需要专门的服务器来支持网络,也不需要其他组件来提高网络的性能,因而对等网络的价格相对其他模式的网络来说要便宜很多。当然它的缺点也是非常明显的,那就是提供较少的服务功能,并且难以确定文件的位置,使得整个网络难以管理。
(2)文件服务器模式
文件服务器模式是通过若干台工作站与一台或多台文件服务器通信线路连接起来,存取服务器文件,共享存储设备的工作模式,在这种模式下,数据的共享大多是以文件形式通过对文件的加锁、解锁来实施控制的,各用户之间的文件共享只能依次进行,不能对相同的数据做同时更新。文件服务器的功能有限,它只是简单地将文件在网络中传来传去,增加了大量的不必要的网络流量。当数据库系统和其他复杂而又被不断增加的用户使用的应用系统到来的时候,服务器已经不能承担这样的任务了,因为随着用户的增多,为每个用户服务的程序也会相应增多,每个程序都是独立运行的大文件,给用户的感觉是极慢的,因此产生了客户机/服务器模式。
(3)客户机/服务器模式
作为文件服务器模式的发展,在网络中通常采用客户机/服务器(Client/Server,C/S)模式。Server是提供服务的逻辑进程。它可以是一个进程,也可以是由多个分布进程所组成。向Server请求服务的进程称为该服务的Client。Client和Server可以在同一机器上,也可以在不同的机器上。一个Server可以同时又是另一个Server的Client,并向后者请求服务。通常其中一台或几台较大的计算机集中进行共享数据库的管理和存取,而将其他的应用处理工作分散到网络中的其他计算机上去做,构成分布式的处理系统,服务器控制管理数据的能力已由文件管理方式上升为数据库管理方式,因此,客户机/服务器结构的服务器也称为数据库服务器,注重于数据定义、存取安全备份及还原,并发控制及事务管理,执行诸如选择检索和索引排序等数据库管理功能,它有足够的能力做到把通过其处理后用户所需的那一部分数据而不是整个文件通过网络传送到客户机,减轻了网络的传输负荷。
浏览器/服务器(Browser/Server,BIT/S)是一种特殊形式的客户机/服务器模式,在这种模式中客户端为一种特殊的专用软件——浏览器。这种模式下由于对客户端的要求很少,不需要另外安装附加软件,在通用性和易维护性上具有突出的优点。这也是目前各种网络应用提供基于Web的管理方式的原因。在浏览器/服务器模式中,往往在浏览器和服务器之间加入中间件,构成浏览器——中间件——服务器结构。