一张图看懂ipv6 Linux内核中哪个部分最复杂,能否给出一个复杂度排名?

[更新]
·
·
分类:互联网
4804 阅读

一张图看懂ipv6

Linux内核中哪个部分最复杂,能否给出一个复杂度排名?

Linux内核中哪个部分最复杂,能否给出一个复杂度排名?

Linux中最复杂的模块,我觉得按复杂度可以分为如下几种:
N01:网络通信Linux网络通信模块首先需要实现各种网路协议栈,IPV4、IPV6、MAC8021、无线WIFI、有线ethernet等,首先看懂这些都是一个很难完成任务。
No2:进程调动Linux进程调度的优先级策略、进程调度的算法、进程的睡眠唤醒都会直接影响一个操作系统的好坏,这直接影响你的手机或平板系统的卡顿,功耗。Linux的进程调度系统可以说很优秀的,目前安卓手机底层都是基于Linux系统的。
No3:内存管理Linux 物理内存、虚拟内存,用户空间和内核空间,这些地址映射和实现 看起来都让人崩溃。
No4:硬件子模块抽象话Linux系统是开源可移植的,为什么可移植。因为Linux系统将硬件模块底层的驱动框架全部抽象成一个个子系统,代码都是重复可迭代的。每一个硬件模块的驱动都根据统一的框架和接口来实现,这样就能实现平台的可移植性。想想硬件模块那么多种类、那么多类型,实现这个框架还是比较需要功力的。
No5:文件管理系统Linux是基于文件的系统,把设备(硬盘、软驱、光驱等)都看作文件,文件夹也看作文件。
文件与文件的关系、文件的挂载,通过文件来驱动底层硬件,这都是比较复杂的系统。
以上就是Linux中最复杂的几个模块,当然还有其它很多复杂的模块,可以一起交流一下了!

大概应该算动态模块加载吧,牵扯地方太多……

2019,你过得幸福吗?为什么?

幸福是一种心理感受,它没有客观标准.我觉得现在的生活很幸福.我的物质条件虽然不太好,但我的欲望和要求更低.正所谓知足常乐.人老了,吃不动,喝不动,跑不动,玩不动.吃一口粗茶淡饭,穿一身低档旧衣,平平淡淡,健健康康,这样安度晚年,挺好的.