最初的操作系统有多大最初是如何图形化的

美国军方用什么样的操作系统
网友评论:0&&
一个国家政府使用的操作系统自然不同于企业和普通用户,它们对于安全性、稳定性等特殊性能的要求将会更高。
&&& 近日,编者发现一款据称是Software Protection Initiative美国空军研究实验室和国防部指导下研发的轻量级Linux操作系统发行版LPS(The Lightweight Portable Security)。
&&& 根据编者的统计,政府主导开发操作系统的国家不在少数,例如,中国、美国、日本、韩国、古巴、俄罗斯、土耳其等。耗费巨大人力和财力,研发出国家自主知识产权操作系统的原因有很多,但是最主要的当然是出于国防安全的角度考虑,希望将基础软件的控制权掌握在自己的手里。
&&&&那么,这一款基于美国国防部开发LPS,其当初开发的初衷是什么呢?据了解,LPS的作用是,避免政府人员在外网上网时,不至于被互联网一些不安全因素窃取信息,导致政府相关信息泄露。例如,当政府雇员在使用酒店或其它地方的不安全电脑时,可以用CD-ROM或U盘启动进入一个防止窜改的初始桌面环境,防御通过互联网传播的病害或间谍软件。LPS操作系统将不会在主机硬盘上留下用户活动的痕迹。
&&& 当然,LPS操作系统也包含了很多比较实用的应用软件和实用的工具。例如Firefox网页浏览器,以及一份加密向导以对个人文件进行加解密。该自启动运行光盘是美国国防部的产品,它是其软件保护新方案的一部分。另外,包括OpenSSH、OpenSSL、Linux kernel 2.6.27、Adobe Reader 9、OpenOffice 3.3等等。
&&& 下面,我们就来具体看一看,LPS操作系统带给大家哪些应用。
开启LPS操作系统
&&&&要获得LPS操作系统,可以从LPS官方网站上获取,大小也只有135MB。下面,我们通过Virtual BOX虚拟机来体验LPS。设置好安装磁盘空间以及分配适当的内存空间,就可以启动LPS操作系统了。
启动LPS操作系统
用户需接受协议才能继续使用
LPS版本介绍
LPS操作系统应用体验
&&& LPS操作系统为用户提供了基本的办公应用程序,其中包括,Diagnostics、Calculator、Image Viewer、Text Editor、Desktop等。
LPS操作系统办公程序
&&& 同时,LPS操作系统还不忘为用户提供音频和视频播放软件。
LPS操作系统的多媒体工具
LPS操作系统连接工具
LPS操作系统应用亮点
&&& 如何让LPS操作系统比其他操作系统更加安全可靠呢?LPS自然是提供了一些特殊的应用程序。
LPS内容列表
思科接收机
Encryption Wizard
&&& 小结:通过对于LPS操作系统地体验,编者发现这款操作系统的对于内存和磁盘空间的要求都不高,并且在可以通过CD和USB来启动,所以应用起来非常灵活方便。另外,在应用上将很多安全防护和沟通的工具软件提供给用户。并且,提示用户在使用该软件的时候,必须遵守LPS的一个协议。用兴趣的朋友可以现在就动手体验一下
新闻排行榜Operating System
英文简称:
组成部分:
内核、驱动程序、接口库、外围
常见系统:
Android,iOS,Linux,Windows
定义/操作系统
操作系统(Operating&System,简称OS),是系统中负责支撑应用程序运行环境以及用户操作环境的,同时也是计算机系统的核心与基石。操作系统是控制和管理计算机软资源、合理组织工作流程,以及方便用户操作的程序。它的职责常包括对硬件的直接监管、对各种计算资源(如内存、处理器时间等)的管理、以及提供诸如作业管理之类的面向应用程序的服务等等。操作系统的理论是计算机科学中一个古老而又活跃的分支,而操作系统的设计与实现则是软件工业的基础与核心。
操作系统(英语;Operating System,简称OS)是一管理电脑硬件与软件资源的程序,同时也是计算机系统的内核与基石。操作系统身负诸如管理与配置、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。操作系统是管理计算机系统的全部硬件资源包括软件资源及数据资源;控制程序运行;改善人机界面;为其它应用软件提供支持等,使计算机系统所有资源最大限度地发挥作用,为用户提供方便的、有效的、友善的服务界面。操作系统是一个庞大的管理控制程序,大致包括5个方面的管理功能:进程与处理机管理、作业管理、存储管理、设备管理、文件管理。目前微机上常见的操作系统有、OS/2、UNIX、XENIX、LINUX、、Netware等。但所有的操作系统具有并发性、共享性、虚拟性和不确定性四个基本特征。操作系统的型态非常多样,不同机器安装的OS可从简单到复杂,可从手机的嵌入式系统到超级电脑的大型操作系统。许多操作系统制造者对OS的定义也不大一致,例如有些OS集成了图形化使用者界面,而有些OS仅使用文本接口,而将图形界面视为一种非必要的。操作系统理论在计算机科学中为历史悠久而又活跃的分支,而操作系统的设计与实现则是软件工业的基础与内核。
类型/操作系统
操作系统大致可分为6种类型。①。它是计算机初期所配置的操作系统,如公司的磁盘操作系统/360和微型计算机的操作系统CP/M等。这类操作系统的功能主要是操作命令的执行,文件服务,支持高级程序设计语言编译程序和控制外部设备等。②分时系统。它支持位于不同终端的多个用户同时使用一台计算机,彼此独立互不干扰,用户感到好像一台计算机全为他所用。③实时操作系统。它是为实时计算机系统配置的操作系统。其主要特点是资源的分配和调度首先要考虑实时性然后才是效率。此外,实时操作系统应有较强的容错能力。④操作系统。它是为计算机网络配置的操作系统。在其支持下,网络中的各台计算机能互相通信和共享资源。其主要特点是与网络的硬件相结合来完成网络的通信任务。⑤。它是为配置的操作系统。它在资源管理,通信控制和操作系统的结构等方面都与其他操作系统有较大的区别。由于分布计算机系统的资源分布于系统的不同计算机上,操作系统对用户的资源需求不能像一般的操作系统那样等待有资源时直接分配的简单做法而是要在系统的各台计算机上搜索,找到所需资源后才可进行分配。对于有些资源,如具有多个副本的文件,还必须考虑一致性。所谓一致性是指若干个用户对同一个文件所同时读出的数据是一致的。为了保证一致性,操作系统须控制文件的读、写、操作,使得多个用户可同时读一个文件,而任一时刻最多只能有一个用户在修改文件。分布操作系统的通信功能类似于网络操作系统。由于分布计算机系统不像网络分布得很广,同时分布操作系统还要支持并行处理,因此它提供的通信机制和网络操作系统提供的有所不同,它要求通信速度高。分布操作系统的结构也不同于其他操作系统,它分布于系统的各台计算机上,能并行地处理用户的各种需求,有较强的容错能力。⑥智能操作系统。
功能/操作系统
操作系统的主要功能是资源管理,程序控制和等。计算机系统的资源可分为设备资源和信息资源两大类。设备资源指的是组成计算机的硬件设备,如,,磁盘存储器,,磁带存储器,,输入设备和等。信息资源指的是存放于计算机内的各种数据,如文件,程序库,知识库,系统软件和应用软件等。从资源管理角度看操作系统具有以下五大功能。(1)
又称处理器管理,其主要任务是对处理器的时间进行合理分配、对处理器的运行实施有效的管理。
由于多道程序共享内存资源,所以存储器管理的主要任务是对存储器进行分配、保护和扩充。
根据确定的设备分配原则对设备进行分配,使设备与主机能够并行工作,为用户提供良好的设备使用界面。
有效地管理文件的存储空间,合理地组织和管理文件系统,为文件访问和文件保护提供更有效的方法及手段。
用户操作计算机的界面称为用户接口(或用户界面),通过用户接口,用户只需进行简单操作,就能实现复杂的应用处理。用户接口有两种类型:
命令接口:用户通过交互命令方式直接或间接地对计算机进行操作。
程序接口:供用户以程序方式进行操作。程序接口也称为应用程序编程接口(Application&Programming&Interface,API),用户通过API可以调用系统提供的例行程序,实现既定的操作。
资源管理/操作系统
操作系统系统的设备和资源都是操作系统根据用户需求按一定的策略来进行分配和调度的。操作系统的存储管理就负责把内存单元分配给需要内存的程序以便让它执行,在程序执行结束后将它占用的内存单元收回以便再使用。对于提供虚拟存储的计算机系统,操作系统还要与硬件配合做好页面调度工作,根据执行程序的要求分配页面,在执行中将页面调入和调出内存以及回收页面等。处理器管理或称调度,是操作系统资源管理功能的另一个重要内容。在一个允许多道程序同时执行的系统里,操作系统会根据一定的策略将处理器交替地分配给系统内等待运行的程序。一道等待运行的程序只有在获得了处理器后才能运行。一道程序在运行中若遇到某个事件,例如启动外部设备而暂时不能继续运行下去,或一个外部事件的发生等等,操作系统就要来处理相应的事件,然后将处理器重新分配。操作系统的设备管理功能主要是分配和回收外部设备以及控制外部设备按用户程序的要求进行操作等。对于非存储型外部设备,如打印机、显示器等,它们可以直接作为一个设备分配给一个用户程序,在使用完毕后回收以便给另一个需求的用户使用。对于存储型的外部设备,如磁盘、磁带等,则是提供存储空间给用户,用来存放文件和数据。存储性外部设备的管理与信息管理是密切结合的。信息管理是操作系统的一个重要的功能,主要是向用户提供一个文件系统。一般说,一个文件系统向用户提供创建文件,撤销文件,读写文件,打开和关闭文件等功能。有了文件系统后,用户可按文件名存取数据而无需知道这些数据存放在哪里。这种做法不仅便于用户使用而且还有利于用户共享公共数据。此外,由于文件建立时允许创建者规定使用权限,这就可以保证数据的安全性。
程序控制/操作系统
一个用户程序的执行自始至终是在操作系统控制下进行的。一个用户将他要解决的问题用某一种程序设计语言编写了一个程序后就将该程序连同对它执行的要求输入到计算机内,操作系统就要求控制这个用户程序的执行直到结束。操作系统控制用户的执行主要有以下一些内容:调入相应的编译程序,将用某种程序设计语言编写的源程序编译成计算机可执行的目标程序,分配内存储等资源将程序调入内存并启动,按用户指定的要求处理执行中出现的各种事件以及与操作员联系请示有关意外事件的处理等。
人机交互/操作系统
操作系统的人机交互功能是决定计算机系统“友善性”的一个重要因素。人机交互功能主要靠可输入输出的外部设备和相应的软件来完成。可供人机交互使用的设备主要有键盘显示、鼠标、各种模式识别设备等。与这些设备相应的软件就是操作提供人机交互功能的部分。人机交互部分的主要作用是控制有关设备的运行和理解并执行通过人机交互设备传来的有关的各种命令和要求。早期的人机交互设施是键盘显示器。操作员通过键盘打入命令,操作系统接到命令后立即执行并将结果通过显示器显示。打入的命令可以有不同方式,但每一条命令的解释是清楚的,唯一的。随着计算机技术的发展,操作命令也越来越多,功能也越来越强。随着模式识别,如语音识别、汉字识别等输入设备的发展,操作员和计算机在类似于自然语言或受限制的自然语言这一级上进行交互成为可能。此外,通过图形进行人机交互也吸引着人们去进行研究。这些人机交互可称为智能化的人机交互。这方面的研究工作正在积极开展。
系统大全/操作系统
操作系统主要包括:UNIXUNIX是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统。UNIX&最早由Ken&Thompson和Dennis&Ritchie于1969年在美国AT&T的贝尔实验室开发。
类Unix(Unix-like)操作系统指各种传统的Unix以及各种与传统Unix类似的系统。它们虽然有的是自由软件,有的是商业软件,但都相当程度地继承了原始UNIX的特性,有许多相似处,并且都在一定程度上遵守POSIX规范。类Unix系统可在非常多的处理器架构下运行,在服务器系统上有很高的使用率,例如大专院校或工程应用的工作站。Linux基于Linux的操作系统是20世纪1991年推出的一个多用户、多任务的操作系统。它与UNIX完全兼容。Linux最初是由芬兰赫尔辛基大学计算机系学生Linus&Torvalds在基于UNIX的基础上开发的一个操作系统的内核程序,Linux的设计是为了在Intel微处理器上更有效的运用。其后在理查德·斯托曼的建议下以GNU通用公共许可证发布,成为自由软件Unix变种。它的最大的特点在于他是一个源代码公开的自由及开放源码的操作系统,其内核源代码可以自由传播。
经历数年的披荆斩棘,自由开源的Linux系统逐渐蚕食以往专利软件的专业领域,例如以往计算机动画运算巨擘──SGI的IRIX系统已被Linux家族及贝尔实验室研发小组设计的九号计划与Inferno系统取代,皆用于分散表达式环境。它们并不像其他Unix系统,而是选择自带图形用户界面。九号计划原先并不普及,因为它刚推出时并非自由软件。Linux有各类发行版,通常为GNU/Linux,如Debian(及其衍生系统Ubuntu、Linux&Mint)、Fedora、openSUSE等。Linux发行版作为个人计算机操作系统或服务器操作系统,在服务器上已成为主流的操作系统。MacOSXMacOS是一套运行于苹果Macintosh系列电脑上的操作系统。Mac&OS是首个在商用领域成功的图形用户界面。Macintosh组包括比尔·阿特金森(Bill&Atkinson)、杰夫·拉斯金(Jef&Raskin)和安迪·赫茨菲尔德(Andy&Hertzfeld)。Mac&OS&X于2001年首次在商场上推出。它包含两个主要的部分:Darwin,是以BSD原始代码和Mach微核心为基础,类似Unix的开放原始码环境。WindowsWindows是由微软公司成功开发的操作系统.Windows是一个多任务的操作系统,他采用图形窗口界面,用户对计算机的各种复杂操作只需通过点击鼠标就可以实现。
MicrosoftWindows系列操作系统是在微软给IBM机器设计的MS-DOS的基础上设计的图形操作系统。Windows系统,如Windows&2000、Windows&XP皆是创建于现代的Windows&NT内核。NT内核是由OS/2和OpenVMS等系统上借用来的。Windows可以在32位和64位的Intel和AMD的处理器上运行,但是早期的版本也可以在DEC&Alpha、MIPS与PowerPC架构上运行。虽然由于人们对于开放源代码作业系统兴趣的提升,Windows的市场占有率有所下降,但是到2004年据库服务等一些功能。
WindowsXP在日发布,日发布服务包2,日发布最新的服务包3。微软上一款操作系统Windows&Vista(开发代码为Longhorn)于日发售。Windows&Vista增加了许多功能,尤其是系统的安全性和网络管理功能,并且其拥有界面华丽的Aero&Glass。但是整体而言,其在全球市场上的口碑却并不是很好。Windows&8微软在2012年10月正式推出,系统有着独特的metro开始界面和触控式交互系统,日晚上7点,Windows&8.1在全球范围内,通过Windows上的应用商店进行更新推送。日,微软在美国旧金山举行发布会,正式发布了Windows&10消费者预览版。iOSiOS操作系统是由苹果公司开发的手持设备操作系统。iOS与苹果的Mac&OS&X操作系统一样,它也是以Darwin为基础的,因此同样属于类Unix的商业操作系统。原本这个系统名为iPhone&OS,直到日WWDC大会上宣布改名为iOS。截止至2011年11月,根据Canalys的数据显示,iOS已经占据了全球智能手机系统市场份额的30%,在美国的市场占有率为43%。AndroidAndroid是一种以Linux为基础的开放源代码操作系统,主要使用于便携设备。Android操作系统最初由Andy&Rubin开发,最初主要支持手机。2005年由Google收购注资,并组建开放手机联盟开发改良,逐渐扩展到平板电脑及其他领域上。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。2012年11月数据显示,Android占据全球智能手机操作系统市场76%的份额,中国市场占有率为90%。WPWindowsPhone(简称:WP)是微软发布的一款手机操作系统,它将微软旗下的Xbox&Live游戏、Xbox&Music音乐与独特的视频体验集成至手机中。微软公司于日晚上9点30分正式发布了智能手机操作。
系统Windows&Phone,并将其使用接口称为“Modern”接口。2011年2月,“诺基亚”与微软达成全球战略同盟并深度合作共同研发。日,微软发布Windows&Phone&7.5。日,微软正式发布Windows&Phone&8,采用和Windows&8相同的Windows&NT内核,同时也针对市场的Windows&Phone&7.5发布Windows&Phone&7.8。日,微软在旧金山召开Build2014开发者大会。大会上微软推出Windows&Phone&8.1更新,日晚,微软正式向WP开发者推送了WP8.1&GDR1预览版,即WP8.1&Update。ChromeOSChromeOS是由谷歌开发的一款基于Linux的操作系统,发展出与互联网紧密结合的云操作系统,工作时运行Web应用程序。谷歌在日发布该操作系统,并在日以Chromium&OS之名推出相应的开源项目,并将Chromium&OS代码开源。
ChromeOS同时支持Intel&x86以及ARM处理器,软件结构极其简单,可以理解为在Linux的内核上运行一个使用新的窗口系统的Chrome浏览器。对于开发人员来说,web就是平台,所有现有的web应用可以完美的在Chrome&OS中运行,开发者也可以用不同的开发语言为其开发新的web应用。
发展过程/操作系统
各类平台上操作系统的功能演化综观电脑之历史,操作系统与硬件的发展息息相关。操作系统之本意原为提供简单的工作排序能力,后为辅助更新更复杂的硬件设施而渐渐演化。从最早的批次模式开始,分时机制也随之出现,在多处理器时代来临时,操作系统也随之添加多处理器协调功能,甚至是分布式系统的功能。其他方面的演变也类似于此。另一方面,在个人电脑上,个人电脑之操作系统因袭大型电脑的成长之路,在硬件越来越复杂、强大时,也逐步实践以往只有大型电脑才有的功能。总而言之,操作系统的历史就是一部解决电脑系统需求与问题的历史。1980年代前Maurice Vincent Wilkes,微的创建者
IBM System/360,大型主机的经典之作第一部电脑并没有操作系统。这是由于早期电脑的建立方式(如同建造机械算盘)与效能不足以执行如此程序。但在1947年发明了晶体管,以及莫里斯·威尔克斯(Maurice V. Wilkes)发明的微程序方法,使得电脑不再是机械设备,而是电子产品。系统管理工具以及简化硬件操作流程的程序很快就出现了,且成为操作系统的滥觞。到了1960年代早期,商用电脑制造商制造了批次处理系统,此系统可将工作的建置、调度以及执行序列化。此时,厂商为每一台不同型号的电脑创造不同的操作系统,因此为某电脑而写的程序无法移植到其他电脑上执行,即使是同型号的电脑也不行。
到了1964年,IBM System/360推出了一系列用途与价位都不同的大型电脑,而它们都共享代号为OS/360的操作系统(而非每种产品都用量身订做的操作系统)。让单一操作系统适用于整个系列的产品是System/360成功的关键,且实际上IBM目前的大型系统便是此系统的后裔;为System/360所写的应用程序依然可以在现代的IBM机器上执行!
OS/360也包含另一个优点:永久贮存设备—硬盘驱动器的面世(称为(Direct access storage device))。另一个关键是分时概念的建立:将大型电脑珍贵的时间资源适当分配到所有使用者身上。分时也让使用者有独占整部机器的感觉;而Multics的分时系统是此时众多新操作系统中实践此观念最成功的。
1963年,奇异公司与贝尔实验室合作以PL/I语言建立的Multics,是激发1970年代众多操作系统建立的灵感来源,尤其是由AT&T贝尔实验室的丹尼斯·里奇与肯·汤普逊所建立的系统,为了实践平台移植能力,此操作系统在1969年由C语言重写;另一个广为市场采用的小型电脑操作系统是VMS。80年代
第一代微型计算机并不像大型电脑或小型电脑,没有装设操作系统的需求或能力;它们只需要最基本的操作系统,通常这种操作系统都是从ROM读取的,此种程序被称为监视程序(Monitor)。1980年代,家用电脑开始普及。通常此时的电脑拥有8-bit处理器加上64KB、屏幕、以及低音质喇叭。而80年代早期最著名的套装电脑为使用微处理器芯片特别版)的Commodore C64。此电脑没有操作系统,而是以一8KB只读内存BIOS初始化彩色屏幕、键盘以及软驱和打印机。它可用8KB只读内存BASIC语言来直接操作BIOS,并依此撰写程序,大部分是游戏。此BASIC语言的解释器勉强可算是此电脑的操作系统,当然就没有内核或软硬件保护机制了。此电脑上的游戏大多跳过BIOS层次,直接控制硬件。
家用电脑C64的抽象架构
简单应用程序 机器语言
(游戏直接操作)
8k BASIC ROM
8k ROM-BIOS&
硬件(、储存设备等)
早期最著名的磁盘启动型操作系统是CP/M,它支持许多早期的微电脑,且被MS-DOS大量抄袭其功能。最早期的IBM PC其架构类似C64。当然它们也使用了BIOS以初始化与抽象化硬件的操作,甚至也附了一个BASIC解释器!但是它的BASIC优于其他公司产品的原因在于他有可携性,并且兼容于任何符合IBM PC架构的机器上。这样的PC可利用Intel-8088处理器(16-bit寄存器)寻址,并最多可有1MB的内存,然而最初只有640KB。软式磁盘机取代了过去的磁带机,成为新一代的储存设备,并可在他512KB的空间上读写。为了支持更进一步的文件读写概念,磁盘操作系统(Disk Operating System,DOS)因而诞生。此操作系统可以合并任意数量的磁区,因此可以在一张磁盘片上放置任意数量与大小的文件。文件之间以档名区别。IBM并没有很在意其上的DOS,因此以向外部公司购买的方式取得操作系统。1980年微软公司利用骗术取得了与IBM的合约,并且收购了一家公司出产的操作系统,在将之修改后以MS-DOS的名义出品,此操作系统可以直接让程序操作BIOS与文件系统。到了Intel-80286处理器的时代,才开始实作基本的储存设备保护措施。MS-DOS的架构并不足以满足所有需求,因为它同时只能执行最多一个程序(如果想要同时执进程式,只能使用TSR的方式来跳过OS而由程序自行处理多任务的部份),且没有任何内存保护措施。对驱动程序的支持也不够完整,因此导致诸如音效设备必须由程序自行设置的状况,造成不兼容的情况所在多有。某些操作的效能也是可怕地糟糕。许多应用程序因此跳过MS-DOS的服务程序,而直接存取硬件设备以取得较好的效能。虽然如此,但MS-DOS还是变成了IBM PC上面最常用的操作系统(IBM自己也有推出DOS,称为IBM-DOS或PC-DOS)。MS-DOS的成功使得微软成为地球上最赚钱的公司之一。
MS-DOS在个人电脑上的抽象架构
普通应用程序(、文本编辑器)
MS-DOS(文件系统)
BIOS(驱动程序)
硬件(中央处理器、储存设备等)
而1980年代另一个崛起的操作系统异数是Mac OS,此操作系统紧紧与麦金塔电脑捆绑在一起。此时一位全录伯拉图实验室的员工Dominik Hagen访问了苹果电脑的史蒂夫·乔布斯,并且向他展示了此时全录发展的图形化使用者界面。苹果电脑惊为天人,并打算向全录购买此技术,但因伯拉图实验室并非商业单位而是研究单位,因此全录回绝了这项买卖。在此之后苹果一致认为个人电脑的未来必定属于图形使用者界面,因此也开始发展自己的图形化操作系统。现今许多我们认为是基本要件的图形化接口技术与规则,都是由苹果电脑打下的基础(例如下拉式菜单、桌面图标、拖曳式操作与双点击等)。但正确来说,图形化使用者界面的确是全录创始的。90年代苹果电脑Apple I电脑,的第一代产品。延续1980年代的竞争,1990年代出现了许多影响未来个人电脑市场深厚的操作系统。由于图形化使用者界面日趋繁复,操作系统的能力也越来越复杂与巨大,因此强韧且具有弹性的操作系统就成了迫切的需求。此年代是许多套装类的个人电脑操作系统互相竞争的时代
上一年代于市场崛起的苹果电脑,由于旧系统的设计不良,使得其后继发展不力,苹果电脑决定重新设计操作系统。经过许多失败的项目后,苹果于1997年释出新操作系统——MacOS的测试版,而后推出的正式版取得了巨大的成功。让原先失意离开苹果的Steve Jobs风光再现。
除了商业主流的操作系统外,从1980年代起在开放原码的世界中,也发展了非常久的一段时间,但在1990年代由于与AT&T的法律争端,使得远在芬兰赫尔辛基大学的另一股开源操作系统——Linux兴起。Linux内核是一个标准POSIX内核,其血缘可算是Unix家族的一支。Linux与BSD家族都搭配GNU计划所发展的应用程序,但是由于使用的许可证以及历史因素的作弄下,Linux取得了相当可观的开源操作系统市占率,而BSD则小得多。相较于MS-DOS的架构,Linux除了拥有傲人的可移植性(相较于Linux,MS-DOS只能运行在Intel CPU上),它也是一个分时多进程内核,以及良好的内存空间管理(普通的进程不能存取内核区域的内存)。想要存取任何非自己的内存空间的进程只能通过系统调用来达成。一般进程是处于使用者模式(User mode)底下,而执行系统调用时会被切换成内核模式(Kernel mode),所有的特殊指令只能在内核模式执行,此措施让内核可以完美管理系统内部与外部设备,并且拒绝无权限的进程提出的请求。因此理论上任何应用程序执行时的错误,都不可能让系统崩溃(Crash)。
几乎完整的Linux架构图
模式 应用程序(sh、vi、OpenOffice.org等)
复杂函数库(KDE、glib等)
简单函数库(opendbm、sin等)
C函数库(open、fopen、socket、exec、calloc等)
模式 系统中断、调用、错误等软硬件消息
内核(驱动程序、进程、网络、内存管理等)
硬件(处理器、内存、各种设备)
另一方面,微软对于更强力的操作系统呼声的回应便是于1999年的面世。
1983年开始微软就想要为MS-DOS建构一个图形化的操作系统应用程序,称为Windows(有人说这是比尔盖兹被苹果的Lisa电脑上市所刺激)。一开始Windows并不是一个操作系统,只是一个应用程序,其背景还是纯MS-DOS系统,这是因为当时的BIOS设计以及MS-DOS的架构不甚良好之故。在1990年代初,微软与IBM的合作破裂,微软从OS/2(早期为命令行模式,后来成为一个很成功操作系统但是曲高和寡的图形化操作系统)项目中抽身,并且在推出Windows 3.1,一个以OS/2为基础的图形化操作系统。并在日推出Windows 95。直到这时,Windows系统依然是建立在MS-DOS的基础上,因此消费者莫不期待微软在2000年所推出的Windows 2000上,因为它才算是第一个脱离MS-DOS基础的图形化操作系统。
下面的为Windows NT系统的架构:在硬件阶层之上,有一个由微内核直接接触的硬件抽象层(HAL),而不同的驱动程序以模块的形式挂载在内核上执行。因此微内核可以使用诸如输入输出、文件系统、网络、信息安全机制与虚拟内存等功能。而系统服务层提供所有统一规格的函数调用库,可以统一所有副系统的实作方法。例如尽管POSIX与OS/2对于同一件服务的名称与调用方法差异甚大,它们一样可以无碍地实作于系统服务层上。在系统服务层之上的副系统,全都是使用者模式,因此可以避免使用者程序执行非法行动。
简化版本的Windows NT抽象架构
应用程序 Win32
应用程序 DOS
程序 Win16
应用程序 POSIX
其他DLL函数库 DOS 系统 Windows 模拟系统
OS/2 副系统 Win32 副系统 POSIX.1 副系统
模式 系统服务层
输入输出管理
文件系统、网络系统 对象管理系统 / 安全管理系统 / 进程管理 / 对象间通讯管理 / 管理 / 虚拟内存管理
微内核 窗口管理程序
驱动程序 硬件抽象层(HAL) 图形驱动
硬件(处理器、内存、外部设备等)
副系统架构第一个实作的副系统群当然是以前的微软系统。DOS副系统将每个DOS程序当成一进程执行,并以个别独立的MS-器承载其运行环境。另外一个是Windows 3.1模拟系统,实际上是在Win32副系统下执行Win16程序。因此达到了安全掌控为MS-DOS与早期Windows系统所撰写之旧版程序的能力。然而此架构只在Intel 80386处理器及后继机型上实作。且某些会直接读取硬件的程序,例如大部分的Win16游戏,就无法套用这套系统,因此很多早期游戏便无法在Windows NT上执行。Windows NT有3.1、3.5、3.51与4.0版。Windows 2000是Windows NT的改进系列(事实上是Windows NT 5.0)、Windows XP(Windows NT 5.1)以及Windows Server 2003(Windows NT 5.2)与Windows Vista(Windows NT 6.0)也都是立基于Windows NT的架构上。
而本年代渐渐增长并越趋复杂的嵌入式设备市场也促使嵌入式操作系统的成长。今日
现代操作系统通常都有一个使用的绘图设备的图形化使用者界面,并附加如鼠标或触控面版等有别于键盘的输入设备。旧的OS或效能导向的服务器通常不会有如此亲切的接口,而是以命令行接口(CLI)加上键盘为输入设备。以上两种接口其实都是所谓的壳,其功能为接受并处理使用者的指令(例如按下一按钮,或在命令提示列上键入指令)。
选择要安装的操作系统通常与其硬件架构有很大关系,只有Linux与BSD几乎可在所有硬件架构上执行,而Windows NT仅移植到了DEC Alpha与MIPS Magnum。在1990年代早期,个人电脑的选择就已被局限在Windows家族、类Unix家族以及Linux上,而以Linux及Mac OS X为最主要的另类选择,直至今日。
大型机与嵌入式系统使用很多样化的操作系统。大型主机近期有许多开始支持Java及Linux以便共享其他平台的资源。嵌入式系统近期,从给Sensor Networks用的Berkeley Tiny OS到可以操作Microsoft Office的Windows CE都有。
至2005年为止,用于通用计算机上的分布的操作系统主要两个家族:类Unix家族和微软Windows家族。而主机系统和嵌入式操作系统使用多样的系统,并且很多和Windows、Unix都没有直接的联系。类Unix家族包括多个组织的操作系统,其中有几个主要的子类包括System V、BSD和Linux。这里'Unix'是一个商标,开发组织允许使用操作系统在一个定义前提下自由地开发。这名字是通用大型设置操作系统类似组织 Unix。Unix系统运行在从巨型机到嵌入式系统的多种机器架构上。Unix主要使用于重要的商务服务器系统以及学院和工程环境中的工作站之上。和 AT&T Unix不同,自由软件比如Linux和BSD逐步开始流行,并且开始进入桌面操作系统领域。和一些Unix操作系统不同,像惠普公司的HPUX和IBM 公司的AIX是设计仅运行在客户购买的设备上,其中有一些特殊的(比如SUN公司的Solaris)可以运行在客户购买设备和基于工业标准的PC上。 APPLE公司的Mac OS X是一个BSD特例,以取代早期小型市场上的苹果公司Mac OS,众多流行的Unix操作系统正在走向一体。 的Windows操作系统家族起源于早期的IBM PC中的MS-DOS,现在版本是基于新的Windows NT内核,第一次是在OS/2中制定。和Unix不同,Windows只能运行在32位和64位的x86 CPU(如Intel或者AMD的芯片)上,尽管早期有版本运行于DEC Alpha,MIPS 和 PowerPC体系结构。今天Windows是一个流行的操作系统,在全球桌面市场中占有90%左右的份额,同时在中低端服务器市场也有广泛的应用,如 Web服务器和数据库服务器。大型机系统,比如IBM公司的Z/OS,和嵌入式操作系统比如QNX、eCOs和PalmOS都是和Unix和Windows无关的操作系统,而 Windows CE、Windows NT Embedded 4.0和Windows XP Embedded都是和Windows相关的。老的操作系统停留在市场包括类似IBM Windows的OS/2、来自惠普的VMS(以前的DEC);苹果公司的Mac OS操作系统、非Unix先驱苹果公司Mac OS X,以及AmigaOS,第一个图形用户界面的操作系统,包括对于普通用户的高级的多媒体能力。
嵌入式系统/操作系统
嵌入式系统使用非常广泛的操作系统(如VxWorks、eCos、Symbian&OS及Palm&OS)以及某些功能缩减版本的Linux或者其他操作系统。某些情况下,OS指称的是一个自带了固定应用软件的巨大泛用程序。在许多最简单的嵌入式系统中,所谓的OS就是指其上唯一的应用程序。
用例介绍/操作系统
个人电脑市场目前分为两大阵营,此两种架构分别有支持的操作系统:兼容PC - ,Mac OS X,家族的OS以及 家族。
Apple Macintosh - Mac OS(一个Unix分支OS,属BSD族系,Darwin),Windows(x86版本),Linux与BSD 大型电脑
最早的操作系统是针对20世纪60年代的大型主结构开发的,由于对这些系统在软件方面做了巨大投资,因此原来的计算机厂商继续开发与原来操作系统相兼容的硬件与操作系统。这些早期的操作系统是现代操作系统的先驱。现在仍被支持的大型主机操作系统包括:
Burroughs MCP-- B to Unisys Clearpath/MCP, present.
IBM OS/360 -- IBM System/360, 1964 to IBM zSeries, present
-- UNIVAC , to Unisys Clearpath IX, present.
现代的大型主机一般也可运行Linux或Unix变种。
嵌入式系统
嵌入式系统使用非常广泛的操作系统(如、eCos、Symbian OS及Palm OS)以及某些功能缩减版本的Linux或者其他操作系统。某些情况下,OS指称的是一个内置了固定应用软件的巨大泛用程序。在许多最简单的嵌入式系统中,所谓的OS就是指其上唯一的应用程序。类Unix系统
一个在底下执行的客制化KDE桌面系统所谓的类Unix家族指的是一族种类繁多的OS,此族包含了System V、与Linux。由于Unix是The Open Group的注册商标,特指遵守此公司定义的行为的操作系统。而类Unix通常指的是比原先的Unix包含更多的OS。
Unix系统可在非常多的处理器架构下执行,在服务器系统上有很高的使用率,例如大专院校或工程应用的工作站。自由软件Unix变种,例如Linux与BSD近来越来越受欢迎,它们也在个人桌面电脑市场上大有斩获,例如Ubuntu系统,但大部分都是高手在使用。
某些Unix变种,例如HP的HP-UX以及IBM的AIX仅设计用于自家的硬件产品上,而SUN的Solaris可安装于自家的硬件或x86电脑上。苹果电脑的Mac OS X是一个从NeXTSTEP、Mach以及FreeBSD共同派生出来的微内核BSD系统,此OS取代了苹果电脑早期非Unix家族的Mac OS。经历数年的披荆斩棘,自由开源的Unix系统逐渐蚕食鲸吞以往专利软件的专业领域,例如以往电脑动画运算巨擘──SGI的IRIX系统已被Linux家族及丛集所取代。微软WindowsMicrosoft Windows系列操作系统是在微软给IBM机器设计的MS-DOS的基础上设计的图形操作系统。现在的Windows系统,如、Windows XP皆是建立于现代的内核。NT内核是由OS/2和OpenVMS等系统上借用来的。Windows 可以在32位和64位的和的处理器上运行,但是早期的版本也可以在DEC Alpha、MIPS与PowerPC架构上运行。虽然由于人们对于开放源代码作业系统兴趣的提升,Windows的市场占有率有所下降,但是到2004年为止,Windows操作系统在世界范围内占据了操作系统90%的市场。
Windows系统也被用在低阶和中阶服务器上,并且支持网页服务的数据库服务等一些功能。最近微软花费了很大研究与开发的经费用于使Windows拥有能运行企业的大型程序的能力。
WindowsXP在日发布,日发布最新的升级包WindowsXP Service Pack 2。微软最新的操作系统(开发代码为Longhorn)于日发售。Windwos Vista增加了许多功能,尤其是系统的安全性和网络管理功能。Windows Vista拥有界面华丽的Aero Glass。苹果Mac OS
苹果系列操作系统是苹果公司 (原称苹果电脑)给苹果个人电脑系列设计的OS。其他大型主机以及嵌入式操作系统均与Unix或Windows家族关系不大,除了、Windows NT Embedded 4.0及Windows XP Embedded是Windows的血亲产品,以及数种*BSD和嵌入式Linux包为例外。
少数较旧的OS今日依然在一些需要稳定性的市场中活跃,例如IBM的OS/2BeOS以及XTS-400。
在达康时代狂潮过后,如AmigaOS与RISC OS等少数人使用的OS依然持续建立,以满足狂热的爱好者社群与特殊专业使用者。
历史列表/操作系统
年份系统名称1956年GM-NAA I/O1959年SHARE Operating System1960年IBSYS1961年CTSSMCP (Burroughs Large Systems)1962年GCOS1964年EXEC 8 OS/360 (宣称)、 TOPS-101965年Multics (宣称) OS/360 (上市)、 Tape Operating System (TOS)1966年DOS/360 (IBM)、MS/81967年ACP (IBM)、CP/CMS、 ITS、WAITS1969年TENEX 、 Unix1970年DOS/BATCH 11 (PDP-11)1971年OS/81972年MFT (operating system) 、 MVT、 RDOS、SVS、VM/CMS1973年Alto OS、RSX-11D、RT-11、VME1974年MVS (MVS/XA)1975年BS20001976年CP/M、TOPS-201978年Apple DOS 3.1 (苹果公司第一个操作系统)、TripOS、VMSLisp Machine (CADR)1979年POS、NLTSS1980年OS-9、QDOS、SOS、XDE (Tajo)、Xenix1981年MS-DOS1982年Commodore DOS、SunOS (1.0)、Ultrix1983年Lisa OS、Coherent、Novell NetWare、ProDOS1984年Macintosh OS (系统 1.0)、MSX-DOS、QNX、UniCOS1985年AmigaOS、Atari TOS、MIPS OS、Oberon operating system、Microsoft Windows 1.0 (Windows第一版)1986年AIX、GS-OS、HP-UX1987年Arthur、IRIX (SGI推出的第一个版本号是3.0)、Minix、OS/2 (1.0)、Microsoft Windows 2.01988年A/UX (苹果电脑)、LynxOS、MVS/ESA、OS/4001989年1989年、NeXTSTEP (1.0)、RISC OS、SCO Unix (第三版)1990年Amiga OS 2.0、BeOS (v1)、OSF/1、Microsoft Windows 3.01991年SunOS 4.1.x、Linux1992年386BSD 0.1、Amiga OS 3.0、Solaris 2.0 (SunOS 4.x的继承者,以SVR4为基础,而非BSD)、Microsoft Windo、s 3.11993年Solaris 2.1、Solaris 2.2、Solaris 2.3、Plan 9 (第一版)、FreeBSD、NetBSD、Microsoft Windows NT 3.1 (第一版NT)1994年Solaris 2.41995年Solaris 2.5、Digital UNIX (aka Tru64)、OpenBSD、OS/390、Microsoft Windows 951996年Microsoft Windows95 OSR2(OSR=OEMServicerelease) (即:Windows 97)、Microsoft Windows NT 4.01997年Solaris 2.6、Inferno、Mac OS 7.6 (第一版官方正式命名为Mac OS)、SkyOS1998年Solaris 7 (第一款64位元Solaris版本,是2.7舍弃主版本号的称谓)、Microsoft Windows 981999年AROS、Mac OS 8、Microsoft Windows 98 Second Edition2000年Solaris 8、AtheOS、Mac OS 9、MorphOS、Microsoft Windows 2000、Microsoft Windows Me、Mac OS X Public Beta (公开测试版)(日)2001年Mac OS X 10.0 Cheetah(印度豹)(日)、Amiga OS 4.0 (2001年5月)、Mac OS X 10.1 Puma(美洲狮)(日)、Microsoft Windows XP、z/OS2002年Solaris 9 for SPARC、Microsoft Windows XP 64-bit Edition、Windows XP Tablet PC Edition、Windows XP Media Center Edition、Syllable、Mac OS X 10.2 Jaguar(美洲虎)(日)2003年Solaris 9 for x86、Microsoft Windows Server 2003 (日)、Microsoft Windows XP 64-bit Edition - 以Microsoft Windows Server 2003为基础,同一天释出。、Mac OS X 10.3 Panther(黑豹)(日)2004年Microsoft Windows XP Media Center Edition2005年Solaris 10、Microsoft Windows XP Professional x64 Edition、Mac OS X 10.4 Tiger(老虎)(日)2006年Microsoft Windows Vista、Linux Mint、iOS(原名iPhone OS)2007年Mac OS X 10.5 Leopard(美洲豹)(日)2008年Ubuntu 8.04 LTS、OpenSolaris 08/05、Android、Ubuntu 8.10、OpenSolaris 08/11、Windows Server 20082009年Ubuntu 9.04、Mac OS X v10.6 Snow Leopard (雪豹)(日)、Windows Server 2008 R2、Windows 7、Ubuntu 9.10、Chrome OS2010年ubuntu 10.04、ubuntu 10.10、Windows Phone 72011年Ubuntu 11.04、Ubuntu 11.10、Mac OS X 10.7 Lion2012年Ubuntu 12.04、Ubuntu 12.10、OS X 10.8 Mountain Lion、Microsoft Windows 8(日)、Mac OS X Server v10.4 “Tiger”、Microsoft Windows Server 2012、Windows Phone 82013年Windows 8.1、Windows Server 2012 R2、Ubuntu 13.04、Mac OS X 10.9 Mavericks2014年China Operating System(中国操作系统)、Ubuntu 14.04、Windows Phone 8.1Common operating platform(中国通用操作平台 0.1)、Mac OS X v10.10Yosemite、Windows Technical Preview、SteamOS
管理方法/操作系统
操作系统位于底层硬件与用户之间,是两者沟通的桥梁。用户可以通过操作系统的用户界面,输入命令。操作系统则对命令进行解释,驱动硬件设备,实现用户要求。以现代观点而言,一个标准个人电脑的OS应该提供以下的功能:
进程管理(Processing management) 空间管理(Memory management)
文件系统(File system) 通讯(Networking) 机制(Security)
使用者界面(User interface)
驱动程序(Device drivers)进程管理
不管是或者应用程序,他们都以进程为标准执行单位。当年运用冯纽曼架构建造电脑时,每个中央处理器最多只能同时执行一个进程。早期的OS(例如DOS)也不允许任何程序打破这个限制,且DOS同时只有执行一个进程(虽然DOS自己宣称他们拥有终止并等待驻留(TSR)能力,可以部分且艰难地解决这问题)。现代的操作系统,即使只拥有一个CPU,也可以利用多进程(multitask)功能同时执行复数。进程管理指的是操作系统调整复数进程的功能。
由于大部分的电脑只包含一颗,在单内核(Core)的情况下多进程只是简单迅速地切换各进程,让每个进程都能够执行,在多内核或多处理器的情况下,所有进程通过许多协同技术在各处理器或内核上转换。越多进程同时执行,每个进程能分配到的时间比率就越小。很多OS在遇到此问题时会出现诸如音效断续或鼠标跳格的情况(称做崩溃(),一种OS只能不停执行自己的管理程序并耗尽系统资源的状态,其他使用者或硬件的程序皆无法执行)。进程管理通常实践了分时的概念,大部分的OS可以利用指定不同的特权等级(priority),为每个进程改变所占的分时比例。特权越高的进程,执行优先级越高,单位时间内占的比例也越高。交互式OS也提供某种程度的回馈机制,让直接与使用者交互的进程拥有较高的特权值。
除了进程管理之外,OS尚有担负起进程间通讯(IPC)、进程异常终止处理以及死结(Dead lock)侦测及处理等较为艰深的问题。
在进程之下尚有线程的问题,但是大部分的OS并不会处理线程所遭遇的问题,通常OS仅止于提供一组API让使用者自行操作或通过虚拟机器的管理机制控制线程之间的交互。内存管理根据帕金森定律:“你给程序再多,程序也会想尽办法耗光”,因此程序设计师通常希望系统给他无限量且无限快的内存。大部分的现代电脑内存架构都是阶层式的,最快且数量最少的寄存器为首,然后是高速缓存、内存以及最慢的磁盘储存设备。而OS的内存管理提供寻找可用的记忆空间、配置与释放记忆空间以及交换内存和低速储存设备的内含物……等功能。此类又被称做虚拟内存管理的功能大幅增加每个进程可获得的记忆空间(通常是4GB,即使实际上RAM的数量远少于这数目)。然而这也带来了微幅降低执行效率的缺点,严重时甚至也会导致进程崩溃。
内存管理的另一个重点活动就是借由CPU的帮助来管理虚拟位置。如果同时有许多进程储存于记忆设备上,操作系统必须防止它们互相干扰对方的内存内容(除非通过某些协议在可控制的范围下操作,并限制可存取的内存范围)。分割内存空间可以达成目标。每个进程只会看到整个内存空间(从0到内存空间的最大上限)被配置给它自己(当然,有些位置被OS保留而禁止存取)。CPU事先存了几个表以比对虚拟位置与实际内存位置,这种方法称为分页(paging)配置。
借由对每个进程产生分开独立的位置空间,OS也可以轻易地一次释放某进程所占据的所有内存。如果这个进程不释放内存,OS可以退出进程并将内存自动释放。磁盘与文件系统所谓的系统,通常指称管理磁盘数据的系统,可将数据以目录或文件的型式储存。每个文件系统都有自己的特殊格式与功能,例如日志管理或不需磁盘重整。
OS拥有许多种内置文件系统。例如Linux拥有非常广泛的内置文件系统,如ext2、ext3、ReiserFS、Reiser4、GFS、GFS2、OCFS、OCFS2、NILFS与文件系统。Linux也支持非本地文件系统,例如XFS、JFS、FAT家族与NTFS。另一方面,Windows能支持的文件系统只有FAT12、FAT16、FAT32与NTFS。NTFS系统是Windows上最可靠与最有效率的文件系统。其他的FAT家族都比NTFS老旧,且对于文件长度与分割磁盘能力都有很大限制,因此造成很多问题。而UNIX的文件系统多半是UFS,而UNIX中的一个分支Solaris最近则开始支持一种新式的.
大部份上述的文件系统都有两种建置方法。系统可以以日志式(Journaling file system)或非日志式建置。可以以较安全的手法执行系统回复。如果一个没有日志式建置的文件系统遇上突然的系统崩溃,导致数据建立在一半时停顿,则此系统需要特殊的文件系统检查工具才能撤消;日志式则可自动回复。微软的NTFS与Linux的ext3、reiserFS与JFS都是日志式文件系统。
每个文件系统都实作相似的目录/子目录架构,但在相似之下也有许多不同点。微软使用“\”符号以建立目录/子目录关系,且文件名称忽略其大小写差异;UNIX系统则是以“/”建立目录架构,且文件名称大小写有差异。网络
许多现代的OS都具备主流网络通讯协议TCP/IP的能力。也就是说这样的操作系统可以进入网络世界,并且与其他系统分享诸如文件、打印机与扫描器等资源。
许多OS也支持多个过去网络启蒙时代的各路网络通讯协议,例如IBM建立的SNA、DEC在它所生产的系统所设置的DECnet架构与微软为Windows制作的特殊通讯协议。还有许多为了特殊功能而研发的通讯协议,例如可以在网络上提供文件存取功能的NFS系统。现今大量用于影音流(Streaming media)及游戏消息传送的UDP协议等。安全
大多数OS都含有某种程度的信息机制。信息安全机制主要基于两大理念:
OS提供外界直接或间接存取数种资源的管道,例如本地端机的文件、受保护的特权系统调用(System call)、使用者的隐私数据与系统执行的程序所提供的服务。
OS有能力认证(Authorization)存取的请求。允许通过认证的请求并拒绝无法通过的非法请求,并将适当的权力授权(Authentication)给此请求。有些系统的认证机制仅简略地把资源分为特权或非特权,且每个请求都有独特的身份辨识号码,例如使用者名称。资源请求通常分成两大种类:
内部来源:通常是一个正在执行的程序发出的资源请求。在某些系统上,一个程序一旦可执行就可做任何事(例如DOS时代的病毒),但通常OS会给程序一个识别代号,并且在此程序发出请求时,检查其代号与所需资源的存取权限关系。
外部来源:从非本地端电脑而来的资源请求,例如远程登入本机电脑或某些网络连接请求(FTP或HTTP)。为了识别这些外部请求,系统也许会对此请求提出认证要求。通常是请求输入使用者名称以及相对应的密码。系统有时也会应用诸如磁卡或生物识别数据的它种认证方法。在某些例子,例如网络通讯上,通常不需通过认证即可存取资源(例如匿名存取的FTP服务器或P2P服务)。
除了允许/拒绝形式的安全机制,一个高安全等级的系统也会提供记录选项,允许记录各种请求对资源存取的行为(例如“谁曾经读了这个文件?”)。
肇因于军方与商业组织将敏感数据记录在电脑上,安全机制在OS历史上是一个被长久关注与讨论的问题。美国国防部(DoD)便创立了《可信赖之计算机系统评鉴程序》(TCSEC),此手册确立了评鉴安全机制成效的基本原则。这对OS作者来说非常重要,因为TCSEC是用于评鉴、分类与选拔出用于处理、储存与获取敏感或机密数据的电脑系统的标准程序。内部信息安全内部信息安全可视为防止正在执行的程序任意存取系统资源的手段。大多OS让普通程序可直接操作电脑的CPU,所以产生了一些问题,例如怎样把可如OS一样处理事务、执行同样特殊指令的程序强迫停止,毕竟在此情境下,OS也只是另一个平起平坐的。为通用OS所生产的CPU通常于硬件层级上实践了一定程度的特殊指令保护概念。通常特权层级较低的程序想要执行某些特殊指令时会被阻断,例如直接存取像是硬盘之类的外部设备。因此,程序必须得经由询问OS,让OS执行特殊指令来存取磁盘。因此OS就有机会检查此程序的识别身份,并依此接受或拒绝它的请求。
在不支持特殊指令架构的上,另一个也是唯一的保护方法,则是OS并不直接利用CPU执行使用者的程序,而是借由模拟一个CPU或提供一p-Code系统(伪代码执行机),像是Java一样让程序在虚拟机器上执行。
内部安全机制在多使用者电脑上特别重要:它允许每个系统使用者拥有自己个人的文件与目录,且其他使用者不能任意存取或删除。因为任何程序都可能绕过OS的监控,更有可能绕过侧录程序的监控,拥有强制力的内部安全机制在侧录启动时也非常重要。外部信息安全
通常一个操作系统会为其他网络上的电脑或使用者提供(主持)各种服务。这些服务通常借由端口或OS网络地址后的数字存取点提供。通常此包括提供文件共享(NTFS)、打印共享、、网页服务与文件传输协议(FTP)。外部信息安全的最前线,是诸如防火墙等的硬件设备。在OS内部也常设置许多种类的软件防火墙。软件防火墙可设置接受或拒绝在OS上执行的服务与外界的连接。因此任何人都可以安装并执行某些不安全的网络服务,例如Telnet或FTP,并且设置除了某些自用通道之外阻挡其他所有连接,以达成防赌不良连接的机制。使用者界面操作系统今日大部分的OS都包含图形化使用者界面。有几类较旧的OS将图形化使用者界面与内核紧密结合,例如最早的Windows与Mac OS实作产品。此种手法可提供较快速的图形回应能力,且实作时不需切割模块因而较为省工,但是会有强烈副作用,例如图形系统崩溃将导致整个系统崩溃,例如死亡蓝屏幕。许多近代的OS已模块化,将图形界面的副系统与内核分开(已知Linux与Mac OS X原先就是如此设计,而某些扩充版本的Windows终于也采用此手法)。
许多OS允许使用者安装或创造任何他们喜欢的图形界面。大部分的与Unix派生系统(BSD、Linux与Minix)通常会安装X 系统配合GNOME或KDE桌面环境。而某些OS就没有这么弹性的图形化使用者界面,例如Windows。这类的OS只能通过外加的程序来改变其图形化使用者界面,甚或根本只能改变诸如菜单风格或颜色配置等部分。
图形化使用者界面与时并进,例如Windows在每次新版本上市时就会将其图形化使用者界面改头换面,而Mac OS的GUI也在Mac OS X上市时出现重大转变。驱动程序所谓的是指某类设计来与硬件交互的电脑软件。通常是一设计完善的设备交互接口,利用与此硬件连接的电脑汇排流或通讯子系统,提供对此设备下令与接收信息的功能;以及最终目的,将消息提供给OS或应用程序。驱动程序是针对特定硬件与特定OS设计的软件,通常以操作系统内核模块、应用软件包或普通电脑程序的形式在OS内核底下执行,以达到通透顺畅地与硬件交互的效果,且提供硬件在处理异步的时间依赖性接口(asynchronous time-dependent hardware interface)时所需的(Interrupt handler)。
设计驱动程序的主要目的在于操作抽象化,任何硬件模块,即使是同一类的设备,在硬件设计面上也有巨大差异。厂商推出的较新模块通常更可靠更有效率,控制方法也会有所不同。电脑与其OS每每不能预期那些现有与新设备的变异之处,因此无法知道其操作方法。为解决此问题OS通常会主动制订每种设备该有的操作方式,而驱动程序功能则是将那些OS制订的行为描述,转译为可让设备了解的自定义操作手法。
理论上适合的驱动程序一旦安装,相对应的新设备就可以无误地执行。此新驱动程序可以让此设备完美地切合在OS中,让使用者察觉不到这是OS原本没有的功能。
详细结构/操作系统
操作系统理论研究者有时把操作系统分成四大部分:
驱动程序 - 最底层的、直接控制和监视各类硬件的部分,它们的职责是隐藏硬件的具体细节,并向其他部分提供一个抽象的、通用的接口。
内核 - 操作系统之最内核部分,通常运行在最高特权级,负责提供基础性、结构性的功能。
支承库 - (亦作“接口库”)是一系列特殊的程序库,它们指责在于把系统所提供的基本服务包装成应用程序所能够使用的编程接口(API),是最靠近的部分。例如,GNU C运行期库就属于此类,它把各种操作系统的内部编程接口包装成ANSI C和POSIX编程接口的形式。
外围 - 所谓外围,是指操作系统中除以上三类以外的所有其他部分,通常是用于提供特定高级服务的部件。例如,在微内核结构中,大部分系统服务,以及UNIX/Linux中各种守护进程都通常被划归此列。
当然,本节所提出的四部结构观也绝非放之四海皆准。例如,在早期的微软视窗操作系统中,各部分耦合程度很深,难以区分彼此。而在使用外核结构的操作系统中,则根本没有驱动程序的概念。因而,本节的讨论只适用于一般情况,具体特例需具体分析。
操作系统中四大部分的不同布局,也就形成了几种整体结构的分野。常见的结构包括:简单结构、层结构、微内核结构、垂直结构、和虚拟机结构。
内核是操作系统最内核最基础的构件,因而,内核结构往往对操作系统的外部特性以及应用领域有着一定程度的影响。尽管随着理论和的不断演进,操作系统高层特性与内核结构之间的耦合有日趋缩小之势,但习惯上,内核结构仍然是操作系统分类之常用标准。
内核的结构可以分为单内核、微内核、超微内核、以及外核等。
单内核结构是操作系统中各内核部件杂然混居的形态,该结构于1960年代(亦有1950年代初之说,尚存争议),历史最长,是操作系统内核与外围分离时的最初形态。
微内核结构是1980年代产生出来的较新的内核结构,强调结构性部件与功能性部件的分离。20世纪末,基于微内核结构,理论界中又发展出了超微内核与外内核等多种结构。尽管自1980年代起,大部分理论研究都集中在以微内核为首的“新兴”结构之上,然而,在应用领域之中,以单内核结构为基础的操作系统却一直占据着主导地位。
在众多常用操作系统之中,除了QNX和基于Mach的UNIX等个别系统外,几乎全部采用单内核结构,例如大部分的、,以及(微软声称Windows NT是基于改良的微内核架构的,尽管理论界对此存有异议)。微内核和超微内核结构主要用于研究性操作系统,还有一些嵌入式系统使用外核。
基于单内核的操作系统通常有着较长的历史渊源。例如,绝大部分UNIX的家族史都可上溯至1960年代。该类操作系统多数有着相对古老的设计和实现(例如某些UNIX中存在着大量1970年代、1980年代的代码)。另外,往往在性能方面略优于同一应用领域中采用其他内核结构的操作系统(但通常认为此种性能优势不能完全归功于单内核结构)。
工作方式/操作系统
操作系统的分类没有一个单一的标准,可以根据工作方式分为批处理操作系统、分时操作系统、实时操作系统、网络操作系统和分布式操作系统等;根据架构可以分为单内核操作系统等;根据运行的环境,可以分为桌面操作系统,嵌入式操作系统等;根据指令的长度分为8bit、16bit、32bit、64bit的操作系统。
通用与专用、嵌入式
通用操作系统是面向一般没有特定应用需求的操作系统。由于没有特定的应用需求,通用操作系统为了适应更广泛的应用,需要支持更多的硬件与软件,需要针对所有的用户体验,对系统进行更新。通用操作系统是一个工程量繁重的操作系统。
实时与非实时
“实时操作系统”(Real Time OS)泛指所有据有一定实时资源调度以及通讯能力的操作系统。而所谓“实时”,不同语境中往往有着非常不同的意义。某些时候仅仅用作“高性能”的同义词。但在操作系统理论中“实时性”所指的通常是特定操作所消耗的时间(以及空间)的上限是可预知的。比如,如果说某个操作系统提供实时内存分配操作,那也就是说一个内存分配操作所用时间(及空间)无论如何也不会超出操作系统所承诺的上限。实时性在某些领域非常重要,比如在工业控制、医疗器材、影音频合成、以及领域,实时性都是无可或缺的特性。
常用实时操作系统有QNX、VxWorks、RTLinux等等,而、多数UNIX、以及多数Windows家族成员等都属于非实时操作系统。操作系统整体的实时性通常依仗内核的实时能力,但有时也可在非实时内核上建立实时操作系统,很多在Windows上建立的实时操作系统就属于此类。
在POSIX标准中专有一系用于规范实时操作系统的API,其中包括POSIX.4、POSIX.4a、POSIX.4b(合称POSIX.4)以及POSIX.13等等。符合POSIX.4的操作系统通常被认可为实时操作系统(但实时操作系统并不需要符合POSIX.4标准)。未来展望研究与建立未来的操作系统依旧进行著。操作系统朝提供更省电、网络化、华丽的使用者界面的方向来改进。Linux及一些类UNIX OS正努力让自己成为个人用户舒适的环境。GNU Hurd是一个企图完全兼容Unix并加强许多功能的微内核架构。微软Singularity是一个奠基于.Net并以建立较佳内存保护机制为目目标研究计划。
&|&相关影像
互动百科的词条(含所附图片)系由网友上传,如果涉嫌侵权,请与客服联系,我们将按照法律之相关规定及时进行处理。未经许可,禁止商业网站等复制、抓取本站内容;合理使用者,请注明来源于。
登录后使用互动百科的服务,将会得到个性化的提示和帮助,还有机会和专业认证智愿者沟通。
此词条还可添加&
编辑次数:72次
参与编辑人数:41位
最近更新时间: 17:19:56
扫码免费获得此书, 新用户手机专享特权。
贡献光荣榜}

我要回帖

更多关于 linux系统图形化界面 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信