取决于与其连接的主机装置内的平台提供自适应服务的电 子设备 技术领域 本发明涉及具有一种或多种服务的电子设备, 该服务的可用性取决于与该电子设 备连接的主机装置。 更具体地, 本发明涉及包括存储器的电子存储设备, 该存储器用于包含 数据和 / 或至少程序或软件组件。
背景技术 现今存在许多设备。最流行的设备是通常包括闪存型大容量存储器的加密狗 (dongle) 或密钥 (key)。它们通常使用 USB( 通用串行总线 ) 协议与主机装置通信。该设 备允许例如膝上型计算机的用户复制或导入数据。 他还可以执行软件组件的安装以便丰富 他的计算机上的功能的范围。
存在如 MMC( 多媒体卡 ) 或 SD( 安全数字 ) 型存储卡的其它设备。此外, 存在如智 能卡的设备, 其中一些在首字母缩写 UICC( 通用集成电路卡 ) 下是已知的。这些卡典型地 承载 SIM( 用户识别模块 ) 型应用, 或者更通常的是这样的应用, 其允许识别用户并定义其 所有者的权利, 使得他能够从任何种类的服务受益。 可移除或便携式硬驱动器也允许保存、 共享、 部署数据和程序。
其它设备包括内容服务器, 如使用网页浏览器可获得的 ( 例如, 以 HTML- 超文本标 记语言书写的 ) 页面, 可以在如膝上型计算机上下载的程序。
此外, 适于建立有线连接或无线连接的主机平台是各种各样的。便携式膝上型计 算机或办公室计算机是最知名的主机平台。主机平台还可以是 ( 不是限制 ) 连接到通常的 GSM/GPRS( 用于移动通信的全球系统 / 通用分组无线服务 ) 类型的网络的移动通信终端、 或 个人电子助理。能够与电子存储设备建立通信的设备的列表可能很长。除了完全不同种类 的物理结构, 这些设备要求软件平台或不同的操作系统, 以便管理它们的硬件和软件资源。 例如, 个人计算机被销售并配置有由微软发行的 “Windows” 操作系统。其它的被销售有操 作系统 “Linux OS” 或由苹果计算机公司发布的计算机并入操作系统 “Mac OS” 等。
文本文件或甚至多媒体的管理通常不是问题。例如, 容易通过 USB 密钥从具有 “MAC OS” 系统的计算机复制照片、 文档或甚至视频或声音到具有 Windows 操作系统的第二 计算机上。软件、 程序或简单的软件组件的传送更成为问题。实际上, 这种程序或软件整体 地或部分地依赖于主机装置的软件平台或操作系统。
软件应用不能没有改写地利用 “Windows” 、 “Linux OS” 或 “Mac OS” 工作。为了使 用电子存储设备部署这些应用, 发行者需要存储与存在的目标平台一样多的要部署的应用 的版本。为了便利希望安装 USB 加密狗上包含的应用的用户的动作, 该应用的各版本分发 在加密狗的大容量存储器中, 并且可通过目录访问。然后将每个目录专用于主机平台的类 型: “Windows” 、 “Linux OS” 、 ......。目录包含利用一个或多个电子文档存储的与专用版 本和操作处理相关联的各种软件组件。
在已经连接或将其加密狗与计算机连接时, 用户然后必须利用他的计算机的文件
管理器以树状结构浏览加密狗的存储器设计, 并且选择相关的目录。 不幸地, 经常检测到选 择错误。不好的选择使得安装无效, 并且导致软公司的呼叫中心的大量求助。错误处理可 能损坏主机装置的软件配置, 并且最大化笨拙的、 心烦意乱的用户的不满或失望, 或不用于 处理该类型的技术约束。在用户的错误选择或操作的情况下, 商业影响非常负面。
本发明目的在于通过为用户提供简单的和透明的解决方案来解决现有技术的缺 点。因此, 本发明促进软件应用的部署并防止由于用户的错误处理或错误选择导致的任何 风险。 发明内容 为此目的, 具体计划一种具有一种或多种服务的电子设备。该设备包括 : 存储器, 具有可以由主机装置使用的至少一种服务 ; 通信部件, 允许连接到主机装置 ; 用于管理和 使得服务或多种服务可用于主机装置的部件 ; 识别器, 用于识别主机装置内可用的软件平 台。该设备特征在于将存储器分区为至少三个存储器区域。第一区域专用于在主机装置内 可用的软件平台的第一种类型。 第二区域专用于在主机装置内可用的软件平台的第二种类 型。第三区域独立于在主机装置 (2) 内可用的软件平台 (21) 的类型。此外, 通过呈现第一 和第二区域之一和第三区域, 取决于由识别器识别的平台, 用于管理服务的部件自动调整 从主机装置对那些服务的访问能力。
优选地, 用于管理服务的部件可以是用于该存储器的读取和 / 或写入的访问控制 器, 取决于由识别器识别的主机装置的平台, 该访问控制器能够自动选择可访问区域用于 读取和 / 或写入存储器。
在优选实施例中, 识别器可以是部件的一部分以便管理服务。
为了识别主机装置内可用的平台, 识别器可以使用与主机装置交换的特定数据, 如用于初始化通信的命令。
根据第一实施例, 用于管理服务的部件可以操作保留存储器, 用于引用对给定平 台授权的区域。
根据变化, 用于管理服务的部件还操作存储器以便列出对给定平台授权的服务。 对该存储器的引用包含在保留存储器中。
根据第二实施例, 用于管理服务的部件操作存储器以便列出对给定平台授权的服 务, 该存储器的内容通过这种部件从保留存储器中存储的数据预先准备。
附图说明
当阅读下面的描述并且浏览附图时, 其它特征和优点将表现地更清楚, 附图包括 : 图 1 示出根据本发明的电子存储设备 ; 图 2 示出对根据本发明的存储设备的大容量存储器的访问能力的修改 ; 图 3 描述电子存储设备的大容量存储器的设计的逻辑结构 ; 图 4 呈现用于管理电子存储设备的大容量存储器的数据结构。具体实施方式
图 1 示出根据本发明的电子存储设备 1。该设备 1 与主机装置 2 连接, 各自图示并且例如是 USB 棒和膝上型计算机。
主机装置 2 明确地具有软件平台 21 和通信部件 23。软件平台 21 可以是由微软发 行的操作系统 “Windows” 或 “Linux OS” 或用于 “苹果计算机 (Apple computer)” 的 “MAC OS” 或任何其它操作系统。通信部件 23 允许建立例如支持 USB 协议的通信或任何其它类型 的通信。该部件还可以提供没有任何接触的通信, 如蓝牙 WiFi 等。
由主机装置 2 实现的其它软件和硬件 ( 处理单元、 存储器 ......) 没有出现在图 1 中, 以便便利可读性。
电子存储设备 1 具有通过访问控制机构 12 从主机装置 2 通过读取 / 写入可访问 的大容量存储器 11。其还包括允许建立与主机装置的通信的通信部件 13。例如, 部件 13 提供使用 USB 通信协议的通信。设备 1 的通信部件 13 还可以提供有线通信或没有接触的 通信。为了确保与设备 1 的通信, 主机装置 2 通过一系列命令发起通信, 特别是为了识别设 备 1 的类型、 其软件和 / 或硬件配置。
在使用 USB 协议的通信的情况下, 命令具体包括 :
- 初始化通信总线 ;
- 请求设备描述符 ;
- 该设备的配置 ......
在结合图 1 呈现的情况下, 如 USB 棒的设备 1 不能解释如图 3 所示的目录和文件 的逻辑结构。设备 1( 经由控制器 12) 提供通过存储器块读取和 / 或写入的服务。主机装 置 2 只能解释如图 3 所示的逻辑存储器结构。图 3 呈现通过目录 DR、 D1-D5 分组的文件 F1 到 F8 的树状结构的示例。大容量存储器 ( 如结合图 1 的存储设备的存储器 11) 的内容可 以利用在分级的若干层次 NR、 N1、 N2 和 N3 的树状视图来表示。主目录或根目录是 DR。列 出了文件 F1 和 F2 以及级别 N1 的三个其它目录 : D1、 D2 和 D3。目录 D1 包括文件 F3 和 F4。 目录 D2 包括单个文件 F5。( 与 D1 和 D2 相同级别 N1 的 ) 目录 D3 具有更低级别 N2 的两个 目录 : D4 和 D5。目录 D4 和 D5 依次分别包括文件 F6 以及文件 F7 和 F8。通过使用这种类 型的表示, 传统地组织存储器的内容。电子设备的用户的数据被划分和分类。
图 4 允许描述已知的实施例以构成结合图 3 描述的存储器 11 的逻辑结构。该实 施例是 FAT( 文件分配表 ) 文件系统。该类型的系统可以认为是通用的。实际上, 开发的操 作系统 ( 如 “Windows” 、 “Linux OS” ) 识别该文件系统。
根据该系统, 存储器 11 传统上包括四个区域 : 保留区域 50、 专用于文件分配表的 区域 70、 专用于根目录的区域 60 和用于文件和目录的区域。保留区域 50 具体包括根目录 DR 的地址 501。该地址被直接或间接编码。实际上, 保留区域可以可替代地包括紧接在保 留区域之后的区域 70 的大小。根目录是紧接在表 70 之后的存储器结构, 可能间接地推出 根目录 60 的地址。表 70 的区域的地址 502 也可以间接地推出。特别是在存储器区域 70 紧接在保留区域 50 之后的情况。如果这些存储器区域不相邻, 则地址 502 可以明确地写入 保留存储器 50。
表 70 用于配置用于文件和目录的存储器空间。存在用于文件存储器的每个基本 单元或簇的条目 71、 72、 73。条目可以包括用于指示以下的值 :
- 该簇没有使用 ;
- 该簇被保留 ;- 该簇被损坏 ;
- 该簇是文件的最后簇 ;
- 该簇在文件之后。
因此, 当创建文件 F1 到 F8 时, 软件平台 21 通过搜索表 70 中的未使用簇, 分配簇 以创建文件。平台更新该表 70 以具体化与文件 91 或 92 相关联的簇 702 或 703。
根目录 60 用作内容的表。其识别级别 N1 的文件和目录。每个条目 61、 62 具体包 括级别 N1 的文件或目录的名称、 其大小和存储器中的位置。为此, 根目录 60 的条目 61 或 62 包括与文件或目录相关联的表 70 中的第一条目的地址或数量。条目 62 可以指定 602 表 70 中的第一条目 71。级别 N1 和 N2 的目录的每个具有类似于根目录的结构 60 的结构 80。 目录的结构 80 存储在文件和目录的存储器区域中。分配表 70 中的条目 71 然后与目录相 关联 701。接着, 结构 80 包括一个或多个条目 81, 其每个与更低级别的文件 91 或目录相关 联。
根据现有技术可以划分为 :
- 在目录 D1 下的专用于 “Windows” 平台的数据 ;
- 在目录 D2 下的专用于 “Linux OS” 平台的数据 ; - 在目录 D3 下的公共数据。
然而, 这种划分不能克服用户的错误选择。 尽管目录 D1( 或帮助文件 F1) 的名称描 述了安装与 “Windows” 平台兼容的应用的过程, 但是用户可能不经意地选择安装与 “Linux OS” 兼容的程序 ( 存储在 D2 中 )。安装将是无效的, 并且用户不满意。
本发明通过将包含不兼容应用或不相关数据的目录对平台 21( 即, 对用户 ) 隐藏, 解决了之前的解决方案的缺点。为此, 数据和应用如根据现有技术所示来分类 :
- 在目录 D1 下的专用于 “Windows” 平台的数据 ;
- 在目录 D2 下的专用于 “Linux OS” 平台的数据 ;
- 在目录 D3 下的公共数据。
根据本发明的设备 1 也包括大容量存储器 11 和用于控制对存储器 11 的访问的部 件 12、 用于识别主机装置 2 内可用的软件平台 21 的识别器 14。
为了识别平台 21, 识别器 14 可以在设置设备 1 和主机 2 的连接时分析从主机装置 2 发送的一系列命令。
如果用 USB 协议的示例来说明识别阶段, 则我们看到命令包括 :
- 初始化通信总线 ;
- 请求设备描述符 ;
- 该设备的配置 ......
在 “Windows” 平台 21 的情况下, 通过程序指令 ( 以英语 ) 翻译这些命令 :
1) 总线重置 ( 标为 “R” );
2) 获得设备描述符 ( 标为 “D” );
3) 总线重置 ( 标为 “R” );
4) 获得设备描述符 ( 标为 “D” );
5) 设置地址 ( 标为 “A” );
6) 设置配置 ( 标为 “C” )
7)......
我们可以示意性地标记 “RDRDAC” 来表现该指令序列的特征。
在 “Linux OS” 平台 21 的情况下, 只发送下面的指令 :
1) 总线重置 ( 标为 “R” );
2) 获得设备描述符 ( 标为 “D” );
3) 设置地址 ( 标为 “A” );
4) 设置配置 ( 标为 “C” )
5)......
该序列也可以标为 “RDAC” 。
我们可以采用其它示例 (“MAC OS” 等 ) 来说明允许初始化通信的指令序列是平 台 21 的一种签名的事实, 根据本发明的设备的识别器 14 可以利用的签名。
可替代地, 通过部件 14 进行的识别可以更复杂, 并且要求这些命令的更完整的分 析。例如, 可以通过识别器 14 实现状态机以执行识别功能。使用来自主机装置 2 的其它特 征, 可以想象其它的机制。
为了解决已知的解决方案的缺点, 根据本发明的设备 1 包括对于存储器 11 的访问 控制器 12, 修改为取决于由识别器 14 识别的平台, 自动地调整从主机装置读取和 / 或写入 存储器 11 的访问能力。 图 2 呈现设备 1, 其存储器 11 包括 :
- 专用于只用于 “Windows” 平台 21 的相关数据的分配表 70 的部分 11-1, 这些数 据 11-2 ;
- 专用于只用于 “Linux OS” 平台 21 的相关数据的分配表 70 的部分 11-3, 这些数 据 11-4 ;
- 专用于平台 21 的公共数据的分配表 70 的部分 11-5, 这些数据 11-6。
根据本发明的设备 1 给主机装置 2( 配备有 “Linux OS” 平台 21 的膝上型计算机 ) 呈现减少的和专用的访问能力 11a。对于该主机装置 2, 只有以下可用 :
- 分别对应于专用于只用于 “Linux OS” 平台 21 的相关数据的分配表 70 的部分 11-3 和这些数据 11-4 的 11a-1 和 11a-2 ;
- 分别对应于专用于用于公共数据的分配表 70 的部分 11-5 和这些数据 11-6 的 11a-3 和 11a-4。
为了只提供相关证据给平台, 第一实施例包括在专用于根目录 60( 见图 4) 的存储 器中提供与可能链接到电子存储设备的平台一样多结构 61、 62。 因此, 对于包括专用于两个 平台 ( 例如, “Windows” 和 “Linux OS” ) 的数据和 / 或程序的电子设备, 在存储器 60 中提 供:
1) 包括以下的根据目录 :
a. 专用于包括只用于 “Windows” 平台的相关数据和 / 或程序的目录 D1 的条目 ;
b. 专用于包含用于任何平台的公共数据的目录 D3 的条目 ;
c. 专用于一个或多个帮助或提示文件的可能的一个或多个条目, 以便安装专用于 配备有 “Windows” 平台的主机装置的程序 ;
2) 包括以下的根据目录 :
a. 专用于包括只用于 “Linux OS” 平台的相关数据和 / 或程序的目录 D2 的条目 ;
b. 专用于包含用于任何平台的公共数据的目录 D3 的条目 ;
c. 专用于一个或多个帮助或提示文件的可能的一个或多个条目, 以便安装专用于 配备有 “Linux OS” 平台的主机装置的程序。
在保留存储器 50 中, 还计划将条目点或特定地址与存储器 60 的每个根目录相关 联。
因此, 在由识别器 14 执行的识别阶段后, 访问控制器 12 在识别的平台 21 下使用 与相关根目录相关联的访问点或地址。专用于另一平台的数据和 / 或程序是不可访问的。
根据另一实施例, 根目录的不同版本存储在保留存储器中。 对于该实施例, 每个结 构包括分开的识别器。取决于识别的平台, 控制器 12 将相关结构复制到存储器 60 中。
可替代地, 只有根目录的完整版本存储在保留存储器中。作为平台的识别阶段的 结果, 经由控制器 12 在连接时生成存储器 60 中的根目录结构。为此, 部件操作保留存储器 中存储的根目录的每个条目 61、 62 中包括的不同的识别器, 并且只复制与识别的平台有关 的条目。该条目对应于专用于该平台的数据和公共数据。
可以想象其它实施例。在发明方面, 上述实现不是穷尽性的。 因此, 用根据本发明的包括内容服务器的电子设备作为示例。该设备可以包括 :
-USB 型通信部件 13 ;
- 备份存储 11( 包括来自服务器的数据 ), 以及实现服务器的功能部件 12( 例如, 通过 FTP( 文件传送协议 ) 服务器完成的服务器以及用于内容的传输的 “流传输” 服务器 )。
已经检测软件平台的识别器 14 发信号给服务器 12, 该服务器 12 对于来自装置 2 的相同请求, 根据识别的平台 21 返回不同数据。考虑到服务器使得要在主机装置上下载和 执行的可执行程序可用, 许可用于软件安装的帮助网页和描述软件的网页。
变得可用的程序或多个程序取决于平台 21。 为了实现本发明, 服务器 12 例如使用 对专用于涉及的平台的资源的引用的表 50。为了检测平台 21, 识别器 14 操作由装置 2 的 浏览器发出的请求, 以便识别主机装置 2 的平台 21。
本发明的实现的另一示例涉及具有 USB 支持 13 的 SIM 卡 1, 其可经由 USB 连接在 电话或计算机中使用。 发布这种卡的操作者可以将卡中包含的特定应用的使用限制在电话 领域中, 并且将其它应用限制在计算机领域中。
卡 1 包括用于检测主机装置 2( 计算机或电话 ) 的平台 21 的识别器 14。
可以想象或考虑本发明的实现或使用的其它示例。
此外, 如图 1 所描述的, 识别器 14 和处理器 12 可以分开。在优选实施例中, 识别 器 14 是访问控制器 12 的一部分, 该访问控制器 12 用于 USB 驱动器或包括经由浏览器可访 问的内容服务器的设备的服务器 12 的存储器 11。