项目一 认识Linux操作系统

任务一     查找Linux系统的基本概况

第一步:通过搜索引擎搜索“Linux”

在百度等搜索引擎中搜索“UNIX”、“Linux”、“Linux操作系统”等关键词。

第二步:收集整理搜索到的网页

(1)UNIX是大型机用的,主要特点是支持多用户同时操作系统和共享系统资源。一般人接触不到UNIX,一般只有大型公司才用到。

(2)Linux是一条免费使用和自由传播的类UNIX操作系统。它和UNIX的主要区别是UNIX有版权的,与微软的Windows一样是要收费的。

(3)Linux继承了UNIX以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

(4)Linux可安装在各种计算机硬件设备中,例如手机、路由器、平板电脑、台式计算机、大型机、超级计算机。

(5)严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并使用GNU工程各种工具和数据库的操作系统。


任务二   总结Linux系统的最初十年

第一步:关键词搜索

第二步:收集、整理、归纳搜索到的资料并通过多方比较辨别真伪

1981 年LBM公司推出微型计算机IBM PC。
1991年,GNU计划已经开发出了许多工具软件,最受期盼的GNU C编译器已经出现,GNU的操作系统核心HURD一直处于实验阶段,没有任何可用性,实质上也没能开发出完整的GNU操作系统,但是GNU奠定了Linux用户基础和开发环境。
1991年初, 林纳斯·托瓦兹开始在一台386sx兼容微机上学习minix操作系统。1991年4月,林纳斯·托瓦兹开始酝酿并着手编制自己的操作系统。
1991 年4 月13 日在comp.os.minix 上发布说自己已经成功地将bash 移植到了minix 上,而且已经爱不释手、不能离开这个shell软件了。
1991年7月3日,第一个与Linux有关的消息是在comp.os.minix上发布的(当然此时还不存在Linux这个名称,当时林纳斯·托瓦兹的脑子里想的可能是FREAX,FREAX的英文含义是怪诞的、怪物、异想天开等)。
1991年的10月5日,林纳斯·托瓦兹在comp.os.minix新闻组上发布消息,正式向外宣布Linux内核的诞生( Freeminix-likekernel sources for 386-AT)。
1993年,大约有100余名程序员参与了Linux内核代码编写/修改工作,其中核心组由5人组成,此时Linux 0.99的代码大约有十万行,用户大约有10万左右。
1994年3月,Linux1.0发布,代码量17万行,当时是按照完全自由免费的协议发布,随后正式采用GPL协议。
1995年1月,Bob Young创办了RedHat(小红帽),以GNU/Linux为核心,集成了400多个源代码开放的程序模块,搞出了一种冠以品牌的Linux,即RedHat Linux,称为Linux"发行版",在市场上出售。这在经营模式上是一种创举。
1996年6月,Linux 2.0内核发布,此内核有大约40万行代码,并可以支持多个处理器。此时的Linux 已经进入了实用阶段,全球大约有350万人使用。
1998年2月,以Eric Raymond为首的一批年轻的"老牛羚骨干分子"终于认识到GNU/Linux体系的产业化道路的本质,并非是什么自由哲学,而是市场竞争的驱动,创办了"Open Source Intiative"(开放源代码促进会)"复兴"的大旗,在互联网世界里展开了一场历史性的Linux产业化运动。
2001年1月,Linux 2.4发布,它进一步地提升了SMP系统的扩展性,同时它也集成了很多用于支持桌面系统的特性:USB,PC卡(PCMCIA)的支持,内置的即插即用,等等功能。
2003年12月,Linux 2.6版内核发布,相对于2.4版内核2.6在对系统的支持都有很大的变化。
2004年的第1月,SuSE嫁到了Novell,SCO继续顶着骂名四处强行“化缘”, Asianux, MandrakeSoft也在五年中首次宣布季度赢利。3月,SGI宣布成功实现了Linux操作系统支持256个Itanium 2处理器。


任务三   研究Linux的特点、优势及发行版本

子任务一  阐述Linux系统的优点

完全免费
Linux是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是其他的操作系统所做不到的。正是由于这一点,来自全世界的无数程序员参与了Linux的修改、编写工作,程序员可以根据自己的兴趣和灵感对其进行改变,这让Linux吸收了无数程序员的精华,不断壮大。
完全兼容poslx1.0标准
这使得可以在Linux下通过相应的模拟器运行常见的DOS、windons的程序。这为用户从Windows转到Linux奠定了基础。许多用户在考虑使用Linux时,就想到以前在Windows下常见的程序是否能正常运行,这一点就消除了他们的疑虑。
多用户、多任务
Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现在电脑最主要的一个特点,Linux可以使多个程序同时并独立地运行。
良好的界面
Linux同时具有字符界面和图形界面。在字符界面用户可以通过键盘输入相应的指令来进行操作。它同时也提供了类似Windows图形界面的X-Windons系统,用户可以使用鼠标对其进行操作。在X-Window环境中就和在Windows中相似,可以说是一个Linux版的Windows。
支持多种平台
Linux可以运行在多种硬件平台上,如具有x86、680x0、SPARC、Alpha等处理器的平台。此外Linux还是一种嵌入式操作系统,可以运行在掌上电脑、机电盒或游戏机上。2001年1月份发布的Linux 2.4版内核已经能够完全支持intel64位芯片架构。同时Linux也支持多处理器技术。多个处理器同时工作,使系统性能大大提高。

子任务二    分析Linux系统的优势

       Linux系统越来越受到电脑用户的欢迎,于是很多人开始学习Linux。Linux系统之所以会成为目前最受关注的系统之一,主要原因是它的免费,以及系统的开放性,可以随时取得程序的原代码,这对于程序开发人员是很重要的。除了这些它还具有以下的优势:

      Linux系统优势一:跨平台的硬件支持

由于Linux 的内核大部分是用C 语言编写的,并采用了可移植的Unix标准应用程序接口,所以它支持如i386、Alpha、AMD和Sparc等系统平台,以及从个人电脑到大型主机,甚至包括嵌入式系统在内的各种硬件设备。

       Linux系统优势二:丰富的软件支持

与其他的操作系统不同的是,安装了Linux系统后,用户常用的一些办公软件、图形处理工具、多媒体播放软件和网络工具等都已无需安装。而对于程序开发人员来说,Linux更是一个很好的操作平台,在Linux 的软件包中,包含了多种程序语言与开发工具,如gcc、cc、C++、Tcl/Tk、Perl、Fortran77 等。

       Linux系统优势三:多用户多任务

和Unix系统一样,Linux系统是一个真正的多用户多任务的操作系统。多个用户可以各自拥有和使用系统资源,即每个用户对自己的资源(例如:文件、设备)有特定的权限,互不影响,同时多个用户可以在同一时间以网络联机的方式使用计算机系统。多任务是现代计算机的最主要的一个特点,由于Linux系统调度每一个进程是平等地访问处理器的,所以它能同时执行多个程序,而且各个程序的运行是互相独立的。

      Linux系统优势四:可靠的安全性

Linux系统是一个具有先天病毒免疫能力的操作系统,很少受到病毒攻击。

对于一个开放式系统而言,在方便用户的同时,很可能存在安全隐患。不过,利用Linux自带防火墙、入侵检测和安全认证等工具,及时修补系统的漏洞,就能大大提高Linux系统的安全性,让黑客们无机可乘。

Linux系统优势五:良好的稳定性

Linux 内核的源代码是以标准规范的32 位(在64 位CPU上是64 位)的计算机来做的最佳化设计,可确保其系统的稳定性。正因为Linux 的稳定,才使得一些安装 Linux 的主机像Unix 机一样常年不关而不曾宕机。

     Linux系统优势六:完善的网络功能

Linux 内置了很丰富的免费网络服务器软件、数据库和网页的开发工具,如Apache、Sendmail、VSFtp、SSH、MySQL、PHP和JSP 等。近年来,越来越多的企业看到了Linux 的这些强大的功能,利用Linux 担任全方位的网络服务器。

Linux 在它的追捧者眼里是一个近乎完美的操作系统,它具有运行稳定、功能强大、获取方便等优点,因而有着广阔的前景,或许也值得我们每一个计算机爱好者学习和应用。


子任务三  总结Linux系统的发行版本

第一步:通过阅读相关书籍以及网络搜索的网页资料,总结整理

常见的Linux系统发行版本

1.RHEL红帽          

      Redhat,应该称为Redhat系列,包括

 (1)RHEL  (Redhat Enterprise Linux,也就是所谓的Redhat Advance Server,收费版本,稳定性非常好,适合服务器使用)

 (2)Fedora Core  (由原来的Redhat桌面版本发展而来,免费版本,稳定性较差,最好只用于桌面应用)

 (3)CentOS  (RHEL的社区克隆版本,免费版本,稳定性非常好,适合服务器使用)

    Redhat是国内使用人群最多的Linux版本,以至于有的人将Redhat等同于Linux,而有些老手更是只用这一个版本的Linux。所以有什么不明白的地方,很容易找到人来问,而且网上的Linux教程基本都是以Redhat为例来讲解。Redhat系列的包管理方式采用的是基于RPM包和YUM包的管理方式,包分发方式是编译好的二进制文件。


2. CentOS       

       社区企业操作系统(Community Enterprise Operating System,Centos)

      来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS并不包含封闭源代码软件。

   CentOS 是RHEL源代码再编译的产物,而且在RHEL的基础上修正了不少已知的 Bug ,相对于其他 Linux 发行版,其稳定性值得信赖。


 3.Fedora        

    用户可免费体验到最新的技术或工具,而功能成熟后会被加入到RHEL系统中。因此也被称为RHEL系统的“试验田”,如果感兴趣的话,可以多关注此类系统的发展变化及新特性。

  由全球社区爱好者构建的面向日常应用的快速且强大的操作系统。它允许任何人自由地使用、修改和重发布,无论现在还是将来。它由一个强大的社群开发,这个社群的成员以自己的不懈努力,提供并维护自由、开源代码的软件和开放的标准。Fedora 项目由 Fedora 基金会管理和控制,得到了 Red Hat 的支持。Fedora (第七版以前为Fedora Core)是一款基于 Linux 的操作系统,也是一组维持计算机正常运行的软件集合。其目标是创建一套新颖、多功能并且自由和开源的操作系统。


 4.OpenSUSE  

      德国著名的Linux系统,全球范围内有着不错的声誉及市场占有率,发行量在欧洲占第一位。。OpenSUSE对个人来说是完全免费的,包括使用和在线更新。OpenSUSE被评价为最华丽的Linux桌面发行版,甚至超越win7,但它的优势绝不仅仅局限于win7还要绚丽的用户交互界面,其性能也绝不亚于其他Linux桌面发行版!


 5.Gentoo     

     具有极高的自定制性,操作复杂,因此适合有经验的人员使用。

它能为几乎任何应用程序或需求自动地作出优化和定制。追求极限的配置、性能,以及顶尖的用户和开发者社区,都是Gentoo体验的标志特点。 Gentoo的哲学是自由和选择。得益于一种称为Portage的技术,Gentoo能成为理想的安全服务器、开发工作站、专业桌面、游戏系统、嵌入式解决方案或者别的东西——你想让它成为什么,它就可以成为什么。


 6.Debian       

       应该称为Debian 系列,包括Debian和Ubuntu等。Debian是社区类Linux的典范,是迄今为止最遵循GNU规范的Linux系统。提供了接近十万种不同的开源软件支持,在国外用于很高的认可度和使用率。对于各类内核架构支持性良好,稳定性、安全性强更有免费的技术支持。

  Debian最具特色的是apt-get / dpkg包管理方式,其实Redhat的YUM也是在模仿Debian的APT方式,但在二进制文件发行方式中,APT应该是最好的了。Debian的资料也很丰富,有很多支持的社区,有问题求教也有地方可去。
  分为三个版本分支(branch):
  (1)unstable,为最新的测试版本,其中包括最新的软件包,但是也有相对较多的bug,适合桌面用户。
  (2)testing,经过unstable中的测试,相对较为稳定,也支持了不少新技术。
  (3)stable,一般只用于服务器,上面的软件包大部分都比较过时,但是稳定和安全性都非常的高。
 

 7.Ubuntu      

     Ubuntu是一款基于Debian派生的操作系统(严格来说不能算一个独立的发行版本),对新款硬件具有极强的兼容能力。  特点是界面非常友好,容易上手,对硬件支持非常全面,是最适合做桌面系统的Linux发行版本,同时Ubuntu也可用于服务器领域。

  Ubuntu的目标在于为一般用户提供一个最新的,同时又相对稳定的主要自由软件构建而成的操作系统。Ubuntu具有强大的社区力量,用户可以方便地从社区获取帮助。


第二步:找出几个比较经典的Linux发行版本的下载地址

Debian ISO映象文件地址:http://www.debian.org/distrib/。

Gentoo 镜像文件地址:http://www.gentoo.org/main/en/where.xml。

Ubuntu ISO映象文件地址:http://www.ubuntu.com/download。


任务四  Linux运维职业生涯规划

第一步:了解Linux运维工程师的发展前景

      Linux工程师是最具有增值潜力的职业,是可以掌握企业核心网络构架、安全技术的,具有不可替代的竞争优势;

      现在国内是缺少新型网络技术人才的,对于网络人才方面缺少达到三十万以上的,想要拿到丰厚的工资是必然的。它的就业方面广、专职多能、实践经验适用于各个领域,并且是具有很大的增加潜力的,它会随着自身经验的不断积累以及逐渐成熟掌握项目运作,升值空间是可想而知的;

      Linux工程师职业发展前景广阔,Linux工程师到项目经理仅仅是一步之遥,从容晋升Manager

      Linux工程师可以从中小企业的网络管理员进行入职的,在入职之后,还能够同时从事网络管理管理工作,工资待遇与财力会有明显的增加;

     其次Linux工程师学习更加全面的知识成为Linux工程师,根据自己积累的经验成为侧重于某一专业的Linux工程师,比如说网络存储工程师、综合布线工程师、网络安全工程师等。

      最后是能够进阶成为专家级别的,比如IT项目经理、网络主管或者技术专家等,可以看出对于个人的发展是有前景的。


第二步:规划自己的学习内容

方法步骤: 
  1、基础知识: 
  目的:能看懂硬件工作原理,但重点在嵌入式软件,特别是操作系统级软件,那将是我的优势。 
  科目:数字电路、计算机组成原理、嵌入式微处理器结构。 
  汇编语言、C/C++、编译原理、离散数学。 
  数据结构和算法、操作系统、软件工程、网络、数据库。 
  方法:虽科目众多,但都是较简单的基础,且大部分已掌握。不一定全学,可根据需要选修。 
  主攻书籍:the c++ programming language(一直没时间读)、数据结构-C2。 
  2、学习linux: 
  目的:深入掌握linux系统。 
  方法:使用linux—〉linxu系统编程开发—〉驱动开发和分析linux内核。先看深,那主讲原理。看几遍后,看情景分析,对照深看,两本交叉,深是纲,情是目。剖析则是0.11版,适合学习。最后深入代码。 
  主攻书籍:linux内核完全剖析、unix环境高级编程、深入理解linux内核、情景分析和源代。 
  3、学习嵌入式linux: 
  目的:掌握嵌入式处理器其及系统。 
  方法:(1)嵌入式微处理器结构与应用:直接arm原理及汇编即可,不要重复x86。 
  (2)嵌入式操作系统类:ucOS/II简单,开源,可供入门。而后深入研究uClinux。 
  (3)必须有块开发板(arm9以上),有条件可参加培训(进步快,能认识些朋友)。 
  主攻书籍:毛德操的《嵌入式系统》及其他arm9手册与arm汇编指令等。 
  4、深入学习: 
  A、数字图像压缩技术:主要是应掌握MPEG、mp3等编解码算法和技术。 
  B、通信协议及编程技术:TCP/IP协议、802.11,Bluetooth,GPRS、GSM、CDMA等。 
  C、网络与信息安全技术:如加密技术,数字证书CA等。 
  D、DSP技术:Digital Signal Process,DSP处理器通过硬件实现数字信号处理算法。

书籍推荐 
  Linux基础 
  1、《Linux与Unix Shell 编程指南》 
  C语言基础 
  1、《C Primer Plus,5th Edition》【美】Stephen Prata着 
  2、《The C Programming Language, 2nd Edition》【美】Brian W. Kernighan David M. Rithie(K & R)着 
  3、《Advanced Programming in the UNIX Environment,2nd Edition》(APUE)
   4、《嵌入式Linux应用程序开发详解》 
  Linux内核 
  1、《深入理解Linux内核》(第三版) 
  2、《Linux内核源代码情景分析》毛德操 胡希明着 
  研发方向 
  1、《UNIX Network Programming》(UNP) 
  2、《TCP/IP详解》 
  3、《Linux内核编程》 
  4、《Linux设备驱动开发》(LDD) 
  硬件基础 
  1、《ARM体系结构与编程》杜春雷着 
  2、S3C2410 Datasheet 
  英语基础 
  1、《计算机与通信专业英语》 
  系统教程 
  1、《嵌入式系统――体系结构、编程与设计》 
  2、《嵌入式系统――采用公开源代码和StrongARM/Xscale处理器》毛德操 胡希明着 
  3、《Building Embedded Linux Systems》 
  理论基础 
  1、《算法导论》 
  2、《数据结构(C语言版)》 
  3、《计算机组织与体系结构?性能分析》 
  4、《深入理解计算机系统》【美】Randal E. Bryant David O'Hallaron着 
  5、《操作系统:精髓与设计原理》 
  6、《编译原理》 
  7、《数据通信与计算机网络》 
  8、《数据压缩原理与应用》 
  C语言书籍推荐 
  1. The C programming language 
  《C程序设计语言》 
  2. Pointers on C 
  《C和指针》 
  3. C traps and pitfalls 
  《C陷阱与缺陷》 
  4. Expert C Lanuage 
  《专家C编程》 
  5. Writing Clean Code 
  -----Microsoft Techiniques for Developing Bug-free C Programs 
  《编程精粹--Microsoft 编写优质无错C程序秘诀》 
  6. Programming Embedded Systems in C and C++ 
  《嵌入式系统编程》 
  7.《C语言嵌入式系统编程修炼》 
  8.《高质量C++/C编程指南》林锐 






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值