操作系统文献综述-程序员宅基地

技术标签: 操作系统  

  作系统(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。随着计算机技术的发展,操作系统不可避免地出现在历史的舞台中。作为计算机资源的调度者和软硬件的交互者,操作系统不仅需要为各项软件提供内存的分配与管理,决定系统资源供需的优先次级,而且要提供用户与系统交互的界面,使计算机更易于使用。可以说,操作系统是计算机系统中举足轻重的重要部分。本文首先将全面梳理并对比目前市场主流操作系统:WindowsUnixLinux他们的特点与性能,并指出他们的存在的问题,最后对操作系统的未来发展进行展望。

  操作系统,性能,WindowsUnixLinuxMAC

 

Abstract  Operating system (OS) is a computer program that manages and controls computer hardware and software resources. It is the most basic system software directly running on "bare machine". Any other software can only run under the support of the operating system. With the development of computer technology, operating systems inevitably appear on the stage of history. As a dispatcher of computer resources and an interactor of software and hardware, the operating system not only needs to provide memory allocation and management for various software, and determine the priority of the supply and demand of system resources, but also provide an interface between users and the system to make the computer more Easy to use. It can be said that the operating system is an important part of the computer system. This article first comprehensively sorts out and compares the characteristics and performance of the current mainstream operating systems in the market: Windows, Unix, and Linux, and points out their existing problems, and finally looks forward to the future development of the operating system.

Keywords     Operating System, Performance, Windows, Unix, Linux, MAC

 

 

引言

操作系统(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。随着计算机技术的发展,操作系统不可避免地出现在历史的舞台中。作为计算机资源的调度者和软硬件的交互者,操作系统不仅需要为各项软件提供内存的分配与管理,决定系统资源供需的优先次级,而且要提供用户与系统交互的界面,使计算机更易于使用。可以说,操作系统是计算机系统中举足轻重的重要部分。如今,市面上主流的操作系统主要有如下三个:Windows,Unix和Linux。这三大操作系统各有特点,也在不同的领域中发挥着巨大的作用。分析这三类操作系统的特点和性能,指出他们存在的问题,就成为一项热点任务。

 

主流操作系统

2.1  Windows

2.1.1  Windows介绍

Microsoft Windows操作系统是美国微软公司研发的一套操作系统,它问世于1985年,起初仅仅是Microsoft-DOS模拟环境,后续的系统版本由于微软不断的更新升级,不但易用,也成为了当前应用最广泛的操作系统。

Windows采用了图形化模式GUI,比起从前的Dos需要输入指令使用的方式更为人性化。随着计算机硬件和软件的不断升级,微软的 Windows也在不断升级,从架构的16位、32位再到64位,系统版本从最初的 Windows 1.0到大家熟知的 Windows 95、 Windows 98、 Windows 2000、 Windows XP、 Windows Vista、 Windows 7、Windows 8、Windows 8.1、Windows 10和Windows Server服务器企业级操作系统,微软一直在致力于Windows操作系统的开发和完善。

 

2.1.2  Windows性能与特点

Windows操作系统具有如下特点:

1、Windows操作系统的人机操作性优异。

Windows操作系统界面友好,窗口制作优美,操作动作易学,多代系统之间有良好的传承,计算机资源管理效率较高,效果较好。

2、Windows操作系统支持的应用软件较多。

Windows由开发操作系统的微软公司控制接口和设计,公开标准。有大量商业公司在该操作系统上开发商业软件。Windows操作系统的大量应用软件为客户提供了方便。这些应用软件门类全,功能完善,用户体验性好。

3、Windows操作系统对硬件支持良好。

硬件的良好适应性是Windows操作系统的有一个重要特点。Windows操作系统支持多种硬件平台对于硬件生产厂商宽泛、自由的开发环境,激励了这些硬件公司选择与Windows操作系统相匹配,也激励了Windows操作系统不断完善和改进,同时,硬件技术的提升,也为操作系统功能拓展提供了支撑。

 

Windows操作系统的性能:

  1. 易使用性强:Windows操作系统作为专为个人PC端开发的操作系统,一直遵循简单易用的准则,在三个主流操作系统中,具有最人性化的图形界面和最简单的操作方式,是最易上手的操作系统。

  2. 安全性较弱:Windows操作系统作为商业软件,其漏洞较多,安全性相对另外两个操作系统较差,经常成为计算机病毒和挟持软件的攻击对象。

  3. 运行性能差:相比于另外两款操作系统,Windows一般只使用于小型的个人PC机上,其运行效率低下。在中大型的,更注重运行速度的计算机上,往往使用Unix或Linux。

 

2.1.3  Windows问题

如上所述,Windows操作系统最大的优势就是易使用、好操作;最大的问题就是运行性能低下,且安全性无法保证。这导致它只适用于个人PC机上,而无法被工作站、服务器端等中大型机采用。

 

2.2  Unix

2.2.1  Unix介绍

Unix操作系统是一种强大的多任务、多用户操作系统。最早的Unix系统于1970年问世。此前,只有面向批处理作业的操作系统,这样的系统对于需要立即得到响应的用户来说是太慢了。在60年代末,Kenneth Thompson和Dennis Ritchie都曾参加过交互方式分时系统Multics的设计,而开发该系统所使用的工具是CTSS。这两个系统在操作系统的发展过程中都产生过重大影响。在此基础上,在对当时现有的技术进行精选提炼和发展的过程中,K.Thompson于1969年在小型计算机上开发UNIX系统,后于1970年投入运行。至今,Unix本身固有的可移植性使它能够用于任何类型的计算机:微机、工作站、小型机、多处理机和大型机等。

 

2.2.2  Unix性能与特点

UNIX系统在计算机操作系统的发展史上占有重要的地位。它确实对已有技术不断作了精细、谨慎而有选择的继承和改造,并且,在操作系统的总体设计构想等方面有所发展,才使它获得如此大的成功。UNIX系统的主要特点表现在以下几方面:

(1) UNIX系统在结构上分为核心程序(kernel)和外围程序(shell)两部分,而且两者有机结合成为一个整体。核心部分承担系统内部的各个模块的功能,即处理机和进程管理、存储管理、设备管理和文件系统。核心程序的特点是精心设计、简洁精干,只需占用很小的空间而常驻内存,以保证系统的高效率运行。外围部分包括系统的用户界面、系统实用程序以及应用程序,用户通过外围程序使用计算机。

(2) UNIX系统提供了良好的用户界面,具有使用方便、功能齐全、清晰而灵活、易于扩充和修改等特点。UNIX系统的使用有两种形式:一种是操作命令,即shell语言,是用户可以通过终端与系统发生交互作用的界面;另一种是面向用户程序的界面,它不仅在汇编语言,而且在C语言中向用户提供服务。

(3) UNIX系统的文件系统是树形结构。它由基本文件系统和若干个可装卸的子文件系统组成,既能扩大文件存储空间,又有利于安全和保密。

(4) UNIX系统把文件、文件目录和设备统一处理。它把文件作为不分任何记录的字符流进行顺序或随机存取,并使得文件、文件目录和设备具有相同的语法语义和相同的保护机制,这样既简化了系统设计,又便于用户使用。

(5) UNIX系统包含有非常丰富的语言处理程序、实用程序和开发软件用的工具性软件,向用户提供了相当完备的软件开发环境。

(6) UNIX系统的绝大部分程序是用C语言编程的,只有约占5%的程序用汇编语言编程。C语言是一种高级程序设计语言,它使得UNIX系统易于理解、修改和扩充,并且具有非常好的移植性。

(7) UNIX系统还提供了进程间的简单通信功能。

 

Unix操作系统的性能:

  1. 安全性强:由于Unix使用树形结构的文件系统,拥有更强的文件安全性。

  2. 运行效率高:Unix系统具有三个系统中较好的运行速度,适用于中大型机和服务器端的需求。

  3. 易用性弱:作为一款1970年代开发的操作系统,其人机交互的方式相比于Windows,还是显得不足,不如Windows系统那样更易于上手。

 

2.2.3  Unix问题

Unix的优势显而易见:强大的安全性与高运行效率;但缺点在于对计算机新手不够友好。因此Unix系统也无法得到广泛的使用。

 

2.3  Linux

2.3.1  Linux介绍

Linux,全称GNU/Linux,是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。伴随着互联网的发展,Linux得到了来自全世界软件爱好者、组织、公司的支持。它除了在服务器方面保持着强劲的发展势头以外,在个人电脑、嵌入式系统上都有着长足的进步。使用者不仅可以直观地获取该操作系统的实现机制,而且可以根据自身的需要来修改完善Linux,使其最大化地适应用户的需要。

Linux具有开放源码、没有版权、技术社区用户多等特点,开放源码使得用户可以自由裁剪,灵活性高,功能强大,成本低。尤其系统中内嵌网络协议栈,经过适当的配置就可实现路由器的功能。这些特点使得Linux成为开发路由交换设备的理想开发平台。

 

2.3.2  Linux性能与特点

Linux系统的特点如下:

1、基本思想

Linux的基本思想有两点:第一,一切都是文件;第二,每个文件都有确定的用途。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。

2、完全免费

Linux是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是其他的操作系统所做不到的。正是由于这一点,来自全世界的无数程序员参与了Linux的修改、编写工作,程序员可以根据自己的兴趣和灵感对其进行改变,这让Linux吸收了无数程序员的精华,不断壮大。

3、完全兼容POSIX1.0标准

这使得可以在Linux下通过相应的模拟器运行常见的DOS、Windows的程序。这为用户从Windows转到Linux奠定了基础。许多用户在考虑使用Linux时,就想到以前在Windows下常见的程序是否能正常运行,这一点就消除了他们的疑虑。

4、多用户、多任务

Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现代电脑最主要的一个特点,Linux可以使多个程序同时并独立地运行。

5、良好的界面

Linux同时具有字符界面和图形界面。在字符界面用户可以通过键盘输入相应的指令来进行操作。它同时也提供了类似Windows图形界面的X-Window系统,用户可以使用鼠标对其进行操作。在X-Window环境中就和在Windows中相似,可以说是一个Linux版的Windows。

6、支持多种平台

Linux可以运行在多种硬件平台上,如具有x86、680x0、SPARC、Alpha等处理器的平台。此外Linux还是一种嵌入式操作系统,可以运行在掌上电脑、机顶盒或游戏机上。2001年1月份发布的Linux 2.4版内核已经能够完全支持Intel64位芯片架构。同时Linux也支持多处理器技术。多个处理器同时工作,使系统性能大大提高。

Linux的性能如下:

  1. 较好的安全性:Linux系统是完全开源的,在众多开发者的集体努力下,Linux本身具有较为完善的安全性,相比于非开源的Windows系统,安全性上具有优势。

  2. 较快的运行速度:Linux具有接近Unix的运行速度,这使得它在服务器端和中型机上得到广泛应用。

  3. 较好的易用性:Linux吸收了Windows的一些思想,在人机交互上相比于Unix,有了一定进步,更易于用户上手。

 

2.3.3  Linux问题

Linux极大地借鉴了Unix的思想,同时汇集众多开发者的经验,形成了安全性、运行速度与易操作性的一种平衡,成为服务器端和中型机上广泛使用的操作系统。同时,基于Linux开发的Android移动端操作系统也在智能手机操作系统中大放异彩。Linux目前最大的困境在于,Windows已经占领PC机市场很久,在软件生态上有着巨大的优势,这使得Linux难以获得小型机的市场。

 

操作系统未来展望

当下主流的三个操作系统,都具有一定局限性。目前来看,未来操作系统的发展可能走向两个方向:专用操作系统、泛用操作系统和安全操作系统。

专用操作系统

传统的操作系统,例如上面的三个主流系统,本质上都是一种通用的操作系统。但随着计算机应用领域的不断发展与扩大,许多计算机需要应对专门的、特殊的领域。此时,可能就需要开发各个领域中专用的操作系统,满足各个领域的需求。

泛用操作系统

虽然目前主流的操作系统各有优劣,但未来或许会出现一种操作系统,集众家所长,成为具有广泛使用能力的操作系统。在各个专业领域,也可以使用这一泛用型的操作系统,运行专业软件,满足特殊需求。

安全操作系统

机器状态与操作系统分离,计算过程与应用程序分离,双分离保护用户在设备生命周期内不遭到恶意攻击

 

 

参考文献

[1]赵良、叶俊民,操作系统体系结构的风格比较[J],2005

[2]汪杭军,操作系统内核的比较与研究[J],2005

[3] HouRui (HouRui);Jin, ZG (Jin ZhiGang);Wang, BL (Wang BaoLiang) . Comparison of Windows Phone 8 & Windows 8 . IEEE, 345 E 47TH ST, NEW YORK, NY 10017 USA

[4]王晓英等主编,计算机系统平台,中国铁道出版社,2016.08

[5]Kernighan, B W; Morgan, S P . The UNIX Operating System: A Model for Software Design.

[6]王化文,胡岚,李燕,WINDOWS SERVER 2008网络构建与系统管理:武汉大学出版社

[7]刘日升,孙玉方.UNIX操作系统分析报告[J].计算机研究与发展,1982(09):1-60+65.

[8]赵文庆,UNIX和计算机软件技术基础,2011

[9]  Bishop, M (Bishop, Matt) . Reflections on UNIX Vulnerabilities . IEEE COMPUTER SOC, 10662 LOS VAQUEROS CIRCLE, PO BOX 3014, LOS ALAMITOS, CA 90720-1264 USA

[10] Jiang, ZX (Jiang, Zexin) . A Linux Server Operating System's Performance Comparison using lmbench . IEEE, 345 E 47TH ST, NEW YORK, NY 10017 USA

[11] Lan, YQ (Lan Yuqing); Xu, H (Xu Hao); Liu, XH (Liu Xiaohui) . The research of performance test method for Linux process scheduling . IEEE, 345 E 47TH ST, NEW YORK, NY 10017 USA

[12] 赵梦茹. 移动终端Linux存储IO性能分析与优化[D].西安电子科技大学,2014.

[13] 李吉乐. Linux文件系统性能优化技术的研究[D].中国石油大学(华东),2014.

[14] 杜传业. 嵌入式Linux内核解析[D].河北工业大学,2007.

[15] Zhang, J (Zhang, Jun); Che, SB (Che, ShengBing) . The Research on Linux Memory Forensics . IOP PUBLISHING LTD, DIRAC HOUSE, TEMPLE BACK, BRISTOL BS1 6BE, ENGLAND

[16]陈岚,万国春.基于Windows NT/2000实时性能测试与分析[J].电脑开发与应用,2005(02):6-8.

[17]类Unix操作系统服务器离线硬件检测软件的设计与实现

 

参考文章

操作系统对比和未来展望

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_43272781/article/details/108955364

智能推荐

Socket网络编程--简单Web服务器(4)-程序员宅基地

文章浏览阅读86次。  上一小节已经实现了对图片的传输,接下来就是判断文件是否为js,css,png等格式。我们增加一个函数用于判断格式 1 int WebServer::get_filetype(char *type,char *path)//用于判断该url指向文件的后缀 2 { 3 if(strstr(path,".html")) 4 strcpy(type,"tex..._利用socket网络编程机制实现一个简单的web服务器的实现,实现get方式的对html文件

【Model Zoo】GAN_faceswap-gan: a denoising autoencoder + adversaria-程序员宅基地

文章浏览阅读1.5k次。Codepix2pixHD https://github.com/NVIDIA/pix2pixHDSynthesizing and manipulating 2048x1024 images with conditional GANs.pix2pix-tensorflow https://github.com/affinelayer/pix2pix-tensorflowTensorfl..._faceswap-gan: a denoising autoencoder + adversarial losses and attention mec

js代码实现tab选项卡效果_js tab选中-程序员宅基地

文章浏览阅读631次。实现tab选项卡效果贴上代码:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <me..._js tab选中

github上拉去代码执行 npm install报错code:128_error: command failed: d:\program files\git\cmd\gi-程序员宅基地

文章浏览阅读1.9k次。npm ERR! code 128npm ERR! Command failed: D:\Program Files\Git\cmd\git.EXE clone --mirror -q git://github.com/adobe-webplatform/eve.git C:\Users\yantx\AppData\Roaming\npm-cache\_cacache\tmp\git-clon..._error: command failed: d:\program files\git\cmd\git.exe -c core.longpaths=tr

路由选择协议笔记ripv1、ripv2、ripng-程序员宅基地

文章浏览阅读533次。一、基本的rip配置 router rip network+直连主网络这里是ripv1,它是又累的路由协议,子网屏蔽,只通过主网二、被动借口的配置 router rip passive-interface ethernet0passive-interface命令可以喝所有的ip路由协议中配置使用,配置了passive-interface的借口不发送路由更新信息,只侦听rip广..._ip rip send version 1 2含义

oracle dbm备份恢复,ORACLE 11g 用Duplicate恢复Data Guard 备库详细过程-程序员宅基地

文章浏览阅读310次。1、先查找备库控制文件路径先在备库上找出控制文件的路径,通过和主库一样,不过为了以防万一,还是check为好。sql> select name from v$controlfile;NAME--------------------------------------------------------------------------------/oracle/app/oracle/ora..._ora.dbm01.db

随便推点

解决IDEA2020.1新建项目需要重新配置maven_idea2020.1.1打开新项目时自动匹配maven-程序员宅基地

文章浏览阅读2.2k次。IDEA2020.1新建项目后的maven是默认配置,设置安装好的maven仓库File —> New Prijects Settings —> Setting for New Projects…2. 进入后设置Build, Execution, Deployment —> Build Tools —> Maven_idea2020.1.1打开新项目时自动匹配maven

Mongodb 性能测试_mongo单点性能-程序员宅基地

文章浏览阅读638次。转载地址 http://www.cnblogs.com/lovecindywang/archive/2011/03/02/1969324.html进行了一下Mongodb亿级数据量的性能测试,分别测试如下几个项目:(所有插入都是单线程进行,所有读取都是多线程进行)1) 普通插入性能 (插入的数据每条大约在1KB左右)2) 批量插入性能 (使用的是官_mongo单点性能

VB.net学习笔记(二十七)线程同步上_vbnet同步-程序员宅基地

文章浏览阅读9.2k次。X夫妇二人试图同时从同一账户(总额1000)中支取1000。由于余额有1000,夫妇各自都满足条件,于是银行共支付2000。结果是银行亏了1000元。这种两个或更多线程试图在同一时刻访问同一资源来修改其状态,并产生不良后果的情况被称做竞争条件。 为避免竞争条件,需要使Withdraw()方法具有线_vbnet同步

Unity中减少VR晕眩症的实用技术(Yanlz+Unity+XR+VR+AR+MR+SteamVR+晕眩症+征兆冲突理论+视野+帧速+相对运动错觉+光场VR+立钻哥哥+==)_unity 开发vr很头晕-程序员宅基地

文章浏览阅读4k次,点赞10次,收藏10次。《基于Unity与SteamVR构建虚拟世界》 《基于Unity与SteamVR构建虚拟世界》 版本 作者 参与者 完成日期 备注 SteamVR_Unity_V01_1.0 严立钻 2019..._unity 开发vr很头晕

echarts折线图改变symbol颜色,让圆球颜色和折线相同_echarts symbol颜色-程序员宅基地

文章浏览阅读6.5k次。title: { text: '', left: 'center' }, xAxis: { type: 'category', }, yAxis: { type: 'value' }, series: [{ type: 'line', // 接下来三句是重点,将默认形状改为圆形 symbol: 'circle', symbol..._echarts symbol颜色

Coursera 申请助学金流程和材料_coursera 助学金-程序员宅基地

Coursera是一个非常受欢迎的在线学习平台,本文介绍了在Coursera申请助学金的流程和所需材料。通过选择感兴趣的课程并提交申请,等待15天后会得到申请结果。完成课程后可以获得正式的结课证书。同时,对于可以七天试用的课程,试用期内完成的证书可以免费下载。