虚拟文件系统(VFS)简介:superblock的synchronization

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

unsigned char s_lock;

struct wait_queue *s_wait;

上面这两个字段是用来做super block的synchronization。s_lock记录着目前super block是否被锁住,如果是,其值为1,若不是,则为0。s_wait是一个wait queue的结构,被放到queue里行程将会进入sleep的状态,直到被叫醒为止。基本,如果要改变super block的内容,需要先呼叫lock_super()锁住super block以免产生race condition。改完之后则要呼叫unlock_super()将lock释放掉。而lock_super()跟unlock_super()就是利用这两个字段来做的。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航