Home About us Products Services Contact us Bookmark
:: wikimiki.org ::
操作系统

操作系统

操作系统(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)泛指所有据有一定实时资源调度以及通讯能力的操作系统。而所谓“实时”,不同语境中往往有着非常不同的意义。某些时候仅仅用作“高性能”的同义词。但在操作系统理论中“实时性”所指的通常是特定操作所消耗的时间(以及空间)的上限是可预知的。比如,如果说某个操作系统提供实时内存分配操作,那也就是说一个内存分配操作所用时间(及空间)无论如何也不会超出操作系统所承诺的上限。实时性在某些领域非常重要,比如在工业控制、医疗器材、影音频合成、以及军事领域,实时性都是无可或缺的特性。 常用实时操作系统有QNXVxWorksRTLinux等等,而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)由卧式或塔式机箱和以下的部分组成:
- 主板 上承载着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:อุปกรณ์คอมพิวเตอร์

API

编程接口,简称API(Application Programming Interface),就是软件系统不同组成部分衔接的约定。 随着软件规模的日益庞大,我们需要把复杂系统划分成小的组成部分,编程接口的设计十分重要。程序设计的实践中,编程接口的设计首先要使系统的职责得到合理划分。良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,从而提高系统的维护性和扩展性。

API在各语言中的表达方式

Visual Basic

[Public|Private] Declare Function|Sub name Lib "libname" [Alias "aliasname"](Byval] variable [As type][,[Byval] variable [As type...]) [As type] dffgffgghgbhg

C Sharp

[DllImport("libname", 'Named Parameters')] [public|private|internal] [Type] FunctionName(Type parameter1,Type parameter2...);

参看


- 软件工程 ---- Category:程序设计 Category:计算机语言 ja:Application Programming Interface ko:API

POSIX

POSIX是IEEE为要在各种UNIX操作系统上运行的软件而定义API的一系列互相关联的标准的总称,其正式称呼为IEEE 1003,而国际标准名称为ISO/IEC 9945。此标准源于一个大约开始于1985年的项目。POSIX这个名称是由Richard Stallman应IEEE的要求而提议的一个易于记忆的名称。它基本上是Portable Operating System Interface(可移植操作系统界面)的缩写,而X则表明其API的传承。 Linux基本上逐步实现了POSIX兼容,但并没有参加正式的POSIX认证。 微软Windows NT至少部分实现了POSIX兼容。

外部链接


- [http://www.pasc.org/ The Portable Application Standards Committee]
- [http://standards.ieee.org/regauth/posix/ IEEE POSIX® Certification Authority] Category:ISO Category:Unix Category:Linux ja:POSIX ko:POSIX

UNIX

UNIX是一个强大的多用户,多任务操作系统,支持多种处理器架构,最早由Ken ThompsonDennis RitchieDouglas McIlroy1969年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个主要的分支:FreeBSDOpenBSDNetBSD。 此后的几十年中,UNIX仍在不断变化,其版权所有者不断变更,授权者的数量也在增加。UNIX的版权曾经为AT&T所有,之后Novell拥有了UNIX,再之后Novell又将版权出售给了SCO(这一事实双方尚存在争议)。有很多大公司在取得了UNIX的授权之后,开发了自己的UNIX产品,比如IBM的AIXHPHPUXSUNSolarisSGIIRIX。 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被认为是FreeBSDOpenBSDNetBSD的先辈。 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项目开发的产品,比如EmacsGCC等已经成为各种其他自由发布的类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:ยูนิกซ์

Linux

:本文内容是关于基于Linux的操作系统,GNU/Linux和相关主题的。请参照Linux内核以获得和内核本身相关的内容。 :Linux也是一颗小行星的名字,请参阅小行星9885 Linux是一种计算机操作系统和它的内核的名字。它也是自由软件开放源代码发展中最著名的例子。 严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和資料庫的操作系统(也被称为GNU/Linux)。基于这些组件的Linux软件被称为Linux发行版。一般来讲,一个Linux发行套件包含大量的软件,比如软件开发工具,数据库Web服务器(例如Apache),X Window,桌面环境(比如GNOMEKDE),办公套件(比如OpenOffice.org),等等。 Linux内核最初是为英特尔386微处理器设计的。现在Linux内核支持从个人电脑大型主机甚至包括嵌入式系统在内的各种硬件设备。 在开始的时候,Linux只是个人狂热爱好的一种产物。但是现在,Linux已经成为了一种受到广泛关注和支持的一种操作系统。包括IBM惠普在内的一些计算机业巨头也开始支持Linux。很多人认为,和其他的商用Unix系统以及微软Windows相比,作为自由软件的Linux具有低成本,安全性高,更加可信赖的优势。 小行星9885是以Linux的名字命名的。

歷史

Linux內核最初只是由芬蘭Linus Torvalds赫爾辛基大學上學時出於個人愛好而編寫的。最初的設想中,Linux是一種類似Minix這樣的一種操作系統。Linux的第一個版本在1991年9月被--發布在Internet上,隨後在10月份第二個版本就發布了。 Linux的歷史是和GNU緊密聯系在一起的。從1983年開始的GNU計劃致力於開發一個自由並且完整的類Unix操作系統,包括軟件開發工具和各種應用程序。到1991年Linux內核發布的時候,GNU已經幾乎完成了除了系統內核之外的各種必備軟件的開發。在Linus Torvalds和其他開發人員的努力下,GNU組件可以運行於Linux內核之上。整個內核是基於GNU通用公共許可,也就是GPL(GNU General License)的,但是Linux內核並不是GNU 計劃的一部分。 Linux的標志和吉祥物是一只名字叫做Tux企鵝Linux的注冊商標是Linus Torvalds所有的。這是由於在1996年,一個名字叫做William R. Della Croce的律師開始向各個Linux發布商發信,聲明他擁有Linux商標的所有權,並且要求各個發布商支付版稅,這些發行商集體進行上訴,要求將該注冊商標重新分配給Linus Torvalds。 Linux的某些版本是不需要安裝就能使用的版本,他們稱為LiveCD

应该怎么读Linux?

根据Torvalds的说法,Linux的发音和“Minix”是押韵的。 参照[http://www.shortfamilyonline.com/tech/unix/history-of-linux/reference/23-Apr-1992-re-how-to-pronounce-linux.html],“Li”中“i”的发音类似于“Minix”中“i”的发音,而“nux”中“u”的发音类似于英文单词“put”中“u”的发音。 此外在[http://www.paul.sladen.org/pronunciation/]有一份Torvalds本人说话的音频,音频内容为“Hello, this is Linus Torvalds, and I pronounce Linux as Linux”。 大致和“利讷克斯”的音类似(注意不是利纳克斯、利牛克斯、利努克斯或者利尼克斯)。
请大家按照['linэks]这个音标读。
音频文件地址:Media:http://zhaolinux.com/down/torvalds-says-linux.mp3

Linux发行版

Linux发行版(Linux distribution)指的就是我们通常所说的“Linux操作系统”,它可能是由一个组织,公司或者个人发行的。通常来讲,一个Linux发行版包括Linux内核,将整个软件安装到计算机上的一套安装工具,各种GNU软件,其他的一些自由软件,在一些特定的Linux发行版中也有一些专有软件。 你可以通过访问http://shots.osdir.com/找到一些特定发行版的截图。

主流的Linux发行版


- Magic Linux
- Conectiva Linux
- Debian GNU/Linux
- Fedora Core
- Gentoo Linux
- Knoppix Linux
- Mandriva Linux
- Red Hat Linux
- Slackware Linux
- SUSE Linux
- Turbo Linux
- Ubuntu Linux
- Linux From Scratch
- Asianux
- B2D Linux

参见


- Linux操作系统
- GNU/Linux
- Linux套件列表
- Linus Torvalds
- GNU
- Tux
- 操作系统
- 操作系统列表

Linux资源


- [http://sourceforge.net/index.php 开源软件大厅]
- [http://www.tldp.org Linux文档计划]
- [http://www.kernel.org Linux内核官方网站]
- [http://www.linux.org Linux新闻]
- [http://www.freshmeat.net Linux程序下载中心]
- [http://www.linux.com Linux.com]
- [http://www.linuxwiki.org Linux Wiki]
- [http://www.linux-wiki.com Linux-wiki.com]

中国大陆的Linux發行版


- 紅旗Linux(Redflag Linux)
- 衝浪Linux(Xteam Linux)
- 藍點Linux
- Hiweed Debian GNU/Linux
- Magic Linux
- Engineering Computing GNU/Linux
- Open Desktop
- 新華Linux
- 麒麟Linux
- 共創Linux
- 百資Linux
- 中標普華Linux
- 中軟Linux
- 新華華鐳Linux(RaysLX)
- CD Linux
- MC Linux
- 即時Linux(Thizlinux)
- b2d linux
- IBOX
- MCLOS
- FANX

中國大陆Linux社区网站资源


- [http://www.linuxsir.org Linuxsir.org]
- [http://www.linuxfans.org 中国Linux公社]
- [http://www.linuxforum.net 中国Linux论坛]
- [http://www.linuxedu.net 中国Linux教育网]
- [http://linux.chinaunix.net/ 中国UNIX社区-Linux时代]
- [http://www.lupa.gov.cn 开源高校推进联盟]
- [http://www.linuxdby.com Linux大本营] [http://www.linuxdby.com 简体版] [http://big5.linuxdby.com 繁体版]
- [http://www.linuxeden.com Linux依甸园]
- [http://www.linuxaid.com.cn 中国Linux技术中坚站]
- [http://freeway.linuxsir.org FreeWay 自由之路原创文档小组]
- [http://freewill.linuxsir.org FreeWill 自由意志翻译小组]
- [http://gentoo.linuxsir.org/doc/cn/ Gentoo 中文文档集散地]
- [http://lfs.linuxsir.org LFS 中文用户小组]
- [http://www.fcitx.org Fcitx 小企鹅输入法]
- [http://linux.pku.edu.cn 北京大学Linux俱乐部]
- [http://fsa.ia.ac.cn 中科院自动化研究所自由软件协会]
- [http://www.gnome-cn.org 中文 GNOME 用户门户网站]
- [http://linux.hiweed.com 海微 Hiweed-Debian Linux]
- [http://www.linuxdby.com/blog.php Linux Blog]
- [http://wqy.sourceforge.net 文泉驿中文字体计划]
- [http://www.linuxren.org LinuxRen专注与内核]

台灣Linux社群網站資源


- [http://linux.vbird.org/ 鳥哥的Linux 私房菜]
- [http://www.linux.org.tw/ Taiwan Linux User Group]
- [http://blog.linux.org.tw/ Taiwan Linux Blog Center]
- [http://cle.linux.org.tw/ Linux中文延伸套件]
- [http://www.gentoo.org.tw/ Gentoo@台灣]
- [http://b2d.tnc.edu.tw/ B2D中文Linux計劃]
- [http://wiki.debian.org.tw/index.php/Main_Page Debian Wiki]
- [http://knoppix.tnc.edu.tw/ Knoppix中文交流網]
- [http://planet.debian.org.tw/ Planet DebianTW]
- [http://moto.debian.org.tw/ 摩托學園討論區]
- [http://wiki.tossug.org/ Taipei Open Source Software User Group]
- [http://www.study-area.org/menu2.htm Study-Area]
- [http://www.openfoundry.org/ 自由軟體鑄造場]
- [http://www.study-area.org/ Study Area 酷學園]
- [http://mdk.linux.org.tw/ Mandriva(Mandrake)中文使用開發者社群]

香港Linux社群網站資源


- [http://www.oaka.org/ 開放系統研用協會]
  - [http://www.linuxhall.org Linux Hall Online Project 資訊網]
- [http://www.openstandards.org.hk/ 開源標準科技協進會]
  - [http://www.openstandards.org.hk/pages/os_article.htm 開源科技雜誌 OSS Journal]
- [http://www.hklia.com/ HKLIA 香港 Linux 商會]
- [http://www.hklpg.org/ HKLPG 香港 Linux 玩家網]
- [http://www.linux.org.hk/ HKLUG 香港 Linux 用家協會]
  - [http://wiki.linux.org.hk/ OSWikiHK (香港開源維基)]
  - [http://elig.linux.org.hk/ Embedded Linux Interest Group]
  - [http://gnome.hk/ GNOME Hong Kong]
  - [http://www.debian.org.hk/ Debian Hong Kong]
  - [http://www.samba.hk/ Samba Hong Kong]
- 【[http://freefonts.oaka.org/index.php/HKSCS_install 香港增補字符集 2001] for Linux】

中国Linux社区IRC资源


- PCHOME #Unix IRC: irc.pchome.net 6667 #unix #geekbone.
- 中国Linux公社 IRC: irc.linuxfans.org 6667~6669 7000 #linuxfans #linuxer etc.
- LinuxFire IRC: linuxfire.dhis.org 6667 #linuxfire #pda #gondson2 #80s
- LinuxSir IRC: www.linuxsir.org 6667~6669 7000 #debianer #gentooer #chatroom etc.
- 北大Linux俱乐部IRC: linux.pku.edu.cn 6667 #club Category:Linux Category:操作系统 ja:Linux ko:리눅스 ms:Linux simple:Linux th:ลินุกซ์

虚拟机

In general terms, 在计算机科学中的“虚拟机”是指一种特殊的软件,他可以在计算机平台最终用户之间建立一种环境,而最终用户则是基于这个环境来操作软件。a virtual machine in computer science is software that creates an environment between the computer platform and the end user in which the end user can operate software. 确切的说,“虚拟机”这个术语有几个不同的含义:Specifically, the term virtual machine has severa7l distinct meanings:

定义

原始含义Original meaning

“虚拟机”最原始的含义是指在一台计算机中建立一系列不同的分别精确的模拟不同其他计算机的执行环境的执行环境。The original meaning of virtual machine is the creation of a number of different identical execution environments on a single computer, each of which exactly emulates the host computer. 这给让每位用户感觉到他在一台完整、同其他用互相隔离的计算机上操作;尽管事实上大家还是只在一台计算机上。提供给计算机这种能力的软件,宿主软件,通常被叫做虚拟机管理器(virtual machine monitor或hypervisor)This provides each user with the illusion of having an entire computer, but one that is their "private" machine, isolated from other users, all on a single physical machine. The host software which provides this capability is often referred to as a virtual machine monitor or hypervisor.

应用程序虚拟机Application virtual machine

The second, and now more common, meaning of virtual machine is a piece of computer software that isolates the application being used by the user from the computer. Because versions of the virtual machine are written for various computer platforms, any application written for the virtual machine can be operated on any of the platforms, instead of having to produce separate versions of the application for each computer and operating system. The application is run on the computer using an interpreter or Just In Time compilation.

操作系统虚拟机

这里虚拟机也用于指由一个模拟器所建立的一个环境,这个模拟器可以为最终用户在自己本地的操作系统上模拟另一个操作系统

并行虚拟机

近年来,“虚拟机”这个词也可以用来指一个并行虚拟机(PVM)。这里,虚拟机软件可以创建一个跨越多台计算机的环境,这样最终用户就好像只在使用一台计算机而不是多个。

技术Techniques

Emulation of the underlying raw hardware

Since each user can run whatever operating system they want, this type of virtual machine allows users to do things like run two different operating systems (sometimes referred to as "guests") on their "private" virtual computers. Also, experimental new versions of operating systems can be run at the same time as older, more stable, versions, each in a separate virtual machine. The process can even be recursive; IBM debugged new versions of its virtual machine operating system, VM, in a virtual machine running under an older version of VM. One early user of this concept was the IBM VM/CMS time-sharing product, which used a relatively simple interactive computing single-user operating system, CMS, which ran on top of VM. In that way, CMS could be written simply, as if it were running alone, and the VM operating system quietly provided multitasking and resource management services behind the scenes. Not all VM users had to run CMS, though; some preferred to run some form of OS/360 (or eventually MVS) in one or more virtual machines, to provide traditional batch processing services to those users who wanted that. VM is still used today on IBM mainframes, and in some which are used as Web servers, the operating system run in each of many virtual machines is Linux. The VMware, twoOStwo and SVISTA packages do the same thing on modern PCs, trapping all hardware accesses and simulating all of a motherboard except for the processor. In other case plex86 can run only Linux under Linux, using specific patched kernel, so it's not emulate processor, but uses bochs emulation of motherboard devices. The x86 处理器架构 as used in modern PCs does not actually meet the Popek and Goldberg virtualization requirements. Notably, there is no execution mode where all privileged machine instructions always trap, which would allow per-instruction virtualization. As a result, VMware and similar virtualization software for the x86 must dynamically recompile privileged mode code. This technique incurs some performance overhead as compared to a VM running on a natively virtualizable architecture such as the IBM System/370 or Motorola MC68020. Intel and AMD have each announced plans to add x86 virtualization capabilities to future x86 processors (see Vanderpool).

Emulation of a non-native system

Some of this class of virtual machines are emulators; these allow software written for one machine to run on another. Emulation for computer systems can include emulation for both different machine architectures, and operating systems. Others produce behaviors and capabilities of a machine that doesn't necessarily exist as an actual piece of hardware but may only be a detailed specification. For example, the p-Code machine specification (one of the first, used for support of Pascal) was a description of a specific set of capabilities and behaviors that programmers could use to write programs that would run on any computer running virtual machine software that correctly implemented the specification. More modern examples include the specification of the Java virtual machine and the Common Language Infrastructure virtual machine at the heart of the Microsoft .NET initiative. These allow diverse computers all to run software written to that specification; the virtual machine software itself must be written separately for each type of computer on which it runs.

List of virtual machines


- Common Language Runtime (Microsoft .NET)
- FAUmachine (emulates a PC)
- Glulx (for game playing, version not yet 1.0, similar to Z-machine)
- Forth virtual machine
- Java虚拟机 (JVM)
- MMIX (hypothetical CPU for describing algorithms)
- O-code machine (historical, used for BCPL, a fore-runner of C)
- p-Code machine (historical, mainly used to run Pascal programs)
- Perl (the virtual machine of Perl 5 is not separately accessible)
- Parrot (a virtual machine which is currently developed for interpreted dynamic languages (Perl 6, Ruby, ...).
- SECD machine (for Lisp-like languages)
- ScummVM (for playing adventure games, current GNU implemantations available)
- Smalltalk virtual machine
- Squeak virtual machine (VM for the Smalltalk variant Squeak)
- SVISTA (small powerful virtual machine, but project seems dead now)
- twoOStwo (small powerful virtual machine, but project seems dead now)
- Warren Abstract Machine (for executing Prolog programs)
- Inferno (simulates an Operating System)
- Ten15 virtual machine
- TrueType virtual machine
- User-mode Linux a virtual machine kernel modification for Linux.
- Virtual PC (Microsoft's virtual machine software)
- VMWare (powerful, professional-level virtual machine software)
- Xen
- Z-machine (historical, used for text adventure games)

See also


- Gerrit Blaauw (A significant designer of the IBM/360, an early virtual computing architecture)
- Threaded code (A common implementation technique for application virtual machines)
- Computing
- LLVM (The University of Illinois's Low Level Virtual Machine, a compiler toolset)

External links


- [http://citeseer.ist.psu.edu/cs?q=virtual+and+machine Citations from CiteSeer]
- [http://www.trango-systems.com TRANGO real-time embedded hypervisor]
- [http://acmqueue.com/modules.php?name=Content&pa=showpage&pid=168 The Reincarnation of Virtual Machines, Article on ACM Queue by Mendel Rosenblum, Co-Founder, VMware]
- [http://www.cl.cam.ac.uk/xeno/xen Xen] Category:计算机科学 Category:Virtualization software Category:操作系统技术 ja:仮想機械

嵌入式操作系统

嵌入式操作系统是嵌入式系统操作系统。它们通常被设计非常紧凑有效,抛弃了运行在它们之上的特定的应用程序所不需要的各种功能。嵌入式操作系统多数也是实时操作系统。 嵌入式操作系统包括:
- 嵌入式Linux
- Windows CE
- Windows XP Embedded
- VxWorks
- uCOSII
- QNX 还有定制版的NetBSDFreeDOS等。 Category:嵌入式系统 Category:操作系统 ja:組み込みオペレーティングシステム

内核

计算机科学中,内核是操作系统最基本的部分。它是为众多应用程序提供对计算机硬件的安全访问的一部分软件,这种访问是有限的,并且内核决定一个程序在什么时候对某部分硬件操作多长时间。直接对硬件操作是非常复杂的,所以内核通常提供一种硬件抽象的方法来完成这些操作。硬件抽象隐藏了复杂性,为应用软件和硬件提供了一套简洁,统一的接口,使程序设计更为简单。 严格地说,内核并不是计算机系统中必要的组成部分。程序可以直接地被调入计算机中执行,这样的设计说明了设计者不希望提供任何硬件抽象和操作系统的支持,它常见于早期计算机系统的设计中。最终,一些辅助性程序,例如程序加载器和调试器,被设计到机器核心当中,或者固化在只读存储器里。这些变化发生时,操作系统内核的概念就渐渐明晰起来了。 内核可分为四大类:
- 单内核 它为潜在的硬件提供了大量完善的硬件抽象操作。
- 微内核 只提供了很小一部分的硬件抽象,大部分功能由一种特殊的用户态程序:服务器来完成。
- 混合内核 它很像微内核结构,只不过它的的组件更多的在核心态中运行,以获得更快的执行速度。
- 外内核 这种内核不提供任何硬件抽象操作,但是允许为内核增加额外的运行库,通过这些运行库应用程序可以直接地或者接近直接地对硬件进行操作。

单内核

单内核结构在硬件之上定义了一个高阶的抽象界面,应用一组原语(或者叫系统调用)来实现操作系统的功能,例如进程管理文件系统,和存储管理等等,这些功能由多个运行在核心态的模块来完成。 尽管每一个模块都是单独地服务这些操作,内核代码是高度集成的,而且难以编写正确。因为所有的模块都在同一个内核空间上运行,一个很小的bug都会使整个系统崩溃。然而,如果开发顺利,单内核结构就可以从运行效率上得到好处。 很多现代的单内核结构内核,如LinuxFreeBSD内核,能够在运行时将模块调入执行,这就可以使扩充内核的功能变得更简单,也可以使内核的核心部分变得更简洁。 单内核结构的例子:
- 传统的UNIX内核,例如伯克利大学发行的版本
- Linux内核 UNIX

微内核

微内核结构由一个非常简单的硬件抽象层和一组比较关键的原语或系统调用组成,这些原语仅仅包括了建立一个系统必需的几个部分,如 线程管理地址空间进程间通信等。 微核的目标是将系统服务的实现和系统的基本操作规则分离开来。例如,进程的输入/输出锁定服务可以由运行在微核之外的一个服务组件来提供。这些非常模块化的用户态服务器用于完成操作系统中比较高级的操作,这样的设计使内核中最核心的部分的设计更简单。一个服务组件的失效并不会导致整个系统的崩溃,内核需要做的,仅仅是重新启动这个组件,而不必影响其它的部分。 微内核结构的例子:
- AIX
- BeOS
- L4微内核系列
- Mach, 用于GNU HurdMac 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 NTWindows 2000Windows XPWindows 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:커널 (컴퓨터)

QNX

QNX是一种商用的POSIX顺从的类Unix实时操作系统,目标市场主要是面向嵌入式系统。它可能是最成功的微内核操作系统之一。
- [http://mama.indstate.edu/users/liug/qnx4.html QNX 网络资源]
- [http://www.qnx.com/ QNX ]
- [http://www.qnxzone.com/ QNXZone]
- [http://www.openqnx.com/ QNX 用户社区]
- [http://www.sf.net/projects/openqnx 开源应用] category:操作系統 Category:Unix ja:QNX

Linux

:本文内容是关于基于Linux的操作系统,GNU/Linux和相关主题的。请参照Linux内核以获得和内核本身相关的内容。 :Linux也是一颗小行星的名字,请参阅小行星9885 Linux是一种计算机操作系统和它的内核的名字。它也是自由软件开放源代码发展中最著名的例子。 严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和資料庫的操作系统(也被称为GNU/Linux)。基于这些组件的Linux软件被称为Linux发行版。一般来讲,一个Linux发行套件包含大量的软件,比如软件开发工具,数据库Web服务器(例如Apache),X Window,桌面环境(比如GNOMEKDE),办公套件(比如OpenOffice.org),等等。 Linux内核最初是为英特尔386微处理器设计的。现在Linux内核支持从个人电脑大型主机甚至包括嵌入式系统在内的各种硬件设备。 在开始的时候,Linux只是个人狂热爱好的一种产物。但是现在,Linux已经成为了一种受到广泛关注和支持的一种操作系统。包括IBM惠普在内的一些计算机业巨头也开始支持Linux。很多人认为,和其他的商用Unix系统以及微软Windows相比,作为自由软件的Linux具有低成本,安全性高,更加可信赖的优势。 小行星9885是以Linux的名字命名的。

歷史

Linux內核最初只是由芬蘭Linus Torvalds赫爾辛基大學上學時出於個人愛好而編寫的。最初的設想中,Linux是一種類似Minix這樣的一種操作系統。Linux的第一個版本在1991年9月被--發布在Internet上,隨後在10月份第二個版本就發布了。 Linux的歷史是和GNU緊密聯系在一起的。從1983年開始的GNU計劃致力於開發一個自由並且完整的類Unix操作系統,包括軟件開發工具和各種應用程序。到1991年Linux內核發布的時候,GNU已經幾乎完成了除了系統內核之外的各種必備軟件的開發。在Linus Torvalds和其他開發人員的努力下,GNU組件可以運行於Linux內核之上。整個內核是基於GNU通用公共許可,也就是GPL(GNU General License)的,但是Linux內核並不是GNU 計劃的一部分。 Linux的標志和吉祥物是一只名字叫做Tux企鵝Linux的注冊商標是Linus Torvalds所有的。這是由於在1996年,一個名字叫做William R. Della Croce的律師開始向各個Linux發布商發信,聲明他擁有Linux商標的所有權,並且要求各個發布商支付版稅,這些發行商集體進行上訴,要求將該注冊商標重新分配給Linus Torvalds。 Linux的某些版本是不需要安裝就能使用的版本,他們稱為LiveCD

应该怎么读Linux?

根据Torvalds的说法,Linux的发音和“Minix”是押韵的。 参照[http://www.shortfamilyonline.com/tech/unix/history-of-linux/reference/23-Apr-1992-re-how-to-pronounce-linux.html],“Li”中“i”的发音类似于“Minix”中“i”的发音,而“nux”中“u”的发音类似于英文单词“put”中“u”的发音。 此外在[http://www.paul.sladen.org/pronunciation/]有一份Torvalds本人说话的音频,音频内容为“Hello, this is Linus Torvalds, and I pronounce Linux as Linux”。 大致和“利讷克斯”的音类似(注意不是利纳克斯、利牛克斯、利努克斯或者利尼克斯)。
请大家按照['linэks]这个音标读。
音频文件地址:Media:http://zhaolinux.com/down/torvalds-says-linux.mp3

Linux发行版

Linux发行版(Linux distribution)指的就是我们通常所说的“Linux操作系统”,它可能是由一个组织,公司或者个人发行的。通常来讲,一个Linux发行版包括Linux内核,将整个软件安装到计算机上的一套安装工具,各种GNU软件,其他的一些自由软件,在一些特定的Linux发行版中也有一些专有软件。 你可以通过访问http://shots.osdir.com/找到一些特定发行版的截图。

主流的Linux发行版


- Magic Linux
- Conectiva Linux
- Debian GNU/Linux
- Fedora Core
- Gentoo Linux
- Knoppix Linux
- Mandriva Linux
- Red Hat Linux
- Slackware Linux
- SUSE Linux
- Turbo Linux
- Ubuntu Linux
- Linux From Scratch
- Asianux
- B2D Linux

参见


- Linux操作系统
- GNU/Linux
- Linux套件列表
- Linus Torvalds
- GNU
- Tux
- 操作系统
- 操作系统列表

Linux资源


- [http://sourceforge.net/index.php 开源软件大厅]
- [http://www.tldp.org Linux文档计划]
- [http://www.kernel.org Linux内核官方网站]
- [http://www.linux.org Linux新闻]
- [http://www.freshmeat.net Linux程序下载中心]
- [http://www.linux.com Linux.com]
- [http://www.linuxwiki.org Linux Wiki]
- [http://www.linux-wiki.com Linux-wiki.com]

中国大陆的Linux發行版


- 紅旗Linux(Redflag Linux)
- 衝浪Linux(Xteam Linux)
- 藍點Linux
- Hiweed Debian GNU/Linux
- Magic Linux
- Engineering Computing GNU/Linux
- Open Desktop
- 新華Linux
- 麒麟Linux
- 共創Linux
- 百資Linux
- 中標普華Linux
- 中軟Linux
- 新華華鐳Linux(RaysLX)
- CD Linux
- MC Linux
- 即時Linux(Thizlinux)
- b2d linux
- IBOX
- MCLOS
- FANX

中國大陆Linux社区网站资源


- [http://www.linuxsir.org Linuxsir.org]
- [http://www.linuxfans.org 中国Linux公社]
- [http://www.linuxforum.net 中国Linux论坛]
- [http://www.linuxedu.net 中国Linux教育网]
- [http://linux.chinaunix.net/ 中国UNIX社区-Linux时代]
- [http://www.lupa.gov.cn 开源高校推进联盟]
- [http://www.linuxdby.com Linux大本营] [http://www.linuxdby.com 简体版] [http://big5.linuxdby.com 繁体版]
- [http://www.linuxeden.com Linux依甸园]
- [http://www.linuxaid.com.cn 中国Linux技术中坚站]
- [http://freeway.linuxsir.org FreeWay 自由之路原创文档小组]
- [http://freewill.linuxsir.org FreeWill 自由意志翻译小组]
- [http://gentoo.linuxsir.org/doc/cn/ Gentoo 中文文档集散地]
- [http://lfs.linuxsir.org LFS 中文用户小组]
- [http://www.fcitx.org Fcitx 小企鹅输入法]
- [http://linux.pku.edu.cn 北京大学Linux俱乐部]
- [http://fsa.ia.ac.cn 中科院自动化研究所自由软件协会]
- [http://www.gnome-cn.org 中文 GNOME 用户门户网站]
- [http://linux.hiweed.com 海微 Hiweed-Debian Linux]
- [http://www.linuxdby.com/blog.php Linux Blog]
- [http://wqy.sourceforge.net 文泉驿中文字体计划]
- [http://www.linuxren.org LinuxRen专注与内核]

台灣Linux社群網站資源


- [http://linux.vbird.org/ 鳥哥的Linux 私房菜]
- [http://www.linux.org.tw/ Taiwan Linux User Group]
- [http://blog.linux.org.tw/ Taiwan Linux Blog Center]
- [http://cle.linux.org.tw/ Linux中文延伸套件]
- [http://www.gentoo.org.tw/ Gentoo@台灣]
- [http://b2d.tnc.edu.tw/ B2D中文Linux計劃]
- [http://wiki.debian.org.tw/index.php/Main_Page Debian Wiki]
- [http://knoppix.tnc.edu.tw/ Knoppix中文交流網]
- [http://planet.debian.org.tw/ Planet DebianTW]
- [http://moto.debian.org.tw/ 摩托學園討論區]
- [http://wiki.tossug.org/ Taipei Open Source Software User Group]
- [http://www.study-area.org/menu2.htm Study-Area]
- [http://www.openfoundry.org/ 自由軟體鑄造場]
- [http://www.study-area.org/ Study Area 酷學園]
- [http://mdk.linux.org.tw/ Mandriva(Mandrake)中文使用開發者社群]

香港Linux社群網站資源


- [http://www.oaka.org/ 開放系統研用協會]
  - [http://www.linuxhall.org Linux Hall Online Project 資訊網]
- [http://www.openstandards.org.hk/ 開源標準科技協進會]
  - [http://www.openstandards.org.hk/pages/os_article.htm 開源科技雜誌 OSS Journal]
- [http://www.hklia.com/ HKLIA 香港 Linux 商會]
- [http://www.hklpg.org/ HKLPG 香港 Linux 玩家網]
- [http://www.linux.org.hk/ HKLUG 香港 Linux 用家協會]
  - [http://wiki.linux.org.hk/ OSWikiHK (香港開源維基)]
  - [http://elig.linux.org.hk/ Embedded Linux Interest Group]
  - [http://gnome.hk/ GNOME Hong Kong]
  - [http://www.debian.org.hk/ Debian Hong Kong]
  - [http://www.samba.hk/ Samba Hong Kong]
- 【[http://freefonts.oaka.org/index.php/HKSCS_install 香港增補字符集 2001] for Linux】

中国Linux社区IRC资源


- PCHOME #Unix IRC: irc.pchome.net 6667 #unix #geekbone.
- 中国Linux公社 IRC: irc.linuxfans.org 6667~6669 7000 #linuxfans #linuxer etc.
- LinuxFire IRC: linuxfire.dhis.org 6667 #linuxfire #pda #gondson2 #80s
- LinuxSir IRC: www.linuxsir.org 6667~6669 7000 #debianer #gentooer #chatroom etc.
- 北大Linux俱乐部IRC: linux.pku.edu.cn 6667 #club Category:Linux Category:操作系统 ja:Linux ko:리눅스 ms:Linux simple:Linux th:ลินุกซ์

Windows

Microsoft Windows(微软视窗)是一个为个人电脑服务器用户设计的操作系统。它的第一个版本由微软公司发行--1985年,并最终获得了世界个人电脑操作系统软件的垄断地位。所有最近的Windows都是完全独立的操作系统。

Windows家族

1985年 1985年 Windows这个词用于一系列不同的产品,它们可以划分为一些四个类别:
- 16位操作环境:这些产品只是提供了一个图形用户界面或桌面,还要有一个独立的操作系统提供必要的服务,例如读取磁盘服务、显示器和键盘的输入等等。这个系列的产品包括Windows 1.01985年)、Windows 2.0(1987年)以及它的近似产品Windows 286Windows 386Windows 3.0Windows 3.1。它们都不能脱离DOS运行。
- 混合的16/32位操作环境:这个系列的Windows是16位的Windows的升级版本,仍然需要DOS操作系统才能运行,但是由于和微软的MS-DOS组件整合在一起作为一个整体来发售,这样就不用再单独购买MS-DOS以运行Windows了。这个系列包括Windows 95(第一版发行于1995年,后来的改进版本发行于1996年1997年),以及三个版本的Windows 981998年1999年2000年)。这三个版本最终发展成为Windows ME。但是它作为Windows 98家族的资格并没有在广告上出现。
- 32位操作系统环境:起初是为更高性能的商业市场设计而编写的独立的32位操作系统。这个系列包括Windows NT 3.1(1992年)、NT 3.5、NT 3.51、NT 4.0、Windows 2000Windows XP等。
- 64位操作系统环境:最新的Windows版本开始采用64位操作系统环境,虽然不管是IntelEM64T还是AMD的x86-64在本质上都是一种32位扩展指令集,兼容英特尔的EM64T扩展指令集和AMD的x86-64指令集(Intel的EM64T其实是其兼容指令集)。这个系列的产品包括Windows XP 64位版和Windows Server 2003 64位版。IA-64是Intel的安腾处理器使用的完全不同的纯64位RISC指令集,在32位兼容模式下性能极为低下而且基本不兼容现有的x86软件,故和现有桌面平台所谓的64bit指令集是完全不同的概念,Microsoft仅仅有Windows 2000 Advanced Server Limited Edition这个限量版的基于IA-64指令集的系统和一个非常罕见的Windows2003Sever for IA-64版本。

Windows的發展史

Windows起源可以追溯到Xerox公司所進行的研發工作。1970年,美國Xerox公司成立了著名的研究機構Palo Alto Research Center(PARC),從事區域網路雷射印表機圖形使用者介面(Graphic User Interface,縮寫:GUI)和物件導向(Object-Oriented)技術的研究,並於1981年宣佈推出世界上第一個商用的GUI系統:Star 8010工作站。但由於種種原因,此技術上的領先並未得到充份的重視,也沒有進一步做商業化的應用。 然而Apple Computer公司的創始人之一Steve Jobs在參觀Xerox公司的PARC研究中心後,認識到了GUI的重要性以及廣闊的市場前景,於是開始著手進行自己的GUI系統研發工作,並於1983年研發成功第一個GUI系統:Lisa。不久,Apple又推出第二個GUI系統:Macintosh,這是世界上第一個成功的商用GUI系統。Apple公司在開發Macintosh時,出於市場戰略上的考量,只開發了能於Apple公司自己的電腦上作運作的GUI系統,但當時,基於Intel x86微處理器晶片的IBM兼容電腦已漸露頭角,因此就給了Microsoft公司所開發的Windows生存空間和市場。 Intel x86Microsoft公司早就意識到建立業界標準的重要性,在1983年春季就宣佈開始研究開發Windows,希望它能夠成為基於Intel x86微處理晶片電腦上的標準GUI操作系統。它在1985年1987年分別推出Windows 1.03版和Windows2.0版。但是,由於當時硬體和DOS操作系統的限制,這兩個版本並沒有取得很大的成功。此後,Microsoft公司對Windows的RAM管理、GUI做了重大改進,使GUI更加美觀並支持虛擬記憶體。Microsoft於1990年5月份推出Windows 3.0並一炮而紅。這個「千呼萬喚始出來」的操作系統一面世便在商業上取得驚人的成功:不到6周,Microsoft公司銷出了50萬份Windows 3.0,打破了任何軟體產品的6周銷售記錄,從而一舉奠定了Microsoft在操作系統上的壟斷地位。後來更因此在1994年時被Apple公司控告侵權,展開了著名的“look and feel”訴訟官司。 自Windows 95Windows NT4.0以來,這個系統最明顯的特徵是桌面。微軟設計的桌面大大改變了人機交流的界面,使得更多普通的任務只需要少量的電腦知識就可以勝任了,甚至一些比較複雜的任務。但是Windows界面也使得用戶和計算機的內部工作隔離開來,使得用戶控制和設置計算機變得更加困難(這或多或少是由於現代操作系統功能和復雜性不斷增長以及不斷有大量低水平的電腦人員的增長所帶來的必然)。 Windows獲得了巨大的市場成功。估計現在有90%的個人電腦使用這個系統。但是用戶也很難選擇其它的操作系統,因為在他們花錢購買電腦的時候他們的電腦已經有了Windows系統,而他們必須刪除了Windows之後纔能安裝別的系統(通常是免費的系統)。因此,無論是它的市場佔有率或為了實現保持市場主導位置的活動都是極富爭議性的。 Windows XPWindows Server 2003是現在最新的Windows版本。Windows Server 2003有四個版本:Windows Server 2003 Web服務器版本(Web Edition)、 Windows Server 2003標准版(Standard Edition)、 Windows Server 2003企業版(Enterprise Edition)以及Windows Server 2003數據中心版(Datacenter Edition)。Web Edition主要是為網頁服務器(web hosting)設計的,而Datacenter是一個為極高端系統使用的。標准和企業版本則介於兩者中間。 Windows CE系統是1996年開始設計的一款專門針對嵌入式設備設計的操作系統,最開始的時候微軟打算在Windows 98Windows NT的基礎上修改,但是項目進行不順利,後來經過全新設計產生了Windows CE系列產品其中包括後來的PocketPC以及Smartphone,嚴格的說Windows CE只是一個操作系統的核心,在這個核心的基礎上發展了針對不通設備的不同版本的操作系統。 微軟有一系列主動的計劃:.NETPalladium以及Windows Vista(开发代号Longhorn)操作系統。有人認為.NETWindows Vista是微軟希望從Windows中轉移開來。有人推想這樣將可能幫助微軟避免遭到像反托拉斯那樣的後果。也可以宣稱微軟的下一代產品將是全新的產品,而不是Windows的後續版本。

为特殊设备设计的版本


- 为个人数字助理设计的Pocket PC
- 为移动电话设计的Smartphone
- 为笔记本电脑及触摸式屏幕设计的Tablet PC
- 为DEC Alpha、IBM PowerPC和MIPS systems设计的Windows NT。(在2000年后都废止了)
- 为掌上电脑设计的Windows CE
- 为家庭媒体中心设计的Windows XP Media Center Edition
- 為XBOX遊戲機設計的版本,名為 Dashboard,但實為 Windows 2000修改而成。

参看


- 微软
- Microsoft Windows的历史
- Windows API
- Windows XP 常用快速鍵列表
- .NET Framework
- 硬件:WinHEC
- 操作系统列表
  - Linux
  - Unix
  - Mac OS X
  - ReactOS Category:操作系统 Category:視窗系統 ja:Microsoft Windows ko:마이크로소프트 윈도우즈 ms:Microsoft Windows simple:Microsoft Windows th:ไมโครซอฟท์วินโดวส์ zh-min-nan:Microsoft Windows

嵌入式系统

嵌入式系统,是一种完全植入受控器件内部的为特定应用设计的专用计算机系统。有别于通用计算机系统,嵌入式系统的外形尺寸、功耗、外部接口等各种特征必须满足应用的要求和限制。通常嵌入式系统的软件包括操作系统燒錄在一塊電路板上。也有另一種嵌入式系統,利用低用電的CPU及最基本的電腦週邊配備而製成。這種電腦通常採用Linux操作系統。

歷史

第一个被大家认可的现代嵌入式系统是麻省理工学院仪器研究室查尔斯·斯塔克·德雷珀开发的阿波罗导航计算机。在两次月球飞行中他们在太空驾驶舱月球登陆舱都是用了这种惯性制导系统

特性

嵌入電腦系統構成對電腦系統的最大的可能用途; 它包括所有電腦不同於那些具體地意欲作為通用電腦。 嵌入系統例子範圍從一個便攜式的音樂播放器, 對系統實時控制像太空梭。 他們為提供描繪作用, 那不是本身電腦。

嵌入式系统范例


- ATM(automatic teller machines)自动柜员机
- 蜂窝电话电话交换机
- 计算机网络设备,包括路由器时间服务器防火墙
- 计算机打印机
- 磁盘驱动(软盘驱动和硬盘驱动)
- 汽车引擎控制器
- PDA
- 智能家电,例如采用微电脑控制的电冰箱空调洗衣机微波炉
- 威盛电子EPIA嵌入式平台
- 各种工业控制机床的核心控制器

外部链接


- [http://www.viaembedded.cn/index.jsp 威 盛 电 子VEPD]

常见的嵌入式操作系统

参见嵌入式操作系统
- uC/OS II
- uCLinux
- Arm-Linux
- VxWorks
- pSOS
- Nucleus
- PlamOS
- Windows CE
- Embedded LINUX
- ECOS
- QNX
- Lynx
- Symbian Category:嵌入式系统 ja:組み込みシステム ko:임베디드 시스템

QNX

QNX是一种商用的POSIX顺从的类Unix实时操作系统,目标市场主要是面向嵌入式系统。它可能是最成功的微内核操作系统之一。
- [http://mama.indstate.edu/users/liug/qnx4.html QNX 网络资源]
- [http://www.qnx.com/ QNX ]
- [http://www.qnxzone.com/ QNXZone]
- [http://www.openqnx.com/ QNX 用户社区]
- [http://www.sf.net/projects/openqnx 开源应用] category:操作系統 Category:Unix ja:QNX

UNIX

UNIX是一个强大的多用户,多任务操作系统,支持多种处理器架构,最早由Ken ThompsonDennis RitchieDouglas McIlroy1969年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个主要的分支:FreeBSDOpenBSDNetBSD。 此后的几十年中,UNIX仍在不断变化,其版权所有者不断变更,授权者的数量也在增加。UNIX的版权曾经为AT&T所有,之后Novell拥有了UNIX,再之后Novell又将版权出售给了SCO(这一事实双方尚存在争议)。有很多大公司在取得了UNIX的授权之后,开发了自己的UNIX产品,比如IBM的AIXHPHPUXSUNSolarisSGIIRIX。 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