请选择 进入手机版 | 继续访问电脑版
    查看: 188|回复: 4

    [经验分享] 基于Linux五大模块的图文讲解

    [复制链接]

    签到天数: 178 天

    [LV.7]化身百千

    发表于 2018-10-9 11:10:49 | 显示全部楼层 |阅读模式
    Linux内核主要由五大模块组成:内存管理、进程调度、进程间通信、网络接口和文件系统。

            1.进程调度
            进程调度处于系统的中心位置,内核中的其它子系统都依赖于它,因为每个子系统都需要挂起和恢复进程。进程调度控制着内核中的进程对CPU的访问,使得多个进程在CPU中可以微观的串行,宏观的并行。进程调度算法有:SCHED_OTHER  分时调度策略    SCHED_FIFO 实时调度策略,先来先服务   SCHED_RR 实时调度策略,时间片轮转。

    1

    1



            2.内存管理
            内存管理的主要作用是控制多个进程安全地共享内存区域,当CPU提供内存管理单元(MMU)时,Linux内存管理完成为每个进程进行虚拟地址到物理地址的转换。一般而言,Linux的每个进程享有4GB的内存空间,0~3G为用户空间,3~4G为内核空间,内核空间对常规内存、I/O设备以及高端内存存在不同的处理方式。

    2

    2
            



        4.网络接口
          网络接口提供了对各种网络的标准的存取和各种网络硬件的支持。网络接口可分为网络协议和网络驱动程序,网络协议部分负责实现每一种可能的网络传输协议,网络设备驱动负责与硬件设备进行通信,每一种可能的硬件设备都有相应的设备驱动程序。

        5.进程通信
          Linux支持进程间的多种通信机制,包含信号量、共享内存、管道等,这些机制可以协助多个进程、多资源的互斥访问、进程间的同步和消息传递。

        Linux内核的5个组成部分之间的依赖关系如下。
        进程调度与内存管理之间的关系:这两个子系统互相依赖。在多道程序环境下,必须为程序创建进程,而创建进程的第一件事情就是将程序和数据装入内存。
        进程间通信与内存管理的关系:进程间通信子系统要依赖内存管理支持共享内存通信机制,这种机制允许两个进程除了拥有自己的私有空间,还可以存取共同的内存区域。
        虚拟文件系统与网络接口之间的关系:虚拟文件系统利用网络接口支持网络文件系统(NFS),也利用内存管理支持RAMDISK设备。

            最后用一张图总结一下

    3

    3


    签到天数: 693 天

    [LV.9]元老将成

    发表于 2018-10-9 11:49:53 | 显示全部楼层
    不错的资料
    回复 支持 反对

    使用道具 举报

    签到天数: 693 天

    [LV.9]元老将成

    发表于 2018-10-9 11:49:55 | 显示全部楼层
    不错的资料
    回复 支持 反对

    使用道具 举报

    签到天数: 693 天

    [LV.9]元老将成

    发表于 2018-10-9 11:49:58 | 显示全部楼层
    不错的资料
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    返回顶部