操作系统(英语;Operating System,简称OS)是一管理电脑硬件与软件资源的程序,同时也是计算机系统的内核与基石。操作系统身负诸如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。操作系统是管理计算机系统的全部硬件资源包括软件资源及数据资源;控制程序运行;改善人机界面;为其它应用软件提供支持等,使计算机系统所有资源最大限度地发挥作用,为用户提供方便的、有效的、友善的服务界面。操作系统是一个庞大的管理控制程序,大致包括5个方面的管理功能:进程与处理机管理、作业管理、存储管理、设备管理、文件管理。目前微机上常见的操作系统有DOS、OS/2、UNIX、XENIX、LINUX、Windows、Netware等。但所有的操作系统具有并发性、共享性、虚拟性和不确定性四个基本特征。
操作系统的型态非常多样,不同机器安装的OS可从简单到复杂,可从手机的嵌入式系统到超级电脑的大型操作系统。许多操作系统制造者对OS的定义也不大一致,例如有些OS集成了图形化使用者界面,而有些OS仅使用文本接口,而将图形界面视为一种非必要的应用程序。
操作系统的型态非常多样,不同机器安装的OS可从简单到复杂,可从手机的嵌入式系统到超级电脑的大型操作系统。许多操作系统制造者对OS的定义也不大一致,例如有些OS集成了图形化使用者界面,而有些OS仅使用文本接口,而将图形界面视为一种非必要的应用程序。
操作系统理论在计算机科学中为历史悠久而又活跃的分支,而操作系统的设计与实现则是软件工业的基础与内核
.
操作系统大致可分为6种类型。
①简单操作系统。它是计算机初期所配置的操作系统,如IBM公司的磁盘操作系统DOS/360和微型计算机的操作系统CP/M等。这类操作系统的功能主要是操作命令的执行,文件服务,支持高级程序设计语言编译程序和控制外部设备等。
②分时系统。它支持位于不同终端的多个用户同时使用一台计算机,彼此独立互不干扰,用户感到好像一台计算机全为他所用。
③实时操作系统。它是为实时计算机系统配置的操作系统。其主要特点是资源的分配和调度首先要考虑实时性然后才是效率。此外,实时操作系统应有较强的容错能力。
④网络操作系统。它是为计算机网络配置的操作系统。在其支持下,网络中的各台计算机能互相通信和共享资源。其主要特点是与网络的硬件相结合来完成网络的通信任务。
⑤分布操作系统。它是为分布计算系统配置的操作系统。它在资源管理,通信控制和操作系统的结构等方面都与其他操作系统有较大的区别。由于分布计算机系统的资源分布于系统的不同计算机上,操作系统对用户的资源需求不能像一般的操作系统那样等待有资源时直接分配的简单做法而是要在系统的各台计算机上搜索,找到所需资源后才可进行分配。对于有些资源,如具有多个副本的文件,还必须考虑一致性。所谓一致性是指若干个用户对同一个文件所同时读出的数据是一致的。为了保证一致性,操作系统须控制文件的读、写、操作,使得多个用户可同时读一个文件,而任一时刻最多只能有一个用户在修改文件。分布操作系统的通信功能类似于网络操作系统。由于分布计算机系统不像网络分布得很广,同时分布操作系统还要支持并行处理,因此它提供的通信机制和网络操作系统提供的有所不同,它要求通信速度高。分布操作系统的结构也不同于其他操作系统,它分布于系统的各台计算机上,能并行地处理用户的各种需求,有较强的容错能力。⑥智能操作系统(见智能软件)。
功能
操作系统的主要功能是资源管理,程序控制和人机交互等。计算机系统的资源可分为设备资源和信息资源两大类。设备资源指的是组成计算机的硬件设备,如中央处理器,主存储器,磁盘存储器,打印机,磁带存储器,显示器,键盘输入设备和鼠标等。信息资源指的是存放于计算机内的各种数据,如文件,程序库,知识库,系统软件和应用软件等。
资源管理
系统的设备资源和信息资源都是操作系统根据用户需求按一定的策略来进行分配和调度的。操作系统的存储管理就负责把内存单元分配给需要内存的程序以便让它执行,在程序执行结束后将它占用的内存单元收回以便再使用。对于提供虚拟存储的计算机系统,操作系统还要与硬件配合做好页面调度工作,根据执行程序的要求分配页面,在执行中将页面调入和调出内存以及回收页面等。
处理器管理或称处理器调度,是操作系统资源管理功能的另一个重要内容。在一个允许多道程序同时执行的系统里,操作系统会根据一定的策略将处理器交替地分配给系统内等待运行的程序。一道等待运行的程序只有在获得了处理器后才能运行。一道程序在运行中若遇到某个事件,例如启动外部设备而暂时不能继续运行下去,或一个外部事件的发生等等,操作系统就要来处理相应的事件,然后将处理器重新分配。
操作系统的设备管理功能主要是分配和回收外部设备以及控制外部设备按用户程序的要求进行操作等。对于非存储型外部设备,如打印机、显示器等,它们可以直接作为一个设备分配给一个用户程序,在使用完毕后回收以便给另一个需求的用户使用。对于存储型的外部设备,如磁盘、磁带等,则是提供存储空间给用户,用来存放文件和数据。存储性外部设备的管理与信息管理是密切结合的。
信息管理是操作系统的一个重要的功能,主要是向用户提供一个文件系统。一般说,一个文件系统向用户提供创建文件,撤销文件,读写文件,打开和关闭文件等功能。有了文件系统后,用户可按文件名存取数据而无需知道这些数据存放在哪里。这种做法不仅便于用户使用而且还有利于用户共享公共数据。此外,由于文件建立时允许创建者规定使用权限,这就可以保证数据的安全性。
程序控制
一个用户程序的执行自始至终是在操作系统控制下进行的。一个用户将他要解决的问题用某一种程序设计语言编写了一个程序后就将该程序连同对它执行的要求输入到计算机内,操作系统就根据要求控制这个用户程序的执行直到结束。操作系统控制用户的执行主要有以下一些内容:调入相应的编译程序,将用某种程序设计语言编写的源程序编译成计算机可执行的目标程序,分配内存储等资源将程序调入内存并启动,按用户指定的要求处理执行中出现的各种事件以及与操作员联系请示有关意外事件的处理等。
人机交互
操作系统的人机交互功能是决定计算机系统“友善性”的一个重要因素。人机交互功能主要靠可输入输出的外部设备和相应的软件来完成。可供人机交互使用的设备主要有键盘显示、鼠标、各种模式识别设备等。与这些设备相应的软件就是操作系统提供人机交互功能的部分。人机交互部分的主要作用是控制有关设备的运行和理解并执行通过人机交互设备传来的有关的各种命令和要求。早期的人机交互设施是键盘显示器。操作员通过键盘打入命令,操作系统接到命令后立即执行并将结果通过显示器显示。打入的命令可以有不同方式,但每一条命令的解释是清楚的,唯一的。随着计算机技术的发展,操作命令也越来越多,功能也越来越强。随着模式识别,如语音识别、汉字识别等输入设备的发展,操作员和计算机在类似于自然语言或受限制的自然语言这一级上进行交互成为可能。此外,通过图形进行人机交互也吸引着人们去进行研究。这些人机交互可称为智能化的人机交互。这方面的研究工作正在积极开展。
Linux的优缺点
选择GUN/Linux的理由优点:
1安全 - 几乎不存在诸如病毒、间谍软件、流氓软件之类的问题。
2易维护 - 请忘掉扫描病毒、磁盘碎片整理、清理注册表以及频繁的被要求重启等等诸如此类的问题。
3稳定 - GNU/Linux 是非常稳定的。 虽然个别应用程序可能会崩溃,但操作系统本身的崩溃是非常罕见的。(事实上一些非官方打包程序是较为不稳定的)
4软件自由/开源 - 您可以随意的使用软件。如果您愿意的话,甚至可以自由地学习程序源代码,修改程序以及任意的分享程序,而不用受制于所谓的用户许可协议。(当然要在GPL或者其他开源许可协议的条件之下)
5开放标准 - GNU/Linux 和运行在其上的应用程序,大多数都符合开放标准,这使得与其他平台的无缝兼容成为可能,并帮助您避免受制于一些厂商的限制。
6社区 - GNU/Linux已经被形容为 "world wide team sport",由全世界的优秀程序员提供支持。
7低成本 - 大多数 GNU/Linux 发行版是可以免费下载的,并且拥有大量的免费程序支持。此外,大多数 GUN/Linux 对硬件的要求较低,这意味着您并不需要频繁的对硬件进行升级。 8合法 - 人们可以合法并且免费的获取一些高质量的软件,这意味着我们并不必要去盗版或者使用盗版(当然这是非法的),也不会受制于一些利用垄断地位而滥用市场支配手段的企业。(是不是该特指下微软...)
9透明公开 - 绝大多数 GNU/Linux 是开放开发的,使用公共邮件列表、公共IRC频道、公共bug追踪、公共新特性追踪等等。
10多样选择 - 在 Linux 的世界中,有很多不同的发行版本,有些由商业公司支持,有些则由非商业组织维护。这些不同的发行版本可以运行在不同类型的计算机上,比如手机、个人计算机甚至超级电脑。我们甚至可以根据自己的爱好和需要选择不同的桌面环境,以更好的完成我们的工作。
11尝新 - 或许仅仅是为了不断的尝试一些新的或者不同的东西,成为很多人最原始的动机。
改用GUN/Linux的一些挑战
1从头学起 - 您将会学习一个全新的不同的操作系统、很多新的程序,以及很多全新的名词术语。 ——并且您需要 忘却 在其他操作系统(如MS Windows)上学习的旧知识。
2缺失的应用软件和游戏 - 您会失去一些熟知的应用程序,典型的如Microsoft Office、 Adobe Photoshop 和其他流行的大型主流游戏。双系统启动、WINE或虚拟机会提供这问题的部分解决办法。当然有很多可选的高质量 GNU/Linux 原生软件值得用,后面将介绍各种 GNU/Linux 下的应用软件。
3缺少硬件支持 - 绝大多数硬件是支持的,但不是全部——在购买新硬件组件前建议您研究一下兼容性 ——越新的和分布越少的组件,出问题的风险越大。
4寻求帮助更难 - 通常朋友、家人、同事不能帮您解决 GNU/Linux 相关问题,所以您需要在线获取帮助,这通常并不如您的朋友“现场”帮您解决那样高效。
Windows优点
- ·Windows电脑提供了大量的灵活性和定制(含硬件和软件)
- ·Windows电脑提供的尖端的硬件支持
- ·Windows有比任何其他平台更多的软件
- ·Windows提供了巨大的向后兼容性
- ·Windows提供了一个伟大的游戏体验,全拜尖端的硬件支持和大量的游戏
- ·Windows提供了音乐制作更好的选择
Windows缺点
- ·不是免费的软件,采用二进制代码,不易修改操作系统本身。漏洞比较多。和linux和unix系统相比,网络功能相对较差,源码不开放。不利于操作系统的开发。