![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux内核编程
文章平均质量分 87
永远鲜红の幼月
喜欢c++抽丝剥茧的细节,掌控程序的快感.
喜欢python方便的实现,多样的库.
展开
-
进程管理实践:load_monitor负载监控模块(笔记)
这里主要新的东西是用到了rcu锁和定时器. 打印进程信息其实没什么要过多介绍的, 只需要留意一下遍历进程用到的宏即可.rcu锁(read copy update), 顾名思义, 读, 拷贝, 更新锁. 读者不需要获取任何锁即可访问, 写者需要拷贝一个副本, 在副本上修改,在所有读操作结束之后通过一个callback回调函数将原来数据的指针指向被修改的数据. 开销更少, 适用于读多写少的情况.原创 2023-06-04 22:29:11 · 874 阅读 · 0 评论 -
进程管理(笔记)
一个程序经过gcc编译器将其编译成汇编程序,经过汇编器gas将其会变成目标代码,经过连接器Id形成可执行文件a.out,最后交给操作系统来执行。一个操作系统中可执行的程序千变万化,操作系统如何管理这些程序呢?一个程序一旦被执行, 该程序就变成了进程. 在OS看来, 每个进程是没有多大差异性的, 都被封装在一个可执行文件格式中, 通过top命令可以感知系统中个进程的动态变化。原创 2023-05-31 22:30:02 · 653 阅读 · 0 评论 -
内存管理之内存寻址(笔记)
以IntelX86结构为例,因为这是我们最为熟悉的结构之一。很多函数都是第一次使用,在这里简单介绍一下:注意内核版本!一些库函数, 内核模块编程的, 和, 内存映射的, 和, 最后是用于进程管理的. 这些库的功能上网就能轻松查到, 点进去也能看到源码, 也可以看看源码中的注释. 就不多介绍了.原创 2023-05-28 00:34:52 · 1476 阅读 · 0 评论 -
Linux内核源码中的双链表结构(笔记)
在linux/list.h中有链表的声明和初始化的宏。原创 2023-05-25 14:27:38 · 953 阅读 · 0 评论 -
linux内核结构以及内核模块编程(笔记)
先从最简单的开始,Linux内核中想要打印一个hello world,如何实现?区别于传统的C++编程,Linux内核中没有常用的库函数,因此需要做出修改。原创 2023-05-24 18:44:25 · 849 阅读 · 0 评论