友声网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
开启左侧

Linux 新手入门

[复制链接]
admin 发表于 2006-3-25 07:35 | 显示全部楼层 |阅读模式
UNIX 和 Linux 有什么不同?  
UNIX(此名称是源自以前的“Multics”操作系统)于 1969 年在 AT&T 贝尔实验室被创造出来,它是一种健壮的、灵活的和对开发人员友好的计算环境。尽管 UNIX 最初是为 Digital Equipment Corporation(DEC)的 PDP 微型计算机系列编写的,但它却成为最受欢迎的多用户通用操作系统,并已在所有计算领域 ― 甚至包括曾一度被大型机垄断的领域 ― 占据主导地位。

为什么 Linux 很重要?  
因为它是自由软件,通过 GNU 通用公共许可证授权,Linux 使程序员无需在每次开发新项目时都要不断重新设计操作层。打个比方,GNU 的系列工具就好比免版税的砖块和灰泥,您可以用它们构建独立的项目。自由软件的批评者们常常担心自由软件的自由和低成本会将导致一场计算行业的经济灾难。然而,自由软件对计算领域的影响只不过象(不然的话更象)古腾堡(Gutenberg)的印刷机对文字世界的影响一样。

我能用 Linux 做什么?  
您希望用 Linux 系统做什么将决定您想要什么样的 Linux 系统,以及在开始使用该系统之前要对它有多深的理解。

Linux 是进行内核研究、学习 UNIX 或学习编程的绝佳学习平台;有许多工具和应用程序可用来玩游戏、进行桌面排版或者只是闲来无事发一下电子邮件和浏览 Web。

它也是开放和封闭式生产系统的绝佳平台,因为可自由地对其进行最大程度的定制。Linux 可以作为各种事物的平台,从中间件到嵌入式计算和群集,从并行超级计算机到小玩意儿。IBM 已经参与了制造在 Linux 上运行的收银机的项目,以及制造 Linux 手表的项目。其他开发人员已经在手机、Sony PlayStation、TiVo 和 Sharp Zaurus 上使用了 Linux。

尽管 GNU 通用公共许可证要求将修改过的代码发布给使用该代码的客户,但它不要求将所有修改后的代码都发布给公众(这是某些自由软件的批评者没有领会的关键一点)。的确,对于基于 Linux 的收银机,把代码发布给大众在安全性上完全是一种冒险。GNU GPL 只要求使用代码的客户可以获得修改后的代码。

如何开始学习 Linux?  
如果完全不了解 Linux,或者正在使用 Linux 作为桌面操作系统,那么您至少需要学习一些有关系统管理和安全性的基本知识。和试图将这些任务自动化的商业性个人操作系统不同,Linux 并不承诺手把手帮助您,也不承诺跟在您后面做一些清理工作:您必须自己管理系统。幸运的是,基本的维护和基本的安全性都很简单。在许多方面,现在的 Linux 和 UNIX 管理要比流行的商业性个人操作系统的管理容易得多,因为前者更透明。

尽管 Linux 的确有几个窗口环境可让您执行管理,但控制系统最直接的方法是使用命令行。构建在命令行环境结构之中的是大量的命令和数种基于文本的帮助系统。

在 Web 上,在现实世界中,有许多资源可以帮助您开始使用 Linux。有许多专门针对这一主题的网站、文章和书籍,Linux 用户组(Linux User Groups,也称为 LUG)在世界各个国家和城市举行会议 ― 众所周知,他们对新用户也非常友好。

如何在应用开发中使用 Linux?  
Linux 是作为编程平台的绝佳选择。它符合 GCC,这意味着您可以使用 GNU 项目出色的编程与调试工具套件 ― 绝对免费,而且享有 GNU GPL 保证的所有自由。商业性编程软件包和商业性操作系统一样,要花很多钱。是的,某些项目常常需要它们,而它们也物有所值,但对于新手或学习编程的人 ― 以及某些职业人士 ― 自由软件绝对是不可替代的。如果您正在使用 Linux 作为开发平台,请不要跳过学习管理和安全性这第一步。不能掌握自己的计算机的程序员实在是愚蠢。

在 Linux 上可以使用哪些编程语言?  
除了象 Fortran 和 C/C++ 这样一直流行的传统编程语言,许多脚本和其它计算机语言也都可以在 Linux 上正常运行(甚至被设计成与 Linux 能最融洽地工作)。最受欢迎的编程语言包括 Perl、Python、PHP 和 Tcl。

象 Java 技术和 XML 那样不断发展的新技术可以在 Linux 上畅顺地运行,许多其它更深奥的编程语言(从 Logo 和 Rebol 到 Smalltalk 及其它语言)也是如此。

Web 服务与 Linux 有什么关系?  
Web 开发人员在决定以什么技术作为其电子商务应用程序的基础时,有许多选择。因为 Linux 符合标准,所以许多新技术 ― 从 Java 技术和 XML 这样的开放成果到语音应用程序、无线、普及计算甚至 Web 服务这样最前沿的服务 ― 都支持 Linux。

Linux 如何适用于网格计算?  
使 Linux 或 UNIX 机器与其它出售的操作系统一起出色地工作一直就不太容易,而且现在这仍然不是件简单的事。但是,当今现有的操作系统实际上都有这个问题。

在互操作性和可移植性方面已经有了巨大进步,在这个领域,新的工具和技术仍不断被开发出来。

这方面的 Linux 工作包括移植和联网,这涉及到编写或重写设备驱动程序。尽管设备驱动程序和 Linux 的其它高级方面一样较为复杂,但有必要不时地重新设计它们,以便将各种系统和外设(无论是旧的还是新的)连接到 Linux 或 UNIX 机器。幸运的是,从所涉及的范围看,它们通常比内核和系统的其它高级方面小很多。

我了解 Linux,但如何能进一步提高技能?  
如果您希望使用 Linux 作为非常高级的应用程序或应用程序集的平台,您将会对系统的某些领域感兴趣,譬如内核研究、各种文件系统的差异以及其它一些基本的细节。

高端应用程序(或游戏)所需要的另一套技能是调优 Linux 机器、群集或网络以获得最佳性能。这需要掌握多处理、线程技术、群集和其它神秘而复杂的系统管理知识。理解 Linux 的这些方面不象实际的内核研究那样需要勇气,但也会非常困难。

IBM Learning Services 提供的各种课程涉及各个方面,从基础知识到开发,以及非常专业化的技能 ― 并且还有认证(稍后将详细介绍)。IBM 开发人员解决方案提供有关 IBM 产品的文章和 HOWTO,更多的 IBM 网站提供许多资源,其中有许多(如果不是大部分的话)也都在 Linux 上运行。IBM developerWorks 提供了关于 Linux 和其它几种开放或自由技术的文章、教程和资源,其它技术包括 XML、无线、Web 服务、Java 技术和网格计算。

怎样证明我具备 Linux 技能?  
Linux 培训有各种认证项目。既有联盟计划,也有独立的技能测试和公司赞助的认证。

Linux 前景如何?  
Linux 的开放性和灵活性使它得以在实验室和其它研究机构中被用于创新性技术变革的前沿。针对极具创新性的实验或原型、仿真或者测试,可以很容易地群集或定制 Linux;也可以以同样具有创新性的方法使用大量的自由软件工具(为了使用这些工具而创建了 Linux)。即使有了现在正在开发的所有令人振奋的新技术 ― 从网格计算和无线语音应用程序到人工智能和量子计算 ― 我们所处的计算时代的潜能和前景仍然远没有被充分利用。Linux 健壮和开放的灵活性意味着它在今后很多年都将处于开发战线的最前沿。

RSS|无图版|手机版|友声网 ( 鲁ICP备15020090号-1 )|网站地图 | 点击这里给我发消息 |

GMT+8, 2024-4-18 17:14 , Processed in 0.017566 second(s), 8 queries , MemCache On.

Powered by Discuz! X

© ys166.com

快速回复 返回顶部 返回列表