Linux操作系统也是软件,它是用C语言写的。你到http://download.chinaunix.net/download/0007000/6156.shtml下一个版本的内核下来看看就知道了。
如果你是学习Linux操作系统的使用,比如日常使用,上网看电影,简单服务器架设等等,不需要学习C语言。推荐Ubuntu或者SUSE或者red hat。
如果仅仅是学习操作系统的原理,不需要学C,但是有了C基础,就可以直接看源码,理解的深入些。
想学好Linux系统使用的话,先搞好Linux的几十个基本命令,然后推荐学会Shell编程,它可以简化很多操作,实现很多功能。
Linux操作系统和C语言是两回事。C只是操作系统基础上的一种软件开发语言。
如果想学习Linux环境下的软件开发,也可以使用java、perl、python、ruby等语言,但是如果想开发Linux内核,必须使用C,因为它就是用C语言写的。
Linux内核中涉及底层硬件的部分是有一些汇编语言写的代码,但是用汇编开发系统太麻烦了,不学C……
学习高级编程语言的基础先学好C。不学C无可作为。特别是搞操作系统的。
这位同学,很欣赏您的学习热情。
在这里我想区分几个概念性的东西
1、linux 是一个操作系统。对它的理解和掌握要有所侧重的。这个深入的程度取决您将来的应用。如果对网络管理感兴趣,则仅仅了解linux下对网络各种协议和服务的支持即可。如果打算做开发类的,则必须熟悉c/c++以及网络编程方面的知识。如果对于linux源码及内核感兴趣,则需要了解更为深入的诸如资源管理、进程调度方面的知识。
2、学习操作系统不意味着必须进行编程。
3、汇编语言。当您需要侧重于效率或者进行反编译的场合使用的更多一些。汇编的掌握对于理解计算机指令以及效率都很有帮助。
4、计算机的学习是有个框架的,知识比较多,我建议还是从基础的理论开始,广泛涉猎,不要怕枯燥。假以时日,必将小成。
如果你要学系统管理,不一定要学编程之类的啊,如果要学深入一点的话,就涉及到的是软件了,在说你学linux只要会编SHELL就行了,这个其实也不难的,我们现在正在开始学SHELL
必然得学C