+ -
当前位置:首页 → 问答吧 → 一个不是计算机专业的人想要学习linux内核要什么基础

一个不是计算机专业的人想要学习linux内核要什么基础

时间:2009-12-21

来源:互联网

当然不仅仅是内核,还有对一些比较低层的东西感兴趣,其实我是学电子的。但不知要有一些怎样的预备知识。所以有此一问……
我说的基础是指要先学些什么,比如操作系统,逻辑电路之类的……
大家给点意见吧,或者有什么好经验传授下,谢谢先啦!

作者: kfihihc   发布时间: 2009-12-21

1)C语言,一点汇编语言,以及CPU体系的基础知识。
2)算法,
3)操作系统。逻辑电路可以不学。
操作系统最好是有结合LINUX的。
C语言,算法是基础的重点。汇编与CPU体系的相结合的,操作系统是需要控制IO等,这对理解操作系统的不可少的,除非你不想太深如,如象我等只是大概了解的。

作者: zswlb9999   发布时间: 2009-12-23

谢谢楼上的,嗯,还有就是cpu体系的知识指的什么呢,是指令之类还是大体的了解就行了?

作者: kfihihc   发布时间: 2009-12-23

1)你所说的内核,就是一个操作系统,底层的东西,都在内核处理。操作系统就是封装了底层的东西。
1)操作系统是与CPU相关的,不同的CPU,其底层的是实现是不同的,最基本的就是启动。这部分一般都是汇编语言写的。汇编语言与具体的CPU相关。
当然,也可以读到这方面的内容是跳过,指认为其是正确的,不过问为什么。就是当其是一个黑盒子。
2)这些可以作一般的了解。需要时再深入。
操作系统大部分的都是C。
3)应当对CPU的原理有一定的认识。要读懂内核不是一件容易的事。可以从间单的学习。能了解操作系统原理,绝对是有益。

我就读不懂,没有毅力。
4)
要弄清楚学习的目的,也要估计到其困难。需要毅力。这个领域实在是太大了。
任何一个方向都可以花掉你的大半人生。
是了解性的学习,还是研究性的学习。了解性的学习,不一定要通读内核,也不一定要深入细究。可以根据不同的学习目的,选择不同的学习书籍。
即使是学习编程,也不一定要精通内核。因为,精通,这需要很长的时间。

作者: zswlb9999   发布时间: 2009-12-23

再次谢谢楼上,有点了解了……

作者: kfihihc   发布时间: 2009-12-23

电子专业,不如从 单片机 一类东西玩起,可以熟悉整个软硬件环境。
现在有不少单片机上跑的 OS,虽然有些浪费。

之后,再看 linux 内核不迟。

作者: 聚焦深空   发布时间: 2009-12-24

多谢楼上的建议

作者: kfihihc   发布时间: 2009-12-24

你到百度/Google上打以下几个字,我相信你会收获很大的.
"嵌入式Linux"
就是这几个子,把前三页都翻完...你会收获很大.自己找比别人告诉你的要好的多,最为重要的是能够 自己亲身体会 一下.

作者: brauceunix   发布时间: 2009-12-24

c语言的书如最经典的K&R<c程序设计语言>2版
数据结构的数,可以看c语言版的
ibm pc汇编
之类的书

《深入理解linux内核》3版
《深入理解计算机系统》
网上有pdf电子版
另外你是学电子的,可以从嵌入式入手

作者: showboy   发布时间: 2009-12-26

樓主其實是為興趣?還是想混飯吃的?

不同目的,答案可能大不相同。。。

作者: d00m3d   发布时间: 2009-12-26