发明名称 | 调整数据库大小的系统和方法 | ||
摘要 | 收缩数据库文件通过操作文件中的页,使得所有空页驻留在文件末端来完成。来自文件末端的非空页写入文件始端的空页中。重复这一进程正确的次数,其结果是令所有空页都驻留在文件末端。一旦达到这一结果,截断文件使得被所有空且可废弃的页消耗的空间归还给文件系统。截断文件牵涉从文件末端反向遍历文件直到找到第一个非空页。文件在最后一个非空页之后被截断。 | ||
申请公布号 | CN100445990C | 申请公布日期 | 2008.12.24 |
申请号 | CN200410047436.2 | 申请日期 | 2004.05.28 |
申请人 | 微软公司 | 发明人 | S·J·白利 |
分类号 | G06F17/30(2006.01) | 主分类号 | G06F17/30(2006.01) |
代理机构 | 上海专利商标事务所有限公司 | 代理人 | 谢喜堂 |
主权项 | 1.一种调整具有空页总数的文件大小的方法,其特征在于,所述方法包括:(a)在所述文件的最后一页开始所述文件的遍历,并向所述文件的第一页前进;(b)如果遇到的页为空,则指示所述遇到的页为跳过;(c)如果所述遇到的页非空,则指示所述遇到的页为脏;(d)在执行了步骤(b)和(c)之后,将所述跳过的页加上所述脏页的总和与所述文件中空页的总数相比较;如果所述总和小于所述空页总数,则遍历所述文件至下一页并执行行动(b)、(c)和(d);如果所述总和大于或等于所述空页的总数:将所述脏页的内容写入尚未遍历的空页;以及指示所述每一脏页和所述每一跳过的页为未分配;以及从所述文件截断所述未分配页。 | ||
地址 | 美国华盛顿州 |