Saturday, October 27, 2007

[转] Linux以及各大发行版介绍



Linux以及各大发行版介绍 - 站长资讯




Linux以及各大发行版介绍


日期:2005-09-05 点击:2681 作者: 来源:




什么是Linux?

也许很多人会不屑的说,Linux不就是个操作系统么。错!Linux不是一个操作系统,严格来讲,Linux只是一个操作系统中的内核。内核是什么?内核建立了计算机软件与硬件之间通讯的平台,内核提供系统服务,比如文件管理、虚拟内存、设备I/O等。

既然Linux只是一个内核。那么我们通常所说的Linux操作系统又是什么?我们通常所说的Linux,指 GNU/Linux ,即采用Linux内核的GNU操作系统。是的,操作系统的实际名称是GNU。什么是GNU?GNU代表GNU’s Not Unix。可以说是一个操作系统又可以说是一种规范。比如,众所周知的PHP,原名为Personal HomePage(个人主页),根据GNU的软件命名规则,PHP现已更名为PHP: Hypertext Preprocessor(超文本预处理程序)。

谁编写/创造了Linux?

Linux最早由Linus Torvalds在1991年开始编写。在这之前,Richard Stallman创建了Free Software Foundation(FSF)组织以及GNU项目,并不断的编写创建GNU程序(程序的许可方式均为GPL: General Public License)。在不断的有程序员和开发者加入到GNU组织中后,变造就了今天我们所看到的Linux,或称GNU/Linux。

什么是Linux发行版?


如之前所说的,Linux只是一个内核。然而,一个完整的操作系统不仅仅是内核而已。所以,许多个人、组织和企业,开发了基于GNU/Linux的
Linux发行版。这其中最著名的便是Red Hat公司的Red Hat系列以及社区(community)组织的Debian系列。

下面我就简单得介绍一下目前比较著名、流行的Linux发行版本。部分资料来源:DistroWatch.com

Mandriva
http://www.noobu.com/img/linux_distro/mandrake.png

Mandriva
原名Mandrake,最早由Gaël
Duval创建并在1998年7月发布。记得前两年国内刚开始普及Linux时,Mandrake非常流行。说起Mandrake的历史,其实最早
Mandrake的开发者是基于Redhat进行开发的。Redhat默认采用GNOME桌面系统,而Mandrake将之改为KDE。而由于当时的
Linux普遍比较难安装,不适合第一次接触Linux的新手,所以Mandrake还简化了安装系统。我想这也是当时Mandrake在国内如此红火的
原因之一。Mandrake在易用性方面的确是下了不少功夫,包括默认情况下的硬件检测等。

Mandrake的开发完全透明化,包括“cooker”。当系统有了新的测试版本后,便可以在cooker上找到。之前Mandrake的新版本的发布速度很快,但从9.0之后便开始减缓。估计是希望能够延长版本的生命力以确保稳定和安全性。

优点:友好的操作界面,图形配置工具,庞大的社区技术支持,NTFS分区大小变更
缺点:部分版本bug较多,最新版本只先发布给Mandrake俱乐部的成员
软件包管理系统:urpmi (RPM)
免费下载:FTP即时发布下载,ISO在版本发布后数星期内提供
官方主页:http://www.mandrivalinux.com/

Red Hat
http://www.noobu.com/img/linux_distro/fedora.png


内,乃至是全世界的Linux用户所最熟悉、最耳闻能详的发行版想必就是Red Hat了。Red Hat最早由Bob Young和Marc
Ewing在1995年创建。而公司在最近才开始真正步入盈利时代,归功于收费的Red Hat Enterprise Linux(RHEL,Red
Hat的企业版)。而正统的Red Hat版本早已停止技术支持,最后一版是Red Hat 9.0。于是,目前Red Hat分为两个系列:由Red
Hat公司提供收费技术支持和更新的Red Hat Enterprise Linux,以及由社区开发的免费的Fedora Core。Fedora
Core
1发布于2003年年末,而FC的定位便是桌面用户。FC提供了最新的软件包,同时,它的版本更新周期也非常短,仅六个月。目前最新版本为FC
3,而FC4也预定将于今年6月发布。这也是为什么服务器上一般不推荐采用Fedora Core。

适用于服务器的版本是Red Hat Enterprise Linux,而由于这是个收费的操作系统。于是,国内外许多企业或空间商选择CentOS。CentOS可以算是RHEL的克隆版,但它最大的好处是免费!菜鸟油目前的服务器便采用的CentOS 3.4。

优点:拥有数量庞大的用户,优秀的社区技术支持,许多创新
缺点:免费版(Fedora Core)版本生命周期太短,多媒体支持不佳
软件包管理系统:up2date (RPM), YUM (RPM)
免费下载:是
官方主页:http://www.redhat.com/

SUSE
http://www.noobu.com/img/linux_distro/suse.png

SUSE是德国最著名的Linux发行版,在全世界范围中也享有较高的声誉。SUSE自主开发的软件包管理系统YaST也大受好评。SUSE于2003年年末被Novell收购。

SUSE之后的发布显得比较混乱,比如9.0版本是收费的,而10.0版本(也许由于各种压力)又免费发布。这使得一部分用户感到困惑,也转而使用其它发行版本。但是,瑕不掩瑜,SUSE仍然是一个非常专业、优秀的发行版。

优点:专业,易用的YaST软件包管理系统
缺点:FTP发布通常要比零售版晚1~3个月
软件包管理系统:YaST (RPM), 第三方APT (RPM) 软件库(repository)
免费下载:取决于版本
官方主页:http://www.suse.com/

Debian GNU/Linux
http://www.noobu.com/img/linux_distro/debian.png

Debian
是菜鸟油服务器之前所采用的操作系统。Debian最早由Ian
Murdock于1993年创建。可以算是迄今为止,最遵循GNU规范的Linux系统。Debian系统分为三个版本分支(branch):
stable, testing 和 unstable。截至2005年5月,这三个版本分支分别对应的具体版本为:Woody, Sarge 和
Sid。其中,unstable为最新的测试版本,其中包括最新的软件包,但是也有相对较多的bug,适合桌面用户。testing的版本都经过
unstable中的测试,相对较为稳定,也支持了不少新技术(比如SMP等)。而Woody一般只用于服务器,上面的软件包大部分都比较过时,但是稳定
和安全性都非常的高。菜鸟油之前所采用的是Debian Sarge。

为何有如此多的用户痴迷于Debian呢(包括笔者在内)?
apt-get /
dpkg是原因之一。dpkg是Debian系列特有的软件包管理工具,它被誉为所有Linux软件包管理工具(比如RPM)最强大的!配合apt-
get,在Debian上安装、升级、删除和管理软件变得异常容易。许多Debian的用户都开玩笑的说,Debian将他们养懒了,因为只要简单得敲一
下”apt-get upgrade && apt-get update”,机器上所有的软件就会自动更新了……

优点:遵循GNU规范,100%免费,优秀的网络和社区资源,强大的apt-get
缺点:安装相对不易,stable分支的软件极度过时
软件包管理系统:APT (DEB)
免费下载:是
官方主页:http://www.debian.org/

Ubuntu
http://www.noobu.com/img/linux_distro/ubuntu.png


者的桌面电脑便使用的Ubuntu。依照笔者的理解,简单而言,Ubuntu就是一个拥有Debian所有的优点,以及自己所加强的优点的近乎完美的
Linux操作系统。:)
Ubuntu是一个相对较新的发行版,但是,它的出现可能改变了许多潜在用户对Linux的看法。也许,从前人们会认为Linux难以安装、难以使用,但
是,Ubuntu出现后,这些都成为了历史。Ubuntu基于Debian
Sid,所以这也就是笔者所说的,Ubuntu拥有Debian的所有优点,包括apt-get。然而,不仅如此而已,Ubuntu默认采用的GNOME
桌面系统也将Ubuntu的界面装饰的简易而不失华丽。当然,如果你是一个KDE的拥护者的话,Kubuntu同样适合你!

Ubuntu
的安装非常的人性化,只要按照提示一步一步进行,安装和Windows同样简便!并且,Ubuntu被誉为对硬件支持最好最全面的Linux发行版之一,
许多在其他发行版上无法使用,或者默认配置时无法使用的硬件,在Ubuntu上轻松搞定。并且,Ubuntu采用自行加强的内核(kernel),安全性
方面更上一层楼。并且,Ubuntu默认不能直接root登陆,必须从第一个创建的用户通过su或sudo来获取root权限(这也许不太方便,但无疑增
加了安全性,避免用户由于粗心而损坏系统)。Ubuntu的版本周期为六个月,弥补了Debian更新缓慢的不足。

优点:人气颇高的论坛提供优秀的资源和技术支持,固定的版本更新周期和技术支持,可从Debian Woody直接升级
缺点:还未建立成熟的商业模式
软件包管理系统:APT (DEB)
免费下载:是
官方主页:http://www.ubuntulinux.org/

Gentoo
http://www.noobu.com/img/linux_distro/gentoo.png

Gentoo
最初由Daniel Robbins(前Stampede
Linux和FreeBSD的开发者之一)创建。由于开发者对FreeBSD的熟识,所以Gentoo拥有媲美FreeBSD的广受美誉的ports系统
——portage。(Ports和Portage都是用于在线更新软件的系统,类似apt-get,但还是有很大不同)Gentoo的首个稳定版本发布
于2002年。

Gentoo的出名是因为其高度的自定制性:因为它是一个基于源代码的(source-based)发行版。尽管安装
时可以选择预先编译好的软件包,但是大部分使用Gentoo的用户都选择自己手动编译。这也是为什么Gentoo适合比较有Linux使用经验的老手使用
的原因。但是要注意的是,由于编译软件需要消耗大量的时间,所以如果你所有的软件都自己编译,并安装KDE桌面系统等比较大的软件包,可能需要几天时间才
能编译完……

优点:高度的可定制性,完整的使用手册,媲美Ports的Portage系统,适合“臭美”的高手使用^^
缺点:编译耗时多,安装缓慢
软件包管理系统:Portage (SRC)
免费下载:是
官方主页:http://www.gentoo.org/

Slackware
http://www.noobu.com/img/linux_distro/slackware.png

Slackware
由Patrick
Volkerding创建于1992年。算起来应当是历史最悠久的Linux发行版。曾经Slackware非常的流行,但是当Linux越来越普及,用
户的技术层面越来越广(更多的新手)后,Slackware渐渐的被新来的人们所遗忘。在其他主流发行版强调易用性的时候,Slackware依然固执的
追求最原始的效率——所有的配置均还是要通过配置文件来进行。

尽管如此,Slackware仍然深入人心(大部分都是比较有经验的
Linux老手)。Slackware稳定、安全,所以仍然有大批的忠实用户。由于Slackware尽量采用原版的软件包而不进行任何修改,所以制造新
bug的几率便低了很多。Slackware的版本更新周期较长(大约1年),但是新版本的软件仍然不间断的提供给用户下载。

优点:非常稳定、安全,高度坚持UNIX的规范
缺点:所有的配置均通过编辑文件来进行,自动硬件检测能力较差
软件包管理系统:Slackware Package Management (TGZ)
免费下载:是
官方主页:http://www.slackware.com/

Knoppix
http://www.noobu.com/img/linux_distro/knoppix.png


德国的Klaus Knopper开发的Knoppix,是一个基于Debian的发行版。Knoppix严格算起来是一款LiveCD
Linux,所谓的LiveCD就是整个操作系统都在一张光盘上,只要开机从光盘启动,就能拥有一个完整的Linux系统!无需安装!当然,
Knoppix也能够非常轻松的安装到硬盘上。其强大的硬件检测能力、系统修复能力、即时压缩传输技术,都令人大加称赞。可以说,在LiveCD界,
Knoppix是无人能及的!

优点:无需安装可直接运行于CD上,优秀的硬件检测能力,可作为系统急救盘使用
缺点:LiveCD由于光盘的数据读取速度限制导致性能大幅下降
软件包管理系统:APT (DEB)
免费下载:是
官方主页:http://www.knoppix.com/

MEPIS
http://www.noobu.com/img/linux_distro/mepis.png

MEPIS
由Warren
Woodford在2003年建立。MEPIS虽然刚建立不久,但是迅速的传播在Linux用户间。简单来说,MEPIS是一个集合了Debian
Sid和Knoppix的产物。用户即能将之当作LiveCD使用,也能使用常规的图形界面进行安装。

MEPIS默认集成安装了
Java Runtime
Environment、Flash插件、nVidia加速驱动等许多常用的程序。用户可以非常轻松的安装完系统后就直接开始使用,而不用到处寻找资料如
何下载、如何安装、如何配置这些软件。这不仅给Linux新手带来了便捷,也给老手们节约了相当多的时间。

优点:LiveCD与常规安装两用,优秀的硬件检测能力,预装了许多实用的软件
缺点:建立时间不长,默认的界面有些寒酸
软件包管理系统:APT (DEB)
免费下载:是
官方主页:http://www.mepis.org/

Xandros
http://www.noobu.com/img/linux_distro/xandros.png

Xandros
建立在已经成为历史的Corel Linux之上。当初Corel Linux的公司由于财政上的困难,被迫终止了Corel
Linux的开发,而Xandros适时的将Corel Linux部门买下,于2002年10月推出全新的Xandros Desktop。

Xandros的卖点在于极其简单的安装和使用,所以它的市场定位是那些没有任何Linux使用经验的新手,或是习惯使用Windows的用户。Xandros的标准版和增强版都是商业软件,分别售价$40和$99美元。不过你仍然可以在这里下载到免费的公开发行版。

优点:适合完全没有经验的新手,安装完以后就能立即投入使用,自带非常不错的工具
缺点:商业软件
软件包管理系统:Xandros Networks (DEB) 或 APT (DEB) (可选,但不提供技术支持)
免费下载:公开发行版
官方主页:http://www.xandros.com/

FreeBSD
http://www.noobu.com/img/linux_distro/freebsd.png

首先要强调的是:FreeBSD不是一个Linux系统!
可是,为什么笔者要介绍FreeBSD呢?因为FreeBSD的用户也相当多,其许多特性都与Linux相类似。事实上,Linux和BSD
(Berkeley Software
Distribution)均是UNIX的演化分支。并且,Linux中相当多的特性和功能(比如用于配置DNS的Bind软件)都是取自于BSD的。而
FreeBSD便是BSD家族中最出名,用户数量最多的一个发行版。MEZOC之前所采用的便是FreeBSD系统。

FreeBSD
建立于1993年,拥有相当长的历史。FreeBSD拥有两个分支:stable和current。顾名思义,stable是稳定版,而current则
是添加了新技术的测试版。另外,FreeBSD会不定期的发布新的版本,称为RELEASE,stable和current均有自己的RELEASE版
本。比如4.11-RELEASE和5.3-RELEASE,请注意,这并不代表后者比前者的版本新。这仅仅代表前者(数字小的版本)是stable版
本,后者(数字大的版本)是current版本。

FreeBSD除了作为服务器系统外,也适合桌面用户。不过,考虑到软件方面的兼容
性,一般用户选择FreeBSD作为桌面系统不是很明智。作为服务器而言,FreeBSD是相当优秀的。曾经有人说过,同样的服务器硬件配置,运行同样的
一个vBulletin论坛,FreeBSD所用的资源要比Linux少。这也是为什么许多空间商极力推崇FreeBSD的原因。:)

优点:速度快,非常稳定,优秀的使用手册,Ports系统
缺点:比起Linux而言对硬件的支持较差,对于桌面系统而言软件的兼容性是个问题
软件包管理系统:Ports (TBZ)
免费下载:是
官方主页:http://www.freebsd.org/

以上介绍了目前较为流行的各Linux发行版本,希望对大家有所帮助。同时,笔者也希望越来越多的朋友投入到Linux的大家庭中!


Thursday, January 19, 2006

【转】BlogJava - yanzhicun - 收集Eclipse插件网站

BlogJava - yanzhicun - 收集Eclipse插件网站


收集Eclipse插件网站


http://www.eclipse-workbench.com/jsp/
http://www.objectlearn.com/index.jsp
http://www.crionics.com/products/opensource/eclipse/eclipse.jsp
http://eclipse-plugins.2y.net/eclipse/index.jsp----------good
ftp://202.113.29.2/pub/eclipse/plugins/  
http://sourceforge.net/projects-------plugin project
http://vssplugin.sourceforge.net/
http://www.azzurri.jp/en/software/clay/index.jsp---------database modeling plugin
http://www.improve-technologies.com/alpha/struts-config-editor/--------plugin
http://www.sysdeo.com/eclipse/tomcatPlugin.html--tomcat的plugin和jboss的plugin 

Lombo
 http://www.objectlearn.com/
TomcatPlugin
 http://www.sysdeo.com/eclipse/tomcatPlugin.html

EasyStruts
 http://easystruts.sourceforge.net

EclipseColorer plugin 
 http://colorer.sf.net 

CVS-SSH2 Plug-in for Eclipse 
 http://www.jcraft.com/eclipse-cvsssh2/
JadClipse
 http://jadclipse.sourceforge.net/

SWT Designer
 http://www.swt-designer.com/

Hibernator
 http://hibernator.sourceforge.net/ 

1.eclipseuml-installer_1.2.1.20030512.jar
req emf_1.1.0_20030501_0612VL.zip & GEF-runtime-I20030327.zip
UML工具,比较像rose, 有些bug,而且没有放大缩小,拖来拖去眼都晕了,不过比slim好
2.lomboz.21_02.zip
J2ee plugin ,dw上推荐的说
  http://www-900.ibm.com/developerWorks/cn/java/l-jsp-eclipse/index.shtml?n-j-04241

3.jadclipse_b206
Jad Java decompiler plugin

4.NLS-SDK-2.0.1-Translations.zip
eclipse多国语言包,连doc都本地化了!

5.v4all_2.1.0.17
传说中的Swing IDE,可视化编程

6.EclipseColorer-take5.0.4.0
据说可以语法加亮上百种语言,非常好,至少在XML中如此,棒极了

7.xparrots_proxysettings_0.1.1
这个最重要了 http proxy plugin

8.checkstyle_eclipse_plugin_v2.1.0
可以查出编码不好的地方

9.de.mvmsoft.slime_1_1_1_eclipse
UML建模工具,逆向工程和drag功能做的很好,放大缩小也很好,不过图形看上去不舒服。

10.com.objfac.xmleditor_0.2.8
受到推崇的XML编辑器

11.jalopy-eclipse-0.2.6
格式化工具,比eclipse自带的强很多,但是不是太用,一般用把别人的代码整理成自己的风格,他会移动代码位置。

12.

OO.还有些在线升级的
   http://www.improve-technologies.com/alpha/updates/site.xml
有Axis, C#, XSLT, Resin, Editors等插件
   http://download.eclipse.org/technology/ajdt/update
AspectJ
   http://www.x-parrots.com/eclipse/updates/
iPAS, Http Proxy, Telent 

  http://eclipse-plugins.2y.net/eclipse/index.jsp 
 http://www.omondo.com/download.jsp
 http://www.eclipse-workbench.com/jsp/plugins.jsp

 http://www.genuitec.com/products_wsad.htm

 http://www.myeclipseide.com/ 

JSP插件:
Eclipse作为一个java应用的IDE,使用非常方便,但是对于Jsp的开发支持还显得不够,在这里向大家推荐一个 eclipse的plugins来协助JSP开发。这个名称叫lomboz,不但支持JSP语法高亮显示,还有Code Assist功能,可以与 Jbuilder媲美。下面简要介绍一下eclipse2.1结合Tomcat开发Jsp的过程。
下载: http://www.objectlearn.com/

http://www.eclipseplugincentral.com/

Visual Swing Designer for Eclipse
http://v4all.sourceforge.net/index_start.html

http://www.docsky.com/doclist.asp?category=J2EE&category1=开发工具&category2=eclipse

Wednesday, January 18, 2006

【转】Matrix - 与 Java 共舞 - 2006技术预言

【转】Matrix - 与 Java 共舞 - 2006技术预言

Tuesday, January 10, 2006

Matrix - 与 Java 共舞 - 专访Java之父:Java是否能够与时俱进?

Matrix - 与 Java 共舞 - 专访Java之父:Java是否能够与时俱进?

======================================================

专访Java之父:Java是否能够与时俱进?
admin 发表于2006-01-10
作者:CNET科技资讯网 来自:CNET
评论数:3 点击数:184
摘要:
Gosling :八九年前,Java就已经是流行趋势了。它真的是一种有趣的事情,因为Java已经不是一个单独的东西了,它已经成为很多不同东西的集合。


CNET科技资讯网1月9日国际报道点燃一场网络战争争论之火的保险的方法是说一种程序语言比另外一种好。作为“Java之父”的James Gosling 比任何人都清楚这一点。

  在他最近的网络日志中,Gosling 卷入了Java和脚本语言的争论。

  和Java相比,PHP 和Python等脚本语言更容易学习,它们在开发人员当中相当的流行,尤其是那些网页开发者。很多人,包括一些前Java语言的拥护者都认为,脚本语言和所谓的LAMP开源部件正在蓬勃发展,而这种发展减弱了Java的影响。

  最近,Gosling 接受了CNET新闻网站的采访,内容包括关于程序语言永远休止的争论,争论的好处以及Java的未来方向。

  问:目前,人们对Java的优点正在进行讨论。很多人认为,脚本语言正在替代Java语言。那么,Java的用户正在减少吗?它过时了吗?它正在老而不合时宜了吗?

  Gosling :我倒是希望这种情况是真的,那可以让我的生活轻松些。但是,我看到的资料,比如Evans Data的调查显示,很多人仍然在使用Java及其相关的技术,没有迹象显示它正在走下坡路。

  我知道,很多人希望它走下坡路。对于我而言,最激动的事情莫过于存在多样性的途径。

  为什么你希望Java过时了?

  Gosling :我已经从事这方面的工作很长时间了,有时候我就想,如果能休个假就好了。

  Evans Data的调查显示,尽管在亚洲地区的用户数在上升,过去两年半,北美地区的Java用户数却在下降。

  PHP 和脚本语言正变得越来越流行、如果你看看Web2.0公司的情况,你就会发现他们中的很多正在使用AJAX这种包含了脚本语言的开发工具。

  Gosling :AJAX只是用JavaScript来开发先进玩意儿的模式。它确实很酷,但它肯定也有它的问题。

  是的。有一本名为“超越Java”的书讲,Java对一些事情来讲很棒,但对Web 开发,另外一些开发语言和架构要更适合些。你对此的观点是什么?你认为这种观点有根据吗?

  Gosling :当你看看php 这样专注于Web 开发的语言,如果你只是想去做网页,你就会发现它们确实很好。

  它几乎是JSP 的一种克隆。

  我认为,当你准备超越单纯的网页开发的范畴,事情就变得有些混乱。当你想作一些分析或整合的工作,PHP 就变得比较的困难了,因为它主要专注于网页开发。

  我们经常发现,很多人用PHP 来做网页,而涉及到底层的数据分析时,他们就用Java代码来完成。通常的情况并不是一种技术替代另外一种技术,而是一种技术补充另外一种技术。

  是不是说,Java主要使用在服务器端,而脚本语言主要应用于前台,对于Java来讲,这难道不是一个问题吗?

  Gosling :我自己认为,在计算任务的世界里,Web 前台这些事情总是要更加的直接和简单些。在Java的范畴内,人们也做了很多的脚本方面的东西,象JavaScript,Groovy,J/Python和J/Ruby.

  有一点经常被人遗忘,这就是,Java是一种两种层面上的语言:它既是一种虚拟机,它也是一种ASCII 语言。

  很多人看不到虚拟机的神奇之处,但有很多很多的脚本语言已经建立在这种虚拟机之上了。

  为何你希望有脚本语言和Java虚拟机相联系呢?

  Gosling :使用脚本语言的好处是,它们可以快速的访问巨大的工具库,它们的性能和协同性也相当的好。

  你可以使用Groovy,然后访问零售点的终端,智能卡,数据库等等。

  Java语言的设计初衷是那些分布式的计算,它一般被用于复杂的任务。Java是否应该被用于简单任务?

  Gosling :从历史来讲,它在处理简单任务方面表现很出色。

  过去几年,Java的一个设计方向是在高端。如果你在一家银行,你希望驾驭一台晚间处理1 千亿美元的服务器,那么Java可以很多的胜任这一点。

  易用性曾经是Java发展的一个障碍。你们是怎么克服这一点的?

  Gosling :事实上,我们并不是去改变语言,这是因为,如果你想让一种语言变得简单,你往往会破坏它处理高端任务的能力。我们已经做了一些简化的工作,比如Java Studio Creator ,你可以用它来拖拉AJAX部件,处理数据库访问等等任务。用它来做网页相当的快。

  过去几年,LAMP(linux+apache+MySQL+PHP)逐渐兴起,你认为它是ava 世界以外的一种成熟的选择吗?

  Gosling :LAMP当然已经变得相当的成熟,Java和LAMP配合得相当的完美。

  总体上讲,我希望这块市场存在多样性的选择。

  听起来,你好象不太担心 Ruby on Rails,PHP 或者LAMP这些开发模式的崛起。这些东西不属于Java的范畴,但你似乎觉得它们相当的好。

  Gosling :事实上,我认为它们相当的酷。所有这些东西事实上都协同工作。比如J/Ruby,它就是在Java虚拟机上部署的Ruby. 这相当的漂亮。我认为,那些脚本语言的开发人员其实还不够与众不同。

  什么意思?

  Gosling :如果你看看它们的程序,你就会发现,它们看起来就像Java程序一样。

  Java是将继续保持一种通用语言和平台风格呢,还是专门向移动或者服务器之类的专业方向发展?

  Gosling :这里存在很多的矛盾。一方面,你从专门化哪里获得了很多的动力。另外一方面,你的这种动力又来自通用性。

  开发世界的人希望出现流行趋势,那么,你希望Java成为流行吗?

  Gosling :八九年前,Java就已经是流行趋势了。它真的是一种有趣的事情,因为Java已经不是一个单独的东西了,它已经成为很多不同东西的集合。

Monday, January 09, 2006

开源专业词汇

=====================================================

开源专业词汇
Anjuta:
是 Linux 的两大集成开发环境之一,是基于 GTK 库的开发工具,其开发的程序也主要是基于 GTK 库及其衍生库的程序。

Apache :
一种开放源码的 HTTP 服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用。

BSD:
BSD 是 "Berkely Software Distribution" 的缩写,意思是 " 伯克利软件发行版 " 。 原先是用在加州大学柏克莱分校发表的各个 4.4BSD/4.4BSD-Lite 版本上面( BSD 是 Berkly Software Distribution 的简写),后来也就逐渐沿用下来。 1979 年加州大学伯克利分校建立了 BSD Unix ,被称为开放源代码的先驱, BSD 许可证就是随着 BSD Unix 发展起来的。 BSD 许可证现在被 Apache 和 BSD 操作系统等开放源代码软件所采纳。

Copyleft:
Copyleft 是将一个程序成为自由软件的全局方法,同时也使得这个程序的修改和扩展版本成为自由软件。一般翻译为 “ 反版权 ” 、 “ 版权属左 ” 、 “ 版权所无 ” 、 “ 公共版权 ” 或 “ 版责 ” 。

Cracker:
“骇客” ,指那些到处刺探敏感信息的恶意入侵者。

Debian:
Debian 是一种自由操作系统,全称 Debian GNU/Linux 。目前是采用 Linux 作为内核。但是把 Debian 移植至其他内核的工作也正在进行,最主要的就是 Hurd 。 Hurd 是一组在微内核(例如 Mach )上运行的服务器,它们可以提供各种不同的功能。 Hurd 是由 GNU 计划所设计的自由软件。

Eclipse:
是著名的平台无关的自由集成开发环境( IDE )。最初主要用来 Java 语言开发,但是目前亦有人通过插件程序使其作为其他计算机语言比如 C++ 和 Python 的开发工具。

FREEBSD:
FreeBSD 是一种由 Unix 经过 BSD 、 386BSD 和 4.4BSD 发展而来的类 Unix 操作系统。它运行在 Intel x86 family 兼容处理器、 DEC Alpha 、 Sun 微系统的 UltraSPARC 、 Itanium (IA-64) 和 AMD64 处理器上。针对 PowerPC 的支持正在开发中。它被普遍认为是相当可靠和健壮的。苹果電子計算機的 Mac OS X 即以 Mach 为内核, 配合 FreeBSD 的驱动程序和实用工具为基础。

FSF:
自由软件基金会 (Free Software Foundation , FSF) 是一个致力于推广自由软件的美国民间非盈利性组织。它于 1985 年由理查德 · 斯托曼 (Richard Stallman) 创建。其主要工作是执行 GNU 计划,开发更多的免费、自由以及可自由流通软件。

GCC :
GCC ( GNU Compiler Collection , GNU 编译器套装),一套由 GNU 开发的编程语言编译器。它是 GNU toolchain 的关键部分,亦是开放源代码的类 Unix 操作系统的标准编译器。

GIMP :
是一个用 Gtk 所写的图像编辑处理程序,功能强大,被誉为 Linux 上的 Photoshop 。

GNOME:
GNU 网络对象模型环境 (The GNU Network Object Model Environment ,缩写为 GNOME) , GNU 计划的一部分,开放源码运动的一个重要组成部分。

GNU:
GNU 计划,又称革奴计划,是由 Richard Stallman 在 1983 年 9 月 27 日公开发起的。它的目标是创建一套完全自由的操作系统。 Richard Stallman 最早是在 net.unix-wizards 新闻组上公布该消息,并附带一份《 GNU 宣言》等解释为何发起该计划的文章,其中一个理由就是要 “ 重现当年软件界合作互助的团结精神 ” 。( GNU 是由 “GNU's Not Unix” 所递回定义出的首字母缩写语;它的发音为 “guh-NEW” )

GNU Emacs:
Emacs ,是 GNU 计划下的第一个产品, 是 一种非常强大的文本编辑软件 , EMACS 为 Editor MACroS 的缩写。 Richard Stallman 于 1975 年在 MIT 首次撰写 EMACS editor 。

GPL:
GNU 全局公共许可证 ( General Public License ) 简称为 GPL ,是由自由软件基金会发行的用于计算机软件的协议证书,使用该证书的软件被称为自由软件。大多数的 GNU 程序和超过半数的自由软件使用它。

GTK :
最初是 GIMP 的专用开发库,后来发展为 Linux 下开发图形界面的应用程序的主流开发工具之一。 GTK+2.0 是自由软件,并且是 GNU 工程的一部分。 GTK+2.0 的许可协议是 LGPL 。

Hacker:
“黑客”,指那些致力于探索未知和创造性解决疑难问题的程序技术高手。

J2EE:
Java 2 Platform Enterprise Edition , 是 Sun 公司为企业计算推出的企业级 Java 平台 。

JBoss:
JBoss 是免费的,开放源代码 J2EE 的实现,它通过 LGPL 许可证进行发布 。

KDE:
K 桌面环境 (K Desktop Environment) 的缩写。一种著名的运行于 Linux 、 Unix 以及 FreeBSD 等操作系统上面自由图形工作环境,整个系统采用的都是 TrollTech 公司所开发的 Qt 程序库。 KDE 和 Gnome 都是 Linux 操作系统上最流行的桌面环境系统。

LAMP:
代表了 Linux 平台上的 Apache 网站服务器; MySQL 数据库以及 Perl 、Python 或者 PHP 编程语言的结合。

LGPL:
GNU 宽通用公共许可证,简称 LGPL(GNU Lesser General Public License) ,被用于一些 ( 但不是全部 )GNU 程序库。这个许可证以前被称为 GNU 库 (Library) 全局公共许可证。

Linux:
一种计算机操作系统和它的内核的名字。它也是自由软件和开放源代码发展中最著名的例子 。最早由 Linus Torvalds 于 1991 年在网上发布 v0.01 版本。

Mozilla:
Mozilla 是一个免费的、跨平台的国际互联网路浏览器,它的组件包括网页浏览器、电邮客户机、 HTML 编辑程序和 IRC 客户机。它完全符合现代标准,包括: HTML 、 XML 、 CSS 、 DOM 、等。而且本软件的源代码是完全开放的。可在 Linux 、 Windows 、 Mac 下运行。

MPL:
Mozilla 公共许可证(简称 MPL )是一个开放源代码的自由软件许可证。它是由美国在线的下属的网景通信子公司发布的,之后该许可证所有权被转让给 Mozilla 基金会。 Mozilla 基金会主要在 Mozilla 网页浏览器及其相关软件上使用该许可证。

NetBSD:
NetBSD 是一份免费,安全的具有高度可定制性的类 UNIX 操作系统,它设计简洁,拥有众多先进特性,使得它在业界和学术界广受好评,用户可以通过完整的源代码获得支持。

Open source:
开放源代码软件。就是在开放源代码许可证下发布的软件,以保障软件用户自由使用及接触源代码的权利。这同时也保障了用户自行修改、覆制以及再分发的权利。简而言之,所有公布软件源代码的程序都可以称为开放源代码软件。

OSDL:
Open Source Development Labs ,开放源代码开发实验室 , 于 2003 年 8 月, 由 IBM 、 HP 、 Intel 和 NEC 四巨头组建 , 位于美国 Oregon 州, Portland 市西郊高技术区 。

OSDN:
Open Source Developer Network , 开源开发者网 , 国际上最著名的开源开发社区 ( 网站: www.osdn.com 和 www.sourceforge.net ),它是世界上最大的、向开源开发者提供免费服务的组织,向开源社区提供最多的开源代码和应用软件 , sourceforge.net 网站每个月被五百多 万 IT 专家、开发者和系统工程师访问,产生一亿一千多万页面访问量。

OSI:
Open Source Initiative, 开放源代码 首创行动,由 OSIA 发起倡导,从软件的许可问题入手,结合证明商标,为开放源码软件业的发展作出了重大贡献。

OSIA:
Open Source Initiative Association ,开放源代码首创行动组织 ,是一个非盈利组织,由美国人 Bruce Perens 和 Eric S.Raymond 等人于 1998 年在加州发起设立,改组织倡导了 OSI (开放源码首创行动)。

Perl:
Perl ( Practical Extraction and Report Language )是一种脚本语言。 最初的设计者为拉里 · 沃尔( Larry Wall ),它于 1987 年 12 月 18 日 发表。 Perl 借取了 C 、 sed 、 awk 、 shell scripting 以及很多其他程序语言的特性。

PHP :
PHP Hypertext Preprocessor,最初称为"Personal Home Page Tools",也称为 "Professional Homepages",或者"Pre-Hypertext Processor"),是一种开放源代码的脚本编程语言,主要用于Web服务器的服务器端应用程序,用于动态网页设计。

PLONE:
Plone 是一种开源的内容管理系统( CMS )。基于 Zope ,用 Python 写成。

Python :
是一种面向对象的解释性的计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定。

RED HAT:
美国Linux厂商,红帽公司。

Solaris:
Sun 公司研制的 UNIX 类操作系统。现在最新的为 Solaris10 。

SUSE:
SUSE是 Linux 操作系统其中一个发行版,也是德国的一个发行版。 SUSE 属于 Novell 旗下的业务,它同时亦是 Desktop Linux Consortium 的发起成员之一。

Ubuntu:
是一个完全的桌面 Linux 操作系统,基于 Debian 发行版。该发行版的名称来自南非的 “Ubuntu” 概念,大致为 “ 乐于分享 ” 。它与 Debian 的不同在于,每 6 个月有一次发布,每次版本发布后提供支持 18 个月;用这种方式, Ubuntu 的目标在于为一般用户提供一 个最新的,也是相当稳定的只使用自由软件的操作系统。

ZOPE:
Zope 是一个开源的 web 应用服务器,主要用 python 写成。它是一个事务型的对象数据库平台。

Wednesday, November 30, 2005

Matrix - 与 Java 共舞 - Tomcat5的web应用启动顺序详解

Tomcat5的web应用启动顺序详解

作者:cleverpig


版权声明:本文可以自由转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明
作者:cleverpig(http://blog.matrix.org.cn/page/cleverpig)
原 文:[http://www.matrix.org.cn/resource/article/43/43987_JGroups.html]http://www.matrix.org.cn/resource/article/43/43987_JGroups.html[/url]
关键字:tomcat,web,启动顺序

摘要:

应用Tomcat对于我们来讲实在是司空见惯了,但是对于每个使用者来讲,应该了解其运转的机制也是必不可少的,本人在维护"apache开源项目"论坛时遇到此问题,并略作研究,望与大家共讨、分享。

一、配置自动部署时的web应用加载顺序:

当tomcat的server.xml中对虚拟主机(Host)配置中autoDeploy=true和unpackWARs=true时,如:
server.xml


...

...



下面的部署顺序在Tomcat启动时发生:

1。任何具有上下文描述符(Context Descriptors)的web应用首先被部署,tomcat在$CATALINA_HOME/conf/[enginename]/ [hostname]/目录中罗列出所有的以xml为结尾的文件,将其作为web应用的上下文描述符,并按照文件名排序逐一部署。

注意作为上下文描述符的文件名可以不为web应用名,因为tomcat会读取其中的内容来判断,但是改变上下文描述符的文件名会使部署的顺序发生变化。

如:
$CATALINA_HOME\conf\Catalina\localhost\devoffer.xml








上面的上下文描述符说明了devoff这个web应用的docBase和部署的path以及其工作目录。

2。另外,位于$CATALINA_HOME/webapps/[webappname]/META-INF/目录中的context.xml也作为上下 文描述符使用,在处理了上文所说的位于$CATALINA_HOME/conf/[enginename]/[hostname]/目录中的上下文描述符 后,tomcat将部署这些在web应用的META-INF目录中的context.xml。加载顺序按照应用名的字母顺序。

3。没有上下文描述符的已经被展开的web应用将按照其应用名顺序逐个被部署,如果其中的一个web应用关联着一个在appBase(一般为"$ CATALINA_HOME/webapps"目录)中的WAR文件,则当WAR文件比相对应的被展开的web应用新时,那个被展开的web应用将被删 除,tomcat将WAR文件展开并部署作为替换旧的web应用。

4。在执行了1-3步后,tomcat将部署在appBase中的WAR文件。

请注意:在每个应用被部署后,tomcat为没有上下文描述符的web应用建立上下文描述符。


二、非自动部署配置下的应用加载顺序:

此时完全按照在tomcat manager中人工部署顺序。

三、参考资源:
http://tomcat.apache.org/tomcat-5.5-doc/deployer-howto.html

四、参加讨论:
http://www.matrix.org.cn/thread.shtml?topicId=32324&forumId=17