【技术实现步骤摘要】
一种开机启动中通过缓存向磁盘写数据的方法和装置
本专利技术涉及计算机系统优化
,具体涉及一种开机启动中通过缓存向磁盘写数据的方法和装置。
技术介绍
现有计算机系统中,为了保持数据的一致性,具有如下开机机制:当应用层要向磁盘写入数据时,向磁盘下发写数据请求,根据该写数据请求向磁盘中排队写入系统运行所需要的数据;在数据的写入过程中,系统等待,等到将待写数据完全写入磁盘后,再对应用层进行响应;应用层接收到该响应后,才能继续执行开机程序。采用这种开机机制,应用层需要等待数据写入完成后才能继续进行开机程序,导致系统大量的开机时间耗费在等待中。经过实验验证,在大约30秒的开机时间内,系统等待向磁盘中排队写入数据的时间大约为8秒,大大延迟了系统开机时间。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的开机启动中通过缓存向磁盘写数据的的方法和装置。根据本专利技术的一个方面,提供了一种开机启动中通过缓存向磁盘写数据的方法,包括:在开机程序执行过程中,拦截应用层向磁盘发送的写数据请求,将写数据请求对应的数据存入缓存器 ...
【技术保护点】
一种开机启动中通过缓存向磁盘写数据的方法,包括:在开机程序执行过程中,拦截应用层向磁盘发送的写数据请求,将所述写数据请求对应的数据存入缓存器中;向所述应用层返回写数据成功的响应,以供所述应用层根据所述响应继续执行开机程序;当检测到所述磁盘空闲时,将缓存器中的数据写入磁盘。
【技术特征摘要】
1.一种开机启动中通过缓存向磁盘写数据的方法,包括: 在开机程序执行过程中,拦截应用层向磁盘发送的写数据请求,将所述写数据请求对应的数据存入缓存器中; 向所述应用层返回写数据成功的响应,以供所述应用层根据所述响应继续执行开机程序; 当检测到所述磁盘空闲时,将缓存器中的数据写入磁盘。2.根据权利要求1所述的方法,所述拦截应用层向磁盘写数据的请求具体为:利用系统提供的磁盘过滤功能拦截应用层向磁盘写数据的请求。3.根据权利要求1所述的方法,在所述缓存器中存入的数据具有对应的时间戳编号,所述时间戳编号是按照写数据请求发送的先后顺序进行编制的; 所述将缓存器中的数据写入磁盘具体为:按照所述时间戳编号,将缓存器中的数据写入磁盘。4.根据权利要求1-3任一项所述的方法,所述将缓存器中的数据写入磁盘进一步包括: 向磁盘的数据块写入所述数据; 向日志文件中添加写入所述数据对应的日志和日志校验码; 所述方法还包括:所述磁盘在写入所述数据的数据块中添加标记表明该数据块已经写入数据。5.根据权利要求1所述的方法,在所述将缓存器中的数据写入磁盘的过程中发生断电情况; 若所述断电情况发生在向磁盘的数据块写入所述数据、向日志文件中添加写入所述数据对应的日志和日志校验码之后,所述磁盘在写入所述数据的数据块中添加标记表明该数据块已经写入数据之前,所述方法还包括:在恢复供电之后,所述磁盘根据所述日志和日志校验码,在写入所述数据的数据块中添加标记表明该数据块已经写入数据; 若所述断电情况发生在向磁盘的数据块写入所述数...
【专利技术属性】
技术研发人员:李常坤,
申请(专利权)人:北京奇虎科技有限公司,奇智软件北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。