如何深入了解Linux

欢迎加入运维开发技术分享QQ群:365534424;数百位业内高手和同行在等你交流

有很多朋友问我,想深入了解Linux操作系统却找不到入手点

我给大家的建议是:

  1. 学会C,C语言和*UIX是一块成长起来的,所以Linux操作系统的API都是用C语言描述的。
  2. 所以C语言是深入学习Linux的一个必备技能,大家可以看 谭浩强的那本绿皮书入门,虽然黑的人很多,但入门足矣。
  3. 然后就是一本必读书目APUE(UNIX环境高级编程),英语好的同学建议阅读英文原版《Advanced Programming in the UNIX Environment》。
  4. 下一步就是多去阅读优秀的Linux项目的 C代码。

关于第4点,在知乎上答了一个问题,意外收获很多赞,希望对大家有帮助

碰巧读过之前大家提到的一些开源项目
网络编程:

  • redis是单线程异步网络编程的范例
  • nginx是多进程网络编程的巅峰,模块化
  • memcached虽然是C++,但是C style的,多线程网络编程的巅峰

数据结构&数据库:

  • SQLite,数据理论的范例。注意要去读非合并源文件版的(为了方便编译器优化,有个单文件版的)

大杂烩类型:

找虐:

  • The BIRD Internet Routing Daemon Project,宏玩得飞起
  • Kernel,很容易挫伤初学者积极性
  • glibc、ssh,这类程序都是上个世纪的大神们的作品,从编程风格和整体架构上都属于晦涩难懂的,代码风格也是现代编程所不推荐的,建议初学者远离。
文章分类 后端, 运维开发
One comment on “如何深入了解Linux
  1. 信仰圣光吧说道:

    您好!跟您的博客申请友情链接,我们的网址是www.wanjee.cn 我们是做免费在线SaaS运维、监控平台的,方便有需要的用户到您那去学习知识!加qq2468199527详聊,或者入群37960299跟许多写运维博客的博主交流经验或者互相交换友情链接。

发表评论

电子邮件地址不会被公开。

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

在线交流

数百位业内高手和同行在等你交流
Reboot运维开发分享