开放源代码软件的介绍

2024-05-09 15:36

1. 开放源代码软件的介绍

开放源码软件(open-source)是一个新名词,它被定义为描述其源码可以被公众使用的软件,并且此软件的使用,修改和分发也不受许可证的限制。开放源码软件通常是有copyright的,它的许可证可能包含这样一些限制: 蓄意的保护它的开放源码状态,著者身份的公告,或者开发的控制。“开放源码”正在被公众利益软件组织注册为认证标记,这也是创立正式的开放源码定义的一种手段。开放源码软件主要被散布在全世界的编程者队伍所开发,但是同时一些大学,政府机构承包商,协会和商业公司也开发它。源代码开放是信息技术发展引发网络革命所带来的面向未来以开放创新、共同创新为特点的、以人为本的创新2.0模式在软件行业的典型体现和生动注解。开放源码软件在历史上曾经与UNIX,Internet联系的非常紧密。在这些系统中许多不同的硬件需要支持,而且源码分发是实现交叉平台可移植性的唯一实际可行的办法。在DOS,Windows,Macintosh平台上仅仅有很少的用户有可用的编译器,开放源码软件更加不普遍。对开放源码开发模式的更详细的讨论请看Eric Raymond写的“The Cathedral and the Bazaar”。

开放源代码软件的介绍

2. 开放源代码软件的应用平台

 WEB服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息浏览服务。WWW 是 Internet 的多媒体信息查询工具,是 Internet 上近年才发展起来的服务,也是发展最快和目前用的最广泛的服务。正是因为有了WWW工具,才使得近年来 Internet 迅速发展,且用户数量飞速增长。开源的web服务器软件包括apache、kangle、nginx等。BlogBlog 全名Web log,中文意思是“网络日志”,后来缩写为Blog。它是继Email、BBS、IM之后出现的第四种网络交流方式,是网络时代的个人“读者文摘”,是以超级链接为武器的网络日记,是代表着新的生活方式和新的工作方式,更代表着新的学习方式。简言之,Blog 就是以网络作为载体,简易迅速便捷地发布自己的心得,及时有效轻松地与他人进行交流,再集丰富多彩的个性化展示于一体的综合性平台。开源的Blog软件有b2evolution(PHP+MySQL)、BLOG:CMS (PHP、基于Nucleus CMS)、BLOG:CMS (PHP、基于Nucleus CMS)等。论坛论坛又名网络论坛BBS,全称为Bulletin Board System(电子公告板)或者Bulletin Board Service(公告板服务)。是Internet上的一种电子信息服务系统。它提供一块公共电子白板,每个用户都可以在上面书写,可发布信息或提出看法。它是一种交互性强,内容丰富而即使的Internet电子信息服务系统。用户在BBS站点上可以获得各种信息服务,发布信息,进行讨论,聊天等等。开源的论坛应用软件包括phpbb、BMForum、phpwind[等。 应用服务器定是指通过各种协议把商业逻辑曝露给客户端的程序。它提供了访问商业逻辑的途径以供客户端应用程序使用。应用服务器使用此商业逻辑就像调用对象的一个方法一样。简单的说能实现动态网页技术的服务器叫做应用服务器。开源的应用服务器软件包括Enhydra (Java)、JBoss (Java)、Open3 (XML)等。 消息服务器作为网络的节点,专门用来存储、转发网络上的数据、信息(例如:聊天信息)。做一个形象的比喻:消息服务器就像是邮局的交换机,而微机、笔记本、PDA、手机等固定或移动的网络终端,就如散落在家庭、各种办公场所、公共场所等处的电话机。我们与外界日常的生活、工作中的电话交流、沟通,必须经过交换机,才能到达目标电话;同样如此,我们利用个人电脑,PDA,手机等,发送消息,也必须经过消息服务器,因此也可以说是消息服务器在“组织”和“领导”这些接收消息设备。开源的消息服务器软件包括ArsDigita (Tcl & Java)、Exolab Group (J2EE,整合OpenEJB,OpenJMS,OpenORA,Tyrex)、Zend (PHP)等。 企业应用程序是一个泛指的概念,细分下来可分为企业资源计划(ERP)、客户关联管理、项目管理、内容管理、人力资源管理、自动化采购软件、信息仓库(CIW)、生产计划、库存管理、群组软体、B2B和图书馆资源整合系统(ILS)。开源的企业应用程序包括Compiere (ERP+CRM)、Compiere、Gnome Planner 、ArsDigita、phpgroupware、J2EE、Akopia、Compiere (ERP+CRM)、openapplications、OpenBiblio等。 所谓无线网络,既包括允许用户建立远距离无线连接的全球语音和数据网络,也包括为近距离无线连接进行优化的红外线技术及射频技术,与有线网络的用途十分类似,最大的不同在于传输媒介的不同,利用无线电技术取代网线,可以和有线网络互为备份。开源的无线应用程序有kannel、Jwap、Ophelia等。 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。开源的数据库软件有BerkelayDB、MySQL、SQLite等。 “桌面环境”可能仅仅是一个简单的窗口管理器,也可能是一个像 KDE 或者 GNOME这样的完整桌面应用程序套件。开源的桌面环境类软件包括GNOME、GNUstep、KDE等。窗口管理类窗口管理,又名用户界面,电子计算机系统中实现用户与计算机信息交换的软件、硬件部分。软件部分包括用户与计算机信息交换的约定、操作命令等处理软件,硬件部分包括输入装置和输出装置。目前常用的是图形用户界面,它采用多窗口系统,显示直接形象,操作简便。开源的窗口管理类软件有Afterstep、Twm、fvwm、Window Maker等。CD刻录类CD刻录机的功能是:可以刻录CD,读取CD,但是却无法读取/写入DVD,功能上次于COMBO,又次于DVD刻录机。现在多数人使用的是DVDROM,COMBO,DVD刻录机。性能方面:读取——CDROM=CD刻录机<DVDROM=COMBO=DVD刻录机;写入——CD刻录机<COMBO<DVD刻录机。开源的CD刻录软件有CD Record、Freeburn、Xfburn等。文件编辑类文件编辑类软件是一个泛指的概念,细分下来包括办公软件套件、记事本、PDF相关软件、科技文本编辑器、文本编辑器、WYSIWYG和文件处理。开源的文件编辑类软件包括Gnome Office、KeyNote、FPDF、GNU TeXmacs、FreeDOS edlin、HTMLarea、AbiWord等。教育类软件教育类软件是一个泛指的概念,细分下来包括学习支持软件、语言相关软件、数学相关软件、科学研究软件、打字软件和其他教育软件。开源的教育类软件包括ILIAS、FlashKard、KBruch、BioJava、GNU Typist、KEduca等。金融相关软件从广义上说,政府、个人、组织等市场主体通过募集、配置和使用资金而产生的所有资本流动都可称之为金融。因此,不仅是金融业者,有关政府的财政,行业企业的行为、以及个人的理财都是金融的一部分。开源的金融相关软件有GnuCash、JCash、JMoney等。游戏类软件游戏有很多种,在不同的媒体会以不同型式出现,使用的道具或参与的人数不一样也会衍生出不同类型的游戏。其中包括:人手游戏、桌上游戏、版图游戏、纸上游戏、纸牌游戏、群体游戏、电子游戏、角色扮演游戏、益智类游戏和其他。开源的游戏类软件有Abuse、Falcon's Eye、Java Risk、UFO2000、XulMine等。网络软件网络及因特网类软件是一个泛指的概念,细分下来包括电子邮件、即时通讯软件、通讯相关软件、文件传输软件、P2P文件共享软件、远程登录、网页浏览器、Webcam、Webgrabber、网络相关软件和其他网络软件。络及因特网类软件有Magic Mail Monitor 3、AMSN、Slrn、Samba、eMule、RealVNC、Galeon、Dorgem、HTTrack、Apache Tomcat、OpenLDAP等。数学软件类是专门用来进行数学运算、数学规划、统计运算、工程运算、绘制数学图形或制作数学动画的软件。开源的数学类软件包括GAP、MAⅪMA、SINGULAR等。媒体类体类软件是一个泛指的概念,细分下来包括音频编辑软件/音频管理软件、图形类/图片浏览类、媒体播放器类、视频剪辑类。源的媒体类软件包括CD-DA X-Tractor、GOCR/JOCR、JCDSee、CoolPlayer、GNU VCDImager等。操作系统类操作系统(英语:Operating System,简称OS)是一管理电脑硬件与电脑软件资源的程序,同时也是计算机系统的核心与基石。操作系统身负诸如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网上与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作接口。开源的操作系统类软件有开源Unix(System V/BSD)、FreeDOS、Linux、Menuet等。密码管理类围绕用户账号密码安全和管理的软件或者硬件的集合。开源的密码管理类软件包括Password Safe、PINs等。个人信息管理类个人信息管理系统是一种提供个人信息组织管理功能的应用软件。其目的是为了便于记录、跟踪和管理各种个人信息。开源的个人信息管理类软件有Elephant Memory、KAddressbook、KOrganizer等。编程语言类计算机语言的种类非常的多,总的来说可以分成机器语言,汇编语言,高级语言三大类。如果按语种分,可以分为英文符号语言和汉语符号语言两类。(典型的如:易语言、易语言.飞扬) 电脑每做的一次动作,一个步骤,都是按照已经用计算机语言编好的程序来执行的,程序是计算机要执行的指令的集合,而程序全部都是用我们所掌握的语言来编写的。所以人们要控制计算机一定要通过计算机语言向计算机发出命令。目前通用的编程语言有两种形式:汇编语言和高级语言。开源的编程语言类软件包括DJGPP、GCC、Open64、Objective CAML、PHP等。屏幕保护软件屏幕保护程序是电脑程序,原意是通过将画面空白,或在画面上填满移动的图像,避免电脑显示器在静止的情况下产生磷质烙印,从而减低其寿命。现在,屏幕保护程序被用作娱乐或保安用途。开源的屏幕保护软件有Flurry、KISS Image Screen Saver、Really Slick Screensavers、xmatrix等。安全软件安全软件是一个泛指的概念,细分下来包括杀毒软件、加密软件、防火墙、SSH、其他安全软件。开源的安全软件包括Open Antivirus、GnuPG、Coyote Linux、OpenSSH、Stunnel等。其他软件下面列举一些难于分类的开源软件:Active2AstroGrep — 有GUI图形界面的GrepAutopackage — Linux上的软件包管理系统BibleTime — 圣经学习软件Bochs — PC积累器Cygwin — Win32的开源Unix模拟环境Link Checker — 检查HTML文档的坏连接Memtest86 — 内存检查软件Open Scene GraphSun Grid Engine —计算机集群软件TeX — 排版系统Vitrite — Windows 2000/XP 上使窗口透明的软件WINE — 在Linux/BSD上运行Windows软件XFree86 — 视窗系统gEDA自动化电器设计工具GPAI 通用公共人工智能平台

3. 开放源代码的介绍

开放源代码(Open source code)也称为源代码公开,指的是一种软件发布模式。一般的软件仅可取得已经过编译的二进制可执行档,通常只有软件的作者或著作权所有者等拥有程序的原始码。有些软件的作者会将原始码公开,此称之为“源代码公开”,但这并不一定符合“开放原代码”的定义及条件,因为作者可能会设定公开原始码的条件限制,例如限制可阅读原始码的对象、限制衍生品等。

开放源代码的介绍

4. 开放源代码软件如何生存的

开放源码软件《open-source》是一个新名词,它被定义为描述其源码可以被公众使用的软件,并且此软件的使用,修改和分发也不受许可证的限制。 开放源码软件主要被散布在全世界的编程者队伍所开发,但是同时一些大学,政府机构承包商,协会和商业公司也开发它。开放源码软件在历史上曾经与UNIX,Internet联系的非常紧密。在这些系统中许多不同的硬件需要支持,而且源码分发是实现交叉平台可移植性的唯一实际可行的办法。在DOS,Windows,Macintosh平台上仅仅有很少的用户有可用的编译器,开放源码软件更加不普遍。对开放源码开发模式的更详细的讨论请看Eric Raymond写的“The Cathedral and the Bazaar”。              使用Open-Source的优点 
  降低风险:拥有源代码使顾客们可以控制那些他们的业务所赖以生存的工具。当一个open-source产品的开发者提高价格,增加了难以接收的限制,或者使用了一些使顾客不满意的方法,另一个不同的组织将使用该源代码开始开发新的产品以解决原来机构的问题。顾客也能自己维护或找别人改进它以达到自己的要求。顾客控制软件,这在传统私有软件模式下是闻所未闻的事情。即使是一些财大气粗的顾客也可能缓解由于传统软件商自己内部的问题而导致严重的金融危机或公司被别的公司收购的风险。 
  质量:一些研究已经显示了open-source软件与别的可比商业软件具有可靠性上的极大优势。更加有效的开发模式,更多的独立同行对代码和设计的双重审查,以及大部分作者对自己作品的极大荣誉感,都对其优良的质量有所贡献。一些公司甚至给予发现Bug者以物质奖励。 
  透明度:私有软件有很多“阴暗的死角”,隐藏著许多Bug。源码对于查错和理解产品工作原理来说是很重要的。在大的软件公司,只有极少数人能接触到源码,而这些能接触源码的人通常用户都无法直接接触。能接触源码对于修补安全漏洞来说,也是非常重要的。 
  正确的特性:一些开放源码的产品--包括上面列举的一些产品--是如此成功,以至于其商业竞争者无法存活。 
  剪裁:开放源码给用户极大自由,使他们能够按照自己的业务需求定制软件。大型组织能从即使很小的定制行为中削减大量开支和人力成本。用户的挑错和改进反过来对标准开放源码软件包也是个贡献。这在传统的私有软件开发中是不可能得到的。 
  有利的版权许可和价格:定义为开放源码使得软件在版权许可方面比私有软件具有更大的灵活性。这可以大大削减更多安装带来的花费和时间,对那些采购过程费时费力的机构更加有利。它也能给用户安装软件以更大的自由度。 
  什么时候不使用开放源码软件 
  错误的特性:如果一个开放源码产品不能很好地满足一个组织的需求,而另外的一个私有软件却可以,并且得到一个满足特性的私有软件的成本比再开发修改一个开放源码产品的成本高的话,最好不使用开放源码软件。但参考上面的“剪裁”。 
  支持: 一些open-source软件传统的付费支持和电话支持。事实上,无论怎样,这都没有一个既没有源代码且无支持的产品严重。请看支持和open source软件一节。 
  错误的平台:大部分open-source软件主要是支持UNIX和Linux系统的,有时也支持Windows NT。另一些平台,例如大型机,对于移植开放源码软件是个巨大挑战。移植软件从UNIX到Windows NT上要付出很大代价。然而。开放源码的优点几乎可以使平台转换显得更划算。 
  缺乏技术人员:安装open-source软件有时需要一些更多的技术经验,例如,可以配置或编译源代码的能力。有源代码的优点在一些没有软件开发专家的公司被降低了。open-source的定制也要求有配置管理经验。无论如何,那些充分具有上述技术能力的任何组织都会很好地享受open-source的优点。 
  惰性:如果现存的所有系统都被很好的支持并完成,就没有必要去改变它们。然而,时常的去检讨这个决定是很重要,因为新技术经常会使它们变得过时。 
  值得怀疑的避免open-source软件的原因 
  这些论据常被作为避免使用open-source软件的借口,但是通常经不起推敲。 
  ---对未知的恐惧。 
  正如你在上面的“open-source软件的例子”一节所看到的,许多的组织已经严重的依赖open-source软件,不管他们的决策者是否意识到这一点。这个问题由于open-source开发者宣传和使用市场的增加,以及更多的拥护者的出现变得比较容易解决。 
  ---在购买商业软件包上我们已经拥有巨大的投资。 
  这仅仅是“必然花费谬误”的一种形式。软件许可证,好像为写字楼付的租金,是一些消费,但不是投资。如果别的产品能很好的以较低的成本实现你的组织的需要,那么过去把钱花费在低级的软件上对 
  决策不应该产生影响。记住,你可能面临严重的政治上的反对,它来自于那些选择了赞成使用昂贵的,低级的产品,而不愿意承认他们的错误的守旧者。同时,考虑到它们可能被再次扩展,在训练职员和相关基础设施上的投资是完全合理的。 
  ---如果出了问题,我们需要有人负责。 
  尽管理论上这听起来很合理,但如果我们一开始就使用可信赖的软件产品,远比在遭受经济损失之后才去控告软件供应商要好的多。几乎所有的主要软件公司都利用最终用户许可证的支持来解决一些由于他们软件的问题而带来的可能要负责的困扰。Microsoft和IBM公司有著庞大的,一流的法律职员,使得顾客的控诉不可能成功。在将来法律可能会越来越偏向软件供应商。 
  open-source和软件技术支持 
  商业支持和同几乎是那些正在使用open-source软件的公司最关心的问题了。付费支持是正当的问题,但是这对于open-source产品通常是可用的,而且一般都过高估计了它的重要性。 
  ---许多主要的open-source产品都有可用的技术支持合同。 
  例如,Red Hat 和Caldera公司对他们销售的linux有电话支持。 Cygnus,Collective Technologies和许多小的顾问公司靠支持和增强open-source软件,生意也做的不错。而且越来越多的open-source软件在保持其开放源码状态的同时,也获得了大量商业维护和支持。 
  ---电子邮件和Usenet新闻支持时非常有效的。 
  几乎所有开发open-source软件的组织都提供免费的电子邮件支持,提供邮件列表和Usenet新闻组。这些机制比电话支持更加实际有效。在一个有许多软件供应商所支持的调查中,“Linux用户协会”在1997年获得“最好的技术支持奖”,同时也暴露了许多对传统的软件开发商的服务质量的大量不满意见。 
  ---对传统商业软件的支持经常是有限的并且是低质量的。 
  例如Microsoft公司仅仅提供了为它的所有产品仅仅提供了一个技术支持电话号码:900。许多市场商业销售支持人员把注意力集中在帮助初学者上手上,无法回答使用手册上没有包括的问题。许多软件公司认为传统的电话支持是很昂贵的代价,而因此消减它,这就导致了质量下降。 
  Netscape的发展趋势 
  一个著名的计算机工业杂志报道Netscape是“受大量免费和共享软件许可的启发”。事实上,Netscape正在与许多著名的UNIX自由软件开发者互通信息,现在看起来已经非常接近BSD和GPL许可证了。Nescape Public License和GPL有所不同,它使得Nescape对源码的开发和商标上有更多的控制。 
  Netscape的弃子战术是很聪明的。首先,浏览器的销售在Netscape的业务中已经只占很少一部分了。浏览器的开放源码状态不会对它有太大的冲击,另外有些想要正式技术支持的买家仍然愿意付钱。第二,它真正按照某个开放源码的许可证发放,从而完全改变了Microsoft免费派送Explorer造成的被动局面。这将有助于提高Nescape浏览器的市场份额。最后,Netscape的立场从开放源码社群中获得了友谊,信任度和潜在的巨大革新。Netscape的未来还不能让人放心,尤其是在NT的Web服务器上;但它为Communicator采用的勇敢的、戏剧性的许可证政策不会带来任何损失。

5. 开放源代码的简介

开放源代码(英语:Open Source)描述了一种在产品的出品和开发中提供最终源材料的做法。一些人将开放源代码认为是一种哲学思想,另一些人则把它当成一种实用主义。在这个词广泛使用前,开发者和生产者使用很多词去描述这个概念;开放源代码在互联网上获得广泛使用,参加者需要大量更新电脑源代码。开放源代码使得生产模块、通信管道、交互社区获得改善。随后,一个新著作权、软件授权条款、域名和消费者提供创建的,一个新词开源软件诞生。 开源模型概念包括同时间不同时程和方法来生产,相对而言,更加集中式的软体设计模型,例如典型的商业软体公司。一个开源软体开发的主要原则和惯例是易货贸易和合作的同侪生产,经由免费公开的最终产品、原始信息、蓝图和文件。这逐渐应用在其它领域,例如生物技术。 开放源代码软件就是在开放源代码许可证下发布的软件,以保障软件用户自由使用及接触源代码的权利。这同时也保障了用户自行修改、复制以及再分发的权利。简而言之,所有公布软件源代码的程序都可以称为开放源代码软件。 开放源代码有时不仅仅指开放源代码软件,它同时也是一种软件开放模式的名称。使用开放源代码开放模式的软件代表就有GNU/Linux操作系统。 严格地说来,开放源代码软件与自由软件是两个不同的概念,只要符合开源软件定义的软件就能被称为开放源代码软件(开源软件)。自由软件是一个比开源软件更严格的概念,因此所有自由软件都是开放源代码的,但不是所有的开源软件都能被称为“自由”。但在现实上,绝大多数开源软件也都符合自由软件的定义。比如,遵守GPL的软件都是开放的并且是自由的。 开放源代码软件运动是一个主要由程序工程师及其它电脑用户参与的声势浩大的运动。它是自由软件运动的一个分支,但两者的差别并不明显。一般而言,自由软件运动是基于政治及哲学思想(有时被称为所谓黑客文化)的理想主义运动,而开放源代码运动则主要注重程序本身的质量提升。

开放源代码的简介

6. 什么是开源(开放源代码)?


7. 什么是开源(开放源代码)?

一般的软件仅可取得已经过编译的二进制可执行档,通常只有软件的作者或著作权所有者等拥有程式的源代码。有些软件的作者会将源码公开,此称之为“源码公开”,但这并不一定符合“开放源代码”的定义及条件,因为作者可能会设定公开源代码的条件限制,例如限制可阅读源代码的对象、限制衍生品等。
开源即开放源代码(英文:Open Source)指一种软件散布模式。一般的软件仅可取得已经过编译的二进制可执行档,通常只有软件的作者或著作权所有者等拥有程式的源代码。

什么是开源(开放源代码)?

8. 什么是开放源代码?

开放源代码也称为源代码公开,指的是一种软件发布模式。
一般的软件仅可取得已经过编译的二进制可执行档,通常只有软件的作者或著作权所有者等拥有程序的原始码。
有些软件的作者会将原始码公开,此称之为“源代码公开”,但这并不一定符合“开放源代码”的定义及条件,因为作者可能会设定公开原始码的条件限制,例如限制可阅读原始码的对象、限制衍生品等。


扩展资料
开放源代码软件就是在开放源代码许可证下发布的软件,以保障软件用户自由使用及接触源代码的权利。这同时也保障了用户自行修改、复制以及再分发的权利。
简而言之,所有公布软件源代码的程序都可以称为开放源代码软件。开放源代码有时不仅仅指开放源代码软件,它同时也是一种软件开放模式的名称。使用开放源代码开放模式的软件代表就有GNU/Linux操作系统。
严格地说来,开放源代码软件与自由软件是两个不同的概念,只要符合开源软件定义的软件就能被称为开放源代码软件(开源软件)。
参考资料来源:百度百科-开放源代码
最新文章
热门文章
推荐阅读