Skip to main content

嵌入式linux学习

一.为什么要学linux?
当然如果没有这种必要,请不要浪费时间
二.起步
你应该为自己创造一个学习linux的环境--在电脑上装一个linux或unix
问题1:版本的选择
北美用redhat,欧洲用SuSE,桌面mandrake较多,而debian是技术最先进的linux
开发人员中用debian的最多,其次是redhat,从全球linux各应用领域市场份额来看
无疑redhat是最多的,此外还有很多出名的发行版本,不再列举。
对于初学linux的人来说,我建议是使用redhat,原因如下:
1)现在很多书都是以redhat为例讲的,为了与书本协调一致
2)周围的人都用redhat,交流比较方便
3)redhat应用范围广,有典型性和代表性
4)它易于使用和安装,我们没有必要把时间浪费在“装系统”上
而应集中精力学习最有用的东西。
//注:现在觉得RH很死板,AS,ES等用在服务器上或许不错,
Personal desktop用mandrake,debian,suse都不错,笔者现在用Mandrake,因为她长得漂亮
如果你并不打算深入学习linux,而是有诸如适应北京市政府办公平台迁移到
linux上这种需要,那么中软,红旗等中文linux是不错的选择
我强烈建议:自己亲自动手把linux装到你的硬盘上,
你必须学会独立安装linux系统的技能,对于现在的版本来说,其实跟装WinXP一样简单
从此现在开始,请不要以windows的工作方式来考虑问题,
应该尝试挖掘linux身上的“天才unix”的气质。
三.进阶
掌握至少50个以上的常用命令
理解shell管道"|",文件流重定向">"及追加">>"等
熟悉Gnome/KDE等X-windows桌面环境操作
掌握.tgz.rpm.biz等软件包的常用安装方法
学习添加外设,安装设备驱动程序(比如modem)
熟悉Grub/Lilo引导器及简单的修复操作
熟悉系统固有目录的名称及公用
学会用mount命令访问其他文件系统
了解vi,gcc,gdb等常用编辑器,编译器,调试器
学习linux环境下的简单组网
建议:买一本不需要太厚的linux教材,大致可以满足要求
//现在的书越来越多了,还带很多图,我当时可没这么多书:)
四.高级应用
澄清一些概念:
linux的普通操作与真正的系统管理不能相提并论,后者需要很多知识
我个人认为比较重要几种linux语言
1.英语
即使你不学linux,我也强烈建议你学好英文[U.S.english]
因为实质上计算机语言就是英文和字符,所谓的多国语言只是外部包装
你必须能无障碍的阅读大量的英文技术文档
在搜索引擎找到的英文网站和网页中熟练的检索
最好能有用英文直接交流的能力,
摆脱了这个障碍,你的学习和理解速度就能快很多,你就有机会拉开和别人的差距
2.shell[sed/awk]
shell是命令解释器,是内核与用户界面交流通道,shell写的小脚本有点类似于win下的.bat
但shell比.bat强大的多,shell不只是解释命令,更是一种编程语言,有时候几百行的c用shell
几十行就能代替完成工作,因为shell的工作方式建立在系统已有的众多应用程序之上
这也是CS中的一个重要思想。
此外,shell可以实现工作自动化,这个概念也比较重要
sed,awk用来处理文本,历来很常用
3.Perl/PHP
漂亮的脚本, CGI的首选,比ASP好,应用面很广
4.C\C++
C、C++是linux/unix的核心语言,系统代码都是C写的
5.ASM
系统底层及内核,硬件,设备驱动程序,嵌入式开发都需要
//走核心路线的话,个人认为c\c++,asm最重要
6.Java,Python,Tcl,XML
*系统管理篇
在熟悉linux的基础上还需要掌握至少一种unix
我首推Solaris,其次是FreeBSD
比如运营级系统一般是Solaris+Oracle/DB2之类的
学习apache,ssh,sendmail/Qmail,proftp/vsftp,Samba,Squid,MySQL/PostgreSQL/Oracle,Bind
等各种应用服务器的构架及电子商务的应用
熟悉TCP/IP协议族,学习诸如apache+php+proftp+mysql+quota的实现以及大型局域网,分布式集群
等各种企业级应用解决方案
熟悉多用户管理,数据库管理,文件系统,逻辑存储管理,日志分析,备份与灾难数据修复
系统补丁,内核升级,以及在此基础上的防火墙构架等以保障系统安全在内的各种系统管理技能
我觉得,如果在此基础上再掌握路由/交换设备便是一个不错的系统管理员 :D
各种基于linux的解决方案可参考相关书籍和文献,必要时用google或各大linux站点站内
搜索引擎寻找最新文档,以避免错误和漏洞
有几本技术大全和技术内幕我认为都是这方面不错的书
*深入学习linux
我个人理解的读linux内核需要的基础:
在此之前,希望先把应用层的东西学一下,那样会比较好理解
1.C
如果学过潭浩强的大学教科书(除了编几个数学模型好像什么也做不了的那种),
建议再看一下
《The C Programming Language》Second Edition这本圣经
/*如果想学缓冲区溢出,这点C的功力可能是不够的*/
还有,<C陷阱与缺陷>,<C专家编程>,<C\C++深层探索>
反正经典书看多了是没有坏处的:)
2.asm (AT&T语法,保护模式)
保护模式下的比较复杂,基本上每本讲内核的书都会有介绍
有80x86 Intel语法的基础就行,
有兴趣可以看看Intel的官方白皮书
3.数据结构(离散数学)
计算机专业的核心课程,重要性我就不说了
4.操作系统原理
看懂这个再去读linux吧
5.微机原理/组成原理(数字电路)
底层直接和硬件打交道,所以这个也要
6.了解linux/unix
我想至少你要会操作吧,了解unix的API
7.软件工程/编译原理
这方面的经典书去www.china-pub.com可以搜到很多
我觉得APUE这种书不适合初学者,还是先看看UPE之类的吧
APUE:
《advanced programming in the unix environment》
《unix环境高级编程》
作者:W.Richard.Stevens共有6本经典书,尊为“圣经”
他的书为全世界黑客所拜读!
UPE:《unix programming environment》
《unix编程环境》比较适合初学者的,深入浅出,
其中有一些比较重要的思想
另外,介绍linux下应用层编程的书也有很多,比如
<GNU\Linux编程指南>,redhat,redflag出的书...........
经典书还有很多很多......
操作系统:设计与实现 //交大的考研参考书目,讲Minix的
unix操作系统设计
4.4BSD操作系统设计与实现
昂莱氏unix源代码分析
ulk:understanding the linux kernel (2nd)深入理解linux内核
linux设备驱动程序 (2nd)
linux内核源代码情景分析
保护方式下的80386及其编程(次书已绝版,只有超星的电子版,如果谁能搞到纸书,清一定告诉我一下,非常感激!!!)
在这里你能明白"黑客"及"haching"一词所代表的真正意义
希望我写的这篇文章能造就更多的黑客,而不是骇客
五.一些资源
www.linuxforum.net //国内最高水平GNU站点
www.chinaunix.net //unix、系统管理的不错
www.linuxeden.com //下载软件不错
其实还有很多,包括国外的
以上内容是转载别人的
这些是关于linux的
至于嵌入式的学习,需要很高深的硬件知识
对编程和系统移植有很深的认识才行
嵌入式是一种包括了DSP及arm等最小系统板的统称
其结构也各不相同,有些是传统的冯诺依曼结构,在DSP领域大部分用的是改进的哈佛结构
学嵌入式一定要学linux,这个是很关键的环节

Comments

Popular posts from this blog

从理工科博士到金融界Quantitative Analyst

大家好,5月初UM-CSSA职业发展组邀请今年刚毕业的理论物理博士赵智沉师兄,为密大学子带来关于“从理工科博士到金融界Quantitative Analyst”的分享。现将整理好的现场录音文稿发布,供大家阅读。在此,UM-CSSA职业发展组由衷感谢赵师兄的热心支持与精彩分享,欢迎大家关注UM-CSSA及职业发展组未来的活动! 关于主人公: 他是密大高能理论物理博士,曾荣获三项省级物理数学奥赛一等奖,进入北大元培计划实验班深造 却转战于金融界Quantitative Analyst领域,斩获Credit Suisse工作offer,以及Credit Suisse, Barclays Capital和JPMorgan等3个实习offer 他是密大“甄士隐”戏剧工作坊灵魂人物、思想学术沙龙专家、国标舞&桌游发烧友 也被密大中以理工科背景转行金融行业的同学们称为自己的"祖师爷" 他有一个智慧得深沉的名字:赵智沉 赵智沉:从理工科博士到金融界Quantitative Analyst 背景经历 大家好,我的主要工作是为投行的交易做一些模型,然后用编程的方式把这些模型实现出来,给他们交易员,所以有一点像后勤保障这样的工作。我的经历可能对Ph.D更有用一些,因为我的同行都是Ph.D.,都是博士生毕业。本科生一般没有,硕士生也非常少。所以我一会儿讲下我的经历,你们就知道了。 我先自我介绍一下吧,我叫赵智沉,我现在物理系,第五年刚毕业。我是上海人,本科在北京大学元培计划实验班读的,中学是在上海中学。我属于比较典型的走物理竞赛道路的经历,从初中开始,就参加各种物理竞赛补习班,参加竞赛,然后考中学的理科班,也是搞竞赛的班级。唉,要不大家自我介绍一下先?(听众做自我介绍)看来还是Ph.D.比较多,大部分都是研究生。 这边多少人和我一样搞竞赛的?其实竞赛和高考没有太大区别,就是我们走的是不一样的途径。中学参加理科班,理科班也是参加各种竞赛。通过竞赛得奖,保送大学。在北大也是学的物理。我在北大元培实验班,当时在中国是一个比较新鲜的东西,跟美国本科很像。第一年是不选专业的,进去之后就分文理科,什么都可以修,到第二年才选专业。140分的学分可能只需要40分的专业课,其他100分可以自己修想修的课就可以毕业。所以当时这在中国算是一...

10年PostDoc待遇

http://emuch.net/html/201010/2461585.html 1.        全美高校博士后待遇相差不大,博士后第一年一般$35000左右。National lab高一些(约$70000/year),我3年前刚毕业来美时, $35000/year (材料学), 我在西南部消费很低的城市,我师妹今年初去纽约大学 $42000/year. 不知道是不是今年博士后工资涨了,但东部消费高很多,特别是房租。 2.        如果可能,来美时最好先了解一下老板的人品,特别是当老板是华人时,我很多朋友抱怨华人老板push很厉害,很累,有时没有周末,几年都不涨工资,还有的抢学生文章。 3.        J1签证前3年不交税,J2家属可以合法打工,H1签证要交税,家属不可以合法打工,如果拖家带口的,税率会很低,基本不怎么交税了【更正:我认识的H1博后是美国毕业的,他要交联邦税。我查了一下,据说从国内过来的H1前3年也免联邦税, 从国内过来的博后J1和H1的税收区别在于H1刚来就要交社会安全税(7.65%, H1一来即被认为是resident),而J1则在第三年才开始交】。所谓benefit主要是指学校给你全家(包括你,配偶和未成年子女)买健康保险。保险费很高,你只需付其中的很少一部分,学校里会付大部分作为benefit。现在主要谈谈J1的收入和福利。 4.        J1第一年和第二年 (身份non-resident alien)只交健康保险费(每年都在涨,2011年单人$590/月, 自己负责$40/月,直接从工资里扣;2个人$1252/月, 自己负责$119/月; 3人及以上家庭,$1626/月, 自己负责$221/月)。除去健康保险费,剩下的都可以拿到手。 5.        值得一提的是牙医保险和健康保险是分开的,保险费主要由个人负责(学校负责很少一部分)。自己负责的费用是$30.98/m (单人), $70.87/m(2个人), $123.12/m (3人及以上)【更正,这个是贵的牙医保险,一般不选这个,还有个比较便宜的牙医保险,只...

徐州一中老师超牛语录

下面的是众多一中学子在毕业后对母校老师经典语句的回忆,以此来纪念那段美好的青葱岁月,也表达一下众校友对母校和老师们的感恩与想念。当中很多话语是用地道的徐州话写的,相信看的懂徐州话的朋友们肯定会开怀一笑。 1、洪成:走下去......心中有个红太阳。 洪成还说:恶劣,我们来捣弄捣弄,我这么捣弄,你懂不??????? 2、数学老师:你作死,明白了没有? 3、物理老师:同学们知道,咱们学校条件不好。(其实我们学校条件好的冒泡!) 4、黄厚朴:“这是一个好题!~”、“一滴管,两滴管~~” 5、魏老师:"蓝蓝的天上白云漂,白云下面马儿跑,马儿来到我跟前,喂他一把草."(老魏特喜欢作打油诗,汗!)全班暴笑。他还有一句著名的口头语:"怪菜!"  6、刘广琴:1,你得改!!!         2,我们彼此之间的信任已经缺失了~~         3,你就是 差!!! 7、洪成:如此恶劣~~~         我说这你懂不~~~         神奇的"1"         FOLLOW我的步伐~         憨算~ 8、勤俭说,今天我们在光天化日之下召开这次毕业典礼! 9、李玲:什么是美?我站在这里就是美。 10、地理老师魏全星,虽然没教过我,但是他的口头禅太经典了:“你真菜!”后来觉得枯燥又进化成了“you are vegetable!”汗~  11、周宁生老师:你就得死(徐州话)...... 12、刘广勤:那同学就要问咯,这是怎么回事呢?  :这是什么颜色的白烟?  :这是一把铁制的钢刀 13、魏全星:真菜 !  :也菜(野菜)!!  :更菜!!! 14、吴启明:俗!一张口就是钱,真俗!  15、陈洪仁:我这么丑都能,何况你们————   16、帕克:事实上,数学是最精准的科...