日期:2014-05-16  浏览次数:20818 次

Linux高速缓存详解(二)
[高速缓存的写操作]
对高速缓存的写操作,主要来自于其它函数对高速缓存的使用。写操作的使用方式很多,例如在inode.c的write_node函数。write_node函数在调用是需要传递一个指向inode节点的指针,并且设置好这个i节点的对应的设备号和节点号。write_node函数的作用是将一个i节点的信息写入设备中(其实是写入高速缓存中)。这里摘抄部分与高速缓存相关的部分
                    if (!(sb=get_super(inode->i_dev)))
                                panic( "trying to write inode without device" );
              
                block = 2 + sb->s_imap_blocks + sb->s_zmap_blocks +
                                (inode->i_num-1)/INODES_PER_BLOCK;
                 
                 if (!(bh=bread(inode->i_dev,block)))
                                panic( "unable to read i-node block"