如何为ramdisk创建块设备节点?

如何为ramdisk创建块设备节点?

Q:如何为ramdisk创建块设备描述符?
a.申请块设备句柄
b.API_RamDiskCreate 创建 ramdisk 设备
c.API_OemDiskMount 进行挂载,mount_point 为挂载点,由于此片内存尚未格式化会挂载失败,但此时已经在/dev/blk中创建好了块设备
d.可以对块设备描述符进行fdisk remount mkfs
  1.        static PLW_BLK_DEV*      pRamBlkDev;
  2.         pRamBlkDev = (PLW_BLK_DEV *)__SHEAP_ALLOC(sizeof(PLW_BLK_DEV *));
  3.         if (!pRamBlkDev) {
  4.             _PrintFormat("ramdisk blk handle alloc error\r\n");
  5.             return (PX_ERROR);
  6.         }
  7.         ret = API_RamDiskCreate(LW_NULL, disk_size, pRamBlkDev);
  8.         if (ret != ERROR_NONE) {
  9.             _PrintFormat("ramdisk blk creat error\r\n");
  10.             __SHEAP_FREE(pRamBlkDev);
  11.             pRamBlkDev = LW_NULL;
  12.             return (PX_ERROR);
  13.         }
  14.         API_OemDiskMount(mount_point, *pRamBlkDev, 0 ,0, 1);

    • Related Articles

    • 使用xx.txt文件生成块设备节点并挂载文件系统?

      Q:如何使用txt文件生成块设备节点并挂载文件系统? a.复制内核里 ramdisk 代码 b.修改 ramdisk 函数实现,open 函数中使用 open 打开一个空文件,将空文件按照内存方式操作 c.ramdisk read 和 write 函数中原有的内存操作全部替换成 leek/read/write操作文件 c.申请块设备句柄,并创建一个文件盘 d.使用 API_OemDiskMount 进行挂载,此时挂载会失败,但是已经能够在/dev/blk下生成文件盘设备句柄 ...