用于选择性地路由高速缓存的对象的系统和方法_3

文档序号:8927010阅读:来源:国知局
以不同于根目录。如在下文的说明1中所述的, 可以使用与根目录分开的目录(例如,子目录)。
[0045] 根目录取决于操作系统可以采用不同的形式。在Windows类型的操作系统中,用 于每个贮存装置以及硬盘盘(HDD)的分区(例如,逻辑上独立的区)的根目录,并且它们例 如被标记为,Y :用于可拆卸闪速存储器装置,C :用于HDD的第一分区,D :用于HDD的第二分 区等。Unix类型的操作系统对于系统上的所有存储器装置使用单个根目录,其中在文件系 统的顶部处的目录由正斜杠(/)指定。此外,Unix类型的操作系统包括根目录中的第一级 (first tier)的目录,诸如/bin,/usr,/etc,/misc〇
[0046] 根目录310是用于盘C:的挂载点的示例。如图3A中所示,根目录310包括重定 向(redirect) 312。重定向312被配置为动作以将该路径的解析重定向到系统的另一部分。 例如,当内核I/O管理器110正解析到系统中的文件的路径时,重定向作用为将该解析从根 目录重定向到中间分区305。重定向312的一个示例是软链接。软链接(也被称为符号链 接)是特殊类型的文件或目录入口(entry),所述特殊类型的文件或目录入口包含以绝对 或相对路径的形式的到另一文件或目录的引用、并且影响路径名解析。以此方法,软链接可 以被用作到另一文件的指针或者间接手段(indirection)。当应用要求文件时,操作系统自 动地解引用该指针,从而从应用中提取文件的位置。软链接在大多数文件系统中是可用的, 这些文件系统包括下述用于安卓(Androicf )的ext4文件系统。此外,一个软链接可以指 向另一软链接。
[0047] 以此方法,根目录被修改使得:在一实施例中,被用于解析在各个盘上的文件的路 径的根目录的部分被替换为完全由到系统的不同部分(诸如,到中间分区305)的重定向 (诸如,软链接)构成。
[0048] 图3B示出了内核I/O管理器110使用根目录310和中间分区305以解析到盘C: 上的文件"Z"的路径的一个示例。图3A-D仅是例示。每个操作系统实现其用于分析符号 链接的各个逻辑,并且因此可能偏离该描述。在图3B和3D中的箭头例示了在解析文件"Z" 的路径时的系统的不同部分之间的通信的逻辑路径。在下文中,针对图6讨论在解析路径 时内核I/O管理器110的具体通信。如图3B中所示,内核I/O管理器110接收来自应用 105的对于到文件"Z"的句柄的请求。该请求例如包括:以C :\1\2\3\4\5\Z的形式的串。 内核I/O管理器110读取串中的C :\1并且访问在C :盘中的根目录310以解析到文件"Z" 的路径。由于根目录310已经通过重定向被修改过,内核管理器改变串的路径。例如,重定 向可以指示X :\7,其指向中间分区。因此,内核I/O管理器110用X :\7替换C :\1以将串 修改为X :\7\2\3\4\5\Z。使用修改过的串,内核I/O管理器110与中间分区305通信。中 间分区包括回到C :盘(在该例子中C :\2)上的部分的另一重定向(例如,另一软链接),使 得内核I/O管理器110最终解析到C :盘上的文件"Z"的路径。因此,即使文件"Z"被贮存 在C :盘上,但是C :盘根目录也将内核I/O管理器110重定向为离开根目录,仅被重定向到 C :盘的另一部分。
[0049] 图3C示出了文件"Z"向盘Y :的复制、以及对中间分区305的改变以反映文件"Z" 向盘Y:的复制。如上所讨论的,监控应用230可以确定将文件复制到系统的另一部分、诸 如,盘Y:。响应于将文件"Z"复制到盘Y:,修改中间分区305。具体地,将中间分区305 中的重定向从指向C :\2改变为指向Y :\6。如上所讨论的,文件的移动(诸如,将文件"Z" 复制到盘Y:)并不一定需要改变根目录310。
[0050] 图3D示出了内核I/O管理器110使用根目录310和中间分区305以解析到盘Y : 上的文件"Z"的路径。在包括以C :\1\2\3\4\5\Z的形式的串的请求的示例中,内核I/O管 理器110读取串中的C :\1并且访问C :盘中的根目录310以解析到文件"Z"的路径。由于 根目录310通过重定向修改过,内核管理器改变串的路径到X:\7,其指向中间分区。使用修 改过的串,内核I/O管理器110与中间分区305通信,所述中间分区305包括到Y :盘(在 该情况中是包括复制的Y :\6)上的一部分的另一重定向,使得内核I/O管理器110最终解 析到Y :盘上的文件"Z"的路径。因此,即使文件"Z"被移动到Y :盘,但是内核I/O管理器 使用到包括到复制的文件"Z"的路径的中间分区305的额外的重定向,仍然可以解析该路 径。
[0051] 以此方法,图3A-D示出了中间分区305的使用,其中通过中间分区305,使用指向 其它链接的链接、指回适合于所使用的数据的类型的持久贮存介质,来路由关键应用目录。 因此,监控器应用230检查数据是如何被使用的,并且在中间分区305中重新写入链接以在 这些分区之间透明地移动数据而不影响正调用的应用。
[0052]例示1 :
[0053] 下文是使用监控应用230用于安卓(Android)操作系统的例示。在安卓操作系统 中,/data/data/目录被用于存应用特定的(application-specific)内容。每个应用具 有其自己的子目录,所述子目录通常进一步被分为多个子目录,每一个子目录具有其自己 的内容特性。用于安卓操作系统的网络浏览器应用具有下述目录结构:
[0054] rootiandroid :/data/data/com. google, android. browser#Is-l
[0055] drwxrwx-x app_57 app 57 2012-02-01 15 :14app_appcache
[0056] drwxrwx-x app_57 app 57 2012-02-01 15 :14app_databases
[0057] drwxrwx-x app_57 app 57 2012-02-01 15 :14app_geolocation
[0058] drwxrwx-x app_57 app 57 2012-02-01 15 :15app_icons
[0059] drwxrwx-x app_57 app_57 2012-02-01 15 :15cache
[0060] drwxrwx-x app-57 app-57 2012-02-01 15 :15databases
[0061] drwxr-xr-x system system 2011-11-29 12:161ib
[0062] drwxrwx-x app-57 app-57 2012-02-01 15 :14shared-prefs
[0063] 上述目录的一些,诸如高速缓存和数据库(cache和databases),可能受益于移动 到不同的物理分区。例如,高速缓存(cache)目录可以被移动到不同的分区,而留下符号链 接。目录结构现在看起来如下:
[0064] rootiandroid:/data/data/com. google, android. browser#ls-l
[0065] drwxrwx-x app-57 app-57 2012-02-01 15 :14app-appcache
[0066] drwxrwx-x app-57 app-57 2012-02-01 15 :14app-databases
[0067] drwxrwx-x app-57 app-57 2012-02-01 15 :15app-geolocation
[0068] drwxrwx-x app-57 app-57 2012-02-01 15 :15app-icons
[0069] lrwxrwx-x app-57app-57 2012-02-01 15 :21cache_>/intermediate/cache
[0070] drwxrwx-x app_57 app_57 2012-02-01 15 :15databases
[0071] drwxr-xr-x system system 2011-11-29 12:161ib
[0072] drwxrwx一x app-57 app-57 2012-02-01 15 :14shared-prefs
[0073] 在中间分区305中的/intermediate目录具有下述内容:
[0074] rootiandroid:/intermediate#ls-l
[0075] lrwxrwx-x app_57 app_57 2012-02-01 15 :21cache->/cache/browser cache/ cache
[0076] 在/intermediate目录中的链接可以被重写为指向任何其它位置(在该情况中指 向装置的/cache物理分区)。以此方法,/intermediate目录可以被用于指向数据被移动 的位置。
[0077]例示2:
[0078] 下文是使用监控应用230回放电影或者其他类型的视频的另一例示。电影通常需 要巨大的贮存容量。取决于贮存配置,电影可以由小文件的群组构成,每个小文件包括一 段电影,其中小文件的群组被配置为按次序执行。在操作中,正调用的应用预期播放与调 用的文件相关联的电影段而调用下一小文件。该示例包括,但不限于,HTTP上的动态自适 应流媒体(DASH),以及苹果(Apple)的HTTP实时流媒体(HLS)。更具体地,DASH使能通过 Internet从传统的HTTP网络服务器传送的高质量的媒体内容流。DASH通过将内容分为一 系列小的基于HTTP的文件分段而运作,每个分段包含短时间间隔的回放时间的内容,该内 容的持续时间可能是多个小时,诸如电影或者体育赛事的直播。使得可以以多个不同的比 特率获得所述内容,g卩,使得可以以覆盖回放时间的对齐的短时间间隔的不同的比特率获 得编码的可选分段。由于内容被DASH客户端回放,因此,客户端基于当前的网络环境自动 地从各可选者中选择下一分段以下载并回放。
[0079] 此外,因为电影需要巨大的贮存容量,电影通常被贮存在大的贮存装置(其可以 是太位字节(Terabyte)量级的贮存容量)上,所述贮存装置可以是远离回放装置、并可以 与回放装置分开。因此,电影文件可以在不同的装置上播放,所述不同的装置诸如具有较小 的贮存容量的膝上型计算机(或其它数字播放器)。在操作中,数字播放器可以访问可用于 播放的电影文件列表。用户通过数字播放器可以选择一个电影文件播放。监控应用230可 以监控贮存在大贮存装置中的所
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1