ATS磁盘读取初始化流程:
CacheProcessor::start
CacheProcessor::start_internal
//<Main.cc:1900 (main)> traffic server running
CacheDisk::open //一个磁盘调用一次
SET_HANDLER(&CacheDisk::openStart);
CacheDisk::openStart
SET_HANDLER(&CacheDisk::openDone);
CacheDisk::openDone
SET_HANDLER(&CacheDisk::syncDone);
eventProcessor.schedule_in(this, HRTIME_MSECONDS(5), ET_CALL);
CacheProcessor::diskInitialized //直到open最后一个磁盘才执行 Cache::open 函数
Cache::open //只执行一次
eventProcessor.schedule_imm_signal(NEW (new VolInit(cp->vols[vol_no], d->path, blocks, q->b->offset, vol_clear, cp->vol_number))); //一个磁盘调用一次
VolInit::mainEvent
Vol::init //NOTE: reading directory '/dev/sdb 368640:244181087'
SET_HANDLER(&Vol::handle_header_read);
eventProcessor.schedule_imm(this, ET_CALL);
Vol::handle_header_read //NOTE: using directory A/B for '/dev/sdb 368640:244181087'
SET_HANDLER(&Vol::han
ATS磁盘读取初始化流程:
最新推荐文章于 2022-12-20 19:49:22 发布