• Linux内存体系及文件系统


    一.linux内存体系

    1. 物理和虚拟内存
      ALT
      • Linux内核只能直接映射第一个GB的的物理内存(896M,因为还要考虑到保留的空间)。在此上的内存被称作ZONE_NORMAL,这部分空间必须映射到最下面的1GB。
      • 虚拟内存寻址布局
        32位和64位架构Linux系统的虚拟寻址布局:
        ALT
        在32位架构上,单个进程可以利用的最大地址空间是4GB,这是受到了32位虚拟内存映射的限制;64位架构,因为没有内存限制存在,每个进程能够都有可能使用巨大的地址空间。
    2. 虚拟内存管理器
      • 页帧分配:页是物理内存或虚拟内存中一组连续的线性地址,Linux内核以页为单位处理内存,页的大小通常是4KB。
      • 伙伴系统:Linux内核使用名为伙伴系统(Buddy system)的机制维护空闲页,伙伴系统维护空闲页面,并且尝试给发来页面申请的进程分配页面
      • 伙伴系统分配内存页:
        ALT
      • 页帧回收:当进程请求指定数量的内存页没有可用的内存页时,内核会尝试释放特定的内存页给新的请求使用,这个过程叫内存回收.kswapd内核线程和try_to_free_page()内核函数负责页面回收.
        kswapd通常在task interruptible状态下休眠,当一个区域中的空闲页低于阈值的时候,它就会被伙伴系统唤醒。页面主要有两种用途:页面缓存(page cahe)和进程地址空间(process address space)。
      • swap:是保证操作系统可以分配超出物理内存大小的空间,但是Linux使用swap的空间的办法更加高效。

    二.linux文件系统

    1. 虚拟文件系统
      虚拟文件系统(VFS)是一个处于用户进程和各类文件系统之间的抽象接口层,VFS提供访问文件系统对象的通用对象模型(例如,i-node、文件对象、页缓存、)和方法
      • 日志
        日志系统解决了fsck工作完才能使用文件系统的问题,他先把要修改的数据写入一个叫做日志区域(journal area)的地方。
      • Ext2
        Ext2是一个简单和快速的文件系统,没有日志功能。
        Ext2的文件系统数据结构,文件系统由一个引导扇区(boot sector)开始,后面跟着块组(block groups)。
        ALT
        内核首先搜索文件的i-node,在接到进程打开/var/log/messages文件的请求时,内核分析文件路径,然后搜索/(根目录)的条目,内核会找到/var目录的i-node,然后再来看看/var目录,直到找到/var/log/messages文件的i-node。一旦内核找到了文件的i-node,然后就试着访问真正的用户数据块。
        ALT
      • Ext3
        ext3拥有:可用性,数据完整性,速度,灵活性
      • 日志模式
        日志(journal) 通过记录文件数据和元数据
        有序(ordered) 该模式下只记录元数据
        回写(writeback) 这个日志选项提供最快的数据访问能力
      • ReiserFS
        ReiserFS是一个快速的日志文件系统,具备优化磁盘空间利用率和快速的崩溃恢复功能
      • 日志文件系统
        日志文件系统(Journal File System,JFS)是一个全64位文件系统,能支持超大文件和分区。
      • XFS
        支持超大文件和分区
  • 相关阅读:
    php配置修改后,平滑启动php-fpm
    php-fpm参数调优
    php-fpm 高并发 参数调整 转
    redis分布式锁
    MySQL中group_concat函数 --- 很有用的一个用来查询出所有group by 分组后所有 同组内的 内容
    MySQL中information_schema 数据库 是干什么的
    Mysqldump参数大全 这 些参数 不同于 mysql 的那些参数(下边文章开头有链接) :2 种类型的参数含义是不一样的
    mysql命令行参数 --- 这些参数不同于 mysqldump 后的 那些参数(下边文章开头有链接) :2种类型的参数 含义是不一样的
    not found 什么时候触发
    intellJ svn控制错误
  • 原文地址:https://www.cnblogs.com/magicianyin/p/8529102.html
Copyright © 2020-2023  润新知