寒士's blog

Categories · Linux

Home

Archives

loading..
Linux Kernelnotes

Linux内核设计与实现学习笔记——ch3

进程管理-1进程管理应该可以说是操作系统最重要的部分了,几个月前学到这里也没学完就忙毕设去了,忙完毕设重新捡起来看看。 进程描述符进程描述符task_struct由很大一块组成,定义在linux/include/linux/sched.h中。 进程基本信息pid_t pid; pid_t tgid; char comm[TASK_COMM_LEN]; unsigned int __state; /* * Pointers to the (original) parent process, youngest child, younger sibling, * older sibl..

Read more
loading..
Linux Kernelnotes

Linux内核设计与实现学习笔记——ch2

获取内核源码现如今,获取Linux内核源码大家应该都会使用git吧,非常的方便,书里介绍git是过去几年才开始使用来管理linux源码的,到如今应是过去十几年了。 这里就不说如何获取内核源码了,但可以说一下我弄出来的趣事。这次为了深入学习Linux内核,我特地租了一台服务器来折腾这件事,对于一个只有2G内存的服务器,在clone内核源码时,竟然超过缓存了,直接clone不下来,在2024年确实从来没遇到过这种问题,不过在这种小内存的机器上折腾,感觉回到了过去的时代,也是在这样资源紧张的设备上,对每一个资源,内存控制的精准。当然,最后的解决办法是在我2023年的电脑上clone下来再远程传到服务器上了。 编译内核1.选择配置模块这里介绍了许多命令,来配置内核模块,因为Linux内核采用微内核的模块化设计,按..

Read more
loading..
Linux Kernelnotes

Linux内核设计与实现学习笔记——ch1

前言 很早从折腾服务器或是树莓派的时候,就想深入学习一下Linux内核,很喜欢研究一些这种底层的东西,感觉会很复杂但很深入,而且未来的工作也要和这个打交道了,所以趁着现在空闲,准备系统的学习一下Linux内核,这个系列当作自己的一个学习记录,希望能坚持学完。 这次是跟着《Linux内核设计与实现》(第三版)这本书学习的,这本书介绍的还是2.6版本的内核,目前已经迭代到6.13了,有很多内容都已经被修改了,但一是因为搜索了一下也没有其它很好的资料来介绍当前的Linux内核,二也是可以从这个勘正的过程中学到很多新的东西,了解这么修改的原因是什么,我觉得也能更深入的了解Linux内核,当然主要还是第一个原因。 Linux内核设计简介第一章的内容主要是对Linux系统的一些历史介绍,倒没有太多的东西。 众所周知..

Read more