计算机基础知识

** 第一课:计算机基础知识**

10年积累的成都网站设计、网站制作经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站后付款的网站建设流程,更有玛多免费网站建设让你可以放心的选择与我们合作。

**第一章计算机的组成**

计算机是由硬件(Hardwaer)和软件(Software)来组成两大类,他是一台可以自由传输数据,储存数据,娱乐,工作等等的智能设备。

**第一节计算机硬件**

![](/upload/otherpic62/6132055-20468373182f1a21%7Cp_w_picpathView2/2/w/1240)

![主板架构图](/upload/otherpic62/6132055-bee994de657ae77e%7Cp_w_picpathView2/2/w/1240)**主板架构图**

内存====用来存储临时数据,弱点喜欢松动一般电脑黑屏都是他松动了,导致电脑不能机 基本上%80以上的电脑不能开机都是他出了问题,服务器同样如此,所以他是罪魁祸首。

声卡====是用来传输是实现声波、数字信号相互转换的一种硬件,弱点容易烧,里面的弹片容易变形,最好是不要经常拔插。

网卡====用来接受和发送网络信号,用的是TCP/IP协议 ,弱点容易被雷击童鞋们要小心自己的网卡哦。

显卡====是用来显示视频信号,可用来娱乐,看电影用,弱点玩游戏的时候或看4K视频的候,GPU温度过高导致风扇转速过快很吵,所以风扇容易坏,坏了GPU就容易烧,就算不烧GPU自己也会降频,降频的时候就出线卡屏的现象,有些童鞋显卡很好的,要注意下自己的显卡哦。

主板====是用来协调各个硬件设备传输数据,他上面的南桥,和北桥,是他的核心,弱点容易被雷击,静电脉冲,所以请童鞋们买防静电主板比较好哦。

中央处理器====计算机的核心,计算机心脏,整台机器的速度快慢都由他来决定,弱点运行的时候温度过高,如果没有个好的风扇来散热,容易烧点,童鞋们要好好注意哦。

电源====用来给所有设备来供电, 弱点容易被雷击,时间永久以后声音大。

输入设备====键盘,鼠标,扫描仪,光笔,手写板,话筒,等等。

输出设备====显示器,打印机,绘图仪,投影仪,等等。

存储设备====硬盘,U盘,光盘,磁带,软盘,固态硬盘,等等

**第二节计算机软件**

![](/upload/otherpic62/6132055-0a8dcca19667acd4%7Cp_w_picpathView2/2/w/1240)

系统软件====系统软件分很多类如:Windows,linux,Uinx,Novell Netware,MAC OSX,Dos,GUN.

服务程序====服务程序是指随着计算机一起启动的后台程序如,shell,系统调用,内核,等等。

语言系统====机器语言,汇编语言,C语言,C++,C#,Java,VB,Python,Go语言等等。

数据库====Oracle,MySQL,DB2,等等大型数据库。

系统软件====就是系统自带的软件如:记事本等等,就不罗嗦了。

应用软件====就是我们常用的QQ,办公软件等等。。。。。。。

**第二章计算机历史** **计算机之父**

![冯诺依曼](/upload/otherpic62/6132055-a238d1a4b2f90041%7Cp_w_picpathView2/2/w/1240)**冯诺依曼**

冯·诺依曼 (John von Neumann,1903~1957),20世纪最重要的数学家之一,在现代计算机、博弈论、核武器和生化武器等诸多领域内有杰出建树的最伟大的科学全才之一,被后人称为“计算机之父”和“博弈论之父(涯杰)”。[2] 原籍匈牙利。布达佩斯大学数学博士。先后执教于柏林大学和汉堡大学。1930年前往美国,后入美国籍。历任普林斯顿大学、普林斯顿高级研究所教授,美国原子能委员会会员。美国全国科学院院士。早期以算子理论、共振论、量子理论、集合论等方面的研究闻名,开创了冯·诺依曼代数。第二次世界大战期间为第一颗×××的研制作出了贡献。为研制电子数字计算机提供了基础性的方案。1944年与摩根斯特恩(Oskar Morgenstern)合著《博弈论与经济行为》,是博弈论学科的奠基性著作。晚年,研究自动机理论,著有对人脑和计算机系统进行精确分析的著作《计算机与人脑》

![冯诺依曼结构体系图](/upload/otherpic62/6132055-3f446c0903ea2e78%7Cp_w_picpathView2/2/w/1240)**冯诺依曼结构体系图**

美籍匈牙利数学家冯·诺依曼于1946年提出存储程序原理,把程序本身当作数据来对待,程序和该程序处理的数据用同样的方式储存。 冯·诺依曼体系结构冯·诺依曼理论的要点是:数字计算机的数制采用二进制;计算机应该按照程序顺序执行。人们把冯·诺依曼的这个理论称为冯·诺依曼体系结构。

**发展历史**

第一代计算机(1946-1957) 电子管时代 第二代计算机(1958-1964) 晶体管时代 第三代计算机(1965-1970) 集成电路时代 第四代计算机(1971年以后) 大规模集成电路时代 第五代计算机(智能计算机 ) 人脑神经元、突触功能以及其他脑功能的微芯片

![第一代计算机](/upload/otherpic62/6132055-3a73ba024e55a36d%7Cp_w_picpathView2/2/w/1240)**第一代计算机**

第一代计算机是50年代计算机研制的第一个高潮时期,那时的计算机中的主要元器件都是用电子管制成的,后人将用电子管制作的计算机称为第一代计算机。这个时期的计算机发展有三个特点:即由军用扩展至民用,由实验室开发转入工业化生产,同时由科学计算扩展到数据和事务处理。 以“埃尼亚克”为代表,一批计算机迅速推向市场,形成了第一代计算机族。在这一时期,美籍匈牙利科学家冯·诺伊曼提出了“程序存储”的概念,其基本思想是把一些常用的基本操作都制成电路,每一个这样的操作都用一个数代表,于是这个数就可以指令计算机执行某项操作。程序员根据解题的要求,用这些数来编制程序,并把程序同数据一起放在计算机的内存储器里。当计算机运行时,它可以依次以很高的速度从存储器中取出程序里的一条条指令,逐一予以执行,以完成全部计算的各项操作,它自动从一个程序指令进到下一个程序指令,作业顺序通过“条件转移”指令自动完成。“程序存储”使全部计算成为真正的自动过程,它的出现被誉为电子计算机史上的里程碑,而这种类型的计算机被人们称为“冯·诺伊曼机”

![第二代计算机](/upload/otherpic62/6132055-a85540b4be88b9c0%7Cp_w_picpathView2/2/w/1240)**第二代计算机**

第二代计算机晶体管计算机(1957-1964)20世纪50年代中期,晶体管的出现使计算机生产技术得到了根本性的发展,由晶体管代替电子管作为计算机的基础器件,用磁芯或磁鼓作存储器,在整体性能上,比第一代计算机有了很大的提高。同时程序语言也相应的出现了,如Fortran,Cobol,Algo160等计算机高级语言。晶体管计算机被用于科学计算的同时,也开始在数据处理、过程控制方面得到应用

![第三代计算机](/upload/otherpic62/6132055-d2db2dbe9b990e6a%7Cp_w_picpathView2/2/w/1240)**第三代计算机**

第三代计算机中小规模集成电路计算机(1964-1971)20世纪60年代中期, 中小规模集成电路计算机 中小规模集成电路计算机(2张) 随着半导体工艺的发展,成功制造了集成电路。中小规模集成电路成为计算机的主要部件,主存储器也渐渐过渡到半导体存储器,使计算机的体积更小,大大降低了计算机计算时的功耗,由于减少了焊点和接插件,进一步提高了计算机的可靠性。在软件方面,有了标准化的程序设计语言和人机会话式的Basic语言,其应用领域也进一步扩大。

![第四代计算机](/upload/otherpic62/6132055-2afa70ab81397a37%7Cp_w_picpathView2/2/w/1240)**第四代计算机**

第四代计算机大规模和超大规模集成电路计算机(1971-2016)随着大规模集成电路的成功制作并用于计算机硬件生产过程,计算机的体积进一步缩小,性能进一步提高。集成更高的大容量半导体存储器作为内存储器,发展了并行技术和多机系统,出现了精简指令集计算机(RISC),软件系统工程化、理论化,程序设计自动化。微型计算机在社会上的应用范围进一步扩大,几乎所有领域都能看到计算机的“身影”

![第五代计算机](/upload/otherpic62/6132055-a96e18be839dfc94%7Cp_w_picpathView2/2/w/1240)**第五代计算机**

第五代计算机IBM发表声明称,该公司已经研制出一款能够模拟人脑神经元、突触功能以及其他脑功能的微芯片,从而完成计算功能,这是模拟人脑芯片领域所取得的又一大进展。IBM表示,这款微芯片擅长完成模式识别和物体分类等繁琐任务,而且功耗还远低于传统硬件。

**计算机类型**

**计算机类型**

![巨型计算机](/upload/otherpic62/6132055-9b208c0061d95a88%7Cp_w_picpathView2/2/w/1240)**巨型计算机**

具有很强的计算和处理数据的能力,主要特点表现为高速度和大容量,配有多种外部和外围设备及丰富的、高功能的软件系统,“天河二号”是由国防科学技术大学研制的超级计算机系统,以峰值计算速度每秒5.49亿亿次、持续计算速度每秒3.39亿亿次双精度浮点运算的优异性能位居榜首,成为全球最快超级计算机

![大型计算机](/upload/otherpic62/6132055-ca8570f2e669b77b%7Cp_w_picpathView2/2/w/1240)**大型计算机**

超级计算机(chao ji ji suan ji):能够执行一般个人电脑无法处理的大资料量与高速运算的电脑。其基本组成组件与个人电脑的概念无太大差异,但规格与性能则强大许多,是一种超大型电子计算机。具有很强的计算和处理数据的能力,主要特点表现为高速度和大容量,配有多种外部和外围设备及丰富的、高功能的软件系统。现有的超级计算机运算速度大都可以达到每秒一太(Trillion,万亿)次以上。

![小型计算机](/upload/otherpic62/6132055-972a1bef8c131e55%7Cp_w_picpathView2/2/w/1240)**小型计算机**

小型计算机是相对于大型计算机而言,小型计算机的软件、硬件系统规模比较小,但价格低、可靠性高、便于维护和使用。小型计算机是属于硬件系统比较小,但功能却不少的微型计算机 可以使成功人士方便携带和使用。

![微型计算机](/upload/otherpic62/6132055-6ceb79e326e34c61%7Cp_w_picpathView2/2/w/1240)**微型计算机**

微型计算机的特点是体积小、灵活性大、价格便宜、使用方便。把微型计算机集成在一个芯片上即构成单片微型计算机(Single Chip Microcomputer)。由微型计算机配以相应的外围设备(如打印机)及其他专用电路、电源、面板、机架以及足够的软件构成的系统叫做微型计算机系统(Microcomputer System)(即通常说的电脑)。

**服务器类型**

![塔式服务器](/upload/otherpic62/6132055-81abf4d6d662c358%7Cp_w_picpathView2/2/w/1240)塔式服务器

塔式服务器(Tower Server)应该是见得最多也最容易理解的一种服务器结构类型,因为它的外形以及结构都跟立式PC差不多,当然,由于服务器的主板扩展性较强、插槽也多出一堆,所以个头比普通主板大一些,因此塔式服务器的主机机箱也比标准的ATX机箱要大,一般都会预留足够的内部空间以便日后进行硬盘和电源的冗余扩展。

![机架式服务器](/upload/otherpic62/6132055-2fbc34310a695b7b%7Cp_w_picpathView2/2/w/1240)**机架式服务器**

机架式服务器的外形看来不像计算机,而像交换机,有1U(1U=1.75英寸)、2U、4U等规格。机架式服务器安装在标准的19英寸机柜里面。这种结构的多为功能型服务器

![刀片式服务器](/upload/otherpic62/6132055-d8cb2944496f98a9%7Cp_w_picpathView2/2/w/1240)**刀片式服务器**

刀片服务器是指在标准高度的机架式机箱内可插装多个卡式的服务器单元,是一种实现HAHD(High Availability High Density,高可用高密度)的低成本服务器平台,为特殊应用行业和高密度计算环境专门设计。刀片服务器就像“刀片”一样,每一块“刀片”实际上就是一块系统主板。

**服务器功能与应用**

Web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,可以向浏览器等Web客户端提供文档,[1] 也可以放置网站文件,让全世界浏览;可以放置数据文件,让全世界下载。目前最主流的三个Web服务器是Apache Nginx IIS

数据库服务器由运行在局域网中的一台/多台计算机和数据库管理系统软件共同构成,数据库服务器为客户应用程序提供数据服务。

邮件服务器是一种用来负责电子邮件收发管理的设备。它比网络上的免费邮箱更安全和高效,因此一直是企业公司的必备设备。

文件服务器是一种器件,它的功能就是向服务器提供文件。它加强了存储器的功能,简化了网络数据的管理。它一则改善了系统的性能,提高了数据的可用性,二则减少了管理的复杂程度,降低了运营费用。

中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。是连接两个独立应用程序或独立系统的软件。相连接的系统,即使它们具有不同的接口,但通过中间件相互之间仍能交换信息。执行中间件的一个关键途径是信息传递。通过中间件,应用程序可以工作于多平台或OS环境

日志服务器是专门供一些服务器,设备在运行过程中产生的使用记录及硬件状态的一个集中反应的数据存储的地方就是日志服务器,用户可以根据需要做数据的查询统计等工作,及时了解各部分设备的运行状态。可以是通用的,也可以是专用的。

监控服务器监控就是指将远程服务器运行数据通过各种方式记录下来,并在需要时可以随时调用监控记录进行查看。

程序版本控制服务器也就是更新服务器,用来远程更新服务和版本软件控制服务。

虚拟服务器也称为vps(Virtual Private Service,虚拟专用业务)主机,简称为虚拟主机。

打印服务器提供简单而高效的网络打印解决方案。一端连接打印机,一端连接网络(交换机),打印服务器在网络中的任何位置,都能够很容易地为局域网内所有用户提供打印。连接局域网内的电脑无数量限制,极大地提高了打印机利用率,可以这样认为,打印服务器为每一个连接局域网内的电脑提供了一台打印机,实现了打印机共享功能 。

域控服务器是用语言软件集中管理的器件,能安全集中管理域中账户密码、管理策略等构成数据库,统一安全策略。

多媒体服务器:用户将数据转换成信息,并把信息送到需要者手中的装置。具有捕获、处理、管理和传递多媒体信息:文本、图像、音频和视频的功能。多媒体服务器在未来的各个领域中将会发挥越来越多的作用,而随着它的广泛的被应用,也会出现相应的信息管理问题。

通信服务器(Communication Server),是一个专用系统,为网络上需要通过远程通信链路传送文件或访问远地系统或网络上信息的用户提供通信服务。通信服务器根据软件和硬件能力为一个或同时为多个用户提供通信信道。

ERP服务器,用来统一管理金融,人事,财务等等一些服务。

**计算机网络存储**

**DAS存储**

直连式存储(Direct-Attached Storage,直连式存储与服务器主机之间的连接通道通常采用SCSI连接,随着服务器CPU的处理能力越来越强,存储硬盘空间越来越大,阵列的硬盘数量越来越多,SCSI通道将会成为IO瓶颈;服务器主机SCSI ID资源有限,能够建立的SCSI通道连接有限。

**NAS存储** NAS(Network Attached Storage)网络存储基于标准网络协议实现数据传输,为网络中的Windows / Linux / Mac OS 等各种不同操作系统的计算机提供文件共享和数据备份。

**SAN存储**

存储区域网络(Storage Area Network,简称SAN)采用网状通道(Fibre Channel ,简称FC,区别与Fiber Channel光纤通道)技术,通过FC交换机连接存储阵列和服务器主机,建立专用于数据存储的区域网络。SAN经过十多年历史的发展,已经相当成熟,成为业界的事实标准(但各个厂商的光纤交换技术不完全相同,其服务器和SAN存储有兼容性的要求)。

**操作系统**

操作系统是用户和计算机的接口,同时也是计算机硬件和其他软件的接口。操作系统的功能包括管理计算机系统的硬件、软件及数据资源,控制程序运行,改善人机界面,为其它应用软件提供支持,让计算机系统所有资源最大限度地发挥作用,提供各种形式的用户界面,使用户有一个好的工作环境,为其它软件的开发提供必要的服务和相应的接口等。实际上,用户是不用接触操作系统的,操作系统管理着计算机硬件资源,同时按照应用程序的资源请求,分配资源,如:划分CPU时间,内存空间的开辟,调用打印机等。

**ABI开发接口标准**

ABI不同于API ,API定义了源代码和库之间的接口,因此同样的代码可以在支持这个API的任何系统中编译 ,然而ABI允许编译好的目标代码在使用兼容ABI的系统中无需改动就能运行。 ABI掩盖了各种细节,例如:调用约定控制着函数的参数如何传送以及如何接受返回值;系统调用的编码和一个应用如何向操作系统进行系统调用;以及在一个完整的操作系统ABI中,对象文件的二进制格式、程序库等等。一个完整的ABI,像 Intel二进制兼容标准 (iBCS) ,允许支持它的操作系统上的程序不经修改在其他支持此ABI的操作系统上运行。其他的 ABI 标准化细节包括C++ name decoration和同一个平台上的编译器之间的调用约定,但是不包括跨平台的兼容性。在Unix的操作系统中,存在很多运行在同一件平台上互相相关但是不兼容的操作系统(尤其是80386兼容系统)。有一些努力尝试标准化A I,以减少销售商将程序移植到其他系统时所需的工作。然而,直到现在还没有很成功的例子,虽然LSB正在为Linux做这方面的努力

**编程语言**

编程语言(programming language),是用来定义计算机程序的形式语言。它是一种被标准化的交流技巧,用来向计算机发出指令。一种计算机语言让程序员能够准确地定义计算机所需要使用的数据,并精确地定义在不同情况下所应当采取的行动

低级语言:机器语言(machine language)是一种指令集的体系。这种指令集,称机器码(machine code),是电脑的CPU可直接解读的数据。

中级语言:汇编语言,C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

高级语言:高级语言(High-level programming language)相对于机器语言(machine language,是一种指令集的体系。这种指令集,称机器码(machine code),是电脑的CPU可直接解读的数据)而言。是高度封装了的编程语言,与低级语言相对。它是以人类的日常语言为基础的一种编程语言,使用一般人易于接受的文字来表示(例如汉字、不规则英文或其他外语),从而使程序编写员编写更容易,亦有较高的可读性,以方便对电脑认知较浅的人亦可以大概明白其内容。由于早期电脑业的发展主要在美国,因此一般的高级语言都是以英语为蓝本。在1980年代,当东亚地区开始使用电脑时,在日本、台湾及中国大陆都曾尝试开发用各自地方语言编写的高级语言,当中主要都是改编BASIC或专用于数据库数据访问的语言,但是随着编程者的外语能力提升,现时的有关开发很少。

**UNIX**

UNIX 是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统。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变种。它的最大的特点在于他是一个源代码公开的自由及开放源码的操作系统,其内核源代码可以自由传播。

**Mac OS X**

Mac OS是一套运行于苹果Macintosh系列电脑上的操作系统。Mac OS是首个在商用领域成功的图形用户界面。Macintosh组包括比尔·阿特金森(Bill Atkinson)、杰夫·拉斯金(Jef Raskin)和安迪·赫茨菲尔德(Andy Hertzfeld)。Mac OS X 于 2001年 首次在商场上推出。它包含两个主要的部分:Darwin,是以 BSD 原始代码和 Mach 微核心 为基础,类似 Unix 的开放原始码环境。

**Windows**

Windows是由微软公司成功开发的操作系统.Windows是一个多任务的操作系统,他采用图形窗口界面,用户对计算机的各种复杂操作只需通过点击鼠标就可以实现

**iOS**

OS操作系统是由苹果公司开发的手持设备操作系统。iOS与苹果的Mac OS X操作系统一样,它也是以Darwin为基础的,因此同样属于类Unix的商业操作系统。原本这个系统名为iPhone OS,直到2010年6月7日WWDC大会上宣布改名为iOS。截止至2011年11月,根据Canalys的数据显示,iOS已经占据了全球智能手机系统市场份额的30%,在美国的市场占有率为43%。

**Android**

Android是一种以Linux为基础的开放源代码操作系统,主要使用于便携设备。[8] Android操作系统最初由Andy Rubin开发,最初主要支持手机。2005年由Google收购注资,并组建开放手机联盟开发改良,逐渐扩展到平板电脑及其他领域上。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 2012年11月数据显示,Android占据全球智能手机操作系统市场76%的份额,中国市场占有率为90%。

**WP**

Windows Phone(简称:WP)是微软发布的一款手机操作系统,它将微软旗下的Xbox Live游戏、Xbox Music音乐与独特的视频体验集成至手机中。微软公司于2010年10月11日晚上9点30分正式发布了智能手机操作,系统Windows Phone,并将其使用接口称为“Modern”接口。2011年2月,“诺基亚”与微软达成全球战略同盟并深度合作共同研发。2011年9月27日,微软发布Windows Phone 7.5。2012年6月21日,微软正式发布Windows Phone 8,采用和Windows 8相同的Windows NT内核,同时也针对市场的Windows Phone 7.5发布Windows Phone 7.8。2014年4月2日,微软在旧金山召开Build2014开发者大会。大会上微软推出Windows Phone 8.1更新,2014年8月4日晚,微软正式向WP开发者推送了WP8.1 GDR1预览版,即WP8.1 Update。

**Chrome OS**

Chrome OS是由谷歌开发的一款基于Linux的操作系统,发展出与互联网紧密结合的云操作系统,工作时运行Web应用程序。谷歌在2009年7月7日发布该操作系统,并在2009年11月19日以Chromium OS之名推出相应的开源项目,并将Chromium OS代码开源。[10] Chrome OS同时支持Intel x86以及ARM处理器,软件结构极其简单,可以理解为在Linux的内核上运行一个使用新的窗口系统的Chrome浏览器。对于开发人员来说,web就是平台,所有现有的web应用可以完美的在Chrome OS中运行,开发者也可以用不同的开发语言为其开发新的web应用。

**开源协议**

![开源协议](/upload/otherpic62/6132055-5d3d1d8945640656%7Cp_w_picpathView2/2/w/1240)**开源协议**

**BSD**

BSD许可证原先是用在加州大学柏克利分校发表的各个4.4BSD/4.4BSD-Lite版本上面(BSD是Berkly Software Distribution的简写)的,后来也就逐渐沿用下来。1979年加州大学伯克利分校发布了BSD Unix,被称为开放源代码的先驱,BSD许可证就是随着BSD Unix发展起来的。BSD许可证被Apache和BSD操作系统等开源软件所采纳,相较于GPL许可证和MPL许可证的严格性,BSD许可证就宽松许多了,一样是只需要附上许可证的原文,不过比较有趣的是,它还要求所有进一步开发者将自己的版权资料放上去,所以拿到以BSD许可证发行的软件可能会遇到一个小状况,就是这些版权资料许可证占的空间比程序还大。

**QPL**

QPL是The Qt Public License的简称,是挪威一家机构创设的。QPL许可证的基本要求是获得源代码、修改源代码,并可将修改从原始代码中分离出来;修改可以按照作者的意愿被组合到新版本中;二进制代码可以和原始代码同名,这一点对于动态连接库来说尤其重要;任何人都可以修正错误,这对于系统的发布者来说很关键;修改过的软件可以按照满足QPL许可证基本要求的任何开源软件许可证进行发布。

**QNCL**

QNCL许可证是Qt Non Commercial License的简称,是QPL许可证的“兄弟版”,就像GPL许可证与LGPL许可证的关系一样,QNCL许可证比QPL许可证更严格一些。

**Jab**

Jabber许可证的全称是Jabber Open Source License,由美国Jabber.Com, Inc.公司提供。Jabber许可证在源代码的复制、发行规定方面基本上和其他许可证没有什么特别,但有一些细节规定值得借鉴:

◆ 可以将通过该许可证获得的源代码及修改过的源代码与其他类型的不受该许可证约束的代码结合,以新产品的形式发布,只要其中经该许可证获得的源代码及修改过的源代码能以与该许可证的要求类似的、符合OSI认证的其他开源软件许可证的方式发布。

◆ 明确了需将源代码置于公众可以得到的状态的时间至少应为12个月。

◆ 第三方对法定权利的声明。假如使用者发现通过本许可证获得的源代码及应用程序接口中有一方拥有的知识产权,应单独在源码的发布时冠以“LEGAL”为抬头的声明,写明知识产权权利要求的细节,提请源代码的接受者知道自己获得了哪些知识产权的授权,让源码的接受者知道如何与知识产权权利人联系。

◆ 细化了该许可证终止的情形,包括不按该许可证的要求发布和使用源代码、发生专利侵权诉讼。

**Com**

◆ 规定可以将源代码及修改过的源代码与其他类型的不受本许可证约束的代码结合,以新产品的形式发布,只要其中经该许可证获得的源代码及修改过的源代码能按该许可证的要求发布即可。

◆ 细化了该许可证终止的情形,包括发生专利侵权诉讼。

◆ 明确了一个独立承担责任的原则,就是假如按该许可证使用源代码的使用者将获得的源代码应用于商业使用,那么他就要对在商业应用中出现的由于使用该源代码程序而产生的侵权诉讼承担完全责任。这一条规定是比较特殊的,绝大多数开源软件许可证都不这么要求。

**IBM**

IBM许可证的全称是IBM Public License。在满足OSIA开源软件许可证认证标准的前提下,IBM许可证还有如下一些细节性规定:

◆ 明确了专利授权。一般的开源软件都明确源代码的版权人将自己的修改权、复制权等版权权利向公众许可,但保留署名权,而IBM许可证在此基础上还明确假如源代码中含有专利权,源代码专利权人将复制、使用的专有权利向公众许可。

◆ 细化了该许可证终止的情形,包括不按该许可证的要求发布和使用源代码、发生专利侵权诉讼等。

◆ 像Common许可证一样,IBM许可证也明确了独立承担责任原则,即假如按该许可证使用源代码的使用者将获得的源代码应用于商业使用,那么他就要对在商业应用中出现的、由于使用该源代码程序而产生的侵权诉讼承担完全责任。


网页标题:计算机基础知识
URL链接:http://myzitong.com/article/jejcpe.html