论坛» 嵌入式开发» MCU

请教Linux学习方法!!!

助工
2011-09-13 09:33 1楼

新手上路,学习嵌入式系统开发,对Linux不是很懂,求指点!!!

菜鸟
2011-09-13 09:59 2楼
学习Linux分好几种层次,Linux是由Unix产生的,最终它的实现及他基础上很多应用软件都是基于一个哲学理念“把任务分解成一小块一小块完成”,可能现在你觉得这是件很简单的道理。但他不简单就在于所有有关Unix的东西都是基于这一理念的,看看我们常用的那些小工具吧,find,grep,gzip,tar,bash...等等,这个道理无不贯穿始终。现在IBM/MS等公司经常提到的WEB Service,实际上细想也是这样的,无非是把很多服务分散开来,然后有个总的业务逻辑来进行迅速的组合成一个新的服务,满足市场的迅速变化的需求。

结论1:首先要明白他的设计理念是缘自Unix的“把任务分解成一小块一小块完成”,建议你可以看这本电子书>。是由Eric Steven Raymond写的,在google上很容易找到。这本书编重于编程,可以根据自已的兴趣选相应章节。我也没有全看完,也在研习中:-)

从使用着手,自已装个系统。建议你从Redhat开始。现在Redhat的安装基本上都是学习MS的做法,很图形化了。只要按照图形的指示,很容易让一个系统跑起来。我觉得初学者应该从这个入手,这样会快很多。因为Linux上的软件包都是由不同的开发团队做的,所以一般人不知道如果安装,redhat公司做的事情就是把这些东西组织起来,然后把这些软件卖给大家。因为他对这一行非常的精通,所以卖软件是其次,卖服务是主业。现在redhat已停止出个人版的了,改成专做企业的了,版本发行最近有些变动。现在最后一个版本好象是RH9.1。

装好系统后从使用应用软件开始,建议你先学BASH SHELL编程。因为你将业想往Oracl DBA发展的话,精通SHELL可以在管理上给你带来很大的便利。同时对于理解Linux系统的启动和一些软件的安装很有帮助。比如说你可以很清楚的了解Linux的整个启动过程,继而知道为什么要做那一步做了这个动作,对你将来处理实际碰到的问题至少可以明白知道问题出在哪。象很多我们日常在Unix/Linux的管理和脚本都是分不开的,精通BASH是我们需要完成的第一步。我指的是精通,不是一般的了解,因为你只有精通了,用的时间越长,你会发现script可以帮我们很方便的干很多事情。这里有一本电子书提供参考,是我至今见到写BASH最全,最好的一本。名叫《Advanced Bash Scripting Guide》,你可以在 www.linuxdoc.org里找到。

这里也提一下 www.linuxdoc.org里的文章是你学习Linux的良师益友,里面的很多文章都是非常不错的教材。主要分为几类:1、FAQ 2、HOWTO 3、Guider 4、man手册。其中的Guider有几本都是非常不错的入门书,你基本上可以不用去买本,美国出的印刷书都奇贵,你把那里的几本书看完就差不多了。插一句,现在P2P很流行,我基本上都不买专业的书了,大部分都可以找到电子版的下载。里面的HOWTO主要讲的一些具体的问题如何处理,门类也很多很杂,你可以根据自已现在的需求去看相应的文章。有空的时候可以多看看,这里面有些很好的solution,说不定什么时候就可以用上。FAQ的文章不多,建议挑些重要的看下。对于man手册,一般系统上都有,不过那里应该是最近的,平时用的不多。

结论2:自已装个Redhat,学好shell。

你用Unix/Linux时候,熟悉一个编辑器是必不可少的。用两种建议选择Emacs&VIM。Emacs比较大些,要花些空间,功能具强,以前用过一段时间但没有深入下去,所以了解也是通过大师们文章中反复提到这个关键字和一些信息知道的,用好了功能具强,相当于一个MS下的IDE开发环境;vim比较小些,功能也很强,是vi的增强版,我现在主要是用她来编辑东西。vim支持多种语法,可以用来编脚本、C、Java,功能足够我们用,学好需要一定的时间实践。因为我们用Unix/Linux,免不了有时要用console来控制,如果用惯了MS的编辑的话,你会非常痛苦,建议如果以后想长时间使用unix/linux环境的话,学好一种这环境下的编辑器。vim也有windows的版本,开始用起来会觉得不方便,便很快你会发现用VIM可以解决很多MS下编辑器不能解决的问题,不信你可以试试看。

结论3:学会一种Unix/Linux下编辑器Emacs或Vim,建议Vim
院士
2011-09-13 10:30 3楼
丹妮尔说的好专业啊~

这个要好好学习下~~
助工
2011-09-13 10:53 4楼

灰常感谢!!!十分有用!!!

高工
2011-09-13 11:55 5楼
上面丹妮尔讲得很好,不过这里再补充说明几点,
1.RedHat公司发布的最后一个个人版的Linux是RedHat-9,实为有些年头了,内核为2.4,现在最新的内核版本为2.6.37(Fedora 15),但是就初学者而言,RedHat-9不失为最佳的,因为现在网上和书店能够找到的大多数讲Linux系统的书(尤其是嵌入式Linux系统开发)都是基于RedHat-9,也就是2.4内核的。
2.Linux的发行版本有很多,比如我自己用过的就有RedHat-9(RedHat公司后继的个人版本实质交由Fodera论坛发布,属于Redhat公司发行的企业版Linux的实用版本,现在最新为Fodera-15)、Ubuntu-9.0(这个图形化做得非常好,类似windows,适合不搞深入编程开发的童鞋入门选用),Centos-5.5(这个适合做工作站和嵌入式开发)。具体常用的发行版本详见相关网站,或者Google,百度一下就知道了;
3.推荐两个国内优秀的Linux开源镜像,提供最新的Linux安装镜像和补丁的FTP下载(当然以往老的版本也有),自己实测迅雷下载速度达2Mbit/s以上。
搜狐镜像: http://mirrors.sohu.com/
网易163镜像: http://mirrors.cn99.com/
4.个人觉得Linux最大的优点就是开源,免费(但这是相对的),可以看到软件甚至内核的源代码,可以实现个性化的系统设计,另外,用户多,网上可用的资源也比其他系统要多得多。因而,学习的时候更要充分利用好网络,很多Linux的问题都能够早Google上搜到答案。
助工
2011-09-13 12:19 6楼
高人高人,灰常感谢补充的~~~
共6条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册]