作为一名普通的c++程序员,目前想要学习linux内核源码,想逐步阅读,需要多久才能看完linux内核源码呢?
linux 0.11的内核源码,结合下面这本书,我花了大概一个寒假(1个半月),看了一遍。
然而,现在的内核已经膨胀的不成样子了,以还不算最新的linux-4.9.229为例:
整个内核源码一共约 801M:
驱动代码占了大概一半,大约407M:
体系相关的代码大约164M:
网路子系统相关的代码29M:
文件系统相关的代码38M:
linux内核核心代码大约7.7M:
但是就这7.7M,其实你要完全看完看懂也不容易。linux内核代码涉及c语言、硬件组成原理、操作系统、数据结构和算法等,这些基础知道你都具备了吗?如果没有具备,即使看完linux内核源码,你也看不懂liux内核的精髓。
linux内核源码大而全,一个人,即使再聪明、再有精力,也不可能完全看完、看懂所有的linux内核源码。你得选择一个主线进行深入研究,这些主线可以是:
- linux内核启动过程研究
- linux驱动架构的学习和研究
- linux网络子系统的研究
- linux内存管理机制的研究
- linux调度器的学习和研究
- linux进程管理的学习和研究
- linux虚拟机制(kvm)的学习和研究
- linux内核实时化技术的研究
沿着某一个主线,深入进去,在研究清楚这个主线的同时,向其他的主线扩展、渗透和学习。由点到线、由线到面、由面到体,层层深入、不断精进,是学习linux内核源码的一个有效的方法。
关注”技术简说“,带你由浅入深学习linux内核源码。linux内核开发100讲免费教程,每周二、周四晚上9点更新视频,每周一、周三晚9点更新文章,敬请收看。进我主页点”视频“栏目即可观看。
Linux Kernel 5.0.1新鲜发布,较月初的5.0版本有哪些变化?
Linux 内核系列终于迎来了第一个小数点(5.0.1),目前它已经做好了被任何 Linux 用户和 GNU / Linux 发行版采用的准备。
3 月 4 号的时候,Linus Torvalds 才发布了 Linux Kernel 5.0,所以本次 Point Release 来得还是相当快的。
作为一个具有适度功能的“里程碑”,5.0 版内核主要加入了对 AMD Radeon GPU 的 FreeSync、Btrfs 文件系统的交换文件、面向低功耗设备的 Adiantum 文件系统加密的支持、以及改进 ARM big.LITTLE 处理器的能源管理。
Linux Kernel 5.0 还加入了对 binderfs 文件系统的支持,使得设备能够运行多个 Android 实例,支持用户数据报(UDP)协议,以实现通用接收卸载(GRO)功能,此外支持 cgroupv2 中控制器的 cpuset 资源。
现在,Linux Kernel 的首个“点发布”版本(5.0.1)已经到来,意味着新版内核已做好被大规模采用的准备。
Greg Kroah-Hartman 表示:“随着 Linux Kernel 5.0.1 的发布,所有 Linux Kernel 5.0 内核用户都应该尽快更新”。
5.0.y git 树可通过以下方式、或移步至 Kernel.org 官网获得:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.0.y
如果你想为自用架构和基于 Linux 的操作系统编译 Linux 5.0.1 内核,那现在就可以从 Kernel.org 网站下载体验了。
此外您喜爱的 GNU / Linux 发行版,也将很快向各自的软件存储库推送更新的版本。
作为一个维护更新版本,Linux Kernel 5.0.1 仅改动了 53 个文件,包含了 520 项插入和 234 项删改。
精通技术的朋友,可以参阅 Greg Kroah-Hartman 的邮件公告列表,那里附有详细的变更日志。
linux上面怎么配置tomcat?
Linux发行版本众多,不管是什么发行版本,安装和配置Tomcat 的方法都是差不多的。在服务器端主要是非桌面版的,所以我们先讲解非桌面版下安装和配置Tomcat(桌面版的会更容易)。
1、Linux下安装Tomcat
首先去Apache Tomcat官网下载Tomcat安装包,注意:
-
tomcat官网中的source包是不完整的,logs文件夹跟bootstrap.jar一些重要的文件都没有的,所以我们要选择 Binary Distributions 而不是Source Code Distributions ;
-
Tomcat版本尽可能和JDK版本保持一致,我们一般选Tomcat 8即可(JDK 1.8),下载格式选
tar.gz
包;
镜像地址可以选择 shu edu 的,这样下载会快很多。
然后解压压缩包 》然后进入解压后的文件夹,如下图示:
2、修改Tomcat配置文件(./conf/server.xml),主要修改端口号,配置如下图示:
Tomcat默认的端口是8080,我这里改成了8088,当然了,线上一般直接改为80端口,改完之后要保存文件。
然后我们在tomcat源码目录下创建一个 logs 目录存放日志(如果没有的情况下)。
3、接下来我们运行Tomcat启动脚本(./bin/),不过启动脚本前需要将 bin 目录下的所有sh文件添加执行权限,否则是无法运行sh脚本文件的。
出现了这种提示后,我们再通过命令查看8088端口是否处于监听状态,如果在监听说明Tomcat启动正常了。
4、最后我们只要将上面自定的8088端口在防火墙中开启即可。然后访问就能看到欢迎页,如图示:
从上面的步聚来看,在Linux下安装Tomcat是非常方便的,如果要修改Tomcat配置也很方便,配置文件在源包下的 conf/ 目录中,主要修改server.xml配置文件,比如说:
-
修改端口:只需要更改Connector配置节中的端口即可;
-
修改根目录:在Host配置节中添加Context配置,如下图示:
以上就是我的观点,对于这个问题大家是怎么看待的呢?欢迎在下方评论区交流 ~ 我是科技领域创作者,十年互联网从业经验,欢迎关注我了解更多科技知识!