操作系统文献综述_操作系统参考文献有哪些_Starzkg的博客-程序员秘密

技术标签: 操作系统  

  作系统(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

智能推荐

Codeforces 10A-Power Consumption Calculation(模拟)_weixin_34336292的博客-程序员秘密

A. Power Consumption Calculationtime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputTom is interested in ...

机器学习常用loss:L1 loss、L2 loss、smothL1 loss、huber loss_l1loss_星落秋风五丈原的博客-程序员秘密

常用loss:L1:公式:L1=∑i=1n∣yi−f(xi)∣L1=\sum_{i=1}^{n}\left|y_{i}-f\left(x_{i}\right)\right|L1=i=1∑n​∣yi​−f(xi​)∣导数:dL1(x)dx={1 if x≥0−1 otherwise \frac{\mathrm{d} L_{1}(x)}{\mathrm{...

重新巩固JS(四)——JavaScript函数_码飞_CC的博客-程序员秘密

文章目录1. 函数概述2. 函数定义3. 函数调用4. 函数参数4.1 默认值4.2 剩余参数5. 函数内部属性5.1 arguments对象5.2 this对象6. 函数是特殊对象6.1 函数的属性:length 和 name6.1.1 length属性6.1.2 name属性6.2 函数的方法: call、apply、bind6.2.1 call方法6.2.2 apply方法6.2.3 bin...

初识HttpSession_httpsession怎么初始化_blingbling_110的博客-程序员秘密

初始HttpSession概念工作原理生命周期API: https://tomcat.apache.org/tomcat-5.5-doc/servletapi/javax/servlet/http/HttpSession.html概念HttpSession是Servlet用于识别用户并保存用户信息的一种机制,因为Http是无状态的,因此服务器需要建立会话来识别浏览器的状态。工作原理一个会...

淘宝API-淘宝/天猫获取推荐商品列表_WBKJ19970108019的博客-程序员秘密

如下图:返回值说明如下图:输入关键字搜索Result Object:{“items”: [{“title”: “安妮秋假两件套外穿显瘦运动休闲长裤弹力训练速干健身裤女小脚”,“detail_url”: “//item.taobao.com/item.htm?scm=1007.12493.92624.100200300000005&id=546259912323&pvid=...

MySQL数据库表的基本操作——修改表ALTER TABLE,删除表_netoscoder的博客-程序员秘密

修改表ALTER TABLE,用于更改原有表结构查看帮助:mysql> \h alter tableName: 'ALTER TABLE'Description:Syntax:ALTER [ONLINE | OFFLINE] [IGNORE] TABLE tbl_name [alter_specification [, alter_specification] ...]

随便推点

writeup hitcon-ctf-2014/stkof_硬面饽饽的博客-程序员秘密

writeup hitcon-ctf-2014/stkof题目: https://github.com/ctfs/write-ups-2014/tree/master/hitcon-ctf-2014/stkof 漏洞分析可参考: http://acez.re/ctf-writeup-hitcon-ctf-2014-stkof-or-modern-heap-overflow/ 使用pwntoo

学习linux要多少时间,Linux运维学习需要多长时间?都有哪些学习方式?_心安乃近的博客-程序员秘密

Linux运维行业随着互联网技术的发展越来越受重视,许多对Linux技术感兴趣并希望以此为职业发展的朋友选择学习Linux运维技术。而对于没有计算机基础的朋友,为了能够更快更有效的掌握Linux技能,有必要参加专业的Linux运维学习。那么Linux运维学习需要多长时间?都有哪些学习方式?Linux运维培训分为线上和线下。线上的类型也很多,学习周期也不同。一种是“轻课”,是面授班随堂实录的课程,课...

计算机怎么识别ascll汉字,汉字的ASCII码表示和编码是怎样的?_泊叶叶的博客-程序员秘密

汉字的ASCII码表示和编码是怎样的?发布于:2020-09-12 15:51:11什么是ASCII码?我们知道我们日常见到的数字(0~9)、符号比如:#、%、+、@等、英语字母如:(A~z)、(a~z),它们在计算机中都是以二进制来表示存储的,咱们可以用不同的二进制数来表示,但是为了统一化、使大家的相互通信可以正常进行,那么就必须制定一套统一的标准来规范它,由此ASCII码随之诞生,大家都遵从这...

知识图谱简介(二)——关键技术_知识推理是属于什么关键技术_yuanl15的博客-程序员秘密

在知识图谱的简介(一)中已经描述过知识图谱,在本文中即对于知识图谱的一些关键技术做简要阐述。大规模知识库的构建与应用需要多种技术的支持。依据知识图谱构建的过程,主要分为四个部分:信息抽取、知识表示、知识融合、知识推理。知识提取知识提取主要是面向开放的链接数据,通常典型的输入是自然语言文本或多媒体内容文档(图像或者视频)等。然后通过自动化或者半自动化的技术抽取出可用的知识单元,知识单...

Spring源码解析——配置文件读取相关的类_水田如雅的博客-程序员秘密

一,整体结构图      在Spring中,定义了如下类来处理经过经过验证的Document对象,并且对文档元素及属性进行解析。二,各个类基本介绍           1,ResourceLoader                     public interface ResourceLoader { /** Pseudo URL prefix for loading from the

升级Android studio4.1.1之后代码没有颜色区分并且没有代码报错提示_徐玮大人的博客-程序员秘密

之前使用的是3.2版本升级到4.1.1之后代码没有颜色区分并且没有代码报错提示,后来发现是由于使用了butterKnife的原因 ,处理办法:1.需要装:2.然后需要更改一下插件路径:C:\Users\Administrator\AppData\Local\Google\AndroidStudio4.1\plugins,AppData是隐藏文件夹,找不到的直接向文件资源管理器贴路径就完事了(Administrator是电脑的名字,Users在C盘中显示的是‘用户’)(需要把之前的butt

推荐文章

热门文章

相关标签