错误管理拓扑结构的制作方法

文档序号:6454272阅读:149来源:国知局
专利名称:错误管理拓扑结构的制作方法
错误管理拓朴结构技术领域本公开涉及错误管理拓朴结构。
背景技术
一种常规计算机系统可包括运行一个或多个操作系统和应用程序 的主处理器,并且可能能够对目标存储系统读取和写入事务。在常规 计算机系统中,对目标存储设备的写事务可能遇到错误。常规系统不 能根据系统策略信息来解决写错误。另外,主机系统可包括系统存储 器,并且主机系统可能遇到关键性错误。常规系统不能解决关键性错 误以便检索系统存储器的内容。


通过以下详细描述并参照附图,要求权益的主题的实施例的特征 和优点会变得显而易见,附图中,相似的标号表示相似的部件,以及其中图l是示出系统实施例的筒图;图2是示出根据一个实施例的平台管理控制器的简图;图3是示出另一个系统实施例的简图;图4是示出根据一个实施例的示范操作的简图;图5是示出另一个系统实施例的简图;图6是示出根据另一个实施例的示范操作的简图;图7是示出另一个系统实施例的筒图;图8是示出根据另一个实施例的示范操作的筒图;图9是示出另一个系统实施例的简图;图IO示出要求权益的主题的另一个系统实施例; 图ll是示出根据另一个实施例的示范操作的简图;以及 图12是示出根据另一个实施例的示范操作的简图。 虽然以下详细描述将参照说明性实施例来进行,但是,本领域的 技术人员会清楚地知道它们的许多备选、修改和变更。因此,要求权 益的主题要广义地看待,并且仅如所附权利要求书中所阐明的来定义。
具体实施方式
图1示出要求权益的主题的一系统实施例100。系统100 —般可 包括主处理器112、第一总线122、第二总线126、用户接口系统116、 芯片组114、系统存储器121、平台管理控制器电路110和闪存106。 这个实施例还可包括存储设备118。存储设备118可包括例如磁、光 和/或半导体介质,例如硬盘设备。主处理器112可包括本领域已知的 任何种类的处理器,例如可向本主题申请的受让人购买的Intel Pentium IV处理器。总线122、 126可包括传递数据和命令的各种总 线类型。例如,总线122可符合可从PCI特别兴趣小组(美国,俄勒冈 州,波特兰)得到的外设部件互连(PCI)ExpressTM基础规范修订版 L0(2002年7月22日发表)(以下称作"PCI ExpressTM总线")。总线126 可包括符合串行外设接口(SPI)规范的总线(以下称作"SPI总线")。处理 器112、系统存4渚器121、芯片组114、总线112和126、闪存106、 平台管理控制器电路110可包含在单个电路板、如主板132中,并且 这些组件可共同或单独形成主机系统。用户接口 116可包括供人类用户输入命令和/或数据以及监视系统 的各种设备,例如键盘、指点设备和视频显示器。芯片组114可包括 主桥/集线器系统(未示出),它将处理器112、系统存储器121、用户接 口系统116、存储设备118、平台管理控制器电路110相互耦合以及与 总线122耦合。芯片组114还可能能够将闪存106、主处理器112、系 统存储器121、平台管理控制器电路110相互耦合以及与总线126耦合。芯片组114可包括集成电路芯片,例如从可向本主题申请的受让 人购买的集成电路芯片组中选择的芯片(例如图形存储器和I/O控制器 集线器芯片组),但作为附加或备选的方案,可使用其它集成电路芯片。系统存储器121可包括下列类型的存储器的一种或多种半导体 固件存储器,可编程存储器,非易失性存储器,只读存储器,电可编 程存储器,随机存取存储器,闪存(可包括例如"与非"或"或非"类型存 储器结构),磁盘存储器,和/或光盘存储器。在这个实施例中,存储器 106可包括闪存。作为附加或备选的方案,存储器121和/或106可包 括其它和/或将来开发的类型的计算机可读存储器。机器可读固件程序 指令可存储在存储器121和/或106中。如下文所述,这些指令可由主 处理器112和/或平台管理控制器110来访问和运行。在由主处理器112 和/或平台管理控制器110运行时,这些指令可使主处理器112和/或平 台管理控制器110执行本文所述的、由主处理器112和/或平台管理控 制器110所执行的操作。除了其它操作,主处理器112还可能能够产生一个或多个输 W输 出(I/0)事务来从目标存储设备118读取数据和/或对目标存储设备118 写入数据。目标存储设备可包括例如本地存储设备(即,与主机系统100 耦合的本地设备)和/或远程存储设备。作为备选或附加的方案,存储设 备118可包括一个或多个冗余独立磁盘阵列(RAID)和/或外围设备。主 处理器112可响应例如主机系统的引导操作、操作系统(OS)操作和/或 应用程序(例如在主机处理器112上运行一个或多个指令的软件应用程 序和/或运行于主机系统上的固件指令)而产生这些I/O事务。作为备选 或附加的方案,与主机系统132和/或远程应用程序(未示出)耦合的附加设备、如附加卡(未示出)可能能够产生一个或多个输^/输出(i/o)事务来从存储设备118读取数据和/或对存储设备118写入数据。平台管理控制器电路110可能能够经由总线122来控制对存储设 备118的读和/或写访问。本文中的任何实施例中使用的"电路"可包括 例如单一或任何组合的硬连线电路、可编程电路、状态机电路和/或存储由可编程电路运行的指令的固件。同样,在本文中的任何实施例中,电路110可体现为一个或多个集成电路和/或形成所述一个或多个集成电路的组成部分。本文中的任何实施例中使用的"集成电路"表示半导 体器件和/或微电子器件,例如半导体集成电路芯片。本文将更详细地进行描述,电路110还可能能够发现对存储设备118的写4晉误,并将 数据写重新映射到存储设备118的不同区域。响应读请求,电^各110 可能能够将数据读请求重定向到存储设备上的所述不同区域,数据由 于电路110所执行的重新映射操作而可以驻留在其中。平台管理控制器电路110还可能能够经由网络124和通信链路125 与一个或多个远程系统140进行通信。远程系统140可包括例如远程 服务器系统或远程工作站(它们可与主机系统132相似),它们可包括一 个或多个存储设备和/或存储阵列(它可包括例如与一个或多个远程系 统耦合并由其控制的存储阵列)。在这个实施例中,远程系统140可能 能够至少部分存储在存储设备118上存储的数据。下面将更详细地进 行描述,平台管理电路110可能能够至少部分根据对存储设备118的 读和/或写访问,来控制对一个或多个远程系统140的读和/或写访问。 在这个实施例中,例如,电路110还可能能够发现对存储设备118的 写错误。电路110还可能能够确定与写错误关联的数据是否位于一个 或多个远程系统140上,如果是的话,则创建对于远程系统140上的 数据的映射。响应读请求,电路110可能能够从远程系统140检索数 据。平台管理控制器电路110可能能够经由总线122和芯片组114来 控制对系统存储器121的读和/或写访问。电路110还可能能够检测至 少一个主机系统关键性错误,并读取系统存储器121的内容。本文中 的任何实施例中使用的"关键性错误"可包括可能使主处理器112、和/ 或运行在主处理器上的OS或应用程序、和/或引导指令(可存储在闪存 106中)停止按预期执行(可能使计算机系统132不可工作)的条件。电 路110还可能能够将系统存^f渚器121的内容写入存储设备118和/或写入一个或多个远程系统140 。平台管理控制器电路110可能能够产生对106和/或存储设备118 的带外(OOB)读和/或写操作。OOB读和/或写操作可包括例如与主机 系统132中的主处理器运行的OS无关地执行的一个或多个读和/或写 操作。图2是更详细地示出平台管理控制器电路110的筒图。在图2中, 为了清晰起见省略了图1所示系统100的某些部分(例如电路板132), 但是要理解,图2的相似部分可在不背离这个实施例的前提下,通过 与图1所示实施例一致的方式或者通过其它系统实现方式来实现。电 路110可包括处理器电路204,它可能能够执行本文所述的属于平台 电路110的操作。处理器电路204可包括可以与兼容和/或符合"Inte應 XScaleTM核心开发人员手册"(本主题申请的受让人2000年12月发布) 中所述的Intel XScaleTM核心微架构的相应电路。处理器电路204当 然可在不背离这个实施例的前提下包括其它类型的处理器核心电路。 电路110还可包括存储器210。存储器210可包括例如计算机可读程 序指令存储器,它可包含处理器电路204可运行的微码程序指令的相 应集合。由处理器电路204运行程序指令的这些相应集合可引起执行 本文所述的、由处理器电路204所执行的操作。存储器210可包括一个或多个平台策略指令,所述指令可定义例 如可指示存储设备118的管理的规则或规则集合以及用于对闪存106 进行读和/或写访问的策略规则。示范平台策略指令可包括保留部分 204的大小、启用或禁用保留部分204的隐藏、启用和/或禁用对闪存 106的读和/或写访问、与对闪存106的数据写和/或读事务相关联的优 先级规则、和/或其它平台策略指令。处理器电路204可在平台管理控 制器电路110的操作期间运行平台策略指令。当然,这些只是示范指 令,并且本文中同样考虑到其它平台策略指令。在这个实施例中,电路110还可包括PCI E邓ress (PCIe)接口电路 202,它可允许处理器电^各204经由PCIe总线122与芯片组114和/或存储设备118交换命令和数据。电路110还可包括SPI接口电路208, 它可允许处理器电路204经由SPI总线126与闪存106交换命令和数 据。但是,这个实施例同样考虑与总线接口电路对应的其它总线技术 和总线。电路110还可包括网络接口电路206,它可允许处理器电路 204经由网络124和通信链路125与一个或多个远程系统交4奐命令和 数据。网络124可符合或兼容可能能够允许使用传输控制协议/因特网协 议(TCP/IP)的通信的以太网通信协议。以太网协议可符合或兼容电气和 电子工程师协会(正EE)发布的标题为"IEEE 802.3标准"的以太网标准 (2002年3月发布)和/或这个标准的更后版本。作为备选或附加的方案, 网络124可能能够使用X.25通信协议进行通信。X.25通信协议可符 合或兼容国际电信联盟-电信标准化部门(ITU-T)颁布的标准。作为备选 或附加的方案,网络124可能能够使用帧中继通信协议进行通信。帧 中继通信协议可符合或兼容国际电报电话咨询委员会(CCITT)和/或美 国国家标准协会(ANSI)颁布的标准。作为备选或附加的方案,网络124 可能能够使用异步传输才莫式(ATM)通信协议进行通信。ATM通信协议 可符合或兼容ATM论坛发布的标题为"ATM-MPLS网络互通 1.0"(2001年8月发布)的ATM标准和/或这个标准的更后版本。本文当 然同样考虑不同的和/或以后开发的通信协议。图3是示出另一个系统实施例300的简图。在图3中,为了清晰 起见省略了图1所示系统100和图2所示平台管理控制器电路110的 某些部分(例如电路板132、网络124和远程系统140),但是要理解, 图3的相似部分可在不背离这个实施例的前提下,通过与图1和/或图 2所示实施例 一致的方式或者备选地通过其它系统实现方式来实现。在这个实施例中,存储设备118可包括数据区域302和保留区域 304。数据区域302可包括多个扇区l...n,所述扇区可由主处理器112、据的。在这个实施例中,平台管理控制器电路110可能能够控制存储设备118以便对保留区域304进行保留。本文对于存储设备118所使 用的"保留区域"可包括存储设备118的一部分,该部分一般可以是控 制器电路110可存取的并且可以是从主机系统132所运行的OS不可 存取的。根据存储设备118的介质类型,保留区域304的大小可通过 例如所选LBA地址范围和/或扇区的所选数量(例如扇区1.. .m)来定义。 平台管理控制器电路110还可能能够隐藏保留区域304以免被其它电 路访问,例如对主处理器112、和/或运行于主机系统132的OS或应 用程序、和/或芯片组114、和/或一个或多个远程系统(未示出)隐藏保 留部分304,从而防止主才几处理器112、和/或运行于主才几系统132的 OS或应用程序、和/或芯片组、和/或一个或多个远程系统访问存储设 备118的保留区域304。在这个实施例中,电路110可能能够接收将 数据写入存储设备118的数据区域302的请求。写请求可由例如主处 理器112和/或芯片组114来产生。如果在数据写尝试期间遇到错误, 则存储设备118可能能够发信号通知已经发生错误。响应来自存储设 备118的关于已经发生写错误的信号,电路110还可能能够检测存储 设备118中在数据写操作期间可能产生的写错误。错误可包括例如对 存储设备118的一个或多个扇区失败的数据写尝试,图3中表示为"X"。 响应写错误,电路110可能能够将数据重新映射到存储设备118 的保留区域304。本文所使用的"重新映射"可定义为将数据的物理位 置从一个扇区改变到另一个扇区。"重新映射"还可包括更新和/或改变 可定义数据在存储设备118中驻留的位置的分配表。因此,如图3所 示,扇区"X"可以是出错扇区,并且电路110可能能够将数据写尝试重 新映射到保留区域304的扇区"Y"。电路110还可能能够创建将保留区 域304上的"Y"数据的位置与数据区域302上的"X"扇区相关的映射 图。电路110还可能能够接收读请求,并针对映射表来检验读请求, 如果读请求是针对可能已经位于数据区域302的扇区"X"上的数据,则 电路110可能能够将读请求重定向到保留区域304的扇区"Y"上的重新 映射数据。平台管理控制器电路110还可能能够仲裁对存储设备118的读和/ 或写访问,以便防止保留区域304净皮访问。因此,例如,如果主处理 器112产生I/O事务来对存储设备118读或写数据,则平台管理控制 器电路110可接收这个请求(经由总线120),并且在数据存储于(或者 将被写入)存储设备118的保留区域304时拒绝读和/或写请求,和/或/或写请求。图4是示出可根据一实施例执行的示范操作的流程图400。操作 可包括保留存储设备中的保留区域(402)。操作还可包括接收将数据写 入存储设备的写请求(404)。操作还可包括检测存储设备中的写错误 (406)。操作还可包括将数据重新映射到存储设备中的保留区域(408)。 操作还可包括接收对于存储设备中的数据的读请求(410)。如果已经将 与读请求相关联的数据重新映射到存储设备的保留区域,则操作还可 包括将读请求重定向到存储设备的保留区域中的重新映射数据(412)。图5是示出另一个系统实施例500的简图。在图5中,为了清晰 起见省略了图1所示系统100和图2所示平台管理控制器电路110的 某些部分(例如电路板132),但是要理解,图5的相似部分可在不背离 这个实施例的前提下,通过与图1和/或图2所示的实施例一致的方式 或者备选地通过其它系统实现方式来实现。在这个实施例中,存储设备118可包括数据区域302。数据区域 302可包括多个扇区l...n,所述扇区可由主处理器112、芯片组114、 远程系统140和/或电路110进行访问以便在所述扇区上读取和/或写入 数据。电路110可能能够经由网络142来与一个或多个远程系统140 进行通信。如上所述, 一个或多个远程系统140可能能够以冗余方式 将数据完整或部分地存储在存储设备118上。在这个实施例中,电路 110可能能够接收将数据写入存储设备118的数据区域302的请求。 写请求可由例如主处理器112和/或芯片组114来产生。在这个实施例 中,电路110可能能够响应来自例如主处理器112和/或芯片组114的数据读和/或写请求(可包括OS读和/或写请求)而执行定向到存储设备 118的数据读和/或写请求。如果在数据写尝试期间遇到错误,则存储 设备118可能能够发信号通知已经发生错误。响应来自存储设备118 关于已经发生写错误的信号,电路110还可能能够检测存储设备118 中在数据写操作期间可能产生的写错误。错误可包括例如对存储设备 118的一个或多个出错扇区的数据写尝试,图5中表示为多个"X"。响应写错误,电路110可能能够(经由网络124)来与一个或多个远 程系统140进行通信,以^更确定在一个或多个远程系统140上是否存 在与写请求相关联的数据。这在图5中示为多个"Y",表示远程系统 140上可用的数据。如果数据在远程存在,则电路110可能能够创建 将远程系统上的"Y"数据的位置与存储设备118的数据区域302上的对 应"X"扇区相关的映射表。电路110还可能能够接收读请求,并针对映 射表来检验读请求,如果读请求是针对可能已经位于数据区域302中 的一个或多个"X"扇区上的数据,则电路110可能能够将读请求重定向 到远程系统140的对应"Y"扇区上的重新映射数据,并且从远程系统 140中4全索数据。如果远程系统不可用或者不包含"Y"数据(与供存储设备118的 "X,,扇区使用的数据相对应),则作为备选或附加的方案,电路110可 通过以上参照图3的实施例所述的方式将数据重新映射到存储设备 118的保留区域304。电路110还可能能够创建将保留区域304上的"Y" 数据的位置与数据区域302上的"X"扇区相关的映射表,并且通过以上 参照图3所述的方式,将对于那个数据的读请求重新映射到保留区域 304。作为备选或附加的方案,如果远程系统140不包含"Y"数据(与供 存储设备118的"X"扇区使用的数据相对应),则电路110可能能够将 数据重新映射到远程系统140,从而远程存储数据。图6是示出可根据另一个实施例执行的示范操作600的流程图。 操作可包括与远程系统进行通信(602)。操作还可包括接收将数据写入 目标存储设备的写请求(604)。操作还可包括检测目标存储"i殳备中的写15错误(606)。操作还可包括发现远程系统上与写请求相关联的数据 (608)。如果数据位于远程,则操作还可包括创建对远程系统上的数据 的映射表(610)。操作还可包括接收对于目标存储设备上的数据的读请 求(612)。如果已经将与读请求相关联的数据重新映射到远程系统,则 操作还可包括从远程系统中检索数据(612)。图7是示出另一个系统实施例700的简图。在图7中,为了清晰 起见省略了图1所示系统100和图2所示平台管理控制器电路110的 某些部分(例如电路板132),但是要理解,图7的相似部分可在不背离 这个实施例的前提下,通过与图1和/或图2所示的实施例一致的方式 或者备选地通过其它系统实现方式来实现。.在这个实施例中,平台管理控制器电路110可能能够读取系统存 储器121的存储内容702。电路110还可能能够将系统存储器121的 存储内容720写入存储试备118(并且这个操作可通过与以上参照图3 所述的实施例相似的方式来执行)。作为备选或附加的方案,电路IIO 还可能能够经由网络124将系统存储器121的存储内容720写入一个 或多个远程系统140(并且这个操作可通过与以上参照图5所述的实施 例相似的方式来执行)。例如,可能发生关键性错误,这可阻止运行于 主机系统的OS和/或应用程序访问存储器。如果发生关键性错误,则 存储器处理器112和/或芯片组114可能能够发信号通知已经发生错 误。响应来自处理器112和/或芯片组114关于已经发生关键性错误的 信号,电路110可能能够检测关键性错误,并将存储内容121存储到 存储设备118或者远程系统140(或者它们两者)。例如,这可在关4走性 错误时实现系统存储器121中的数据的审计。图8是示出可根据另一个实施例执行的示范操作800的流程图。 操作可包括检测关键性错误(802)。操作还可包括读取系统存储器的存 储内容(804)。搡作还可包括将存储内容写入目标存储设备(806)。作为 备选或附加的方案,操作可包括与远程系统进行通信(808),并将存储 内容写入远程系统(810)。图9示出要求权益的主题的另一个系统实施例900。在这个实施 例中,平台管理控制器电路110,可包含在可与总线122耦合的电路卡 120中。如同图1的实施例那样,平台管理控制器电路110,可包含在 一个或多个集成电路芯片中或者形成它们的一部分。这个实施例可包 括电路卡插槽130。电路卡120可构造成允许它^皮插入插槽130。当电 路卡120被正确插入插槽130时,连接器134和137可成为相互进行 电气和机械耦合。当连接器134和137这样相互耦合时,卡120可成 为与总线122进行电耦合,并且可经由总线122和/或总线126及芯片 组114与系统存储器121、主处理器112、用户接口系统116和/或闪 存106交换数据和/或命令。作为备选或附加的方案,平台管理控制器 电路110,可经由通信链路125,与主机系统132以及与网络124,耦合的 一个或多个远程系统交4灸命令和数据。在这个实施例中,平台管理电 路110的操作可与以上参照图1-8所述的操作相同,但是可省略SPI 总线接口电路308,改为可经由芯片组114在电路卡120与闪存106 之间交换命令和数据。图10示出要求权益的主题的另一个系统实施例1000。系统1000 一般可包括多核心(多核)主处理器112,、芯片组114、系统存储器121,、 带内网^4秦口电路1006、存储设备118以及能够经由通信链路125、 通过网络124与一个或多个远程系统140进行通信的带外(OOB)网络 接口电路1008。多核处理器112,可包括本领域已知的具有多个核心的 4壬何种类的处理器,例如可向本主题申请的受让人购买的Intel Pentium D双核处理器。在这个实施例中,多核处理器112,可包括多个核心CPU,例如 CPU1、 CPU2、 CPU3和CPU4。在这个实施例中当然可使用附加或更 少的核心。多核处理器112,可在逻辑上和/或物理上分为多个分块。例 如,在这个实施例中,处理器112,可分为包括CPU1和CPU2的主分 块1004以及包括CPU3和CPU4的嵌入分块1002。主分块1004可能 能够运行操作系统(例如Windows、 Linux等)。嵌入分块1002可能能够运行与存储设备118和/或OOB网络接口 1008的I/O事务,下面更 详纟田i也进4亍4葛述。在这个实施例中,存储器121,可在逻辑和/或物理上分为能够存储 用于主分块1004的操作的命令、指令和/或数据的系统存储器1以及 能够存储用于嵌入分块1002的操作的命令、指令和/或数据的系统存 储器2。 00B网^4妄口 1008和/或带内网^t妻口 1006可包括能够与总 线耦合的卡(与图9的卡120相似)上的网络接口电路。在这个实施例中, OOB网络接口 1008可能能够响应来自嵌入分块1002的OOB命令而 与远程系统140进行通信,以便从远程系统140读取数据和/或向远程 系统140写入数据。带内网络接口 1006可能能够响应来自主分块1004 的命令而与远程系统(未示出)进行通信。一般来说,这个实施例的操作特征可与以上参照图1-9所述的操 作特征相似。但是,在这个实施例中,嵌入分块1002可能能够执行属 于平台管理控制器110(上文中详细描述)的操作。主分块1004可能能 够运行OS以及与目标存4渚设备118的I/O事务,而嵌入分块1002可 能能够相对于主分块进行带外操作,表示嵌入分块可能能够与运行于 主分块1004上的OS无关地进行操作。在那个方面,嵌入分块1002 可作为目标设备委托代理进行操作,以便与运行于主分块的OS无关 地为主分块1004处理与目标设备118的I/O事务。在这个实施例中,嵌入分块1002可能能够接收将数据写入目标存 储设备118的写命令。写命令可由例如主分块1004来产生。响应定向 到目标设备118的桂起写请求,嵌入分块1002可将写请求分割成将数 据写入存储设备118和/或远程系统140。如果存在挂起写请求并且发 生错误(例如写错误、导致主分块崩溃和重置的关4定性系统错误、监4见 器超时错误等),则可能存在未被写入目标设备118的未提交数据(和/ 或部分提交数据)。在这种情况下,嵌入分块1002可能能够4全测进行 中的错误,使得完成对目标设备118的挂起写请求的情况不会发生, 并将对应于挂起写请求的未提交数据写入远程系统140。在重置主分块1004时,嵌入分块1002可能能够(经由OOB网络"l妄口 1008)向远禾呈 系统140发送请求,以便检索未提交数据,并将未提交数据写入目标 设备118。为此,在处理器112,重置之后的初始化时,嵌入分块1002可在系 统存储器2中创建"邮箱"。邮箱可包括例如系统1000中的一个或多个 指定设备的存储器分配。因此,例如,嵌入分块1002可创建OOB网 络"t妄口 1008的邮箱。嵌入分块1002可在OOB网绍4姿口 1008的邮箱 中包括例如可由OOB网口 1008访问的指令,从而与远程系统140 进行通信以便检索未提交数椐。邮箱还可包括LBA(例如扇区、簇等) 和/或与远程系统140上的未提交数据的位置相关联的指针信息。图ll是示出可根据另一个实施例执行的示范操作1100的流程图。 操作可包括在多核处理器中创建包括至少 一个核心的主分块以及包括 至少一个不同核心的嵌入分块(l 102)。操作还可包括使用主分块来运 行操作系统(1104)。操作还可包括通过嵌入分块来路由目标设备I/0业 务(1106)。操作还可包括以上参照图4所述的写和读错误操作、以上参 照图6所述的远程数据恢复、以上参照图8所述的系统差错恢复操作 和/或下面参照图12所述的操作。图12是示出可根据另一个实施例执行的示范操作1200的流程图。 操作可包括接收将数据写入目标设备的请求(1202)。操作还可包括与 远程系统进行通信,并且将对应于写请求的数据重新映射到远程系统 (1204)。操作还可包括检测写入目标设备时的错误,使得可存在未提 交数据(1206)。操作还可包括与远程系统进行通信以便检索未提交数 据,并且将未提交数据写入目标设备(1208)。因此,总之,本文中的至少一个实施例可包括集成电路(IC),所 述集成电路包括多处理器核心的处理器。IC可包括主分块,包括至 少一个能够运行操作系统的处理器核心;以及嵌入分块,包括至少一 个不同的处理器核心。嵌入分块可能能够进行以下梯:作接收将数据 写入目标存储设备的写请求,与耦合到嵌入分块的远程系统进行通信并将对应于写请求的数据重新映射到远程系统;检测尝试将数据写入 存储设备时的错误,留下定向到目标存储设备的未提交数据;以及与 远程系统进行通信以便检索与所述写请求相对应的未提交数据,并将 未提交数据写入目标存储设备。嵌入分块还可能能够至少部分与运行 于主分块上的操作系统无关地执行这些操作。有利的是,这个实施例的集成电路可允许在存储设备的保留部分 存储可用于系统审计的事件日志和数据。还有利的是,这个实施例的 集成电路可能能够将数据存储在存储设备的安全(隐藏)的保留部分 中,该部分可能是操作系统读/写操作不可访问。这个实施例的集成电 路还可能能够将主机系统存储内容保存到存储设备的保留部分和/或 保存到远程系统,以便允许例如在发生主机系统关4定性错误时审计和 恢复存储内容。这个实施例的集成电路还可能能够与操作系统无关地 执行一个或多个操作。在一备选实施例中,可使用软件平台驱动器, 它接收与目标存储设备相关联的写和/或读错误,并将这类错误传递给 嵌入分块。这样一种驱动程序可在运行于主分块的软件中发生错误时 实现例如本文提供的一个或多个错误恢复策略(即,在将读或写指令传 递给嵌入分块之前)。本文所使用的术语和表达用作描述而非限制性的方面,并且在使 用这类术语和表达时,不是要排除所示和所述的特征的任何等同内容 (或者它们的一部分),并且要认识到,在权利要求书的范围之内,各 种修改是可能的。其它修改、变更和备选也是可能的。因此,权利要 求书意在涵盖所有这类等同内容。
权利要求
1.一种用于管理目标存储设备上的错误的设备,包括包括多处理器核心处理器的集成电路(IC),所述IC具有包括能够运行操作系统的至少一个处理器核心的主分块以及包括至少一个不同处理器核心的嵌入分块,所述嵌入分块能够执行以下操作接收将数据写入目标存储设备的写请求;与耦合到所述嵌入分块的远程系统进行通信,并且将对应于所述写请求的数据重新映射到所述远程系统;检测尝试将数据写入所述存储设备时的错误,留下定向到所述目标存储设备的未提交数据;以及与所述远程系统进行通信以便检索与所述写请求相对应的所述未提交数据,并且将所述未提交数据写入所述目标存储设备;所述嵌入分块还能够至少部分与运行于所述主分块上的所述操作系统无关地执行所述操作。
2. 如权利要求l所述的设备,其中所述嵌入分块还能够将对应于所述写请求的数据重新映射到所述 目标存储设备的保留区域,所述嵌入分块还能够接收读取与所迷错误 相对应的所述数据的至少 一个数据读请求,并将所述数据读请求重定 向到所述目标存储设备的所述保留区域。
3. 如权利要求l所迷的设备,其中所述嵌入分块还能够接收对于所述目标设备上的数据的至少一个 数据读请求,并将所述读请求重定向到所述远程系统以便检索所述数据。
4. 如权利要求l所述的设备,其中所述嵌入分块还能够检测主机系统关键性错误,并读取主机系统 存储器的存储内容,所述嵌入分块还能够与耦合到所述嵌入分块的所述远程系统进行通信,并且将所述存储内容写入所述远程系统。
5. 如权利要求l所述的设备,其中所述错误包括涉及所述主分块、能够使所述主分块重置的关4建性 错误,所述嵌入分块还能够将所述未提交数据写入所述远程系统,并 且在从所述重置进行初始化时,所述嵌入分块还能够从所述远程系统 中检索所述未提交数据,并将所述未提交数据存储在所述目标存储设 备上。
6. —种用于管理目标存储设备上的错误的系统,包括包括多个核心处理器的集成电路(IC),所述IC具有包括能够运行 操作系统的至少 一个核心处理器的主分块以及包括至少 一个不同核心 处理器的嵌入分块,并且带外(OOB)网络接口卡能够与总线耦合,所 述嵌入分块能够执行以下操作接收将数据写入目标存储设备的写请求;经由所述OOB网络接口卡与耦合到所述嵌入分块的远程系统进 行通信,并且将对应于所述写请求的数据重新映射到所述远程系统;检测尝试将数据写入所述存储设备时的错误,留下定向到所述目 标存储设备的未提交数据;以及经由所述OOB网络接口卡与所述远程系统进行通信以便检索与 所述写请求相对应的所述未4是交数据,并且将所述未提交数据写入所 述目标存储设备;所述嵌入分块还能够至少部分与运行于所述主分块上的所述才喿作 系统无关地执行所述操作。
7. 如权利要求6所述的系统,其中所述嵌入分块还能够将对应于所述写请求的数据重新映射到所述 目标存储设备的保留区域,所述嵌入分块还能够接收读取与所述错误 相对应的所述数据的至少一个数据读请求,并将所述数据读请求重定 向到所述目标存储设备的所述保留区域。
8. 如权利要求6所述的系统,其中所述嵌入分块还能够接收对于所述目标设备上的数据的至少 一个数据读请求,并将所述读请求重定向到所述远程系统以便检索所述数 据。
9. 如权利要求6所述的系统,其中所述嵌入分块还能够检测主机系统关键性错误,并读取主机系统 存储器的存储内容,所述嵌入分块还能够与耦合到所述嵌入分块的所 述远程系统进4亍通信,并且将所述存储内容写入所述远程系统。
10. 如权利要求6所述的系统,其中所述错误包括涉及所述主分块、能够使所述主分块重置的关键性 错误,所述嵌入分块还能够将所述未提交数据写入所述远程系统,并 且在从所述重置进行初始化时,所述嵌入分块还能够从所述远程系统 中检索所述未提交数据,并将所述未提交数据存储在所述目标存储设 备上。
11. 一种存储指令的计算机可读存储介质,所述指令在由^/L器运 行时引起下列操作将多核心处理器分为包括能够运行操作系统的至少一个处理器核 心的主分块以及包括至少一个不同处理器核心的嵌入分块,所述嵌入 分块能够执行以下操作接收将数据写入目标存储设备的写请求;与耦合到所述嵌入分块的远程系统进行通信,并且将对应于所述 写请求的数据重新映射到所述远程系统;检测尝试将数据写入所述存储设备时的错误,留下定向到所述目 标存储设备的未提交数据;以及与所述远程系统进行通信以便检索与所述写请求相对应的所述未 提交数据,并且将所述未提交数据写入所述目标存储设备;所述嵌入分块还能够至少部分与运行于所述主分块上的所述操作 系统无关地执行所述操作。
12. 如权利要求ll所述的计算机可读存储介质,其中,所述指令 在由所述机器运行时引起下列附加操作将对应于所述写请求的数据重新映射到所述目标存储设备的^f呆留区域;接收读取与所述错误相对应的所述数据的至少 一个数据读i青求; 以及将所述数据读请求重定向到所述目标存储设备的所述保留区域。
13. 如权利要求11所述的计算机可读存储介质,其中,所述指令 在由所述机器运行时引起下列附加操作接收对于所述目标设备上的数据的至少一个数据读请求,并将所 述读请求重定向到所述远程系统以便检索所述数据。
14. 如权利要求ll所述的计算机可读存储介质,其中,所述指令 在由所述机器运行时引起下列附加操作检测主机系统关键性错误,并读取主机系统存储器的存储内容; 与耦合到所述嵌入分块的所述远程系统进行通信,并且将所述存4诸内 容写入所述远程系统。
15. 如权利要求11所述的计算机可读存储介质,其中,所述指令 在由所述机器运行时引起下列附加操作响应涉及所述主分块、能够使所述主分块重置的关键性错误,将 所述未提交数据写入所述远程系统,并且在从所述重置进行初始化时, 从所述远程系统中检索所述未提交数据,并将所述未提交数据存储在 所述目标存储"i更备上。
16. —种用于管理目标存储i殳备上的错误的方法,包括将多核心处理器分为包括能够运行操作系统的至少一个处理器核 心的主分块以及包括至少一个不同处理器核心的嵌入分块,所迷嵌入 分块能够执行以下操作接收将数据写入目标存储i殳备的写请求;与耦合到所述嵌入分块的远程系统进行通信,并且将对应于所述 写请求的数据重新映射到所述远程系统;检测尝试将数据写入所述存储设备时的错误,留下定向到所述目 标存储设备的未提交数据;以及与所述远程系统进行通信以便检索与所述写请求相对应的所述未提交数据,并且将所述未提交数据写入所述目标存储设备;所述嵌入分块还能够至少部分与运行于所述主分块上的所述纟喿作 系统无关地执行所述操作。
17. 如权利要求16所述的方法,还包括将对应于所述写请求的数据重新映射到所述目标存储设备的保留 区域;接收读取与所述错误相对应的所述数据的至少一个数据读请求; 以及将所述数据读请求重定向到所述目标存储设备的所述保留区域。
18. 如权利要求16所述的方法,还包括^接收对于所述目标设备上的数据的至少一个数据读请求,并将所 述读请求重定向到所述远程系统以便检索所述数据。
19. 如权利要求16所述的方法,还包括检测主机系统关键性错误,并读取主机系统存储器的存储内容; 与耦合到所述嵌入分块的所述远程系统进行通信,并且将所述存储内 容写入所述远程系统。
20. 如权利要求16所述的方法,还包括响应涉及所述主分块、能够使所述主分块重置的关键性错误,将 所述未提交数据写入所述远程系统,并且在从所述重置进行初始化时, 从所述远程系统中检索所述未提交数据,并将所述未提交数据存储在 所述目标存储设备上。
21. 如权利要求19所述的方法,还包括 响应涉及所述主分块、能够使所述主分块重置的关^:性错误,将所述未提交数据写入所述远程系统,并且在从所述重置进行初始化时, 从所述远程系统中检索所述未提交数据,并将所述未提交数据存储在 所述目标存储设备上。
全文摘要
根据一个实施例的一种方法可包括将多个处理器核心分为包括至少一个能够运行操作系统的处理器核心的主分块以及包括至少一个不同处理器核心的嵌入分块。这个实施例的嵌入分块可能能够执行以下操作接收将数据写入目标存储设备的写请求;与耦合到嵌入分块的远程系统进行通信并将对应于所述写请求的数据重新映射到远程系统;检测尝试将数据写入存储设备时的错误,留下定向到目标存储设备的未提交数据;以及与所述远程系统进行通信以便检索与所述写请求相对应的未提交数据,并将未提交数据写入目标存储设备。这个实施例的嵌入分块还可能能够至少部分与运行于所述主分块上的所述操作系统无关地执行这些操作。
文档编号G06F15/16GK101405700SQ200780009846
公开日2009年4月8日 申请日期2007年3月14日 优先权日2006年3月21日
发明者M·罗思曼, V·齐默 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1