我一个表弟,正在读大二,对Linux非常感兴趣,以后想往Linux方向发展,目前能熟练的操作 Linux 系统,基本上熟悉了各种命令,也能写一些 shell 脚本,平时写代码都用 Linux,基本上可以独立搭建各种开发环境,C 语言、操作系统原理学的不错,但是不知道如何才能更加深入的学习 Linux,比如 Linux 内核,驱动开发或者运维等等。所以在这里,我给大伙讲讲我的看法。
还没有毕业的朋友们,有大把的时间用来研究Linux,同时自己有足够的热情和动力去持续学习。
但是这里有一个问题,大多数并不明确自己未来的职业方向。表面上看题主是有一个远期规划的,但实际上Linux方向有无穷多个分支,各个分支的技能要求差异会非常大。
我只是简单罗列了一下我脑子里的分支,并没有仔细查证:
a)Linux的系统、网络、服务、集群、网站、网络应用方向:
1、Web应用服务器,如sina、百度等大型网站
2、Mail应用服务器,如163或外企mail系统等
3、中间件或J2EE服务器,如为JBOSS Weblogic做平台
4、网络应用等。
b)嵌入式开发、UNIX/Linux应用系统开发,Linux内核驱动开发方向,主要有以下几类:
1、Linux下的C/C++ 系统程序开发
2、Linux平台Java体系开发和PHP开发
3、Linux下的图形界面开发
4、Linux底层内核/驱动开发
5、嵌入式Linux开发等。
c)Linux下的数据库,如Mysql、oracle和windows下的SQL Server及DB2等。
你看,现在就这么多了,如果仔细查验一下会有更多。
所以,我第一条建议是,更深的了解一下自己的职业规划——做到细分比如DBA、web服务器当然不可能,但最少要有一个大的方向。
稍微懂一些Linux的朋友们,最少在日常应用上应该已经相当熟练。作为一个自己学校未开设相关课程的大学生来说,自学能力相当强。
不知道如何才能更加深入的学习 Linux,比如 Linux 内核,驱动开发或者运维等等
出现这个疑问,其实和你没有明确自己的职业方向有很大关系。不过对于大二的学生来讲,确定职业方向几乎是一个不可能完成的任务。所以我就大致的推荐一下一些必备技能,其他的可以在自己学习的过程中一点一点的去接触。
Linux知识结构图(来自CSDN):
一些相关最新视频的整理:
本视频适用于那些想要写出更快、更可靠程序的程序员。通过掌握程序是如何映射到系统上,以及程序是如何执行的,读者能够更好的理解程序的行为为什么是这样的,以及效率低下是如何造成的。粗略来看,计算机系统包括处理器和存储器硬件、编译器、操作系统和网络互连环境。而通过程序员的视角,读者可以清晰地明白学习计算机系统的内部工作原理会对他们今后作为计算机科学研究者和工程师的工作有进一步的帮助。它还有助于为进一步学习计算机体系结构、操作系统、编译器和网络互连做好准备。
这些内容足够一个不确定自己职业方向的Linux学习者用来自我提升了,如果你确定了职业方向,就应该更加针对性的学了。
附:
aminglinux84(点击复制)
需要最新视频整理,请力口上面这个棚友圈
注明头条,免费发给你们。
- 我的微信
- 这是我的微信扫一扫
- 我的微信公众号
- 我的微信公众号扫一扫