内存

操作系统原理的frame就是下图定义的linux物理页

page被分为zones:


使用alloc_page()alloc_pages()获取页(struct page*) ,而用void* page_address(struct page* page)返回页的逻辑地址

  • kmalloc/kfree:内核用于申请和释放内存的方法,返回的是连续的逻辑内存
  • vmalloc:类似,但不是连续的

buddy system allocator:管理物理连续的大块内存的机制,以frame为单位
课件:从大到小二分寻找能装下自己的内存块,size从小到大查起
用free-list和bitmap巧妙实现
当有frame被free时,相邻的页面会被检查,查看能不能组成更大的空闲帧

文件

/var:多变信息,如日志
/etc:配置文件
/dev:设备,以文件形式存在这一目录下面,如/dev/sda2,表示链接的SCSI格式硬盘的第二个分区

linux的文件控制块也叫inode

符号链接: ln -s <source> <target>

VFS是文件系统互操作的实现,是介于文件系统和OS之间的媒介:

VFS的inode和文件系统中的inode不相同,VFS的inode是内存的索引节点

LKD 文件系统部分相关推荐

  1. linux 文件系统简析

    最近在看APUE,其中的一章谈到了文件系统,所以我在这里把linux 虚拟文件系统的相关内容做一个简单总结,其中会有部分源码,但不是很深入. 书接上回:http://blog.csdn.net/u01 ...

  2. LKD-虚拟文件系统

    虚拟文件系统 Unix使用了四种传统的文件系统相关抽象概念:文件.目录项.索引节点和安装点(挂载点). VFS有四类主要的对象类型,分别是: 超级块对象,代表一个具体的已安装文件系统: 索引节点对象, ...

  3. 2021年大数据Hadoop(七):HDFS分布式文件系统简介

    2021大数据领域优质创作博客,带你从入门到精通,该博客每天更新,逐渐完善大数据各个知识体系的文章,帮助大家更高效学习. 有对大数据感兴趣的可以关注微信公众号:三帮大数据 目录 HDFS分布式文件系统 ...

  4. Linux系统中创建大文件,并作为文件系统使用

    在LInux系统的使用过程中,有时候会遇到诸如某个磁盘分区的大小不够用了,导致其下的文件系统不能正常写入数据.亦或者是系统swap分区太小,不够用或者不满足条件而导致的其他一系列问题.如果我们系统上挂 ...

  5. Linux 文件系统及 ext2 文件系统

    linux 支持的文件系统类型 Ext2:     有点像 UNIX 文件系统.有 blocks,inodes,directories 的概念. Ext3:     Ext2 的加强版,添加了日志的功 ...

  6. 使用Uboot启动内核并挂载NFS根文件系统

    配置编译好内核之后,将生成的内核文件uImage拷贝到/tftpboot/下,通过tftp服务器将内核下载到开发板,使用命令:tftp 31000000 uImage.下载完成之后配置bootargs ...

  7. Bqq服务器的缓存文件放什么目录,如何使文件系统缓存失效? - How to invalidate the file system cache? - 开发者知识库...

    30 At least on Windows 7, it seems that attempting to open a volume handle without FILE_SHARE_WRITE ...

  8. 镁光ssd管理工具 linux,在 SSD 上使用 Btrfs 文件系统的相关优化

    优化挂载参数 在 Linux 中挂载 SSD 上的 btrfs,可以采用各种参数进行优化: # UUID=/btrfs defaults,ssd,discard,noatime,compress=lz ...

  9. php文本计数器源码,php 简单文本计数器[基于文件系统的页面计数器范例]

    我们的计数器经常会用到文本文件来实现,定义计数器写入的文件是当前目录下count.txt,然后我们应当测试该文件能否打开 基于文件系统的页面计数器范例 $countfile = "num.t ...

最新文章

  1. C# 常用正责表达式
  2. Juniper EX3400
  3. Renascence架构原理——遗传规划算法
  4. 【Kotlin】Kotlin 中使用 ButterKnife ( 仅用于适配 Kotlin 语言 | 不推荐新项目使用 )
  5. Java中封装的全局日期处理工具类
  6. Boost:排序的bimap双图的测试程序
  7. swift:创建表格UITableView
  8. JavaSE之Java基础(1)
  9. python3 爬虫 requests安装_BOSS直聘招聘信息获取之爬虫工具分析
  10. 内存压力测试软件_日常游戏,毫无压力,荣耀Magicbook 14锐龙版性能测试
  11. C/C++语言函数学习(3)STL中map容器
  12. php操作elasticsearch
  13. SQL 数据库操作类
  14. Node.js:express设置全局变量
  15. python sqlserver 数据操作_python上手--python操作数据库
  16. html毕业答辩ppt,毕业答辩ppt
  17. EMC信号完整性落地实测1---走出玄学
  18. html微博图片上传,如何使上传新浪微博照片更清晰
  19. 存折和银行卡的区别?
  20. 成都开发者看过来!百度资深研发工程师将出席超级账本成都见面会

热门文章

  1. html5 video css样式修改,Video controls 属性 -HTML教程,css5.net
  2. 自动化测试框架之Pytest
  3. 专题分纲目录 学习方法-学霸学习法
  4. 计算机的桌面窗户是什么,怎么设置电脑桌面便签小窗口,电脑桌面归纳事情的小窗口...
  5. openGauss数据库JDBC环境连接配置(Eclipse)
  6. 爱普生Epson Stylus Photo TX700W 一体机驱动
  7. 精细化财务管理案例-蒙牛
  8. Android怎么集成支付宝支付和微信支付功能(上)
  9. python安装docx模块_python___docx模块
  10. 明年新iphone使用增强版5nm芯片_三星5nm旗舰手机芯片新爆料!性能超高通骁龙875,明年量产...