可废弃文件的制作方法

文档序号:6596189阅读:452来源:国知局
专利名称:可废弃文件的制作方法
技术领域
本发明通常涉及存储器件,且更具体地,涉及在存储器件中管理文件的方法和设备。
背景技术
近年来非易失性的存储器件的使用已经快速地增长,因为它们便携且它们具有小的物理尺寸和大的存储容量。在各种设计中出现了存储器件。一些存储器件被视为"嵌入式(embedded)",意味着它们不能且不是用来由用户从它们所工作的主机设备上移除。其他存储器件是可移除的,这意味着用户可以将它们从一个主机设备(例如,从数码相机)移动到另一设备,或用一个存储器件来替换另一个存储器件。在存储器件中存储的数字内容可以来源于存储器件的主机,例如,数码相机(示例性主机)捕获图像并将它们翻译为对应的数字数据。然后,数码相机在将数字数据存储在其操作的存储器件中。在存储器件中存储的数字内容还可以来源于远程源其可以通过数据网络(例如,因特网)或通信网络(例如,蜂窝电话网络)发送至存储器件的主机,然后由该主机下载到存储器件。远程源可以是例如服务供应商或内容供应商。服务供应商和内容供应商以下统称为"发行商(publishers)"。存储器件的用户可以通过从发行商请求媒体内容或广告来自愿地下载媒体内容和广告。但是,有时,想要提高他们的收益的发行商向用户发送内容而不询问他们的许可, 且有时甚至用户不知道这样的内容已被下载到他们的存储器件了。发行商未得到用户的同意而向他们发送的内容在此被称为"主动提供的内容"。通常,主动提供的内容意图由用户在向发行商支付费用之后、或承诺支付费用之后消费。通过向用户的存储器件下载主动提供的内容,发行商希望用户将最终消费该主动提供的内容以获得费用,由此增加他们的收益。发行商不征求用户的同意而在存储器件上存储主动提供的内容并且希望该用户将消费这些内容来获得费用是在媒体发布领域中被称为〃预测寄售(predictive consignment)“的已知概念。但是,主动提供的内容可能在存储器件的用户不知道其存在或不想要消费它的情况下仍然存储在存储器件中。在存储器件中存储主动提供的内容减少了在存储器件上的可用(即,空闲)用户存储空间,这是从用户的角度不期望的。用户可能发现在存储器件中存在更少空间用于用户自己的内容(例如,音乐文件),因为其他人(即,一些发行商)已经占据了存储器件上的部分存储空间,或用户可能不得不通过删除主动提供的内容而回收(reclaim)这样占用的存储空间。对占据用户的部分存储空间的该问题的一个部分解决方案包括阻止发行商对存储器件的访问,诸如通过阻止发行商的网站。该解决方案可能对用户是可接受的,但是其从发行商的角度来说是有问题的,因为发行商将得到更少的销售额并且损失潜在的收益源。 对该问题的另一部分解决方案包括向主机发布内容(即,在这些主机的存储器件中存储内容文件),且当其变得不相关时移除该内容。换句话说,产生了该内容的发行商主动提供的内容变得不相关时从存储器件移除所存储的该内容。如果已经经过了用于主动提供内容的消费的时间,或当存在该用户不可能消费主动提供的内容的指示时,该内容被视为不相关。因此,存在解决关于主动提供的文件的问题的需要。具体地,当发行商应该被允许在进行其商业的过程中向存储器件下载主动提供的内容时,这些下载不应该对用户体验具有本质上妨碍的效果。

发明内容
因此,以下将是有益的能够当在存储器件中容纳主动提供的文件所需的存储空间对于用户的文件不需要时,在存储器件存储主动提供的文件,并且从存储器件移除主动提供的文件以便为用户文件保证最小大小的空闲存储空间。各种实施例被设计来实现这种文件管理,其例子在此被提供。为了解决上述问题,在存储器件中的存储的文件或要存储的文件在与存储器件相关联的文件系统的结构中被标记为不可废弃的或可废弃的。每个标记的文件具有与其相关联的废弃优先级别。新发行商的文件(即,主动提供的文件)只有当在存储器件中存储它不会将存储使用安全裕度缩窄至超出期望的裕度,才被允许在存储器件中存储,该存储使用安全裕度是为用户文件预留的。另一方面,用户文件即使在它们的存储将存储使用安全裕度缩窄至超出期望的宽度的情况下也被允许存储在存储器件中。但是,在这种情况下,通过从存储器件移除一个或多个可废弃文件来恢复存储使用安全裕度的期望宽度。可废弃文件在其废弃优先级别等于或高于(或低于,如在此描述的)预定废弃阈值的情况下从存储器件移除。在一些实施方式中,在主机、存储器件或两者的组合中出现的存储分配器使用主要文件分配表(FAT)和可废弃FAT、数据库、或一个或多个位置文件来在存储器件的存储区域中存储可废弃文件。主要FAT存储在簇链和可废弃文件之间的关联性,可废弃FAT、数据库或一个或多个位置文件之一指示文件的物理位置。在可废弃FAT、数据库或一个或多个位置文件中的信息被用于覆盖主要FAT中对应于可废弃文件的FAT条目。通过用可废弃FAT、 数据库或一个或多个位置文件中的信息覆盖FAT条目,FAT 32文件系统检查和修复工具将与可废弃文件相关联的簇视为被分配,而不是数据碎片(也称为孤簇),由此防止工具将可废弃文件转变为不可废弃文件。存储分配器基于主要FAT和可废弃FAT、数据库或一个或多个位置文件来管理存储器件的存储区域。可废弃文件系统另外提供基于与应用相关联的用户ID来控制应用可以进行与可废弃文件相关联的什么操作的能力。用户ID可以是标识建立了可废弃文件的应用或用户的所有者用户ID。通常,向与所有者用户ID相关联的应用提供下述能力,即定义与附加的用户ID相关联的什么应用可以访问可废弃文件以及与附加的用户ID相关联的应用可以针对可废弃文件采取什么动作。附加的用户ID可以与单个应用或单个用户相关联,或者附加的用户ID可以是与多个应用或多个用户相关的共享用户ID。
1

在附图中图示各种示例实施例,这些例子不是限制性的。将理解,为了图示的简化和清除,以下引用的图中所示的元件不一定被画成成比例的。而且,在认为适当的情况下, 可以在附图之间重复附图标记来指示相同的、对应的或类似的元件。附图中图1是根据示例实施例的存储系统的方框图;图2是根据另一示例实施例的存储系统的方框图;图3是根据示例实施例的存储分配器的方框图;图4是根据示例实施例的用于管理文件的方法;图5是根据示例实施例的用于管理在存储器件中的可废弃文件的存储的方法;图6是根据示例实施例的用于在FAT 32结构的文件系统中标记一个或多个主动提供的文件的方法;图7是与FAT 32表相关联的示例目录区域;图8是根据示例实施例的FAT 32表;图9是根据示例实施例的NTFS表;图10是根据示例实施例的基于FAT的文件系统的逻辑图像;图11示范了根据该公开的文件的存储管理方法;图12a图示示例主要FAT ;图12b图示示例可废弃FAT ;图13是用于使用主要FAT和可废弃FAT来管理存储器件的方法的流程图;图14是用于使用FAT和数据库来管理存储器件的方法的流程图;图15是用于使用FAT和位置文件来管理存储器件的方法的流程图;图16图示了包括簇链的示例FAT,其中,组成该簇链的两个或多个簇的顺序已经被打乱;图17图示了示例FAT和相关联的位置文件,其中,FAT包括簇链,其中,组成簇链的簇中的两个或多个的顺序已经被打乱;图18是用于使用FAT管理存储器件的方法的流程图,其中,组成簇链的两个或多个簇的顺序被打乱;图19是用于使用转换锁(conversion lock)来防止当可废弃文件在实现主要FAT 和可废弃FAT的文件系统中打开时转换可废弃文件的方法的流程图;以及图20图示在文件系统中的示例位掩蔽(mask)用户ID。
具体实施例方式以下的描述提供示例实施例的各种细节。但是,该描述不意图限制权利要求的范围,而是说明了本发明的各种原理和实践它的方式。为了解决主动提供的内容和相关问题,用户文件被给予了高于其他文件的存储优先级,且维持存储使用安全裕度以保证该优先级。“用户文件"是存储器件的用户意图已经资源存储在存储器中或已经同意其在存储器件中存储的文件。例如,用户向她/他的存储器件下载的音乐文件被视为用户文件。被用户请求或同意存储,用户文件被视为"恳求的"文件。“其他文件"在此被称为"发行商文件"和"主动提供的文件"。“发行商文件"是用户未请求或不知晓,至少一段时间还不知道,而存储在存储器件中的文件。用户可能不想要使用主动提供的文件。未使用的主动提供的文件趋于占用在用户的存储器件上的昂贵存储空间。因此,根据在此公开的原则,这种文件只有存储它们不缩窄存储使用安全裕度才被允许存储在存储器件中。通过维持将被保留用于未来的用户的文件的空闲存储空间 (即,存储使用安全裕度)来向用户文件呈现存储优先级。必须维持存储使用安全裕度以便保证每当需要或期望时可以在存储器件中存储用户文件。如果为了一些原因,存储使用安全裕度比期望的要窄,将从存储器件移除一个或多个主动提供的文件以便恢复存储使用安全裕度。维持存储使用安全裕度保证用于附加的用户文件的存储空间,如果这种文件被下载到存储器件。为此,主动提供的文件在存储文件系统的结构中被标记为"可废弃的",且如果需要,稍后被移除来至少回收维持存储使用安全裕度所需的空闲存储空间因为用户使用各种可废弃文件的可能性可能在一个可废弃文件和另一个可废弃文件之间不同,因此,根据诸如使用文件的可能性、与使用文件相关联的可能的收入、文件的大小、文件的类型、文件的位置、文件的使用期限(age)等一个或多个标准,预先给每个主动提供的文件(即,每个可废弃文件)分配废弃优先级别。例如,可以通过收入的潜在可能来确定废弃优先级别。根据另一例子,电影宣传片或广告将具有比实际电影更高的废弃优先级,因为用户通常不喜欢看宣传片和广告。根据另一例子,最可能被用户使用的一个或多个可废弃文件将被分配最低废弃优先级别,这意味着这种文件将是从存储器件移除的最后的(一个或多个)文件。换句话说,可废弃文件的使用可能性越高,分配给该文件的废弃优先级别的级别越低。如果即使一个或多个可废弃文件被移除了,期望的存储使用安全裕度也没有完全恢复,则将从存储器件移除附加的可废弃文件,直到期望的存储使用安全裕度被恢复。简而言之,文件系统实现用于存储和组织计算机文件的方法。文件系统包括为了存储、分层组织、操纵、导航、访问和检索数据而实施的抽象数据类型和元数据的集合。抽象数据类型和元数据形成“目录树”,通过其可以访问、操纵和启动计算机文件(在此也简称为“数据文件”或“文件”)。“目录树”通常包括根目录和可选的子目录。目录树被存储在文件系统中作为一个或多个“目录文件”。在文件系统中包括的元数据和目录文件的集合在此被称为“文件系统结构”。因此,文件系统包括数据文件和有助于访问、操纵、更新、删除和启动该数据文件的文件系统结构。文件分配表("FAT")是示例的文件系统架构。FAT文件系统与包括DR-D0S, OpenDOS, MS-DOS, Linux, Windows等的各种操作系统一起使用。FAT结构的文件系统使用集中关于哪些存储区域是空闲或被分配的以及每个文件被存储在存储器件上的哪里的信息的表。为了限制该表的大小,以称为"簇"的连续扇区的组向文件分配存储空间。随着存储器件的演化,簇的最大数量已经增加且用于标识簇的位的数量已经增长了。FAT格式的版本来源于表位的数量FAT 12使用12位;FAT 16使用16位,且FAT 32使用32位。另一文件系统架构已知为新技术文件系统(“NTFS“)。目前,NTFS是Windows NT (包括其稍后的版本 Windows 2000, Windows XP, Windows Server2003, Windows Server2008,和Windows Vista)的标准文件系统。FAT32和NTFS是可以向存储器件100提供的示例文件系统。图1示出了典型的存储器件100。存储器件100包括存储各种类型的文件(例如, 音乐文件、视频文件等)的存储区域110,各种类型的文件中的一些可以是用户文件,且其他的可以是发行商文件。存储器件100还包括经由数据和控制线130管理存储区域110的存储控制器120。存储控制器120还经由主机接口 150与主机设备140通信。主机设备140 可以是专用硬件或通用计算平台。存储区域110可以是例如NAND闪存类型的。存储控制器120通过控制例如〃 读〃,"写〃和〃擦除〃操作、磨损均衡(wear leveling)等且通过控制与主机140的通信来控制所有向/从存储区域110的数据传输和向/从主机设备140的数据传输。存储区域 110可以包含例如用户文件和发行商的文件、仅允许由授权主机设备使用的受保护数据、和仅由存储控制器120内部使用的安全数据。主机(例如主机140)不能直接访问存储区域 110。也就是说,如果例如主机140要求或需要来自存储器件100的数据,主机140必须从存储控制器120请求它。为了有助于容易地访问在存储器件100中存储的数据文件,存储器件100被提供了文件系统160。存储区域110在功能上被划分为三个部分用户区域170、发行商区域180和空闲存储空间190。用户区域170是存储区域110中存储用户文件的存储空间。发行商区域 180是存储区域110中存储发行商文件的存储空间。空闲存储空间190是存储区域110中空的存储空间。可以使用空闲存储空间190来保存用户文件或发行商文件。当在空闲存储空间190中存储用户文件时,保存用户文件的存储空间从空闲存储空间190中减去并添加到用户区域170。类似地,当在空闲存储空间190中存储发行商文件时,保存发行商文件的存储空间从空闲存储空间190中减去并添加到发行商区域180。如果从存储区域110移除 (即、删除)用户文件或发行商文件,空闲了的存储空间被添加到(其返回到)空闲存储空间 190。如果空闲存储空间190的大小允许,则存储器件100的用户可以从主机140下载用户文件到存储区域110。下载的用户文件将被存储在空闲存储空间190中,且如以上所述,保存该文件的存储空间将从空闲存储空间190减去且被添加到用户区域170。如上所述,用户文件具有高于其他(例如,发行商)文件的优先级,且为了保证该优先级,设置期望的存储使用安全裕度,且如果需要,以以下描述的方式来恢复。主机140包括存储分配器144,以有助于恢复空闲存储空间190。存储分配器144 可以是硬件、固件、软件或其任意组合。通常,存储分配器144确定向主机140传送的文件 (例如文件142)是用户文件还是发行商文件,且然后据此标记所传送的文件(即,作为不可废弃文件或作为可废弃文件)。如果存储分配器144确定向主机140传送的文件(例如,文件142)是不可废弃的,例如,因为用户是用户文件,则存储分配器144以常规的方式在存储区域110中存储该文件。如上所述,存储区域100中保存不可废弃文件的存储空间将被添加到用户区域170 或是用户区域170的一部分。但是,如果存储分配器144确定向主机140传送的文件是可废弃的,例如因为其是发行商文件,则存储分配器144标记该文件作为可废弃的。如果空闲存储空间190大于期望的存储使用安全裕度,存储分配器144也在空闲存储空间190中存储标记的可废弃文件,且如上所述,空闲存储空间190中保存可废弃文件的存储空间从空闲存储空间190中减去(即,空闲存储空间被减小),且向发行商区域180添加(该添加逻辑地显示为一个或多个可废弃文件182)。如上所述,发行商文件可能被用户使用的可能性可能在一个发行商文件和另一个之间变化,这使得具有最小使用可能性的发行商文件成为用于从存储区域110移除的第一候选。因此,除了标记文件作为不可废弃的或可废弃的以外,在可废弃文件被存储在存储区域110中之前、同时或之后存储分配器144向每个可废弃文件分配废弃优先级别。通过标记文件作为不可废弃的或作为可废弃的,由存储分配器144分配废弃优先级别,并且通过使用存储器件100的文件系统160 (或其映像),存储分配器144"得知〃在存储区域110中的用户文件和发行商文件的数量以及它们的大小和在存储区域110内的逻辑位置。知道该信息(即,文件的数量、大小和位置),且具体地基于一个或多个标记的文件,存储分配器144管理存储区域110以及请求的和主动提供的文件在存储区域110中的存储。管理存储区域110或管理在存储区域110中的文件的存储可以包括例如通过选择性地移除被标记为可废弃的一个或多个文件来恢复存储使用安全裕度,通过移除被标记为可废弃的所有文件来释放存储区域,以及将文件的簇重新映射到较低性能的存储模块。管理存储区域110或在其中存储的文件可以包括管理存储区域110或在其中存储的文件的其他、附加的、或替换的方面。存储分配器144通过向每个可废弃文件分配的废弃级别还知道可以或应该废弃 (即从存储区域110删除或移除)可废弃文件的顺序,以便恢复为未来的用户文件原始预留的空闲存储空间(即,恢复期望的存储使用安全裕度)。因此,如果用户想要在存储区域 110中存储新用户文件,但是没有足够的空闲存储空间来容纳该用户文件(这意味着存储使用安全裕度比期望的窄),存储分配器144使用被分配给可废弃文件的废弃优先级别来一个接一个反复地删除可废弃文件,以重新获得更多的空闲存储空间(即,扩展空闲存储空间190),直到期望的存储使用安全裕度被完全恢复。如上所述,完全恢复的存储使用安全裕度以高概率保证足够的空闲存储空间被预留用于未来的用户文件。只有响应于接收到存储新用户文件的请求,才从存储器件100移除或删除可废弃文件,因为考虑用户可能有时想要使用存储的可废弃文件,且因此,只有新用户文件需要容纳废弃文件的存储空间,才从存储器件移除该可废弃文件。存储分配器144可以被嵌入或并入到主机140中,或其可以驻留在主机140和存储器件100的外部(被示出为虚线框144')。存储分配器144具有存储器件100的或与存储器件100相关联的文件系统的代表性映像(image)。存储分配器144使用存储器件的文件系统映像将文件标记为不可废弃的或可废弃的,且向每个可废弃文件分配废弃级别。在一个例子中,文件系统包括FAT,且在该情况下,通过在与该文件相关联的FAT条目的未使用部分中设置一个或多个未使用的位来进行标记。因为不同的文件系统具有不同的结构,标记文件(即标记为不可废弃或可废弃的)且分配废弃级别适合于使用的文件系统结构,如以下结合图6到10详细描述的。图2是根据另一示例实施例的便携存储器件200的方框图。存储控制器220类似于存储控制器120 —样运作,且存储分配器244类似于存储分配器144 一样运作。存储分配器244可以是硬件、固件、软件或其任意组合。存储分配器244内部地与存储控制器220 合作。每当存储控制器220从主机240接收在存储区域210中存储文件的存储请求时(该
18请求包括该文件是否是可废弃文件的指示),存储控制器220通知存储分配器244该存储请求和该文件是否是可废弃的。然后,存储分配器244在与存储器件200相关联的文件系统的结构中标记该文件为不可废弃或可废弃的。通常,在主机240上运行的应用确定文件是可废弃文件,并向存储控制器220发送标志或其他指示来指示该文件是可废弃文件。在主机240上运行的应用发送标志或其他指示作为请求在存储器件上存储文件的存储协议的部分。这种存储协议的例子包括POSIX文件系统功能或java. io类树的使用。如果存储分配器244确定该新文件是可废弃的,存储分配器244根据用户的使用概率向新文件分配废弃优先级别。然后,存储分配器244评估空闲存储空间290的当前大小,且决定是否应该从存储区域210移除(S卩,删除)一个或多个可废弃文件以便为新文件安排空间。如果应该从存储器件移除可废弃的一个文件或多个文件,存储分配器244决定哪个(些)文件是用于移除的当前候选文件。然后,存储分配器244通知存储控制器220 应该从存储区域210移除的可废弃文件,响应于该通知,存储控制器220移除由存储分配器 244指示的可废弃的一个文件或多个文件。在便携存储器件200的一些配置中,存储分配器 244可以被功能性地布置在存储控制器220和存储区域210之间。在其中存储分配器244 被功能性地布置在存储控制器220和存储区域210之间的配置中,存储分配器244或存储区域210必须承担存储控制器220的一些功能。在这种配置中,存储区域210由以比快闪 NAND协议更高的级别通信的存储器单元构成。图3是根据示例实施例的存储分配器300的方框图。存储分配器300包括存储器单元310、处理器320和接口 330。存储器单元310可以保持文件系统结构、或与存储器件 (例如,图2的存储器件200)相关联的文件系统结构的映像。处理器320管理与存储器件相关联的文件系统。接口 330可以适用于与主机和存储器件的存储控制器合作,如图1中所示的,或仅与存储器件的存储控制器合作,如图2中所示的。处理器320被配置或适用于经由接口 330接收请求以在存储器件的存储区域中存储文件,且在与存储分配器300操作的存储器件相关联的文件系统的结构中标记该文件为可废弃的或不可废弃的。如果接口 330功能上附属于图2的存储控制器220 (且因此接收例如SCSI或包装的USB/MSC命令,而不是文件级别的命令),所接收的请求处于比文件级别低得多的级别。也就是说,所接收的请求将是在逻辑块地址处存储扇区的请求,当由主机适当的翻译时,该逻辑块地址将对应于文件。如果存储控制器220支持NVMHCI协议或诸如 NFS的联网文件系统协议或类似协议,存储控制器220可以得到文件级别的请求。因此,在诸如存储控制器220的存储控制器和诸如接口 330的接口之间的通信不限于NVMHCI或类似于NVMHCI的实施方式。通信接口 330可以是存储分配器300的一部分,如图3所示。处理器320还被配置或适用于向存储器件发送标记文件,将文件标记为可废弃的包括向该文件分配废弃优先级别。如果由存储器件使用的文件系统是基于FAT的,处理器 320通过向FAT中对应于标记文件的m个最高(S卩,最高有效)位(例如,m = 4)设置对应的值,向标记的文件分配废弃优先级别。设置给FAT条目中的最高有效位的对应值、或设置给NTFS目录条目的值可以是或其可以与文件的属性相关。通过"属性",意味着在FAT 表或NTFS表的头部中的元数据标签或某种数据结构,该FAT表或NTFS表包含属于在该表内存储的内容的类型的信息。“广告"、“奖励内容"和"推销(免费)内容"是可以在 FAT表或在NTFS表中存储的示例类型的内容。设置废弃级别的可替换标准是例如最后访问
19的文件、文件大小、文件类型等。专用于标记文件的FAT32条目的最高位的数量m可以是四个或少于四个,因为不使用那些位。另外,使用的位越多,则可以使用的废弃优先级别越多。例如,使用三位(即, m = 3)提供八个(23 = 8)废弃优先级别且使用四位(即,m = 4)提供十六个(24 = 16)废弃优先级别(即,包括废弃优先级别"0",其被分配给不可废弃文件)。换句话说,如果标记的文件是不可废弃的,所述处理器320将m个最高位的值设置为0,或如果标记的文件是可废弃的,处理器320将m个最高位的值设置为在1和2m-l之间的值。废弃优先级别指示标记文件可以或应该从存储器件废弃的优先级。例如,取决于实施方式,值"1"可以表示具有最低优先级或具有最高优先级的可废弃文件,且值"2m-l"可以相应地表示具有最高优先级或具有最低优先级的可废弃文件。处理器320可以根据文件的预期使用,如上结合要由存储器件的用户使用主动提供的文件的可能性或概率描述的,来向标记文件分配废弃优先级别。处理器320可以在接收到或响应于在存储器件中存储新文件的每个请求,更新标记文件的废弃优先级别。处理器320可以独立于在存储器件中存储文件的一个或多个新请求而更新给定的标记文件的废弃优先级别。例如,先前是高优先级的文件可以在一定时间段之后降低其优先级。处理器 320删除在存储器件中存储的文件,如果该文件具有与其相关的、等于或大于预定废弃阈值的废弃优先级别。处理器320可以基于文件写或添加的数量来(重新)设置废弃阈值,或取决于对存储器件上的空闲存储空间的预期使用或新发行商文件的可获得性。存储器单元310可以保存包含处理器320向在存储器件中存储的文件分配的废弃优先级别的分配表340。另外,分配表340可以保存文件的标识符和将文件与被分配给文件的废弃优先级别相关联的信息。分配表340可以另外保存废弃阈值。在分配表340中保存的信息允许处理器320标识可以从存储器件移除哪个或哪些可废弃文件以便恢复期望的存储使用安全裕度。响应于接收在存储器件中存储新文件的请求,处理器320评估在存储器件上的空闲存储空间(f)的大小,且如果存储器件上的空闲存储空间的评估大小大于预定大小,则在存储器件中存储新文件,或如果其不大于预定大小,处理器320在存储器件内搜索可以删除的一个或多个可废弃文件,且在找到这样的一个或多个文件时,处理器320删除该一个文件或多个文件来扩展当前空闲存储空间(f),以使得扩展的空闲存储空间的总大小等于或大于预定大小。如果与可废弃文件相关联的废弃优先级别等于或大于预定废弃阈值 (例如,在1和15之间(包含本数),例如15),可以从存储器件删除可废弃的一个文件或多个文件。在空闲存储空间扩展为足够之后,处理器320允许在扩展的空闲存储空间中存储新文件。通过"空闲存储空间扩展为足够",意味着通过一个接一个地释放占用的存储空间来扩张空闲存储空间,直到总的空闲存储空间可以容纳新文件而不缩窄上述期望的存储使用安全裕度,或等价地直到扩展的空闲存储空间的总大小等于或大于预定大小或直到移除了所有可废弃文件。控制器320可以是标准的成品芯片上系统(“SoC”)器件或系统级封装(“SiP”, System-in-Package)器件或通用处理单元,具有当被执行时进行在此描述的步骤、操作和评估的特定软件。或者,处理器320可以是通过使用硬件实现在此描述的步骤、操作和评估的专用集成电路(“ASIC”)。图4是根据一个示例实施例的用于存储可废弃文件的方法。图4将结合图1描述。 在步骤410中,主机140接收在存储器件100中存储文件142的请求。在步骤420中,存储分配器144标记该文件为"可废弃的"或"不可废弃的",且在步骤430中,如果空闲存储空间190足够大,则向存储器件100的存储控制器120发送标记文件(即,用于在存储区域 110中存储)。也在向文件分配废弃优先级别的意义上标记文件。在步骤440,存储分配器 144基于标记的文件以及可选地基于已经被标记的一个或多个文件来(通过与存储控制器 120通信)管理存储区域110或在存储区域110中存储的文件。图5是根据一个示例实施例的用于管理在存储器件中的可废弃文件的存储的方法。将与图1相关联地描述图5。新文件是用于在存储器件100中存储的候选者。得知了存储器件100的文件系统160的当前映像,存储分配器144在步骤510评估空闲存储空间190的当前大小"f "来查看当前大小是f的空闲存储空间190是否能够容纳该新文件 (即,作为存储的候选者的文件)。通常,存储分配器144处理新的文件的方式取决于新文件是用户文件还是发行商文件。因此,存储分配器144首先确定新文件是用户文件还是发行商文件。新文件是用户文件在步骤520,存储分配器144检查空闲存储空间190是否能够容纳新用户文件。如果空闲存储空间190能够容纳新用户文件(在步骤520中示出为"Y"),存储分配器144 在步骤560中在空闲存储空间190中存储新用户文件,而不考虑期望的存储使用安全裕度是否由于存储新用户文件而被缩窄。如果期望的存储使用安全裕度在存储分配器144在空闲存储空间190中存储新用户文件之后变窄(即,相对于期望的存储使用安全裕度),存储分配器144不针对新用户文件的存储采取进一步的动作。但是,如果期望的存储使用安全裕度在存储分配器144在空闲存储空间190中存储新用户文件之后变窄,步骤550包括附加的步骤,其中,存储分配器144确定哪个所存储的可废弃文件应该首先被删除,哪个可废弃文件应该其次被删除,等等,以便维持期望的存储使用安全裕度。存储分配器144基于存储分配器144向所存储的可废弃文件分配的废弃级别来确定哪个可废弃文件应该首先被删除,哪个可废弃文件应该其次被删除,等等。如果在步骤520存储分配器144确定空闲存储空间190不能容纳新用户文件(在步骤520中示出为"N"),则存储分配器144在步骤530中确定空闲存储空间190和由可废弃文件消耗的存储空间组合时是否足够用于存储新用户文件。如果组合的存储空间不是足够的(在步骤530中示出为"N"),这意味着不管将删除多少可废弃文件,新用户文件由于其较大的大小都不能被存储在"非用户"储存区域。如果组合的存储空间足够(在步骤530中示出为"Y"),存储分配器144在步骤540中在所存储的可废弃文件中搜索哪个可废弃文件可以被删除以便释放足够的存储空间用于新用户文件。存储分配器144通过使用存储器件100的文件系统来搜索这些可废弃文件,因为如上所述的,存储分配器144在存储器件的文件系统中将文件标记为不可废弃的或可废弃的。另外,由存储分配器144向标记文件分配的废弃级别也被嵌入到存储器件的文件系统中,以便每个废弃级别与对应的标记文件相关联。在找到应该首先被废弃的可废弃文件(“DF")(该文件以下被称为"DFl")
21时,存储分配器144删除文件DFl以便将其存储空间(该存储空间以下被称为"SPl")添加或返回到存储空间190。然后,在步骤550中,存储分配器144检查扩展的空闲存储空间190(即,空闲存储空间190加上最近返回的存储空间,或f+SPl)是否能够容纳新用户文件。如果扩展的空闲存储空间190(即,f+SPl)仍然不能容纳新用户文件(在步骤550中示出为"N"),存储分配器144反复地重复步骤550(该反复在555处示出)以便返回附加的存储空间到空闲存储空间190 (即,通过找到并删除应该被删除的下一可废弃文件)。在找到具有次最高的废弃优先级的下一可废弃文件(该下一可废弃文件以下被称为"DF2")时,存储分配器144删除文件DF2以便释放并添加附加的存储空间(该附加的存储空间以下称为"SP2")到空闲存储空间190。然后,在步骤550中,存储分配器144 再次检查扩展的空闲存储空间190(即,空闲存储空间190加上两个最近释放的存储空间, 或f+SPl+SP2)是否能够容纳该新文件。如果扩展空闲存储空间190(即f+SPl+SP2)仍然不能容纳该新文件(在步骤540中示出为"N"),则存储分配器144再次重复步骤540以便找到应该被删除的下一可废弃文件。存储分配器144重复步骤540和550直到累积的空闲存储空间190能够容纳该新用户文件(在步骤550中示出为"Y")。然后,在步骤560 中,存储分配器144在存储区域110中存储该新用户文件。如上所述,如果实际的存储使用安全裕度在存储分配器144在空闲存储空间190 中存储新用户文件之后变得比期望的存储使用安全裕度要窄,步骤560可以包括附加的步骤,其中,存储分配器144确定哪个所存储的可废弃文件应该首先被删除,哪个可废弃文件应该其次被删除,等等,以便恢复期望的存储使用安全裕度。新文件是发行商文件如果新文件是发行商文件,只有空闲存储空间190能够容纳该新发行商文件而不缩窄期望的存储使用安全裕度,存储分配器144才在存储区域110中存储(在步骤560中) 该新发行商文件。也就是说,如果存储新发行商文件将导致缩窄期望的存储使用安全裕度, 则存储分配器144可以决定不在存储区域110中存储该新发行商文件。在这种情况下,存储分配器144可以避免对该文件采取任何动作,且不从存储器件中删除文件来为新发行商文件释放空间。可选地,存储分配器144可以在步骤540中删除一个或多个更高优先级的可废弃文件以便为具有较低废弃优先级的可废弃文件释放存储空间。如上所述,文件在存储器件100的文件系统中被标记且废弃级别被嵌入到存储器件100的文件系统中,且文件被标记的方式和被嵌入到文件系统中的废弃级别取决于或可以适合于所使用的文件系统。图6是根据一个示例实施例的用于在FAT 32结构的文件系统中标记主动提供的文件的方法。FAT 32结构的文件系统使用簇。如上结合FAT 32结构的文件系统所述,用于标识FAT 32簇的位的数量是32。图6将与图1相关联地描述。在步骤610中,FAT 32的每个簇的32位的m个最高位(其中m彡4)被分配或专用于根据具体情况将文件标记为不可废弃的或可废弃的,以及用于为每个可废弃文件保存对应的废弃级别。向文件分配废弃级别通过对对应于标记文件的分配的m位设置对应值来进行。在步骤620中,存储分配器144评估存储器件100的用户将使用该主动提供的文件的可能性级别。使用该文件的可能性的评估可以以寄售文件领域的技术人员已知的各种方式来实现。例如,使用该文件的可能性的评估可以基于监视使用存储器件的人的位置,和 /或监视的用户的先前体验和偏好。使用该文件的可能性的评估还可以基于例如在FAT表或NTFS表内存储的内容的类型(例如,“广告内容",“奖励内容",“推销(免费) 内容"等)。存储分配器144可以使用替换的或附加的标准来评估将使用该文件的可能性。 例如,它可以使用一个或多个文件的属性或特征,所述属性或特性可以是、或关联于最近访问的一个或多个文件、文件大小、文件类型等。在存储分配器144评估用户将使用主动提供的文件的可能性的级别之后,存储分配器144在步骤630中分配与主动提供的文件的使用的评估的可能性级别对应的废弃优先级别。由存储器件100的用户使用主动提供的文件的可能性越大,废弃级别越低。如果m等于四位,这意味着废弃范围提供从1 (即0001)到15 (即1111)的15个废弃级别。也就是说,将向每个不可废弃文件分配废弃级别0,向具有最低废弃优先级的可废弃文件分配废弃级别1,且向具有最高废弃优先级的可废弃文件分配废弃级别15。在存储分配器144向主动提供的文件分配对应的废弃级别之后,存储分配器144在步骤640中向与主动提供的文件相关联的簇的四个最高位分配在1和15之间的对应值。如果主动提供的文件具有与其相关联的两个或多个簇,在每个簇中的四个最高位被设置为相同值。在步骤650中,检查主动提供的文件是否是需要被评估的最近的文件。如果主动提供的文件不是需要被评估的最近的文件(在步骤650中示出为"N"),以上述方式评估另一文件。如果主动提供的文件是需要被评估的最近的文件(在标准650中示出为"Y"),主动提供的一个或多个文件被发送到存储器件,并且对于每个该文件具有在步骤640中设置了值的m位。图7是与FAT 32表相关联的示例目录表700。目录表700仅是用于图示的部分表,且如此,表700未示出FAT目录条目的所有字段。目录区域700保存在相关文件系统中存储的文件的细节,诸如文件名称、文件大小和每个文件在相关存储空间中的何处开始。文件的细节被保存在以下字段中。字段710保存在相关文件系统中存储的文件的盘操作系统 (“DOS")文件名,字段720保存文件的扩展名,字段730保存文件的各种属性,字段740保存文件的第一簇号(“FCN")的高16位字,字段750保持存文件的第一簇号(“FCN") 的低部分,且字段760保存文件的大小。每个FCN号指示文件可以被找到的第一逻辑簇。目录区域700的第一条目保存用于称为"REALFILE"的示例文件的信息(在770 处示出)。REALFILE 770具有文件扩展名"DAT",其FCN是"00000002"(在755处示出)且其大小是"000024E4"。在表700中的数字以十六进制值示出。作为标准的一部分,属性值"00"(在780处示出)和"20"(未在图7中示出)指的是"常规"文件, 而属性值"02"指的是在文件系统中隐藏的文件。文件名"\xE5Consign"指示删除的文件,而〃 \xE5〃意味着文件名的第一字节的值在十六进制中是E5。通过示例,FCN号0000 0002 (在755处示出)指定文件REALFILE的第一簇。图8是根据示例实施例的FAT 32表800的示例部分。FAT32表800被示出为双字(“DWORD")阵列,且值是十六进制的值。参考数字810指示保存FAT32表800的器件的类型,其中"F8"指的是硬盘。FAT32表800包括被指定为簇#1(在820处示出),簇 #2(在825处示出),..,和簇#23(在830处示出)的23个簇。图8将与图7相关联地描述。FAT32表800中的簇可以是文件的第一簇,或其可以指向文件的下一链接的簇,或其可以是文件结束(“EOF")指示。再次参考目录区域700,REALFILE的第一 FCN (在770处示出) 是〃 00000002〃(在755处示出),其指向图8的表800中的簇#2。如图8所示,簇#2的值(S卩,值"000 0003")指向簇#3(在840处示出),其是下一个文件的簇。类似地, 簇#3的值(即"0000 0004")指向簇#4,其是下一个文件的簇。簇#4具有值"OFFF FFFF“ (“ F〃是表示十进制值〃 15〃的十六进制数字),其中〃 FFFFFFF"(在850处示出)表示文件的EOF指示,且零值(在860处示出)表示废弃级别0。因此,文件REALFILE 具有与其相关联的三个簇(即,簇#2,簇#3,和簇#4)如上所述,废弃级别0被分配给不可废弃文件。注意,具体文件的每个簇的最高有效十六进制数字被设置了分配给该文件的相同废弃优先级别。例如,文件REALFILE已经被分配了废弃级别"0",且因此,簇#2,#3,和#4的最高有效十六进制数字具有该值 (即,值〃 0〃,“ 0〃值被加了下划线)。根据另一例子,其FCN是文件〃 0000 0005〃 的"E5C0nsign"(如在图7中示出的)被分配了废弃优先级别"1"。因此,属于该文件的簇#5到12的每个的最高有效十六进制数字具有值"1"(例如在870处示出)。换句话说,根据本公开,最高有效十六进制数字(或,等同地,与具体可废弃文件相关联的簇的四个最高有效位)被设置为与被分配给该具体文件的废弃优先级别对应的相同值。如上所述,用于指示废弃优先级别的最高位的数量m可以不同于四(S卩,m彡4)。图9是根据示例实施例的NTFS表900的示例。NTFS表900保存文件的细节,诸如文件名称、文件大小等。NTFS表900包括保存根据"正常"数据流而改变的文件的"常规"数据(例如数据920)的数据字段910。根据本公开,NTFS表900还包括"废弃信息" 字段915用于保存每个评估的文件的废弃信息(例如,废弃信息930)。废弃信息字段915还可以包括除了废弃优先级别以外的信息。例如,废弃信息字段915可以包括属于供应该文件的服务器的信息和文件必须被废弃的过期时间。不像基于FAT的文件系统,在基于NTFS 的文件系统中,被分配给可废弃文件的废弃值不限于由一组位规定的最大值。这意味着废弃值的范围可以自由地选择。例如,废弃值的范围可以从1到25。NTFS是示例的非FAT文件系统。通常,可以在对应于标记的文件的基于非FAT的文件系统条目中的数据字段设置对应的废弃值。图10是根据示例实施例的存储器件的文件系统1000的逻辑布置。存储分配器 (例如,图1的存储分配器144)可以保存其操作的存储器件的文件系统1000或文件系统 1000的映像,或者存储分配器可以具有对文件系统1000的访问。文件系统1000包括引导部分1010、与文件系统1000相关联的FAT 1020、目录表 1030、文件区域1040和可废弃文件区域1050。FAT 1020包括包含可废弃文件的废弃优先级别的可废弃文件分配区域1025。目录表1030包括用于访问在存储器件中存储的任何文件(即,可废弃文件和/或不可废弃文件)的访问信息。文件区域1040包含不可废弃文件。 索引和数据库区域1045保存可废弃文件的索引,以及与可废弃文件相关联的元数据。在索引和数据库区域1045中保存的索引和元数据用于计算废弃级别,但是在实际的废弃处理不需要它们。可废弃文件区域1050保存可废弃文件。图11示范了根据本公开的文件管理方法。图11将与图1相关联地描述。假设, 在时间T0,两个用户文件(即,文件"Fl"和"F2")初始地被存储在存储区域110中。因为文件"Fl"和"F2"是用户文件,因此它们被存储在用户区域170中,且由存储分配器144向它们分配的废弃级别是零。因为存储区域110的总存储容量是T(在1110处示出),且文件Fl和F2被存储在存储器件100中,剩余空闲存储空间190的大小(见图1)是 f (在1120处示出)。假设发行商想要在存储区域110中存储三个主动提供的文件。如上所述,存储分配器14评估在存储器件100中的空闲存储空间190的大小(或在1120处的 f)以便确定在存储区域110中存储发行商的三个主动提供的文件是否不会缩窄为未来的用户文件预留的期望存储使用安全裕度(在1130处示出)。如果存储发行商的三个主动提供的文件将缩窄存储使用安全裕度1130(即,期望的存储使用安全裕度),存储分配器144 将避免存储这些文件。在该例子中,存储分配器144确定发行商的三个主动提供的文件可以被存储在存储区域110中而不减少存储使用安全裕度1130。因此,在时间Tl,存储分配器144允许存储控制器120在存储区域110中存储发行商的三个主动提供的文件。这三个发行商的主动提供的文件被指定为〃 Pl",“ P2",和〃 P3"。存储分配器144还确定文件Pl,P2,和 P3将被存储器件100的用户使用的概率,且向这些文件中的每个分配对应的废弃级别。然后,存储分配器144在FAT表(如在图8中示范的),或在NTFS表中(如在图9中示范的), 存储被分配给文件的废弃级别。在时间T2,存储器件100的用户想要在存储区域110中存储另外两个文件(即,文件"F3"和"F4")。存储分配器144重新评估在存储器件中的空闲存储空间190的大小 (或在1120处的f),以便确定在存储区域110中是否存在足够的存储空间来存储这些另外的文件(即,文件F3和F4)。在该例子中,存储分配器144确定当前的空闲存储空间能够容纳文件F3和F4。因此,在时间T2,存储分配器144允许存储控制器120在存储区域110中存储文件F3和F4。因为文件F3和F4是用户文件,因此文件F3和F4将被存储器件100的用户使用的概率是不相关的,因为用户文件具有比发行商文件高的存储优先级,而不管用户将使用文件F3和F4多少次,如果使用的话。因此,存储分配器144向文件F3和F4分配废弃级别"0",且在FAT表(如在图8中示范的)或在NTFS表中(如在图9中示范的)存储被分配的废弃级别在时间T3,存储器件100的用户想要在存储区域110中存储另一文件(即,文件"F5")。存储分配器144再次评估在存储器件100中的空闲存储空间190的大小(或在1120处的f),以便确定在存储区域110中是否存在足够的存储空间来存储该另一文件 (即,文件F5)。在该例子中,存储分配器144确定当前的空闲存储空间能够容纳文件F5。因此, 在时间T3,存储分配器144允许存储控制器120在存储区域110中存储文件F5。如图11 所示,存储用户文件F5缩窄了存储使用安全裕度。也就是说,在文件Fl到F5和Pl到P3 被存储在存储区域110中之后在存储区域110中剩余的空闲存储空间f小于存储使用安全裕度1130。因此,存储分配器144通过移除发行商的文件(S卩,PI, P2,和P; )之一来复原 (reinstate)或恢复存储使用安全裕度,因为如上所述用户文件具有最高的存储优先级。如上所述,由存储分配器144基于存储分配器144分配给每个存储的可废弃文件的废弃优先级别,来作出应该从存储区域110移除哪个发行商文件或哪些发行商文件的决定。返回到图11,假设在存储的发行商文件Pl到P3之间,发行商文件P3被分配了最高的废弃优先级别(例如,13)。因此,在时间T4,从存储区域110移除文件P3,因此扩大了空闲存储空间190。因为在时间T4时的空闲存储空间190的大小(在1120处的f)大于存储使用安全裕度1130,因此不再需要移除发行商文件。存储器件100的用户可能想要移除一个或多个用户文件。在时间T5,用户移除了他的文件的两个(即,文件F4和冊),因此进一步扩大了空闲存储空间190。文件F4和F5 的移除与空闲存储空间190或存储使用安全裕度的大小无关,因为如在此陈述的,通过移除所需要的数量的可废弃文件来进行重新获得空闲存储空间或恢复存储使用安全裕度。假设,发行商想要在存储区域110中存储另一主动提供的文件。如上所述,存储分配器144评估空闲存储空间190的大小(在1120处的f)以便确定在存储区域110中存储发行商的主动提供的文件是否将不缩窄存储使用安全裕度1130。如果存储发行商的新的主动提供的文件将缩窄存储使用安全裕度1130,则存储分配器144将避免存储该文件。在该例子中,存储分配器144确定发行商的新的主动提供的文件(S卩,文件"P4")可以被存储在储存区域110中,而不减少存储使用安全裕度1130。因此,在时间T6,存储分配器144允许存储控制器120在存储区域110中存储发行商的文件P4。存储分配器144还确定文件P4将被存储器件100的用户使用的概率,并向该文件分配对应的废弃级别。然后,存储分配器144在FAT表(如在图8中示范的)或在NTFS表中(如在图9 中示范的)存储被分配给文件P4的废弃级别。存储新发行商文件和新用户文件以及移除所存储的文件的处理可以当每次向存储器件110添加新文件时继续,存储分配器144评估空闲存储空间190的当前大小,并确定必须从存储区域110移除哪个发行商文件或哪些发行商文件(如果要移除的话)。向可废弃文件分配废弃级别可以基于用户体验或偏好、基于用户的全球定位系统 (“GPS")位置、和/或基于其他标准。例如,如果存储器件的用户好像(基于先前的用户体验)喜欢某种类型的音乐,则如果发行商的文件包含用户最喜欢的音乐类型之一的音乐,存储分配器可以向该文件分配相对低的废弃优先级别(例如,在1到15的数值范围内的3)。但是,如果用户不喜欢发行商的音乐(即,基于先前用户体验),存储分配器可以向相关的发行商文件分配较高的废弃优先级别(例如,在1到15的数值范围内的12)。用于向可废弃文件分配废弃级别的标准可以包括文件的预期使用、与使用文件相关联的预期收入、文件的类型、文件的大小、文件在存储器件中的位置、文件的使用期限和在此指定的其他标准或参数。其他标准无论单独或结合在此描述的任意标准,可以类似地使用,且可以使用一个或多个标准来进行废弃级别的分配。另外,可以使用不同标准来向不同可废弃文件分配废弃级别。在另一例子中,如果发行商想要向用户发送依赖于位置的广告(即,关于特定位置内呈现的产品或服务的广告),则存储分配器可以向发行商的广告分配根据用户的改变的位置而改变的废弃优先级别。也就是说,用户离特定位置越远,废弃级别将越高,因为通过远离具体位置,可以假设用户对于消费在特定位置处呈现的产品或服务不感兴趣。如上所述,在FAT中记录可废弃文件的簇链,用标志将与FAT32条目相关联的文件标识为可废弃文件。通常,该标志在每个FAT32条目的四个最高有效位中。因为簇链可以被分配给可废弃文件,但不具有与它们相关的不可废弃文件,因此可能诸如chkdsk或fsck. Vfat的工具将可废弃文件转变为不可废弃文件,也称为"真实"文件,由此降低文件系统 160的安全性。另外,存在风险一些FAT恢复工具将复位在FAT32条目中的可废弃文件的标志。FAT32文件系统检查和修复工具通常单步调试(st印through)文件系统,且施加规则以便修理常见错误。通常,这些工具可以在FAT中查找在目录表内的第一簇号(FCN)列中不具有对应的条目的簇链。这些工具将在FAT中的不具有任何目录或文件条目的簇分配作为未计入的数据分段(已称为孤簇(orphan clusters)),且这些工具可以删除这些孤簇或在目录表中建立对应的文件条目。因为在此描述的可废弃文件系统可能利用什么将被另外考虑为孤簇,因此这些工具可能错误的将可废弃文件转变为不可废弃文件,或整个移除可废弃文件。为了解决这些问题,在一些实施方式中,存储分配器144可以将可废弃文件与主要FAT中的簇链相关联,其中,该簇链隐藏可废弃文件的物理位置,且存储分配器144在可废弃FAT、数据库或一个或多个位置文件中存储该文件的物理位置。通常,可废弃FAT、数据库或一个或多个位置文件对主要FAT来说不可见,且在一些实施方式中,与可废弃FAT、数据库、或一个或多个位置文件相关联的属性可以被启用,以防止主机操作系统访问该可废弃FAT、数据库或一个或多个位置文件。如之前提到的,FAT32中的每个条目是32位,但仅使用较低的观位。通常,高四位被预留且被设置为零。(需要FAT32的兼容实施方式以当高四位被设置在分配的簇上时忽略高四位,且当写新的FAT条目时设置高四位为零)。用与文件相关联的每个簇链的FAT 条目的高四位内的标志来区分可废弃文件与不可废弃文件。标准FAT32驱动器将可废弃文件看作分配的空间,且不在它们之上写。但是,存储分配器144可以周期性的进行操作、诸如参考图5所描述的那些,以便在存储器件110中维持空闲空间分配,且可以恢复被分配给可废弃文件的空间。通过使用主要FAT以及可废弃FAT、数据库和一个或多个位置文件中的至少一个, 可以扩展主要FAT。当扩展的主要FAT结合在文件分配表查找逻辑中的分支使用时,以便如果FAT条目的高四位是非零,使用在反映可废弃文件的物理位置的可废弃FAT、数据库或一个或多个位置文件中的信息以替代在主要FAT中的FAT条目。由于在可废弃FAT、数据库或一个或多个位置文件中的信息覆盖主要FAT的FAT条目中的值,因此诸如chkdsk和fsck. vfat的工具将不会转变可废弃文件为不可废弃文件,因为这些工具将看到可废弃文件的簇与可废弃FAT、数据库或一个或多个位置文件中的目录或文件条目相关联。而且,FAT恢复工具将不会复位FAT32中的指示文件是可废弃文件的标志,因为诸如chkdsk和fsck. vfat 的工具将看到与可废弃文件相关联的簇与可废弃FAT、数据库或一个或多个位置文件中的目录或文件条目相关联,而不是看作为空闲空间。当文件系统160利用主要FAT 1200和可废弃FAT 1201存储已经被标记为可废弃文件的文件时,存储分配器144更新如图1 所示的主要FAT 1200来将被分配给可废弃文件的簇链1202与该文件相关联。通常,簇链1202可以具有与簇链1202相关联的可废弃文件相同的大小或大于该可废弃文件。在一些实施方式中,簇链1202标记可废弃文件在主要 FAT中的物理位置。通常,如上参考图7和8描述的,在条目1204中开始的簇链中的每个簇指向簇链1202的下一顺序的簇,直到诸如条目1206中示出的IFFF FFFF的值指示簇链1202的结尾。但是,在其他实施方式中,簇链的每个簇可以具有诸如1FFFFFFF的值,指示簇是单独分配的簇,而不是指向簇链的下一顺序的簇。簇链1202的第一条目1204指向在可废弃FAT 1201中的对应条目1208,如图1 所示。如以上参考图7和8描述的,对于每个文件,在可废弃FAT 1201内的簇链1202中的每个簇指向文件的下一顺序的簇,直到诸如条目1210中示出的IFFF FFFF的值指示文件的 EOF。应该理解,一个簇链1202可以与一个以上的文件相关联。例如,如图12b所示,簇链1202对于第一文件1212包括从簇#6 (元素1208)到簇#9 (元素1210)的第一组簇,且对于第二文件1214包括从簇#10到簇#11的第二组簇。另外,应该理解,主要FAT 1200和对应的可废弃FAT 1201可以包括一个以上的簇链。例如,如图1 和12b所示,主要FAT可以包括簇#6到簇#11的簇链1202,且可以包括簇#20到簇#22的第二簇链1216。在其他实施方式中,不使用主要FAT 1200和可废弃FAT 1201,文件系统可以使用主要FAT 1200来将一个或多个文件与如上所述的簇链和数据库或一个或多个分离位置文件相关联,来代替可废弃FAT,以存储与簇链相关的一个或多个可废弃文件的物理位置。数据库或位置文件可以是被存储在文件系统的不可废弃区域中的文本文件或二进制文件。图13是用于使用主要FAT和可废弃FAT来管理存储器件的方法。图13将与图1 相关联地描述。在步骤1310,主机140接收在存储器件100中存储文件142的请求。在一些实施方式中,存储分配器144基于与文件相关联的一个或多个写请求来得出在存储器件 100中存储文件142的请求。在步骤1320,存储分配器144如上所述在与存储器件100相关的文件系统结构中将文件标记为"可废弃的"或"不可废弃的"。在步骤1320中,也在向文件分配废弃优先级别的意义上标记该文件。在步骤1330,当文件是可废弃文件时,存储分配器144更新主要FAT来将被分配给该文件的簇链与该文件相关联。在步骤1340,存储分配器144更新可废弃FAT来反映该文件在存储器件100中的物理位置。在步骤1350中,存储分配器144(通过与存储控制器 120的通信)管理存储器件100的存储区域110,或基于标记的文件且根据可废弃FAT来管理被存储在存储区域Iio中的文件。存储区域的管理类似于以上参考图5所描述的。图14是用于使用FAT和数据库来管理存储器件的方法的流程图。图14将与图1 相关地描述。在步骤1410,主机140接收在存储器件100中存储文件142的请求。在步骤 1420中,存储分配器144如上所述在与上述存储器件100相关联的文件系统结构中将该文件标记为"可废弃的"或"不可废弃的"。在步骤1420中,也在向文件分配废弃优先级别的意义上标记该文件。在步骤1430,当文件是可废弃文件时,存储分配器144更新FAT来将被分配给该文件的簇链与该文件相关联。在步骤1440,存储分配器144更新数据库来反映该文件在存储器件100中的物理位置。在步骤1450中,存储分配器144(通过与存储控制器120的通信)管理存储器件100的存储区域110,或基于FAT和数据库来管理被存储在存储区域110 中的文件。图15是用于使用FAT和位置文件来管理存储器件的方法的流程图。图15将与图1相关地描述。在步骤1510,主机140接收在存储器件100中存储文件142的请求。在步骤1520中,存储分配器144如上所述在与上述存储器件100相关的文件系统结构中将该文件标记为"可废弃的"或"不可废弃的"。在步骤1520中,也在向文件分配废弃优先级别的意义上标记该文件。在步骤1530,当文件是可废弃文件时,存储分配器144更新FAT来将被分配给该文件的簇链与该文件相关联。在步骤1540,存储分配器144更新位置文件来反映该文件在存储器件100中的物理位置。在步骤1550中,存储分配器144(通过与存储控制器120的通信)管理存储器件100的存储区域110,或基于FAT和位置文件来管理被存储在存储区域 110中的文件。在其他实施方式中,为了增强安全,且为了防止文件系统被诸如dosf SCk (也称为 fsck. vfat)或chkdsk的文件系统集成工具破坏或损害,存储分配器144不在可废弃文件区域中顺序地向簇链分配簇,以保证不能在不读取存储可废弃文件的物理位置的可废弃FAT、 数据库、或一个或多个位置文件的情况下重构簇链。另外,在FAT中生成与簇链的一个或多个打乱的簇相关联的范围文件,从而诸如dosfsck的工具将不会转变可废弃文件为不可废弃文件,或复位在文件的高位中的指示文件是可废弃的标志。在一些实施方式中,可以启用诸如隐藏、系统、目录或卷属性的与范围文件相关的属性,来防止主机操作系统访问这些范围文件。图16是图示了包括簇链的FAT的图,其中,组成该簇链的两个或多个簇的顺序已经被打乱。如图16所示,组成在条目1602处开始的簇链的簇不连续。例如,在条目1602 处开始的簇链的顺序是簇# 13,簇#9,簇#7,簇# 18,和簇#21。在FAT中,每个簇的值指向在簇链中的下一簇,如以上关于图7和8描述的。除了打乱组成与一个或多个文件相关联的簇链的簇的顺序,可以在FAT中建立包括与文件相关联的簇链的一个或多个簇的一个或多个范围文件。在一些实施方式中,每个范围文件可以表示在作为簇链的一部分的簇的范围内的所有簇。由于在范围文件和组成簇链的簇之间的关联,因此诸如chkdsk或fsck. vfat的工具将不会转变可废弃文件为不可废弃文件,且FAT恢复工具将不会复位在FAT32条目中的指示文件是可废弃文件的标志。图17是图示在FAT中建立的一个或多个范围文件的图,所述范围文件中的每一个存储了在条目1602处开始的簇链的至少一个簇。例如,第一范围文件1604存储来自在条目1602处开始的簇链的簇#7和簇#9,且第二范围文件1606存储来自在条目1602处开始的簇链的簇# 13,簇# 18,和簇#21。范围文件可以存储来自多于一个簇链的簇。例如,除了以上列出的来自在条目 1602处开始的簇链的簇以外,第一范围文件1604可以存储来自在条目1608处开始的簇链的簇#5和簇#10。类似地,除了以上列出的来自在条目1602处开始的簇链的簇以外,第二范围文件1606可以存储来自在条目1608处开始的簇链的簇#16,簇#17,和簇#22。图18是用于使用FAT管理存储器件的方法,其中,组成簇链的两个或更多簇的顺序被打乱。图18将与图1相关联地描述。在步骤1810,主机140接收在存储器件100中存储文件142的请求。在步骤1820中,存储分配器144如上所述在与存储器件100相关联的文件系统结构中将文件标记为"可废弃的"或"不可废弃的"。在步骤1820中,也在向文件分配废弃优先级别的意义上标记该文件。
29
在步骤1830,当文件是可废弃文件时,存储分配器144更新FAT来将被分配给该文件的簇链与该文件相关联。在步骤1840,在FAT内基于下列因素来打乱与文件相关联的簇链的两个或多个簇的顺序诸如存储器件100内的存储器的量、簇链的总大小、簇链的两个顺序簇之间的簇的数量、和/或可以考虑擦除块大小、分配的块中每个逻辑地址的物理块地址、和/或与物理块地址相关联的每个顺的损耗平衡数据的闪存管理算法。在一些实施方式中,使用为先前没有被分配的每个簇提供范围内的偏移量的伪随机数生成器或熵随机数生成器来打乱簇链的两个或多个簇的顺序。在一些实施方式中,使用考虑来自主机系统 140和/或存储器件100的不确定值的单向哈希函数(one-way hash function)来打乱簇链的两个或多个簇的顺序。在步骤1850,在FAT中建立第一范围文件,其包括与第一文件相关联的簇链的至少一个簇。在步骤I860,存储分配器144(通过与存储分配器120的通信)管理存储器件 100的存储区域110,或基于FAT和范围文件来管理在存储区域110中存储的文件。在其他实施方式中,文件系统可以实现转换锁,来保证当可废弃文件打开时该可废弃文件不被转换为不可废弃文件。在例如向存储器件100下载可废弃文件期间或在与可废弃文件相关联的数据向公众发表之前的时间段期间(诸如当在与关联于可废弃文件的电影、歌曲或节目相关联的发表日期之前向存储器件100下载可废弃文件时),可废弃文件可以是打开的。通常,转换锁操作,以便当设置了转换锁时可废弃文件不能被转换为不可废弃文件。图19是用于使用转换锁来防止当可废弃文件在实现主要FAT和可废弃FAT的文件系统中被打开时转换可废弃文件的方法。图19将与图1相关联地描述。在步骤1910, 存储分配器144接收将可废弃文件转换为不可废弃文件的请求。在步骤1920,存储分配器 144标识与可废弃文件相关联的转换锁标识符的值。在步骤1930,存储分配器144基于转换锁标识符的值来确定是否可以将可废弃文件转换为不可废弃文件。通常,存储分配器144 当转换锁标识符的值指示可废弃文件被打开时将确定可废弃文件不能被转换,且存储分配器144当转换锁标识符指示可废弃文件未被打开时将确定可废弃文件可以被转换。如果存储分配器144在步骤1930确定可废弃文件不能被转换为不可废弃文件,则存储分配器144在步骤1940禁止将可废弃文件标记为不可废弃的。但是,如果存储分配器 144在步骤1930确定可废弃文件可以被转换为不可废弃文件,存储分配器144在步骤1950 继续在与存储器件100相关联的文件系统结构中将文件标记为不可废弃文件;在步骤1960 更新主要FAT来反映文件的物理位置;以及在步骤1970更新可废弃FAT来移除文件的物理位置。将理解,当与主要FAT —起使用数据库或位置文件以代替如上所述的可废弃FAT 时,用转换锁来实现类似方法。在一些实施方式中,可以允许应用进行诸如将可废弃文件转换为不可废弃文件、 或基于与应用相关联的标识符来检查转换锁标识符的值的操作。通常,建立或下载可废弃文件的应用可以将用户标识符(ID)与可废弃文件相关联。用户ID可以是标识创建可废弃文件的应用或用户的所有者用户ID。在一些实施方式中,所有者用户ID是4字节值。文件系统160向所有者用户ID提供定义与其他用户或应用相关联的什么附加用户ID可以访问可废弃文件以及附加用户ID可以针对可废弃文件采取什么动作的能力。将理解,取决于可废弃文件的使用,附加用户ID可以与单个应用或单个用户相关联,或者附加用户ID可以是与多个应用或多个用户相关联的共享用户ID。在一些实施方式中,所有者用户ID可以允许与附加用户ID相关的应用访问与可废弃文件相关联的预览数据。预览数据可以是可废弃文件的一部分,其中,在其他实施方式中,预览数据不同于、但关联于可废弃文件。在一些示例实施方式中,可废弃文件可以是电影,且预览数据可以包括与电影相关的电影预告片;可废弃文件可以是电视节目,且预览数据可以包括电视节目的一部分;可废弃文件可以是音乐数据,且预览数据可以包括音乐数据的一部分;或可废弃文件可以是软件程序,且预览数据可以包括软件程序的演示版本。在其他示例实施方式中,可以利用预览数据以便在与可废弃文件相关联的发表日期之前,可废弃文件不能被访问,但可以访问与可废弃文件相关联的预览数据,且在发表日期之后,可以访问可废弃文件和预览数据两者。在另一例子中,所有者用户ID可以允许与附加用户ID 相关联的应用基于与可废弃文件相关联的用户ID来向可废弃文件写入。在一些实施方式中,文件系统可以为所有者用户ID提供许可位掩蔽,来定义与附加用户ID相关联的应用可以针对可废弃文件进行什么操作。典型使用情景的许可位掩蔽的一个例子在图20中示出。但是,应该理解,所有者用户ID可以覆盖图20所示的许可,且向附加用户ID分配任何许可。参考图20所示的许可,设置了特性写许可位(properties write permission bit) 2002的应用可以修改属性,诸如启用或禁用转换锁、设置时间戳、或写入消费意图通用资源指示符(“URI"),且设置了特性读许可位2004的应用可以读属性,诸如转换锁、时间戳或消费意图URI。设置了优先级许可位2006的应用可以修改可废弃文件的优先级别。 设置了预览读许可位2008的应用可以读与可废弃文件相关联的预览数据,且设置了预览写许可位2010的应用可以写与可废弃文件相关联的预览数据。设置了读许可位2012的应用可以读可废弃文件,且设置了写许可位2014的应用可以向可废弃文件写。通常,仅与关联于可废弃文件的所有者用户ID相关联的应用将具有这些许可。设置了转换许可位2016 的应用可以将可废弃文件转换为不可废弃文件。注意,在此公开的在相关文件系统中标记文件并向它们分配废弃级别的方法可以具有许多有用的应用,其中之一是恢复存储使用安全裕度来保证足够存储空间用于用户文件。例如,被分配给文件的废弃级别可以被用于将文件簇重新映射到较少执行的闪存模块, 或在请求时清除该簇。冠词〃 一个(a/an)‘‘在此用于指示一个或多于一个(即,至少一个)冠词的语法主体,这取决于上下文。例如,取决于上下文,“一个元件"可以意味着一个元件或多于一个元件。术语"包括"在此用于意味着短语"包括但不限于"且与该短语可互换地使用。 术语"或"和"和"在此用于意味着术语"和/或"且与“和/或”可互换地使用,除非上下文明确指示其他。术语"诸如"在此用于意味着短语"诸如但不限于",且与该短语可互换地使用。已经描述了本发明的示例的实施例,本领域技术人员将明了本公开的实施例的修改将在本发明的范围内。因此,替换的实施例可以包括更多模块、更少模块和/或功能上相同的模块。本公开涉及各种类型的大容量存储器件,诸如被提供了通用串行总线 ("USB")接口的SD驱动的闪存卡、闪存器件、非闪存器件、"钥匙盘(Disk-on-Key)“器件,USB闪存驱动(“UFDs"),多媒体卡(“MMC"),安全数字(“SD" ),miniSD,和 microSD等。因此,以下权利要求的范围不由在此的公开限制。
权利要求
1.一种用于管理存储器件的方法,该方法包括 在存储器件操作性地耦接到的主机中接收在存储器件的存储区域中存储第一文件的请求,其中所述存储器件包含主要文件分配表(“FAT")和另外的可废弃FAT;将第一文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第一文件的标记;使得存储器件更新主要FAT,将被分配给第一文件的簇链与第一文件相关联; 使得存储器件更新可废弃FAT,以反映第一文件在存储器件中的物理位置;以及根据可废弃FAT来管理存储器件的存储区域。
2.根据权利要求1的方法,其中,所述簇链至少掩蔽第一文件的物理位置。
3.根据权利要求1的方法,还包括启用与第一文件相关联的属性,以防止主机操作系统访问该第一文件。
4.根据权利要求1的方法,还包括接收在存储器件的存储区域中存储第二文件的请求,将第二文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第二文件的标记;使得存储器件更新主要FAT,以将簇链与第二文件相关联,其中,该簇链与第一文件和第二文件相关联;以及使得存储器件更新可废弃FAT,以反映第二文件的物理位置。
5.根据权利要求4的方法,其中,所述簇链掩蔽第一文件和第二文件的物理位置。
6.根据权利要求1的方法,还包括接收在存储器件的存储区域中存储第二文件的请求,将第二文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第二文件的标记;使得存储器件更新主要FAT,以将被分配给第二文件的第二簇链与第二文件相关联;以及使得存储器件更新可废弃FAT,以反映第二文件的物理位置。
7.根据权利要求1的方法,还包括将第一文件标记为不可废弃的,在与存储器件相关联的文件系统结构中进行该第一文件的标记;使得存储器件更新主要FAT,以反映第一文件的物理位置;以及使得存储器件更新可废弃FAT,以移除第一文件的物理位置。
8.根据权利要求7的方法,还包括标识与第一文件相关联的转换锁标识符的值,以确定是否可以将第一文件从可废弃文件转换为不可废弃文件;其中,在确定与第一文件相关联的转换锁标识符的值指示第一文件未被锁定之后,所述第一文件被标记为不可废弃文件。
9.根据权利要求1的方法,还包括标识与第一文件相关联的转换锁标识符的值,以确定是否可以将第一文件从可废弃文件转换为不可废弃文件;以及在确定与第一文件相关联的转换锁的值指示第一文件被锁定之后,禁止将所述第一文件标记为不可废弃的。
10.根据权利要求1的方法,还包括标识与用户ID相关联的文件许可和与第一文件相关联的预览文件;以及基于所标识的文件许可来管理对与第一文件相关联的预览文件的访问。
11.根据权利要求10的方法,其中,所述用户ID是共享的用户ID。
12.根据权利要求1的方法,其中,所述主要FAT的簇链指向可废弃FAT中的位置。
13.根据权利要求1的方法,其中,将所述第一文件标记为可废弃的包括向该第一文件分配废弃优先级别。
14.根据权利要求13的方法,其中,向第一文件分配废弃优先级别包括以下中的至少一个向对应于第一文件的主要FAT条目中的m个最高有效位设置对应的值;或者向对应于第一文件的文件系统条目中的数据字段设置对应值。
15.根据权利要求13的方法,其中,根据以下任一项向第一文件分配废弃优先级别 第一文件的预期使用;与使用该文件相关联的预期收入; 第一文件的文件类型; 第一文件的大小;第一文件在存储器件中的位置;以及第一文件的使用期限。
16.根据权利要求1的方法,其中,根据可废弃FAT来管理存储器件的存储区域包括以下中的任一个或它们的组合通过选择性的移除被标记为可废弃的一个或多个文件来恢复存储使用安全裕度; 通过移除被标记为可废弃的所有文件来释放存储区域;以及将第一文件的簇重新映射到较低性能的存储模块。
17.一种用于管理存储器件的方法,该方法包括 在操作性地耦接到主机的存储器件中接收在存储器件的存储区域中存储第一文件的请求,其中所述存储器件包含主要文件分配表(“FAT")和另外的可废弃FAT;将第一文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第一文件的标记;更新主要FAT,以将被分配给第一文件的簇链与第一文件相关联; 更新可废弃FAT,以反映第一文件在存储器件中的物理位置;以及根据可废弃FAT来管理存储器件的存储区域。
18.根据权利要求17的方法,其中,所述簇链至少掩蔽第一文件的物理位置。
19.根据权利要求17的方法,还包括启用与第一文件相关联的属性,以防止主机操作系统访问该第一文件。
20.根据权利要求17的方法,还包括接收在存储器件的存储区域中存储第二文件的请求,将第二文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第二文件的标记;更新主要FAT,以将簇链与第二文件相关联,其中,该簇链与第一文件和第二文件相关联;以及更新该可废弃FAT,以反映第二文件的物理位置。
21.根据权利要求20的方法,其中,所述簇链掩蔽第一文件和第二文件的物理位置。
22.根据权利要求17的方法,还包括接收在存储器件的存储区域中存储第二文件的请求,将第二文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第二文件的标记;更新主要FAT,以将被分配给第二文件的第二簇链与第二文件相关联;以及更新该可废弃FAT,以反映第二文件的物理位置。
23.根据权利要求17的方法,还包括将第一文件标记为不可废弃的文件,在与存储器件相关联的文件系统结构中进行该第一文件的标记;更新主要FAT,以反映第一文件的物理位置;以及更新该可废弃FAT,以移除第一文件的物理位置。
24.根据权利要求23的方法,还包括标识与第一文件相关联的转换锁标识符的值,以确定是否可以将第一文件从可废弃文件转换为不可废弃文件;其中,在确定与第一文件相关联的转换锁标识符的值指示第一文件未被锁定之后,所述第一文件被标记为不可废弃文件。
25.根据权利要求17的方法,还包括标识与第一文件相关联的转换锁标识符的值,以确定是否可以将第一文件从可废弃文件转换为不可废弃文件;以及在确定与第一文件相关联的转换锁的值指示第一文件被锁定之后,禁止将所述第一文件标记为不可废弃的。
26.根据权利要求17的方法,还包括标识与用户ID相关联的文件许可和与第一文件相关联的预览文件;以及基于所标识的文件许可来管理对与第一文件相关联的预览文件的访问。
27.根据权利要求27的方法,其中,所述用户ID是共享的用户ID。
28.根据权利要求17的方法,其中,所述主要FAT的簇链指向在可废弃FAT中的位置。
29.根据权利要求17的方法,其中,将所述第一文件标记为可废弃的包括 向第一文件分配废弃优先级别。
30.根据权利要求29的方法,其中,向第一文件分配废弃优先级别包括以下中的至少一个向对应于第一文件的主要FAT条目中的m个最高有效位设置对应值;或者向对应于第一文件的文件系统条目中的数据字段设置对应值。
31.根据权利要求29的方法,其中,根据以下任一项向第一文件分配废弃优先级别 第一文件的预期使用;与使用该文件相关联的预期收入; 第一文件的文件类型; 第一文件的大小;第一文件在存储器件中的位置;以及第一文件的使用期限。
32.根据权利要求17的方法,其中,根据可废弃FAT来管理存储器件的存储区域包括以下中的任一个或它们的组合通过选择性的移除被标记为可废弃的一个或多个文件来恢复存储使用安全裕度; 通过移除被标记为可废弃的所有文件来释放存储区域;以及将第一文件的簇重新映射到较低性能的存储模块。
33.一种用于管理存储器件的存储分配器,包括 通信接口,将存储器件和存储器件的主机相连接; 存储单元,用于存储与存储器件相关联的文件系统; 处理器,用于管理与存储器件相关联的文件系统;以及其中,所述处理器被配置为接收在存储器件的存储区域中存储第一文件的请求,其中所述存储器件包含主要文件分配表(“FAT")和另外的可废弃FAT;将第一文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第一文件的标记;使得存储器件更新主要FAT,以将被分配给第一文件的簇链与第一文件相关联; 使得存储器件更新可废弃FAT,以反映第一文件在存储器件中的物理位置;以及根据可废弃FAT来管理存储器件的存储区域。
34.根据权利要求33的存储分配器,其中,所述簇链掩蔽第一文件的物理位置。
35.根据权利要求33的存储分配器,其中,所述处理器进一步被配置为 接收在存储器件的存储区域中存储第二文件的请求,将第二文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第二文件的标记;使得存储器件更新主要FAT,以将簇链与第二文件相关联,其中,该簇链与第一文件和第二文件相关联;以及使得存储器件更新第二 FAT,以反映第二文件的物理位置; 其中,可废弃簇链掩蔽第一文件和第二文件的物理位置。
36.根据权利要求33的存储分配器,其中,所述处理器进一步被配置为 接收在存储器件的存储区域中存储第二文件的请求,将第二文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第二文件的标记;使得存储器件更新主要FAT,以将被分配给第二文件的第二簇链与第二文件相关联;以及使得存储器件更新可废弃FAT,以反映第二文件的物理位置。
37.根据权利要求33的存储分配器,其中,所述处理器进一步被配置为将第一文件标记为不可废弃的,在与存储器件相关联的文件系统结构中进行该第一文件的标记;使得存储器件更新主要FAT,以反映第一文件的物理位置;以及使得存储器件更新可废弃FAT,以移除第一文件的物理位置。
38.根据权利要求37的存储分配器,其中,所述处理器进一步被配置为标识与第一文件相关联的转换锁标识符的值,以确定是否可以将第一文件从可废弃文件转换为不可废弃文件;以及其中,在确定与第一文件相关联的转换锁标识符的值指示第一文件未被锁定之后,所述第一文件被标记为不可废弃文件。
39.根据权利要求33的存储分配器,其中,所述处理器进一步被配置为标识与第一文件相关联的转换锁标识符的值,以确定是否可以将第一文件从可废弃文件转换为不可废弃文件;以及在确定与第一文件相关联的转换锁标识符的值指示第一文件被锁定之后,禁止将所述第一文件标记为不可废弃的。
40.根据权利要求33的存储分配器,其中,所述处理器进一步被配置为 标识与用户ID相关联的文件许可和与第一文件相关联的预览文件;以及基于所标识的文件许可来管理对与第一文件相关联的预览文件的访问。
41.根据权利要求33的存储分配器,其中,所述第一FAT的簇链指向在第二 FAT中的位置。
42.一种存储系统,包括 通信接口 ;以及存储分配器,用于管理与存储器件相关联的文件系统,该存储分配器包括用于管理一个或多个文件在存储器件的存储区域中的存储的处理器; 其中,所述处理器被配置为经由通信接口接收在存储器件的存储区域中存储第一文件的请求,其中所述存储器件包含主要文件分配表(“FAT")和另外的可废弃FAT;将第一文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第一文件的标记;使得存储器件更新主要FAT,以将被分配给第一文件的簇链与第一文件相关联; 使得存储器件更新可废弃FAT,以反映第一文件在存储器件中的物理位置;以及根据可废弃FAT来管理存储器件的存储区域。
43.根据权利要求42的存储系统,其中,所述处理器进一步被配置为将第一文件标记为不可废弃的,在与存储器件相关联的文件系统结构中进行该第一文件的标记;使得存储器件更新主要FAT,以反映第一文件的物理位置;以及使得存储器件更新可废弃FAT,以移除第一文件的物理位置。
44.根据权利要求43的存储系统,其中,所述处理器进一步被配置为标识与第一文件相关联的转换锁标识符的值,以确定是否可以将第一文件从可废弃文件转换为不可废弃文件;其中,在确定与第一文件相关联的转换锁标识符的值指示第一文件未被锁定之后,所述第一文件被标记为不可废弃文件。
45.根据权利要求42的存储系统,其中,所述处理器进一步被配置为标识与第一文件相关联的转换锁标识符的值,以确定是否可以将第一文件从可废弃文件转换为不可废弃文件;以及在确定与第一文件相关联的转换定标识符的值指示第一文件被锁定之后,禁止将所述第一文件标记为不可废弃的。
46.根据权利要求42的存储系统,其中,所述处理器进一步被配置为 标识与用户ID相关联的文件许可和与第一文件相关联的预览文件;以及基于所标识的文件许可来管理对与第一文件相关联的预览文件的访问。
47.根据权利要求42的存储系统,其中,为了经由通信接口来接收在存储器件的储存区域中存储第一文件的请求,所述处理器被配置为基于经由通信接口接收的与第一文件相关联的一个或多个写入请求来得出存储第一文件的请求。
48.根据权利要求42的存储系统,其中,所述存储分配器被嵌入主机中。
49.根据权利要求42的存储系统,其中,所述存储分配器被嵌入存储器件中。
50.一种用于管理存储器件的方法,该方法包括 在存储器件操作性地耦接到的主机中接收在存储器件的存储区域中存储第一文件的请求;将第一文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第一文件的标记;使得存储器件更新文件分配表(“FAT"),以将被分配给第一文件的簇链与第一文件相关联;更新数据库,以反映第一文件在存储器件中的物理位置;以及根据FAT和数据库来管理存储器件的存储区域。
51.一种用于管理存储器件的方法,该方法包括 在操作性地耦接到主机的存储器件中接收在存储器件的存储区域中存储第一文件的请求;将第一文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第一文件的标记;更新文件分配表(“FFAT“),以将被分配给第一文件的簇链与第一文件相关联; 更新数据库,以反映第一文件在存储器件中的物理位置;以及根据FAT和数据库来管理存储器件的存储区域。
52.一种用于管理存储器件的方法,该方法包括 在存储器件操作性地耦接到的主机中接收在存储器件的存储区域中存储第一文件的请求;将第一文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第一文件的标记;使得存储器件更新文件分配表(“FAT"),以将被分配给第一文件的簇链与第一文件相关联;更新位置文件,以反映第一文件在存储器件中的物理位置;以及根据FAT和位置文件来管理存储器件的存储区域。
53.根据权利要求52的方法,其中,所述位置文件是文本文件。
54.根据权利要求52的方法,其中,所述位置文件是二进制文件。
55.一种用于管理存储器件的方法,该方法包括 在耦接到主机的存储器件中接收在存储器件的存储区域中存储第一文件的请求;将第一文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第一文件的标记;更新文件分配表(“FAT"),以将被分配给第一文件的簇链与第一文件相关联; 更新位置文件,以反映第一文件在存储器件中的物理位置;以及根据FAT和位置文件来管理存储器件的存储区域。
56.一种用于管理存储器件的方法,该方法包括 在存储器件操作性地耦接到的主机中接收在存储器件的存储区域中存储第一文件的请求;将第一文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第一文件的标记;使得存储器件更新文件分配表(“FAT"),以将被分配给第一文件的簇链与第一文件相关联;在FAT内打乱与第一文件相关联的簇链的两个或多个簇的顺序; 在FAT中创建第一范围文件,该第一范围文件包括与第一文件相关联的簇链的至少一个簇;以及根据FAT和第一范围文件来管理存储器件的存储区域。
57.根据权利要求56的方法,还包括接收在存储器件的存储区域中存储第二文件的请求,将第二文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第二文件的标记;使得存储器件更新FAT,以将簇链与第二文件相关联,其中,该簇链与第一文件和第二文件相关联;以及在FAT内打乱与第二文件相关联的簇链的两个或多个簇的顺序;
58.根据权利要求57的方法,还包括在FAT中更新第一范围文件,以包括与第二文件相关联的簇链的至少一个簇。
59.根据权利要求56的方法,还包括接收在存储器件的存储区域中存储第二文件的请求,将第二文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第二文件的标记;使得存储器件更新FAT,以将被分配给第二文件的第二簇链与第二文件相关联;在FAT内打乱与第二文件相关联的第二簇链的两个或多个簇的顺序; 在FAT中创建第二范围文件,该第二范围文件包括与第二文件相关联的簇链的至少一个簇;以及其中根据FAT和第一范围文件来管理存储器件的存储区域包括 根据FAT、第一范围文件和第二范围文件来管理存储器件的存储区域。
60.根据权利要求56的方法,还包括在FAT中创建第二范围文件,该第二范围文件包括与第一文件相关联的簇链中不构成第一范围文件的至少一个簇;其中根据FAT和第一范围文件来管理存储器件的存储区域包括 根据FAT、第一范围文件和第二范围文件来管理存储器件的存储区域。
61.一种用于管理存储器件的方法,该方法包括 在耦接到主机的存储器件中接收在存储器件的存储区域中存储第一文件的请求;将第一文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第一文件的标记;更新文件分配表(“FAT"),以将被分配给第一文件的簇链与第一文件相关联; 在FAT内打乱与第一文件相关联的簇链的两个或多个簇的顺序; 在FAT中创建第一范围文件,该第一范围文件包括与第一文件相关联的簇链的至少一个簇;以及根据FAT和第一范围文件来管理存储器件的存储区域。
62.根据权利要求61的方法,还包括接收在存储器件的存储区域中存储第二文件的请求,将第二文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第二文件的标记;更新FAT以将簇链与第二文件相关联,其中,该簇链与第一文件和第二文件相关联;以及在FAT内打乱与第二文件相关的簇链的两个或多个簇的顺序。
63.根据权利要求61的方法,还包括在FAT中更新第一范围文件,以包括与第二文件相关联的簇链的至少一个簇。
64.根据权利要求61的方法,还包括接收在存储器件的存储区域中存储第二文件的请求;将第二文件标记为可废弃的,在与存储器件相关联的文件系统结构中进行该第二文件的标记;更新FAT以将被分配给第二文件的第二簇链与第二文件相关联; 在FAT内打乱与第二文件相关联的第二簇链的两个或多个簇的顺序; 在FAT中创建第二范围文件,该第二范围文件包括与第二文件相关联的簇链的至少一个簇;以及其中根据FAT和第一范围文件来管理存储器件的存储区域包括 根据FAT、第一范围文件和第二范围文件来管理存储器件的存储区域。
65.根据权利要求61的方法,还包括在FAT中创建第二范围文件,该第二范围文件包括与第一文件相关联的簇链中不构成第一范围文件的至少一个簇;其中根据FAT和第一范围文件来管理存储器件的存储区域包括 根据FAT、第一范围文件和第二范围文件来管理存储器件的存储区域。
66.一种用于管理与可废弃文件相关联的操作的方法,该方法包括 在存储器件操作性地耦接到的主机中将所有者用户ID与可废弃文件相关联,其中,可废弃文件包括已经在与存储器件相关联的文件系统结构中被标记为可废弃的文件;用与所有者用户ID相关联的应用来定义与可废弃文件相关联的附加的用户ID的一组许可;从与附加的用户ID相关联的应用接收执行与可废弃文件相关联的操作的请求; 基于该组许可来确定与附加的用户ID相关联的应用是否可以执行该操作;以及基于该确定来管理与可废弃文件相关联的操作。
67.根据权利要求66的方法,其中,与所有者用户ID相关联的应用向存储器件下载可废弃文件。
68.根据权利要求66的方法,其中所述操作包括 修改与可废弃文件相关联的属性。
69.根据权利要求68的方法,其中,所述属性包括转换锁标识符、时间戳、消费意图通用资源指示符和优先级别中的至少一个。
70.根据权利要求66的方法,其中所述操作包括 读取与可废弃文件相关联的属性。
71.根据权利要求70的方法,其中,所述属性包括转换锁标识符、时间戳、消费意图通用资源指示符和优先级别中的至少一个。
72.根据权利要求66的方法,其中所述操作包括 读取可废弃文件。
73.根据权利要求66的方法,其中所述操作包括 向可废弃文件写入。
74.根据权利要求66的方法,其中所述操作包括 读取与可废弃文件相关联的预览数据。
75.根据权利要求74的方法,其中,所述可废弃文件包括预览数据。
76.根据权利要求74的方法,其中,所述可废弃文件不同于预览数据。
77.根据权利要求66的方法,其中所述操作包括 写入与可废弃文件相关联的预览数据。
78.根据权利要求66的方法,其中,所述附加的用户ID是与多个用户相关联的共享用户ID。
79.根据权利要求66的方法,其中,所述附加的用户ID是与多个应用相关联的共享用户ID。
80.根据权利要求66的方法,其中,基于所述确定来管理与可废弃文件相关联的操作包括禁止与附加的用户ID相关联的应用执行与可废弃文件相关联的操作。
81.根据权利要求66的方法,其中,基于所述确定来管理与可废弃文件相关联的操作包括允许与附加的用户ID相关联的应用执行与可废弃文件相关联的操作。
82.—种存储系统,包括 通信接口 ;以及存储分配器,用于管理与存储器件相关联的文件系统,该存储分配器包括用于管理与在存储器件中存储的可废弃文件相关联的操作的处理器; 其中,所述处理器被配置为将所有者用户ID与可废弃文件相关联,其中,可废弃文件包括已经在与存储器件相关联的文件系统结构中被标记为可废弃的文件;用与所有者用户ID相关联的应用来定义与可废弃文件相关联的附加的用户ID的一组许可;通过通信接口从与附加的用户ID相关联的应用接收进行与可废弃文件相关联的操作的请求;基于该组许可来确定与附加的用户ID相关联的应用是否可以执行该操作;以及基于该确定来管理与可废弃文件相关联的操作。
83.根据权利要求82的存储系统,其中,为了管理与可废弃文件相关联的操作,所述处理器被配置为允许与附加的用户ID相关联的应用读取与可废弃文件相关联的预览数据。
84.根据权利要求82的存储系统,其中,所述附加的用户ID是与多个用户相关联的共享用户ID。
85.根据权利要求82的存储系统,其中,所述附加的用户ID是与多个应用相关联的共享用户ID。
86.一种用于管理存储器件的方法,该方法包括 在存储器件操作性地耦接到的主机中 在存储器件中存储预览数据;将预览数据与可废弃文件相关联,可废弃文件包括已经在与存储器件相关联的文件系统结构中被标记为可废弃的文件;以及管理对预览数据和可废弃文件的访问,以便允许应用访问预览数据但不允许其访问可废弃文件。
87.根据权利要求86的方法,其中,所述可废弃文件包括预览数据。
88.根据权利要求86的方法,其中,所述可废弃文件不同于预览数据。
89.根据权利要求86的方法,其中,所述可废弃文件包括电影,且预览数据包括与该电影相关联的电影预告片。
90.根据权利要求86的方法,其中,所述可废弃文件包括电视节目,且预览数据包括该电视节目的一部分。
91.根据权利要求86的方法,其中,所述可废弃文件包括音乐数据,且预览数据包括该音乐数据的一部分。
92.根据权利要求86的方法,其中,所述可废弃文件包括程序,且预览数据包括该程序的演示版本。
93.根据权利要求86的方法,其中,管理对预览数据和可废弃文件的访问以便允许应用访问预览数据但不允许其访问可废弃文件包括管理对预览数据和可废弃文件的访问,以便在与可废弃文件相关联的发表日期之前的时间段期间允许应用访问预览数据但不允许其访问可废弃文件。
94.根据权利要求103的方法,还包括管理对预览数据和可废弃文件的访问,以便在与可废弃文件相关联的发表日期之后的时间段期间允许应用访问预览数据和允许其访问可废弃文件。
全文摘要
本申请包括用于管理存储器件的方法和系统。在一个实施方式中,在主机或存储器件中存在的存储分配器接收在存储器件的存储区域中存储文件的请求。该存储分配器在与该存储器件相关联的文件系统结构中将该文件标记为可废弃的,并更新主要文件分配表(″FAT″)来将被分配给该文件的簇链与该文件相关联。该存储分配器另外更新可废弃FAT或数据库来反映文件的物理位置,或可以生成存储文件的物理位置的一个或多个位置文件。然后,存储分配器基于FAT和指示文件的物理位置的可废弃FAT、数据库或一个或多个位置文件来管理存储器件。
文档编号G06F11/14GK102292723SQ200980155040
公开日2011年12月21日 申请日期2009年11月19日 优先权日2008年12月16日
发明者B.K.V.贾甘纳德哈, J.G.哈恩, N.R.苏布拉马尼安 申请人:桑迪士克以色列有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1