Linux Kernel - 探索Ram Disk 驱动(1) - 体验使用

本文介绍了Linux内核中的Ram Disk驱动,包括加载模块、初始化文件系统和挂载使用的过程。Ram Disk是内存中的虚拟磁盘,通过加载brd模块创建,并通过mkfs.ext4进行格式化。与tmpfs的区别在于,Ram Disk是块设备,需要先创建文件系统,而tmpfs是直接在内存中的文件系统。
摘要由CSDN通过智能技术生成

写在开头

我不是专业的内核玩家, 对于内核也是平时有兴趣了看一看, 这里写下来的东西主要为了把学习之路上的风景记录一二, 当然了, 如果能够给你带来帮助, 那就算是意外收获了.


代码版本

linux-4.8.4, 前不久从官网www.kernel.org刚下载的版本, 感觉内核发展好快, 目前大部分服务器用的是还是2.6的版本. 要跟上时代还是从新版的代码来看吧, 倒也不是说越新越好, 只是基于两点:

  • 新的版本会修复很多bug
  • 新的版本更能反映以后的方向

Ram Disk 简介

简单直白, 直接翻译就是内存中的 ‘磁’ 盘. 对内核来说, 磁盘的抽象概念是一个存储介质, 即可以存在传统硬盘的磁片上, 也可以存在与SSD中的flash上, 也可以存在内存中, 只要它能提供一般磁盘的接口功能即可. 在内核中, 与磁盘对应的设备是block类型, 即按照固定块大小读取数据的设备.

如何在Linux上面玩呢?

第一步: 加载模块

内核中与Ram Disk对应的驱动模块名称叫brd(Ram backed block device driver). 设置Ram Disk大小(123456K)并加载:

modprobe brd rd_size=123456

由于在我的电脑上brd模块是内置的, 无法演示动态设置大小, 如果需要设置只能通过启动参数来达到, 太麻烦了, 就用默认的参数玩吧. 模块加载后, 就可以在/dev目录下发现创建好了很多ram*的设备:

lqp@lqp-ThinkPad-T540p:~$ ls /dev/ram*
/dev/ram0 /dev/ram10

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值