一.Linux内核源码目录结构

1.Linux内核特性

Linux内核的组织形式为整体式结构

Linux进程调度方式简单而高效

Linux支持内核线程

解释:(1.守护线程;在后台运行,不需要终端和登录shell和他结合在一起的进程;

2.有周期性的完成特定的任务,处理某一些事件:HD或者led等等;

3.类似于用户进程,但又不等于,像内核一样不被放出,所以运行效率比较高);

Linux支持多种平台的虚拟内存管理

解释:(为了虚拟技术的通用性,

它为不同的平台提供了一个统一的接口)

Linux的虚拟文件系统(VFS)

解释:(为逻辑文件系统提供一个标准统一的接口;

为各种硬件设备提供统一的接口;

硬件设备可以作为一种文件)

Linux的模块机制使得内核保持独立而又非常容易扩充

Linux内核网络架构模块面向对象设计思想架构

(支持多种协议,

多种网络协议程序等等)

二、Linux操作系统结构

1. Linux内核在系统的位置

(系统调用由若干的指令构成的过程,实现一些特定的服务,与一般的过程不同,区别在系统调用在内核态/内核态,一般过程在用户态)

2.Linux内核各个子系统之间关系

进程管理:控制着进程对CPU的访问操作

内存管理(MM):允许多个进程安全的共享主存区域,

支持虚拟内存(内存和硬盘交换块)。

与硬件无关:

提供进程的映射和

虚拟内存直接的对换

与硬件有关:

内存管理硬件提供一个虚拟接口

虚拟文件系统(VFS):

不同架构的硬件细节,提供一个统一的接口,支持不同文件系统。

分为设备驱动程序(为每一种硬件控制器所编写的设备驱动程序的模块)和逻辑文件系统

网络管理:

提供网络各种标准协议的存取、

各种网络硬件的支持

网络接口:

网络协议

、硬件的驱动的程序(和硬件设备通信)

进程通信:

支持进程间各种通信机制

每一个子系统都需要挂载和恢复进程,

当一个硬件完成时,就被挂起,操作真正完成时,进程就恢复完成。但一个进程需要网络发送数据包信息时,网络接口就是需要挂起到进程,直到硬件完成消息的发送,网络接口返回代码(失败,成功)/还有其他子系统

进程调度和内存管理:

相互依赖,进程间通信子系统依赖内存管理中的共享内存机制,此机制允许自己的私有内存,共同的内存区。

虚拟文件系统和网络:

利用网络管理接口支持网络文件系统,

也利用内存管理支持某些设备

内存管理和虚拟文件系统:

内存管理需要虚拟文件系统支持交换:调度程序进行调度,当一个程序的内存映射被放出时,内存管理需要向文件系统发出请求 ,同时挂起当前正在运行的进程。

所有的子系统需要共享一些资源

Linux内核源码目录相关推荐

  1. 【Linux 内核】编译 Linux 内核 ② ( 解压内核源码 | 查询当前 Linux 内核版本号 | 进入并查看 linux 内核源码目录 )

    文章目录 一.解压内核源码 二.查询当前 Linux 内核版本号 三.进入并查看 linux 内核源码目录 一.解压内核源码 将 下载的 Linux 内核源码 linux-5.6.14.tar.gz ...

  2. 【lLinux驱动】linux内核源码目录结构

    linux内核源码目录结构 代码目录结构 在阅读源码之前,还应知道Linux内核源码的整体分布情况.现代的操作系统一般由进程管理.内存管理.文件系统.驱动程序和网络等组成.Linux内核源码的各个目录 ...

  3. 【Linux 内核】Linux 内核源码目录说明 ① ( arch 目录 | block 目录 | certs 目录 | crypto 目录 | Documentation 目录 )

    文章目录 一.arch 目录 二.block 目录 三.certs 目录 四.crypto 目录 五.Documentation 目录 在上一篇博客 [Linux 内核]Linux 内核源码结构 ( ...

  4. Linux内核源码目录结构及含义

    Linux内核源码包含多个目录,每个目录有不同的含义,以linux-4.9.253源码为例: 不同的Kernel版本源代码目录组织稍有不同,内核源码下载地址: HTTP        https:// ...

  5. 【Linux 内核】Linux 内核源码目录说明 ② ( drivers 目录 | fs 目录 | include 目录 | init 目录 | ipc 目录 | kernel 目录 )

    文章目录 一.drivers 目录 二.fs 目录 三.include 目录 四.init 目录 五.ipc 目录 六.kernel 目录 一.drivers 目录 drivers 目录中存储了 驱动 ...

  6. Linux内核源码目录说明

    Linux内核源代码位于/usr/src/linux目录下,其结构分布如图1.3所示,每一个目录或子目录可以看作一个模块,其目录之间的连线表示"子目录或子模块"的关系.下面是对每一 ...

  7. linux内核源码系统调用有多少个,Linux内核源码目录介绍

    Linux的内核源代码可以从很多途径得到,我一般常常去kernel.org看看.一般来讲,在安装的linux系统下,usr/src/linux目录下的东西就是内核源代码.源码的版本号有一个非常简单的编 ...

  8. Linux内核源码目录介绍

    Linux内核目录如下: arch: 不同平台体系结构的相关代码 block:设备驱动 certs:与认证和签名相关代码 crypto:内核常用压缩算法.常用加密算法等等源代码 document:描述 ...

  9. Linux内核学习之Linux内核“源码目录”

    一.Linux内核版本前期知识介绍 : 我们先去Linux官网看看,它的网站是:kernel.org: 我们可以看到最新稳定版本已经来到了5.6.7了,不过在这之前我们稍微了解一下版本号这一串数字的含 ...

  10. 【Linux 内核】Linux 内核源码目录说明 ③ ( lib 目录 | LICENSES 目录 | mm 目录 | net 目录 | samples 目录 | scripts 目录 )

    文章目录 一.lib 目录 二.LICENSES 目录 三.mm 目录 四.net 目录 五.samples 目录 六.scripts 目录 一.lib 目录 lib 目录中存储了 C 语言标准库的子 ...

最新文章

  1. 抗击新冠肺炎,如何进行实时动态时序图谱建模与分析?
  2. PHP之Session与Cookie:存放 安全 应用场景 过期设定 依赖关系
  3. 显著性目标检测matlab代码_显著性目标检测代码全汇总!(包含2D、3D、4D以及Video)...
  4. 企业级php第三方支付平台,ThinkPHP新版企业级php第三方api第四方支付平台程序源码商业版 带接口文件等 某宝售价3000元...
  5. 如何在C++中嵌入JAVA程序
  6. 中国加氢处理催化剂行业市场供需与战略研究报告
  7. 个人源码管理,SVN本地化
  8. 软件测试实训平台 文档,软件测试实训-20210322233101.docx-原创力文档
  9. Linux init详解(转)
  10. npm常用命令及参数详解
  11. php 将日期转换时间戳,php怎么将日期转换为时间戳?
  12. 为什么要进行前后端分离
  13. redis.clients.jedis.exceptions.JedisDataException
  14. 《经济学通识》:人类会受到“东西不够、生命有限、相互依赖、需要协调”四方面的限制,影响我们的衣食住行
  15. 人体属性检测与深度实战
  16. HYSBZ - 2818 Gcd —— 莫比乌斯反演
  17. javascript——从「最被误解的语言」到「最流行的语言」
  18. c语言case什么,switch
  19. 面向对象版贪吃蛇大作战游戏创作
  20. 【VB6】如何用纯VB代码写个五子棋程序?(二)

热门文章

  1. 学校校园无盘教学系统
  2. GNS3常见BUG解决方法
  3. Github Coding Developer Book For LiuGuiLinAndroid
  4. charles抓包工具使用及手机抓包教程
  5. Linux驱动系列目录
  6. java程序设计精编教程第3版电子版课后答案_Java程序设计精编教程-(第3版)-微课版...
  7. C语言程序设计 循环结构程序设计
  8. Python编辑器--Ulipad
  9. 前端Unicode字符图标汇总
  10. linux p2p1网卡,linux下解决P2P终结者