热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

学习Linux实在的东西内核

学习Linux实在的东西内核--Linux通用技术-Linux技术与应用信息,下面是详情阅读。
记得几年前我刚刚接触Linux,刚刚听说操作系统内核的概念,想起学习Linux的内核,去阅读Linux内核的源码,但一直到现在,才能走到内核的门口,速度之慢,实在是羞愧难当。这篇文章早就想写了,但是一拖再拖,也想过像那些大牛要写就写有水平的文章,而且一出就出一系列~,现在什么都不管,但是想想凡事岂能一步登天?慢慢的来吧,我的博客当作是我的学习笔记好了。

大二的时候想学习内核源码,没有专业基础的知识,去读源码的确比较盲目,但是我在应用层摸索徘徊了很长的时间,浪费了很多宝贵的时光,还有考研的一年~。Linux内核现在发展很快,已经到了2.6.23版本了,几十兆的代码,读到老死都读不完,其实想学习内核的朋友刚开始像我当时找不到方向就应该先去看书,《Linux Kernel Development》Robert Love,《Linux内核情景源码分析》毛德操老师,等等这些比较好的书,国内出版的仅推荐情景源码分析这本,在书中能很快找到方向,不要像我当年瞎子点灯一样的摸索,走的弯路太多,最好还能带着目的去学。

Linux内核主要由五大块组成:进程调度,内存管理,文件系统,设备驱动,网络子系统。

我们平时安装了Linux操作系统,但是有时候找不到源码,很多书上说在/usr/src/下可以找到内核源码,但是若你安装时没有选上或者像Fedora6那样压根没有明显的选择的安装源码,那你在/usr/src/下是找不到内核源代码的,以前的内核版本中常说内核源码储存在/usr/src/linux 目录中,你到/usr/src/用ls ?l命令查看一下,可以看见一般linux这个目录是一个连接,相当于Windows中的快捷方式,可以用命令ln ?s linux2.6.23 linux来生成(这里假设你是2.6.23的内核),如果你没有在/usr/src/下找到内核源码,不要灰心,可以到http://www.kernel.org/这个网站上下载,这是内核的官方网站,里面有各个版本的源码,要是你想要读linux0.11版本的源码,可以到邪恶八进制,在那里下到了0.11版本的内核,传说linus本人当年写完的就是那个内核)。我假设已经下载好了一个内核,到/usr/src/下解压,就可以得到内核源码,我们可以用它来编译一个新的内核给我们使用,也可以用来做其他目的,编译内核不是这里的主题,我在这里不过多讲述,有兴趣的朋友可以参考我转摘的一篇编译内核的文章或者上互联网搜索。
推荐阅读
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 在计算机技术的学习道路上,51CTO学院以其专业性和专注度给我留下了深刻印象。从2012年接触计算机到2014年开始系统学习网络技术和安全领域,51CTO学院始终是我信赖的学习平台。 ... [详细]
  • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
    本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 解决Linux系统中pygraphviz安装问题
    本文探讨了在Linux环境下安装pygraphviz时遇到的常见问题,并提供了详细的解决方案和最佳实践。 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • CMake跨平台开发实践
    本文介绍如何使用CMake支持不同平台的代码编译。通过一个简单的示例,我们将展示如何编写CMakeLists.txt以适应Linux和Windows平台,并实现跨平台的函数调用。 ... [详细]
  • 在Linux系统中配置并启动ActiveMQ
    本文详细介绍了如何在Linux环境中安装和配置ActiveMQ,包括端口开放及防火墙设置。通过本文,您可以掌握完整的ActiveMQ部署流程,确保其在网络环境中正常运行。 ... [详细]
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
  • 本文总结了2018年的关键成就,包括职业变动、购车、考取驾照等重要事件,并分享了读书、工作、家庭和朋友方面的感悟。同时,展望2019年,制定了健康、软实力提升和技术学习的具体目标。 ... [详细]
  • CSS 布局:液态三栏混合宽度布局
    本文介绍了如何使用 CSS 实现液态的三栏布局,其中各栏具有不同的宽度设置。通过调整容器和内容区域的属性,可以实现灵活且响应式的网页设计。 ... [详细]
  • 本文介绍了如何使用jQuery根据元素的类型(如复选框)和标签名(如段落)来获取DOM对象。这有助于更高效地操作网页中的特定元素。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • 本文介绍如何在 Xcode 中使用快捷键和菜单命令对多行代码进行缩进,包括右缩进和左缩进的具体操作方法。 ... [详细]
author-avatar
平凡天使zj
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有