:: wikimiki.org ::
| 内核 |
内核在计算机科学中,内核是操作系统最基本的部分。它是为众多应用程序提供对计算机硬件的安全访问的一部分软件,这种访问是有限的,并且内核决定一个程序在什么时候对某部分硬件操作多长时间。直接对硬件操作是非常复杂的,所以内核通常提供一种硬件抽象的方法来完成这些操作。硬件抽象隐藏了复杂性,为应用软件和硬件提供了一套简洁,统一的接口,使程序设计更为简单。
严格地说,内核并不是计算机系统中必要的组成部分。程序可以直接地被调入计算机中执行,这样的设计说明了设计者不希望提供任何硬件抽象和操作系统的支持,它常见于早期计算机系统的设计中。最终,一些辅助性程序,例如程序加载器和调试器,被设计到机器核心当中,或者固化在只读存储器里。这些变化发生时,操作系统内核的概念就渐渐明晰起来了。
内核可分为四大类:
- 单内核 它为潜在的硬件提供了大量完善的硬件抽象操作。
- 微内核 只提供了很小一部分的硬件抽象,大部分功能由一种特殊的用户态程序:服务器来完成。
- 混合内核 它很像微内核结构,只不过它的的组件更多的在核心态中运行,以获得更快的执行速度。
- 外内核 这种内核不提供任何硬件抽象操作,但是允许为内核增加额外的运行库,通过这些运行库应用程序可以直接地或者接近直接地对硬件进行操作。
单内核
单内核结构在硬件之上定义了一个高阶的抽象界面,应用一组原语(或者叫系统调用)来实现操作系统的功能,例如进程管理,文件系统,和存储管理等等,这些功能由多个运行在核心态的模块来完成。
尽管每一个模块都是单独地服务这些操作,内核代码是高度集成的,而且难以编写正确。因为所有的模块都在同一个内核空间上运行,一个很小的bug都会使整个系统崩溃。然而,如果开发顺利,单内核结构就可以从运行效率上得到好处。
很多现代的单内核结构内核,如Linux和FreeBSD内核,能够在运行时将模块调入执行,这就可以使扩充内核的功能变得更简单,也可以使内核的核心部分变得更简洁。
单内核结构的例子:
- 传统的UNIX内核,例如伯克利大学发行的版本
- Linux内核
UNIX
微内核
微内核结构由一个非常简单的硬件抽象层和一组比较关键的原语或系统调用组成,这些原语仅仅包括了建立一个系统必需的几个部分,如 线程管理,地址空间和进程间通信等。
微核的目标是将系统服务的实现和系统的基本操作规则分离开来。例如,进程的输入/输出锁定服务可以由运行在微核之外的一个服务组件来提供。这些非常模块化的用户态服务器用于完成操作系统中比较高级的操作,这样的设计使内核中最核心的部分的设计更简单。一个服务组件的失效并不会导致整个系统的崩溃,内核需要做的,仅仅是重新启动这个组件,而不必影响其它的部分。
微内核结构的例子:
- AIX
- BeOS
- L4微内核系列
- Mach, 用于GNU Hurd和Mac OS X
- Minix
- MorphOS
- QNX
- RadiOS
- VSTa
VSTa
单内核與微内核的比較
单内核结构是非常有吸引力的一种设计,由于在同一个地址空间上实现所有低级操作的系统控制代码的复杂性的效率会比在不同地址空间上实现更高些。
20世纪90年代初,单内核结构被认为是过时的。把Linux设计成为单内核结构而不是微内核引起了无数的争议(参见:[http://www.dina.dk/~abraham/Linus_vs_Tanenbaum.html 节选:Linus Torvalds和Andrew Tanenbaum之间一场著名的争辩])。
现在,单核结构正趋向于容易被正确设计,所以它的发展会比微内核结构更迅速些。两个阵营中都有成功的案例。微核经常被用于机器人和医疗器械的嵌入式设计中,因为它的系统的关键部分都处在相互分开的,被保护的存储空间中。这对于单核设计来说是不可能的,就算它采用了运行时加载模块的方式。
尽管Mach是众所周知的多用途的微内核,人们还是开发了除此之外的几个微内核。L3是一个演示性的内核,只是为了证明微内核设计并不总是低运行速度。它的后续版本L4甚至可以将Linux内核在单独的地址空间作为它的一个进程来运行。
QNX是一个从20世纪80年代就开始设计的微内核系统。它比Mach更接近微内核的理念。它被用于一些特殊的领域,在这些情况下由于软件错误导致系统失效是不允许的。例如航天飞机上的机械手,还有研磨望远镜镜片的机器,一点点失误就会导致上千美元的损失。
很多人相信,由于Mach不能够解决一些提出微内核理论时针对的问题,所以微内核技术毫无用处。Mach的爱好者表明这是非常狭隘的观点,遗憾的是似乎所有人都开始接受这种观点。
混合内核
混合内核实质上是微内核,只不过它让一些微核结构运行在用户空间的代码运行在内核空间,这样让内核的运行效率更高些。这是一种妥协做法,设计者参考了微内核结构的系统运行速度不佳的理论。然而后来的实验证明,纯微内核的系统实际上也可以是高效率的。大多数现代操作系统遵循这种设计范畴,微软视窗就是一个很好的例子。另外还有XNU,运行在苹果Mac OS X上的内核,也是一个混合内核。
混合内核的例子:
- BeOS 内核
- DragonFly BSD
- ReactOS 内核
- Windows NT、Windows 2000、Windows XP、Windows Server 2003以及Windows Vista等基于NT技术的操作系统
- XNU
一些人认为可以在运行时加载模块的单核系统和混合内核系统没有区别。这是不正确的。混合意味着它从单核和微核系统中都吸取了一定的设计模式,例如一些非关键的代码在用户空间运行,另一些在内核空间运行,单纯是为了效率的原因。
XNU
外内核
外内核系统,也被称为纵向结构操作系统,使一种比较极端的设计方法。
它的设计理念是让用户程序的设计者来决定硬件接口的设计。外内核本身非常的小,它通常只负责系统保护和系统资源复用相关的服务。
传统的内核设计(包括单核和微核)都对硬件作了抽象,把硬件资源或设备驱动程序都隐藏在硬件抽象层下。比方说,在这些系统中,如果分配一段物理存储,应用程序并不知道它的实际位置。
而外核的目标就是让应用程序直接请求一块特定的物理空间,一块特定的磁盘块等等。系统本身只保证被请求的资源当前是空闲的,应用程序就允许直接存取它。既然外核系统只提供了比较低级的硬件操作,而没有像其他系统一样提供高级的硬件抽象,那么就需要增加额外的运行库支持。这些运行库运行在外核之上,给用户程序提供了完整的功能。
理论上,这种设计可以让各种操作系统运行在一个外核之上,如Windows和Unix。并且设计人员可以根据运行效率调整系统的各部分功能。
现在,外核设计还停留在研究阶段,没有任何一个商业系统采用了这种设计。几种概念上的操作系统正在被开发,如剑桥大学的Nemesis,格拉斯哥大学的Citrix系统和瑞士计算机科学院的一套系统。麻省理工学院也在进行着这类研究。
無核
TUNES Project和UnununiumOS都進行無內核的嘗試. 無內核的系統is not limited to a single centralizing entry point.
參看
- 作業系統
category:操作系统
category:電腦術語
ja:カーネル
ko:커널 (컴퓨터)
计算机科学
计算机科学是一门包含各种各样与计算和信息处理相关主题的系统学科,从抽象的算法分析、形式化语法等等,到更具体的主题如编程语言、程序设计、软件和硬件等。作为一门学科,它与数学、计算机程序设计、软件工程和计算机工程有显著的不同,却通常被混淆,尽管这些学科之间存在不同程度的交叉和覆盖。
计算机科学研究的课题是:
- 计算机程序能做什么和不能做什么(可计算性);
- 如何使程序更高效的執行特定任務(算法和复杂性理论);
- 程序如何存取不同类型的数据(数据结构和数据库);
- 程序如何显得更具有智能(人工智能);
- 人类如何与程序沟通(人机互动和人机界面)。
计算机科学的大部分研究是基于“冯·诺依曼计算机”和“图灵机”的,它们是絕大多數实际机器的计算模型。作为此模型的开山鼻祖,邱奇-图灵论题(Church-Turing Thesis)表明,尽管在计算的时间,空间效率上可能有所差异,现有的各种计算设备在计算的能力上是等同的。尽管这个理论通常被认为是计算机科学的基础,可是科学家也研究其它种类的机器,如在实际层面上的并行计算机和在理论层面上概率计算机、oracle 计算机和量子计算机。在这个意义上来讲,计算机只是一种计算的工具:著名的计算机科学家 Dijkstra 有一句名言“计算机科学并不只是关于计算机的,正如天文学并不只是关于望远镜一样”。
计算机科学根植于电子工程、数学和语言学,是科学、工程和艺术的结晶。它在20世纪最后的三十年间兴起成为一门独立的学科,并发展出自己的方法与术语。
早期,虽然英国的剑桥大学和其他大学已经开始教授计算机科学课程,但它只被视为数学或工程学的一个分支,并非独立的学科。剑桥大学声称有世界上第一个传授计算的资格。世界上第一个计算机科学系是由美国的普渡大学在1962年设立,第一个计算机学院於1980年由美国的东北大学设立。现在,多数大学都把计算机科学系列为独立的部门,一部分将它与工程系、应用数学系或其他学科联合。
计算机科学领域的最高荣誉是ACM设立的图灵奖,被誉为是计算机科学的诺贝尔奖。它的获得者都是本领域最为出色的科学家和先驱。华人中首获图灵奖的是姚期智先生.他于2000年以其对计算理论做出的诸多“根本性的、意义重大的”贡献而获得这一崇高荣誉。
计算机系统
计算机系统可划分为软件系统与硬件系统两大类。
硬件
- 结构控制和指令系统
- 算法和逻辑结构
- 存储器结构
- 冯·诺伊曼结构
- 哈佛结构
- 输入/输出和数据通信
- 数字逻辑
- 逻辑设计
- 集成电路
计算机系统组织
- 计算机系统结构
- 计算机网络
- 分布式计算
- 网络安全
- 计算机系统实现
软件
- 系统软件
- 操作系统
- 编译器
- 应用软件
- 计算机游戏
- 办公自动化
- 网络软件
- CAD软件
- 计算机程序
- 程序设计和程序设计实践
- 面向对象技术
- 程序设计语言
- 软件工程
- 软件复用
- 驱动程序
- 计算机模拟
- 程序设计方法学
数据和信息系统
- 数据结构
- 数据存储表示
- 数据加密
- 数据压缩
- 编码与信息论
- 文件
- 信息系统
- 管理信息系统
- 决策支持系统 - 专家系统
- 数据库
- 信息存储和数据存取
- 信息交互与表达
主要的研究领域
形式化基础
- 逻辑学
- 谓词逻辑
- 模态逻辑
- 时序逻辑
- 描述逻辑
- 数学
- 泛代数
- 递归论
- 模型论
- 概率论和数理统计
- 逻辑代数
- 布尔代数
- 离散数学
- 组合数学
- 图论
- 网论
- 信息论
理论计算机科学
- 形式语言
- 自动机
- 可计算性
- 算法
- 计算复杂性
- 描述复杂性
- 编译器
- 程序设计理论
- 信息论
- 类型理论
- 指称语义
- 微程序
- 遗传算法
- 并行计算
计算方法学
- 人工智能
- 计算机图形学
- 图像处理与计算机视觉
- 模式识别
- 语音识别
- 文字识别
- 签名识别
- 人脸识别
- 指纹识别
- 仿真与建模
- 数字信号处理
- 文档与文本处理
计算机应用
- 数值计算
- 数值分析
- 定理机器证明
- 计算机代数
- 工程计算
- 计算机化学
- 计算机物理
- 生物信息论
- 计算生物学
- 非数值计算
- 工厂自动化
- 办公室自动化
- 人工智能
- 信息存储与检索
- 符号语言处理
- 计算机辅助科学
- 计算机辅助设计
- 计算机辅助教学
- 计算机辅助管理
- 计算机辅助软件工程
- 机器人学
- 多媒体技术
- 人机交互
- 电子商务
特定技术
- 测试基准
- 机器视觉
- 数据压缩
- 设计模式
- 数字信号处理
- 文件格式
- 信息安全
- 国际互联网络
- 超大规模集成电路设计
- 网络传输协议
- 网络处理器技术
- 整数运算器
- 浮点运算器
- 矩阵运算处理器
- 网格
计算科学史
- 计算机历史
- 软件业历史
- 编程思想
相关学科
计算机科学与另外的一些学科紧密相关。这些学科之间有明显的交叉领域,但也有明显的差异。
- 信息科学 - 软件工程 - 信息系统 - 计算机工程 - 信息安全 - 密码学 - 数学 - 工程学 - 语言学 - 逻辑学
卓越的先驱者
- 艾伦·图灵
参见
- 计算机科学课程列表
- 计算机科学家
- 图灵奖
- 冯·诺依曼奖
- 中国计算机产业
- 中国计算机科学大事年表
- 程序设计语言列表
- 操作系统列表
- ASCII艺术
外部链接
ko:컴퓨터 과학
ja:情報工学
simple:Computer Science
th:วิทยาการคอมพิวเตอร์
Category:自然科学
Category:技术科学
操作系统操作系统(Operating System,简称OS)
是计算机系统中负责支撑应用程序运行环境以及用户操作环境的系统软件,同时也是计算机系统的核心与基石。
它的职责通常(但并非绝对)包括对硬件的直接监管、对各种计算资源(如内存、处理器时间等)的管理、以及提供诸如作业管理之类的面向应用程序的服务等等。
操作系统的理论是计算机科学中一个古老而又活跃的分支,而操作系统的设计与实现则是软件工业的基础与核心。
今天的操作系统
到2005年6月为止,用于通用计算机上的分布的操作系统主要两个家族:类Unix家族和微软Windows家族。
主机系统和嵌入式操作系统使用多样的系统,并且很多和Windows和Unix都没有直接的联系。
类Unix家族包括多个组织的操作系统,其中有几个主要的子类包括System V,BSD和Linux。这里'Unix'是一个商标,开发组织允许使用操作系统在一个定义前提下自由地开发。这名字是通用大型设置操作系统类似组织Unix。Unix系统运行在从巨型机到嵌入式系统的多种机器架构上。Unix 主要使用于重要的商务服务器系统以及学院和工程环境中的工作站之上。和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服务器和数据库服务器。
译者提示:NT是 New Technology 而不是 Network Technology,这点很多人都出现过误解.
大型机系统,比如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,第一个图形用户界面的操作系统,包括对于普通用户的高级的多媒体能力.
功能
操作系统位于底层硬件与用户之间,是两者沟通的桥梁。用户可以通过操作系统的用户界面,输入命令。操作系统则对命令进行解释,驱动硬件设备,实现用户要求。
结构
操作系统理论研究者有时把操作系统分成四大部分:
- 驱动程序 - 最底层的、直接控制和监视各类硬件的部分,它们的职责是隐藏硬件的具体细节,并向其他部分提供一个抽象的、通用的接口。
- 内核 - 操作系统之最核心部分,通常运行在最高特权级,负责提供基础性、结构性的功能。
- 支承库 - (亦作“接口库”)是一系列特殊的程序库,它们指责在于把系统所提供的基本服务包装成应用程序所能够使用的编程接口(API),是最靠近应用程序的部分。例如,GNU C运行期库就属于此类,它把各种操作系统的内部编程接口包装成ANSI C和POSIX编程接口的形式。
- 外围 - 所谓外围,是指操作系统中除以上三类以外的所有其他部分,通常是用于提供特定高级服务的部件。例如,在微内核结构中,大部分系统服务,以及UNIX/Linux中各种守护进程都通常被划归此列。
当然,本节所提出的四部结构观也绝非放之四海皆准。
例如,在早期的微软视窗操作系统中,各部分耦合程度很深,难以区分彼此。
而在使用外核结构的操作系统中,则根本没有驱动程序的概念。
因而,本节的讨论只适用于一般情况,具体特例需具体分析。
操作系统中四大部分的不同布局,也就形成了几种整体结构的分野。
常见的结构包括:简单结构、层结构、微内核结构、垂直结构、和虚拟机(虛擬機器Virtual Machine)结构。
简单结构
很多商用操作系统都没有清晰的整体结构,系统中的各个部件混杂在一起。
这些操作系统往往是由很小的实验性的项目逐步演化而来的,因而宏观结构非常模糊。
MS-DOS就是一个很好的例子,在设计之初,MS-DOS的设计目标是在比较有限的硬件资源上运行比较有限的应用程序,开发人员很可能都没有预料到它日后在市场上的巨大成功,因而模块之间的相对独立性几乎被忽略。
相似的情况也发生在UNIX家族之中。
早期的UNIX因为受限于当时的硬件能力,也一直都是采用非常简单的、
随着UNIX的不断发展这样结构也很快成为了UNIX演进的瓶颈。
其他采用这种简单结构的操作系统还包括PalmOS 5以前的PalmOS,以及很多其他的小型的嵌入式操作系统。
层结构
微内核结构
垂直结构
虚拟机结构
分类
内核结构
:主条目: 内核
内核是操作系统最核心最基础的构件,因而,内核结构往往对操作系统的外部特性以及应用领域有着一定程度的影响。
尽管随着理论和实践的不断演进,操作系统高层特性与内核结构之间的耦合有日趋缩小之势,但习惯上,内核结构仍然是操作系统分类之常用标准。
内核的结构可以分为
单内核(monolithic kernel),
微内核(microkernel),
超微内核(nanokernel),
以及外核(exokernel)等。
详情参见操作系统内核。
单内核结构是操作系统中各核心部件杂然混居的形态,该结构于二十世纪六十年代(亦有二十世纪五十年代初之说,尚存争议),历史最长,是操作系统内核与外围分离时的最初形态。
微内核结构是二十世纪八十年代产生出来的较新的内核结构,强调结构性部件与功能性部件的分离。
二十世纪末,基于微内核结构,理论界中又发展出了超微内核与外内核等多种结构。
尽管自二十世纪八十年代起,大部分理论研究都集中在以微内核为首的“新兴”结构之上,然而,在应用领域之中,以单内核结构为基础的操作系统却一直占据着主导地位。
在众多常用操作系统之中,除了QNX和基于Mach的UNIX等个别系统外,几乎全部采用单内核结构,例如Linux,大部分的Unix,以及Windows(微软声称Windows NT是基于改良的微内核架构的,尽管理论界对此存有异议)。
微内核和超微内核结构主要用于研究性操作系统,还有一些嵌入式系统使用外核。
基于单内核的操作系统通常有着较长的历史渊源。
例如,绝大部分UNIX的家族史都可上溯至二十世纪六十年代。
该类操作系统多数有着相对古老的设计和实现
(例如某些UNIX中存在着大量七、八十年代的代码)。
另外,往往在性能方面略优于同一应用领域中采用其他内核结构的操作系统
(但通常认为此种性能优势不能完全归功于单内核结构)。
通用与专用、嵌入式去
实时与非实时
“实时操作系统”(Real Time OS)泛指所有据有一定实时资源调度以及通讯能力的操作系统。而所谓“实时”,不同语境中往往有着非常不同的意义。某些时候仅仅用作“高性能”的同义词。但在操作系统理论中“实时性”所指的通常是特定操作所消耗的时间(以及空间)的上限是可预知的。比如,如果说某个操作系统提供实时内存分配操作,那也就是说一个内存分配操作所用时间(及空间)无论如何也不会超出操作系统所承诺的上限。实时性在某些领域非常重要,比如在工业控制、医疗器材、影音频合成、以及军事领域,实时性都是无可或缺的特性。
常用实时操作系统有QNX、VxWorks、RTLinux等等,而Linux、多数UNIX、以及多数Windows家族成员等都属于非实时操作系统。操作系统整体的实时性通常依仗内核的实时能力,但有时也可在非实时内核上建立实时操作系统,很多在Windows上建立的实时操作系统就属于此类。
在POSIX标准中专有一系用于规范实时操作系统的API,其中包括POSIX.4、POSIX.4a、POSIX.4b(合称POSIX.4)
以及POSIX.13等等。符合POSIX.4的操作系统通常被认可为实时操作系统(但实时操作系统并不需要符合POSIX.4标准)。
多任务与单任务
16位、32位、64位
所谓16位、32位、64位等术语有时指总线宽度,有时指指令宽度(在定长指令集中),而在操作系统理论中主要是指内存寻址的宽度。如果内存的寻址宽度是16位,那么每一个内存地址可以用16个二进制位来表示,也就是说可以在64KB的范围内寻址。同样道理32位的宽度对应4GB的寻址范围,64位的宽度对应16 Exabyte的寻址范围。内存寻址范围并非仅仅是对操作系统而言的,其他类型的软件的设计有时也会被寻址范围而影响。但是在操作系统的设计与实现中,寻址范围却有着更为重要的意义。
在早期的16位操作系统中,由于64KB的寻址范围太小,大都都采用“段”加“线性地址”的二维平面地址空间的设计。分配内存时通常需要考虑“段置换”的问题,同时,应用程序所能够使用的地址空间也往往有比较小的上限。
在32位操作系统中,
4GB的寻址范围对于一般应用程序来说是绰绰有余的,
因而,通常使用一维的线性地址空间,而不使用“段”。
参看
- 操作系统内核
- 实时操作系统-分时系统-多任务-嵌入式系统-单一用户-多用户
- 对称多处理并行计算(SMP)-集群(Cluster)-分布式计算
- 操作系统列表
- 64位操作系统
- 计算机科学课程列表
部分操作系统
- FreeBSD
- MS-DOS
- GNU/Linux
- Mac OS
- Windows
- Windows NT
- UNIX
- 其他操作系统
外部链接
-
als:Betriebssystem
ja:オペレーティングシステム
ko:운영 체제
ms:Sistem pengoperasian
simple:Operating system
th:ระบบปฏิบัติการ
zh-min-nan:Chok-gia̍p hē-thóng
计算机電子計算機,--电脑,是一种电子化的计算工具。在中國大陆也經常用計算機來指代電子計算機。就目前而言,電子計算機是根据预先设定好的程序来进行信息处理的一种设备。電子計算機分为巨型计算机(又称“超级计算机”)、大型计算机、中型计算机、小型计算机、微型计算机(简称“微机”,其中包括个人计算机,PC),已经逐步进入社会各个领域,尤其是进入了家庭和个人领域,极大地改变了社会的日常面貌。
定义
上述对于電子計算機的定义包括了许多只能计算或是只有有限功能的特定用途的设备。然而当说到现代電子計算機,最重要的特征是,只要给予正确的规划,任何電子計算機都可以模拟其他任何的行为(只受限于電子計算機本身的存储容量和执行的速度)。据此,现代電子計算機相对于早期的電子計算機也被称为通用型電子計算機。
分类
为了定义什么是電子計算機,对所有计算设备进行分类是必然的。下面的章节介绍几种不同的分类方法。这些分类方法必须一起使用才能准确无误的描述一台特定的電子計算機。
按用途分类
这是最明显的分类法。電子計算機制造商通常用这种方法来描述他们的产品;用户用同样的方法来描述与他们交流的机器。例如:
- 巨型计算机
- 小巨型计算机
- 超級计算机
- 大型计算机
- 企业应用服务器
- 小型计算机
- 工作站
- 个人计算机或者台式机
- 膝上型电脑或者笔记本电脑
- 个人数字助理
- 可以穿戴的电脑
按用途分类很通俗,但是也导致它的不确定性,因为仅仅当前广泛使用的设备被包含进来了。電子計算機发展的快速性意味着其新用途层出不穷,当前的定义很快就过时。许多不再被人使用的電子計算機的类型,例如微分分析器,通常不被列入分类条目之中。所以,必须采用其他分类方法来明白无误的定义電子計算機这条术语。
按制造技术分类
- 机械式电脑
- 半电子—半机械式
- 电子式
- 晶体管式
- 半导体集成电路式
按设计特点分类
现代電子計算機综合了许多基本的设计特点,这些特点是许多贡献者在很多年里逐渐开发出来的。设计特点经常独立于实现技术。现代電子計算機的综合性能来源于这些特点互相作用的方式。一些重要的设计特性罗列如下:
数字式和模拟式
设计一种電子計算機时需要有一个基本的决定,即这种電子計算機应该是数字式还是模拟式的。数字式处理离散的数字性或者符号性值,而模拟式仍然应用于一些特殊目的的领域,例如机器人和回旋加速器的控制。其他的途径,象脉冲计算和量子计算,也是可能存在的;但是他们或者用于很特殊的目的或者仍然处于试验阶段。
二进制和十进制
在数字式计算的发展历程中,一个重大的设计进步是引入了二进制作为内部的数字系统。这种方法避免了那些基于其他数字系统的電子計算機中必须的复杂的进位机制,例如十进制系统。采用二进制的好处是简化了实现算术功能和逻辑运算的设计。
按功能分类
对不同的计算设备分类的最好办法可能是按他们的内在能力分类,而不是按他们的用途,实现技术,或者设计特性来分类。電子計算機按能力可以分为三大类:只能计算一种函数的单用途设备,可以计算有限范围内的函数的特殊用途设备,以及我们天天使用的通用设备。过去電子計算機这个词用来描述所有这些类型的机器,但是现在口语中的用法通常特指通用電子計算機了。
通用電子計算機
按定义来说,一台通用電子計算機能用来解决任何问题,只要这个问题可以用程序来表示。然而,程序运行的是有一些实际的限制的:電子計算機的存储能力,问题的大小,以及运行的速度。在1934年,艾伦·图灵证明了:给定正确的程序,任何通用電子計算機可以模拟其他任何电脑的行为。他的数学证明是纯粹理论上的,因为那时候还没有通用電子計算機存在。这个证明的意义是深远的:例如,从理论上说,现在的通用電子計算機能够模拟任何未来制造的通用電子計算機的行为,尽管速度很慢。
通用電子計算機也称作完备的图灵机,它经常被用来作为定义现代電子計算機的能力上限。然而,这种定义是有问题的。几种过分单纯化的计算设备已经展现出完备的图灵机特性。但是他们都处于一种幽默化表达的“图灵沥青陷阱”(?)状态,一种什么都是有可能的,但是和实用性一点都不沾边。现代電子計算機不仅仅是理论上的通用化,而且是实用化的通用工具。
从1930年代中期到1940年代后期,许多人在开发现代的、数字的、电子的,通用電子計算機。许多试验型的机器被造了出来并且可能是图灵完备化的。这些机器在当时都被宣称为第一台電子計算機,然而它们都只有有限的处理通用问题的能力,所以他们的设计最终都被抛弃了。
存储程序電子計算機
特殊用途電子計算機
单用途電子計算機
按操作类型分类
電子計算機也可以按用户操作的方式来分类。有两大类操作方式:批处理和交互式处理。
嵌入式電子計算機
从1980年代起,许多的家用设备,不只包括电视游戏控制器,而且延伸到移动电话、录相机、PDA和许多其他的工业、电子设备,都内嵌有特定用途的電子計算機。这些電子計算機也通常被称之为“微控制器”或者嵌入式計算機。
个人计算机
就目前而言,一般人所提到的计算机都是指个人计算机。
大型计算机
巨型计算机
成指数级增长的电脑的发展
划分不同种電子計算機的难度因为它的计算能力的指数增长更加复杂化。粗略估计,从1900年到现在,计算设备的计算能力(按1000美元能够买到的设备在每秒种内处理运算指令的数量)每一年半到两年就增加一倍。英特尔公司的创始人之一,戈登·E·摩尔在1965年首次描述了電子計算機发展的这种特性(参考摩尔定律)。快速发展的電子計算機制造工程技术维持了这种指数级的能力增长。与这种能力增长携手并进的另一过程是戏剧化的小型化过程。第一代的電子計算機,例如ENIAC(出现于1946年),都是一些重达数吨,占据好几间房间,需要多个操作员来维持它们正常工作的庞然大物。这些大家伙太贵了,以至于只有政府和大型机构才能够买得起。它们也的确太怪异了,当时的人们都认为几台,或者几十台这样的机器就能够满足全世界的需求了。相比之下,现代電子計算機比第一代前辈多了几个数量级,更加多才多艺,而且便宜、小巧,还随处可见。
電子計算機是如何工作的
自从1940年代第一台電子計算機问世以来,大部分的電子計算機仍采用冯·诺依曼结构体系,虽然其相关技术已经发生了翻天覆地的变化。
冯·诺依曼结构将一个電子計算機系统分为四个主要部分:算术逻辑单元、控制器、存储器和输入输出设备。这些部分是通过总线连接起来的。
参看
- 電子計算機的历史
- 计算机图片
- 电脑游戏
- 计算机软件
- 计算机网络
Category:计算机硬件
ja:コンピュータ
ko:컴퓨터
ms:Komputer
nb:Datamaskin
simple:Computer
th:คอมพิวเตอร์
硬件--包括电脑中所有物理的零件,以此来区分它所包括或执行的数据和为--提供指令以完成任务的--。--和--中也有分界模糊的地方,--是一种“内建”在--内的--,这样的--通常是电脑编程员和电脑工程师的范围,但在任何情况下也不需要电脑用户关心。
一台典型的电脑(个人电脑,PC)由卧式或塔式机箱和以下的部分组成:
- 主板 上承载着CPU(即中央处理器)、内存(随机存取存储器)和为扩展卡提供的插槽
- 内存 (随机存取存储器)
- SDRAM
- DDR
- DDR2
- 总线:
- PCI总线
- PCI-E总线
- ISA总线(已淘汰)
- USB
- AGP
- SCSI
- IDE
- SATA
- 电源
- 存储控制器
- 视频显示控制器
- 电脑总线
- 移动存储设备
- CD
- CD-ROM
- CD-RW
- CD-R
- DVD
- DVD-ROM
- DVD-RW
- DVD-R
- DVD-RAM
- DVD+RW
- DVD+R
- 软盘
- 磁带机
- 内置存储器
- 硬盘
- 磁盘阵列控制器
- 声卡
- 网络
- Modem
- 网卡
- 其它的周边
除此以外硬件包括以下的外置标准配件
- 输入
- 键盘
- 点击设备
- 鼠标
- 轨迹球
- 摇杆
- Gamepad
- 扫描器
- 网络摄像头
- 输出
- 打印机
- 扬声器
- 电脑显示屏
- 网络
- Modem
-
ja:ハードウェア
ko:컴퓨터 하드웨어
ms:Perkakasan komputer
simple:Hardware
th:อุปกรณ์คอมพิวเตอร์
软件軟--件(中国大陆及香港用语,台湾作软体)是一系列按照特定顺序组织的计算机数据和指令的集合。一般来讲软件被划分为系统软件、应用软件和介于这两者之间的中间件。其中系统软件为计算机使用提供最基本的功能,但是并不针对某一特定应用领域。而应用软件则恰好相反,不同的应用软件根据用户和所服务的领域提供不同的功能。
软件并不只是包括可以在计算机上运行的程序,与这些程序相关的文件一般也被认为是软件的一部分。简单的说软件就是程序加文档的集合体。
软件被应用于世界的各个领域,对人们的生活和工作都产生了深远的影响。
系统软件
系统软件是负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。
一般来讲,系统软件包括操作系统和一系列基本的工具(比如编译器,数据库管理,存储器格式化,文件系统管理,用户身份验证,驱动管理,网络连接等方面的工具)。
应用软件
应用软件是为了某种特定的用途而被开发的软件。它可以是一个特定的程序,比如一个图像浏览器。也可以是一组功能联系紧密,可以互相协作的程序的集合,比如微软的Office软件。也可以是一个由众多独立程序组成的庞大的软件系统,比如数据库管理系统。
较常见的有
#文字处理软件 如WPS、Word等
#信息管理软件
#辅助设计软件 如AutoCAD
#实时控制软件
#教育与娱乐软件
按操作系统分类
- BeOS
- DOS
- Linux
- Mac OS
- Unix
- Windows
软件开发
软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。软件开发是一项包括需求捕捉,需求分析,设计,实现和测试的系统工程。
软件一般是用某种程序设计语言来实现的。通常采用软件开发工具可以进行开发。
软件许可
不同的软件一般都有对应的软件许可,软件的使用者必须在同意所使用软件的许可证的情况下采能够合法的使用软件。从另一方面来讲,某种特定软件的许可条款也不能够与法律相抵触。
未经软件版权所有者许可的软件拷贝将会引发法律问题,一般来讲,购买和使用这些盗版软件也是违法的。
相关内容
- 计算
- 计算机
- 计算机科学
- 计算机程序设计
- 程序设计语言
- 软件工程
- 算法
- 数据结构
- 软件开发过程
- 软件开发工具
- 软件优化
- 数字图像处理
- 计算机图形学
- 办公自动化
- 计算机网络
- 数据库
- 电子表格
- 开放源代码
- 自由软件
- 密码学
- Wiki
- 網誌
- 操作系统
- 软件许可证
- 推荐软件
参见
- 计算机软件列表
ja:ソフトウェア
ko:컴퓨터 소프트웨어
nb:Dataprogram
simple:Software
th:ซอฟต์แวร์
用户态用户态(user mode)在计算机结构指两项类似的概念。在CPU的设计中,用户态指非特权状态,在此状态下,执行的代码被硬件限定好不能进行某些操作(比如对不是分配给自己的存储空间进行写入操作),以防止给系统硬件带来安全隐患。在操作系统的设计中,用户态也类似,指非特权的执行状态,内核禁止这类代码进行潜在危险的操作,比如写入系统配置文件、杀掉其他用户的进程、重启系统等。
CPU设计中的用户态
用户态不允许程序进行处理器中要求特权态的操作,以避免操作系统崩溃。每个用户态程序都在各自的用户空间中运行,而不允许存取其他程序的用户空间。
x86结构很特别,拥有四种级别,特权最高的是ring 0,也就是核心态。级别最低的是ring 3,也就是用户态。ring 1和ring 2则很少使用。
操作系统设计中的用户态
操作系统中的用户态指权限等级中的一般级别,与之相对的是超级用户或者管理员(Unix-like系统中名为“root”)的特权级别。用户态启动的每个进程,根据运行该进程的登录用户,都被系统赋予一定的权限,另外也有一些限制。
操作系统的用户态通常是在相应的CPU用户态中运行代码,从而在硬件一级上,就实现非法程序的控制。与CPU级别相比,操作系统的用户态对权限设定更加复杂。举例而言,默认下的Unix系统中,运行在用户态的代码,不准通过侦听1024以下的端口号,以伪装成常见的服务,而超级用户运行的代码则可以这样做。
参见
- 用户态Linux
Category: 计算机安全
服务器--(server),在香港和台灣稱為--是指:
- 一个管理资源并为用户提供服务的计算机软件,通常分为文件服务器(能使用户在其它计算机存取文件),数据库服务器和应用程序服务器。
- 运行以上软件的计算机。
定义
有时,这两种定义会引起混淆,如Web服务器。它可能是指用于网站的计算机,也可能是指像Apache这样的软件,运行在这样的计算机上以管理网页组件和回应网页浏览器的请求。
服务器作为硬件来说,通常是指那些具有较高计算能力,能够提供给多个用户使用的硬件。服务器与PC机的不同点太多了,PC机通常只为一个用户服务是跟农妇解释时的说法。 服务器与主机不同,主机是通过终端给用户使用的,服务器是通过网络给客户端用户使用的。
根据不同的计算能力,服务器又分为工作组级服务器,部门级服务器和企业级
服务器操作系统是指运行在服务器硬件上的操作系统。服务器操作系统需要管理和充分利用服务器硬件的计算能力并提供给服务器硬件上的软件使用。
不常見的伺服器操作系統有FreeBSD, SCO OPENSERVER ,OpenBSD, NetBSD, SUN Solaris, Linux,Mac OS X Server等,常見的Windows NT/2000。
Mac OS X Server是新兴力量。其中FreeBSD, OpenBSD, NetBSD, SUN solaris, Linux, Mac OS X Server等是UNIX操作系统的衍生版本。
服务器软件的定义如前面所述,服务器软件工作在客户端-服务器或浏览器-服务器的方式,
有很多形式的服务器,常用的包括:
- 文件服务器 - 如Novell的NetWare
- 数据库服务器 - 如Oracle数据库服务器, MySQL, PostgreSQL, Microsoft SQL Server等
- 邮件服务器 - Sendmail, Postfix, Qmail, Microsoft Exchange,Lotus Domino等
- Web服务器 - 如Apache, thttpd, 微软的IIS等
- FTP服务器 - Pureftpd, Proftpd, WU-ftpd, Serv-U等
- 应用服务器 - 如Bea公司的WebLogic,JBoss
参见
- 点对点
- 客户端-服务器模型
- 计算机硬件历史
- CORBA
Category:计算机软件
Category:计算机硬件
Category:万维网
als:Server
ja:サーバ
ko:서버
simple:Server
th:เซิร์ฟเวอร์
核心态在处理器的存储保护中,核心态,或者特权态(与之相对应的是用户态),是操作系统内核所运行的模式。运行在该模式的代码,可以无限制地对系统存储、外部设备进行访问。
微核操作系统基于安全与优雅的考虑,试图将运行在特权态的代码数量最小化。
x86结构很特别地具有四种特权等级,特权级别最高的是ring 0,被视作核心态;级别最低的是ring 3,常被看作用户态;rings 1 and 2则很少被使用。
Category:计算机安全
文件系统--
计算机的--是一种存储和组织计算机--和数据的方法,它使得对其访问和查找变得容易。文件系统通常使用硬盘和光盘这样的存储设备以文件的形式存储数据,它同时记录了文件的物理位置以便于访问。但是,实际上文件系统也可能仅仅是一种访问数据的界面而已,实际的数据保存在网络或者内存上,甚至可能根本不存在对应的文件。
严格地说, 文件系统是一套实现了数据的存储、分级组织、访问和获取等操作的抽象数据类型。
文件系统概觀
文件系统的类型
磁盘文件系统
数据库文件系统
与操作系统的关系
参见
- 扩展名
Category:文件系统
Category:数据管理
ja:ファイルシステム
UNIXUNIX是一个强大的多用户,多任务操作系统,支持多种处理器架构,最早由Ken Thompson,Dennis Ritchie和Douglas McIlroy于1969年在AT&T的贝尔实验室开发。
简介
Ken和Dennis最早是在贝尔实验室开发UNIX的,此后的10年,UNIX在学术机构和大型企业中得到了广泛的应用,当时的UNIX拥有者AT&T公司以低廉甚至免费的许可将UNIX源码授权给学术机构做研究或教学之用,许多机构在此源码基础上加以扩充和改进,形成了所谓的UNIX“变种(Variations)”,这些变种反过来也促进了UNIX的发展,其中最著名的变种之一是由加州大学Berkeley分校开发的BSD产品。
后来AT&T意识到了UNIX的商业价值,不再将UNIX源码授权给学术机构,并对之前的UNIX及其变种声明了版权权利。为了不和AT&T的版权冲突,BSD产品在版本3之后将代码进行了重写,BSD产品在此之后不再包括有版权的UNIX代码。BSD在发展中也逐渐衍生出3个主要的分支:FreeBSD,OpenBSD和NetBSD。
此后的几十年中,UNIX仍在不断变化,其版权所有者不断变更,授权者的数量也在增加。UNIX的版权曾经为AT&T所有,之后Novell拥有了UNIX,再之后Novell又将版权出售给了SCO(这一事实双方尚存在争议)。有很多大公司在取得了UNIX的授权之后,开发了自己的UNIX产品,比如IBM的AIX,HP的HPUX,SUN的Solaris和SGI的IRIX。
UNIX因为其安全可靠,高效强大的特点在服务器领域得到了广泛的应用,与此形成对比的是,在桌面和个人计算领域,微软的Windows系列和苹果电脑的Mac OS系列产品占据了绝大部分市场!
历史
初创期
UNIX的诞生和Multics(Multiplexed Information and Computing System)是有一定渊源的。Multics是由麻省理工学院,AT&T贝尔实验室和通用电气合作进行的操作系统项目,被设计运行在GE-645大型主机上,但是由于整个目标过于庞大,糅合了太多的特性,Multics虽然发布了一些产品,但是性能都很低,最终以失败而告终。
AT&T最终撤出了投入Multics项目的资源,其中一个开发者,Ken Thompson则继续为GE-645开发软件,并最终编写了一个太空旅行游戏。经过实际运行后,他发现游戏速度很慢而且耗费昂贵——每次运行会花费75美元。
在Dennis Ritchie的帮助下,Thompson用PDP-7的汇编语言重写了这个游戏,并使其在DEC PDP-7上运行起来。这次经历加上Multics项目的经验,促使Thompson开始了一个DEC PDP-7上的新操作系统项目。Thompson和Ritchie领导一组开发者,开发了一个新的多任务操作系统。这个系统包括命令解释器和一些实用程序,这个项目被称为UNICS(Uniplexed Information and Computing System),因为它可以支持同时的多用户操作。后来这个名字被改为UNIX。
发展期
最初的UNIX是用汇编语言编写的,一些应用是由叫做B语言的解释型语言和汇编语言混合编写的。B语言在进行系统编程时不够强大,所以Thompson和Ritchie对其进行了改造,并与1971年共同发明了C语言。1973年Thompson和Ritchie用C语言重写了UNIX。在当时,为了实现最高效率,系统程序都是由汇编语言编写,所以Thompson和Ritchie此举是极具大胆创新和革命意义的。用C语言编写的UNIX代码简洁紧凑,易移植,易读,易修改,为此后UNIX的发展奠定了坚实基础。
1974年,Thompson和Ritchie合作在ACM通信上发表了一片关于UNIX的文章,这是UNIX第一次出现在贝尔实验室以外。此后UNIX被政府机关,研究机构,企业和大学注意到,并逐渐流行开来。
1975年,UNIX发布了4、5、6三个版本。1978年,已经有大约600台计算机在运行UNIX。1979年,版本7发布,这是最后一个广泛发布的研究型UNIX版本。20世纪80年代相继发布的8、9、10版本只授权给了少数大学。此后这个方向上的研究导致了Plan 9的出现,这是一个新的分布式操作系统。
1982年,AT&T基于版本7开发了UNIX System Ⅲ的第一个版本,这是一个商业版本仅供出售。为了解决混乱的UNIX版本情况,AT&T综合了其他大学和公司开发的各种UNIX,开发了UNIX System V Release 1。
这个新的UNIX商业发布版本不再包含源代码,所以加州大学Berkeley分校继续开发BSD UNIX,作为UNIX System III和V的替代选择。BSD对UNIX最重要的贡献之一是TCP/IP。BSD有8个主要的发行版中包含了TCP/IP:4.1c、4.2、4.3、4.3-Tahoe、4.3-Reno、Net2、4.4以及 4.4-lite。这些发布版中的TCP/IP代码几乎是现在所有系统中TCP/IP实现的前辈,包括AT&T System V UNIX 和Microsoft Windows。
其他一些公司也开始为其自己的小型机或工作站提供商业版本的UNIX系统,有些选择System V作为基础版本,有些则选择了BSD。BSD的一名主要开发者,Bill Joy,在BSD基础上开发了SunOS,并最终创办了Sun Microsystems。
1991年,一群BSD开发者(Donn Seeley、Mike Karels、Bill Jolitz 和 Trent Hein)离开了加州大学,创办了Berkeley Software Design, Inc (BSDI)。BSDI是第一家在便宜常见的Intel平台上提供全功能商业BSD UNIX的厂商。后来Bill Jolitz 离开了BSDI,开始了386BSD的工作。386BSD被认为是FreeBSD、OpenBSD 和 NetBSD的先辈。
AT&T继续为UNIX System V增加了文件锁定,系统管理,作业控制,流和远程文件系统。1987到1989年,AT&T决定将Xenix(微软开发的一个x86-pc上的UNIX版本),BSD,SunOS和System V融合为System V Release 4(SVR4)。这个新发布版将多种特性融为一体,结束了混乱的竞争局面。
1993年以后,大多数商业UNIX发行商都基于SVR4开发自己的UNIX变体了。
现况
UNIX System V Release 4发布后不久,AT&T就将其所有UNIX权利出售给了Novell。Novell期望以此来对抗微软的Windows NT,但其核心市场受到了严重伤害,最终Novell将SVR4的权利出售给了X/OPEN Consortium,后者是定义UNIX标准的产业团体。最后X/OPEN和OSF/1合并,创建了Open Group。Open Group定义的多个标准定义着什么是以及什么不是UNIX。
实际的UNIX代码则辗转到了Santa Cruz Operation,这家公司后来出售给了Caldera Systems。Caldera原来也出售Linux系统,交易完成后,新公司又被重命名为SCO Group。
1127部門的解散
根據一項[http://www.unixreview.com/documents/s=9846/ur0508l/ur0508l.html 報導]指出,當年負責研發UNIX與後續維護工作的貝爾實驗室1127部門已於2005年8月正式宣告解散。已退休,現居加州;調到別的部門;在達特茅斯學院擔任教授等等。
标准
从20世纪80年代开始,POSIX,一个开放的操作系统标准就在制定中,IEEE制定的POSIX标准现在是UNIX系统的基础部分。
自由的类UNIX系统
Richard Stallman建立了GNU项目,要创建一个能够自由发布的类UNIX系统。20年来,这个项目不断发展壮大,包含了越来越多的内容。现在,GNU项目开发的产品,比如Emacs,GCC等已经成为各种其他自由发布的类UNIX产品中的核心角色。
1990年,Linus Torvalds決定編寫一個自己的Minix內核,初名為Linus' Minix,意為Linus的Minix內核,後來改名為Linux,此內核於1991年正式发布,并逐渐引起人们的注意。当GNU软件与Linux内核结合后,GNU软件构成了这个POSIX兼容操作系统GNU/Linux的基础。今天GNU/Linux已经成为发展最为活跃的自由/开放源码的類UNIX操作系统。
1994年,BSD UNIX走上了复兴的道路。BSD的开发也走向了几个不同的方向,并最终导致了FreeBSD, OpenBSD和NetBSD的出现。
-
Category:操作系统
ja:UNIX
ko:유닉스
ms:UNIX
simple:Unix
th:ยูนิกซ์
AIX
Advanced Interactive eXecutive (AIX) 是IBM专有UNIX操作系统的商标名。
最初,它在内部代表"Advanced IBM Unix",但或许这个名字没有得到法律部门的允许便更改为"Advanced Interactive eXecutive"。
AIX的一些流行特性例如chuser、 mkuser、 rmuser命令以及相似的东西允许如同管理文件一样来进行用户管理。AIX级别的逻辑卷管理正逐渐被添加进各种自由的UNIX风格操作系统中。
AIX 5L 5.3版本操作系统可以支持:
- 64颗 CPU
- 2Tb主内存
- JFS2: 最大16 Tb 的文件系统
- JFS2: 最大16 Tb 的文件
发布历史
一些不同版本的 AIX 曾经存在 over time, some being eventually eliminated。 1986年出现的 AIX V1 运行在 IBM RT/PC (AIX/RT)上。它基于System V Release 3。自从1989年以来,AIX成为RS/6000系列工作站和服务器(AIX/6000)的操作系统。在AIX的开发过程中,IBM 和 INTERACTIVE Systems Corporation(同IBM签约)将4.2BSD与4.3BSD的一些特性加入了AIX中。
支持的架构
- PowerPC
- POWER
版本
- AIX 5L 5.3, 2004年8月
- NFS Version 4 支持
- Advanced Accounting
- 虚拟 SCSI
- 虚拟以太网
- SMT
- 微分区(Micro-Partitioning)
- JFS2 配额(quota)支持
- JFS2 文件系统收缩(shrink)支持
- AIX 5L 5.2, 2002年10月
- 支持多路IO光纤信道磁盘
- 动态LPAR支持
- AIX 5L 5.1, 2001年5月
- 引入64位内核
- JFS2
- AIX 4.3.3, 1999年9月
- 增加了在线备份功能
- AIX 4.3.2, 1998年10月
- AIX 4.3.1, 1998年4月
- AIX 4.3, 1997年10月
- 支持 64位 体系
- AIX v4, 1994年
- AIX v3, 1990年
- AIX v3.1
- 引入了日志文件系统 (JFSv1)
- AIX v2
- AIX v1, 1986年
注: L 表示同 Linux 的姻缘关系
图形界面
通用桌面环境(Common Desktop Environment,CDE)是AIX系统的默认图形用户界面。作为同 Linux 联姻的一部分,针对Linux应用的AIX工具箱(ATLA)也提供了开源的KDE和GNOME桌面。
外部链接
- [http://www-1.ibm.com/servers/aix/ IBM AIX 主页]
- [http://www.ibm.com/servers/aix/products/aixos/linux/ 针对Linux应用的AIX工具箱]
- [http://www.ibm.com/servers/eserver/support/pseries/aixfixes.html AIX fixes]
- [http://rootvg.net/ rootvtg.net]
Category:操作系统
ja:AIX
BeOS
BeOS是由Be公司開發的一種多媒體作業系統。
歷史
1996年11月發佈第一個運行于蘋果機上的版本,1998年發佈第一個運行于Intel平臺的版本。2000年發佈5.0版本,包括個人版(BeOS 5.0 Personal Edition)和專業版(BeOS 5.0 Professional Edition),其中個人版是免費的。官方最後發行的版本是5.03版,隨後Be公司被Palm公司收購,不再發佈官方版本。
特點
BeOS的設計理念是專門用於多媒體處理的“多媒體作業系統”,採用先進的64位BeFS文件系統,支持多處理器,其多媒體性能異常優越。
衍生版本及現況
由BeOS衍生出來的其它非官方版本仍然在繼續發展,如商業的Zeta BeOS和開放源代碼的Haiku (OpenBeOS ) 等等。
以完全重新創建類BeOS系統為目標的衍生版本有:
- Haiku
- Blue Eyed OS
- Cosmoe
以繼續發展原有BeOS系統為目標的衍生版本有:
- Zeta BeOS
外部連接
- [http://fifan.nease.net/software/beos/01.htm 多媒体操作系统──BeOS]
- [http://be.yuzx.com/ BeOS at China]
- [http://www.bebits.com Bebits(BeOS軟件大全)]
category:作業系統
ja:BeOS
ko:BeOS
ms:BeOS
L4微内核系列L4 是由 Jochen Liedtke 设计的微内核,运行在 i486 和 Pentium 处理器。也叫 L4/x86。
category:操作系统
ja:L4
Mac OS X
Mac OS X 是蘋果麥金塔電腦之作業系統軟體的 Mac OS 最新版本。Mac OS X 於 2001年 首次在商場上推出。它包含兩個主要的部份:Darwin,是以 BSD 原始碼和 Mach 微核心 為基礎,類似 Unix 的開放原始碼環境,由蘋果電腦採用和與獨立開發者協同作進一步的開發;及一個由蘋果電腦開發,命名為 Aqua 之有版權的 GUI。
Mac OS X Server 亦同時於2001年發售. 架構上來說與工作站(客戶端)版本相同,只有在包含的工作群組管理和管理軟體工具上有所差異,提供對於關鍵網路服務的簡化存取,像是郵件傳輸伺服器,samba 軟體,LDAP 目錄伺服器,以及名稱伺服器(DNS)。同時它也有不同的授權型態。
命名
X 這個字母是一個羅馬數字且正式的發音為 "十"(ten),接續了先前的麥金塔作業系統像是 Mac OS 8 和 Mac OS 9 的編號。某些人把它讀作 X 字母且發音為 "ex"。對於這個直接解讀的原因是對於 Unix-like 作業系統的傳統命名會以字母 "x" 作為結尾 (例如 AIX, IRIX, Linux, Minix, Ultrix, Xenix)。另外一個原因是蘋果電腦的傾向提及特別的版本是以(例如) "Mac OS X 版本 10.4" 印刷出來。
Mac OS X 版本以大型貓科動物命名。比他的推出更重要的,在蘋果電腦內部 10.0 版本的代號是猎豹(Cheetah),以及 10.1 版本代號為美洲狮(Puma)。在蘋果的產品市場 10.2 版本命名為 美洲虎(Jaguar),以及 10.3 相似地命名為 黑豹(Panther)。10.4 版已經被公開命名為 老虎(Tiger)。花豹(Leopard) 當作下一個推出的作業系統。蘋果電腦也已經註冊山貓(Lynx)和美洲狮(Puma在美洲的惯用词,Cougar)當作未來使用的商標。
由於蘋果使用 "Tiger" 這個名稱,面對到名稱為 TigerDirect 電腦零售商的法律訴訟。然而,在 2005年5月16日,佛羅里達州聯邦法庭裁決蘋果電腦使用 "Tiger" 的名稱並沒有侵害到 TigerDirect 的商標。
蘋果電腦的網站和文章中提及特殊的 Mac OS X 版本會以四種不同的方式呈現:
- Mac OS X v10.4,版本號碼
- Mac OS X Tiger,版本的代號名稱
- Mac OS X v10.4 "Tiger",版本號碼和名稱,蘋果有時會省略引號。
- "Tiger",簡單地版本名稱
歷史
主要文章:Mac OS X 歷史
儘管簡單地說它是 Mac OS "版本10" 的分支,但它與早期發行的 Mac OS 大部份是歷史上大部分獨立的。它以 Mach 核心為基礎和 UNIX 的 BSD 實作,整合到由 Steve Jobs 於 1985年被迫離開離開蘋果後的 NeXT 公司所發展 物件導向作業系統 之 NeXTSTEP 中。同時,蘋果電腦企圖創造一個自己擁有的(參考 :en:Taligent 和 :en:Copland) "下個世代" 作業系統,但只有小部份成功。最後 NeXT 的作業系統—在那時候稱為 OPENSTEP—被選為蘋果下個作業系統的基礎形式,然後蘋果電腦完全地買下了 NeXT。Jobs 也就重新被聘僱,後來回到公司的領導階層,帶領大家把程式設計師親善的 OPENSTEP,轉換到蘋果主要家庭使用者市場和創新的專家都很歡迎的一個系統上,就是大家都知道的 Rhapsody。在某些威脅對於 Mac OS 獨立開發者忠心的失策,以及對於從 Mac OS 9 到新系統減輕轉變的策略改變後,Rhapsody 演化為 Mac OS X。
描述
Rhapsody
Mac OS X 是與先前麥金塔作業系統徹底地分離開來,它的底層程式碼完全地與先前版本不同。儘管最重要的架構改變是在表面之下,但是 Aqua GUI 是最突出和引人注目的特色。柔軟邊緣的使用,半透明顏色和細條紋(與第一台 iMac 的硬體相似)把更多的顏色和材質帶入到桌面上的視窗和控制項,比 OS9 所提供的 "白金" 外觀更多,引发了使用者間大量的爭論。很多舊的麥金塔使用者把這個介面描述得像是玩具一般,和缺乏專業的優美,而其他的人則為蘋果革命的新 GUI 狀新為所歡呼。這種外觀非常立即地可以辨認出來,即使在地一個 Mac OS X 版本推出之前,第三方的開發者開始針對可以換外表的程式像是 Winamp 製作類似 Aqua 介面的外表。蘋果電腦以法律行動,威脅那些聲稱是是由他們有版權的設計下,所製造或散佈且提供這種介面軟體的人。
純粹由系統銷售的數字來看,這種 GUI 和核心的組合最近到現在變成最暢銷的類 Unix 環境。
兼容性
Mac OS X 透過提供一種稱為 Classic 的模擬環境,保留了與較舊的 Mac OS 應用程式的相容像,允許使用者在 Mac OS X 中把 Mac OS 9 當作一個程式行程來執行,使大部分舊的應用程式就像在舊的作業系統下執行一樣。另外,給 Mac OS 9 和 Mac OS X 的 Carbon API 可以創造出允許在兩種系統執行的程式碼。OpenStep 的 API 也依然可以使用,但是蘋果現在把它稱為 Cocoa 技術。(這個遺留下來的傳統可以在 Cocoa API 中看到,大部分的類別名稱都是以 NeXTSTEP 的縮寫 "NS" 開頭。) 給開發者的第四個選項是可以在 Mac OS X 當作 "第一等公民" 一樣的 Java 平台上寫應用程式 — 事實上這就是說 Java 應用程式盡可能的與作業系統合適地搭配而仍然能夠"跨平台(cross-platform)",以及他的 GUI,是以 Swing 撰寫的,看起來幾乎完全地與天生的 Cocoa 介面類似。
只要他們能夠在這個平台上被編譯,Mac OS X 可以執行很多 BSD 或 Linux 軟體套件。編譯過的程式碼通常是以 Mac OS X 封裝的方式來散佈,但有些可能需要命令列的組態設定或是編譯。像是 Fink 和 DarwinPorts 這樣的專案,提供很多標準套件之預先編譯或是預先格式好的封裝。在 10.3 版開始,Mac OS X 已經包含 Apple X11,這是給 Unix 應用程式的 X11 圖形介面的公司版本,當作是在安裝階段的選擇性元件。蘋果是以 XFree86 4.3 和 X11R6.6 為基礎實作的,搭配一個模仿 Mac OS X 外觀的視窗管理員,與 Mac OS X 有更密切的整合,延展擴充到使用天生的 Quartz 顯像系統和加速 OpenGL。早期的 Mac OS X 版本可使用 XDarwin 來執行 X11 應用程式。
對於早期的 Mac OS X 版本,有支援的標準硬體平台是以 PowerPC G3、G4、G5 處理器的麥金塔電腦產品線(膝上型、裝上型、或是伺服器)。後期的 Mac OS X 版本不再支援某些老舊的硬體、舉例來說,Panther 不支援 "米黃色" G3,以及 Tiger 不支援蘋果在推出 FireWire 之前的系統。然而,免費的工具像是 XPostFacto 可以使得蘋果官方宣稱不支援的某些舊系統可以安裝 Mac OS X,包含某些 G3 之前的系統。作業系統針對所有支援的硬體提供相同的功能,除了基本硬體的限制之外(例如,CD-ROM 不能燒錄 CD)以及在更多先進配備上盡量增快效能(例如圖形加速)。
於2005年6月6日,Steve Jobs 在蘋果每年的全球開發者大會中發表演說,表示接下來的兩年間蘋果將會從 PowerPC 轉換到 Intel 的微處理器[http://apple.slashdot.org/apple/05/06/06/1752234.shtml?tid=118&tid=179&tid=3],而且在這個轉變的期間,Mac OS X 都會支援兩種平台。對於 PowerPC 平台的支援會一直持續到 10.5 版,但是同時支援兩種平台多久的時間並不清楚(Mac OS 對於 Motorola 68k 架構的支援一直持續到 PowerPC 系統推出後的約四年)。新版的 Xcode 支援建造 通用二元程式碼(Universal Binaries),可以在兩種架構執行。PowerPC 程式碼在 Intel 為基礎的 Mac 會使用稱為 Rosetta 的模擬器來提供支援。Jobs 也證實先前的謠言,就是蘋果之前每一版的 Mac OS X 開發週期都有 Intel 微處理器的版本。像是跨平台的能力已經早就存在 OS X 的血統中 - 就是 OS X 的前身,OPENSTEP,已經被移植到很多個架構下,包含 Intel 的 x86,以及 OS X 的核心作業系統 Apple Darwin 也移植到 x86,早在 OS X 第一次推出就可以免費下載。然而,蘋果聲明 x86 平台的 OS X 將不會支援 Classic 環境。
显著特点
- 它的 Quartz 影像模式使用 PDF(可攜文件格式,Portable Document Format)的子集合當作基礎。
- 全彩,可連續縮放的小圖示(最大到 256×256 像素)
- 在視窗周圍的陰影和分離的文字元素來提供深度的感覺。
- Global spell checking and other powerful tools thanks to NeXT-style application services.
- 專用界面工具集、文字、圖形和視窗元件的反鋸齒效果
- New interface elements including sheets (document modal dialogs attached to specific windows) and drawers.
- Interweaving windows of different applications (not necessarily adjacent in the visible stacking order).
- ColorSync color matching built into the core drawing engine (for print and multimedia professionals).
- OpenGL(在 10.2 版中納入) 合成視窗到螢幕上,容許硬體加速繪圖。這種技術稱為 Quartz Extreme。
- Exposé(在 10.3 版中納入)可以快速地排列視窗或是顯現桌面。
- 在整個作業系統中普遍使用 Unicode。
- Straightforward architecture for localization of applications and other code, fully separating language dependencies from the core code of a program.
- FileVault(於 10.3 版中納入)可以使用 AES(Advanced Encryption Standard) 128 位元金鑰來加密使用者的家目錄。
- | | |