当前位置: 首页 > news >正文

专门做进口零食的网站/想要网站导航推广

专门做进口零食的网站,想要网站导航推广,微信公众平台二次开发,wordpress萧涵主题在分析linux的VFS时, 常常要牵涉到具体的文件系统, minix文件可以说是相当小的, 对于我们分析VFS具有相当的优势. minix文件系统的物理结构: minix文件系统是一种简单而又朴素的文件系统, ext2文件系统可看成是对minix的改进,可以将每一个ext2块组看成一个微型的minix文件系统.…

在分析linux的VFS时, 常常要牵涉到具体的文件系统, minix文件可以说是相当小的, 对于我们分析VFS具有相当的优势.

minix文件系统的物理结构:

  1. minix文件系统是一种简单而又朴素的文件系统, ext2文件系统可看成是对minix的改进,可以将每一个ext2块组看成一个微型的minix文件系统.
  2. minix文件系统的块长只允许为1k(系统磁盘块为1k), 第1块为启动块, 第2块为超级块, 从第3块开始,依次为inode位图块组, 数据块位图块组, inode块组, 最后为数据块组.
  3. minix文件系统的目录项由16位inode编号和定长的文件名区域组成, inode从1开始编号,编号0标记删除的目录项, 编号1为根目录项. 目录项分为16字节版和32字节版,最长文件名分别为14和30.
  4. minix文件系统的inode分为32字节版(minix_inode)和64字节版(minix2_inode).minix_inode只有1个时戳标记, 用户组号(i_gid)为8位,它包含由9个16位字组成的二重文件索引表. minix2_inode则使用3个文件时戳,16位gid和10个32位字组成的三重文件块索引表.
  5. 根据目录项和inode尺寸的不同, minix文件系统盘分为4种格式化版本,其s_magic分别为0x137F, 0x138F, 0x2468, 0x2478.
/*
* This is the original minix inode layout on disk.
* Note the 8-bit gid and atime and ctime.
*/
struct minix_inode {
__u16 i_mode;
__u16 i_uid;
__u32 i_size;
__u32 i_time;
__u8 i_gid;
__u8 i_nlinks;
__u16 i_zone[
9]; /* 文件所占用的盘上逻辑块号数组, 7,8分别表示一次和二次间接块 */
};

/*
* The new minix inode has all the time entries, as well as
* long block numbers and a third indirect block (7+1+1+1
* instead of 7+1+1). Also, some previously 8-bit values are
* now 16-bit. The inode is now 64 bytes instead of 32.
*/
struct minix2_inode {
__u16 i_mode;
__u16 i_nlinks;
__u16 i_uid;
__u16 i_gid;
__u32 i_size;
__u32 i_atime;
__u32 i_mtime;
__u32 i_ctime;
__u32 i_zone[
10];
};

/*
* minix super-block data on disk
*/
struct minix_super_block {
__u16 s_ninodes;
__u16 s_nzones;
__u16 s_imap_blocks;
__u16 s_zmap_blocks;
__u16 s_firstdatazone;
__u16 s_log_zone_size;
__u32 s_max_size;
__u16 s_magic;
__u16 s_state;
__u32 s_zones;
};

/*
* V3 minix super-block data on disk
*/
struct minix3_super_block {
__u32 s_ninodes;
__u16 s_pad0;
__u16 s_imap_blocks;
__u16 s_zmap_blocks;
__u16 s_firstdatazone;
__u16 s_log_zone_size;
__u16 s_pad1;
__u32 s_max_size;
__u32 s_zones;
__u16 s_magic;
__u16 s_pad2;
__u16 s_blocksize;
__u8 s_disk_version;
};

struct minix_dir_entry {
__u16 inode;
char name[0];
};

struct minix3_dir_entry {
__u32 inode;
char name[0];
};

/*块读写*/
#include <linux/buffer_head.h>

struct buffer_head *sb_read(struct super_block *sb, sector_t block);
//return __bread(sb->s_bdev, block, sb->s_blocksize);
//    __bread_slow(bh)


// __getblk(bdev, block, size) ->
// __find_get_block
/*
find_get_page
map_bh: 表示此buffer_head与磁盘上的blocknr, size映射.
*/
sb_bread(sb, block) ->
    __bread(sb->s_bdev, block, sb->s_blocksize) ->
        bh=__getblk(bdev, block, size) ->
            __find_get_block(bdev, block, size) ->
                lookup_bh_lru(bdev, block, size)    //从当前CPU的lru链表中查找@bdev,@block,@size匹配的bh
                __find_get_block_slow(bdev, block)    //从@bdev设备的所有buffer_head中查找是否有@block匹配的bh
            __getblk_slow(bdev, block, size) ->
                __find_get_block(bdev, block, size)    //再次查找
                grow_buffers(bdev, block, size) ->
                    grow_dev_page(bdev, block, index, size)    //为设备增加page及对应的bh,
        __bread_slow(bh) ->
            submit_bh(bh)
            wait_on_buffer(bh)



转载于:https://www.cnblogs.com/codestub/archive/2011/08/31/2160739.html

http://www.lbrq.cn/news/1293247.html

相关文章:

  • 网站流量平台/vivo应用商店
  • 中国企业信息网/优化服务内容
  • 建设职业技术学院网站/百度推广官网电话
  • 网站推广策划的思路包括哪些内容/个人网站推广怎么做
  • 广州黄埔做网站/seo 首页
  • 随州网站建设外包公司/市场推广方案
  • 做注册任务网站源码/营销的主要目的有哪些
  • 用illustrator做网站/seo关键词优化举例
  • 公司国际网站怎么做/国内seo公司排名
  • 帮人家做网站难吗/seo推广编辑
  • 长春建设网站公司/西安做网站
  • 保山网站建设多少钱/公司网站模版
  • 湖南做网站 磐石网络引领/seo建站教程
  • 杭州网站外包/seo优化培训班
  • 房天下官方网站/广告关键词有哪些类型
  • 网站标题符号/今日疫情实时数据
  • 图标网站导航制作怎么做/网站外贸推广
  • 网站地图怎么做、/杭州网站建设 seo
  • 网站安全建设模板下载/广州网站建设工作室
  • 大数据营销工具/系统优化软件十大排名
  • 专业做网站建设公/站长seo推广
  • 红杉网站建设/aso优化排名违法吗
  • 工厂怎么做网站/搜狗搜索引擎推广
  • 聊城做wap网站服务/中国进入一级战备状态了吗
  • 石岩网站建设 0755/济南网络推广
  • 微信小程序案例展示/关键词优化快速排名
  • wordpress 替换jquery/seo是什么意思 seo是什么职位
  • wordpress 伪静态 windows/搜索引擎营销seo
  • 网站开发维护的好处/站长工具是干嘛的
  • 上线了做网站怎么样/朋友圈广告推广文字
  • 理解向量及其运算-AI云计算数值分析和代码验证
  • Pytorch01:深度学习中的专业名词及基本介绍
  • Java基础面试题
  • kafka 日志索引 AbstractIndex
  • [Python] -项目实战10- 用 Python 自动化批量重命名文件
  • Vuex 核心知识详解:Vue2Vue3 状态管理指南