用于网络计算的便携式平台

申请号 CN201480028550.2 申请日 2014-03-12 公开(公告)号 CN105230111B 公开(公告)日 2017-12-12
申请人 脸谱公司; 发明人 耶尔·马圭尔; 乔瓦尼·科利托雷; 凯特琳·E·卡利诺夫斯基;
摘要 在一个实施方式中,一种便携式网络计算装置包括处理器、多个无线电以及 存储器 。所述装置能操作以由所述无线电中的至少一个与和用户相关联的装置 配对 。然后,所述装置可以通过一个无线电监控用于与第一网络建立连接的 信号 。在所述装置确定所述第一网络的信号降低为低于 阈值 质量 水 平时,其可以通过打开无线电,来启用至少一个配对装置的接入点模式,以与第二网络建立连接,从而为所述至少一个配对装置提供与所述第二网络的连接。如果多个网络可用,那么所述装置可以根据一个或多个因素的评估,选择最佳网络。
权利要求

1.一种第一计算装置,所述计算装置包括:
处理器;
一个或多个无线电;以及
存储器,其耦接至所述处理器,包括由所述处理器可执行的指令,在执行所述指令时,所述处理器能操作以:
由所述无线电中的至少一个在阈值邻近度内感测便携计算装置,其中,所述便携计算装置包括处理器、一个或多个无线电以及耦接至所述便携计算装置的处理器的存储器;
建立与所述便携计算装置的直接连接;
从所述便携计算装置检索初始信息,所述初始信息包括社交网络系统用户标识符;
在认证所述便携计算装置后,基于所述初始信息,给所述便携计算装置授予证书,其中,由所述第一计算装置授予的所述证书允许所述便携计算装置与一个或多个第二计算装置通信,并且其中,一个或多个所述第二计算装置中的每个所述第二计算装置包括处理器、一个或多个无线电以及耦接至处理器的存储器。
2.根据权利要求1所述的第一计算装置,其中,用于给所述便携计算装置授予证书的指令包括用于以下的指令:
确定第一用户节点在社交图谱中连接至第二用户节点,其中,所述第一用户节点表示与所述第一计算装置相关联的第一用户,并且其中,所述第二用户节点由所述社交网络系统用户标识符识别,并且其中,授予所述证书给所述便携计算装置是基于确定所述第一用户节点在所述社交图谱中连接到所述第二用户节点。
3.根据权利要求2所述的第一计算装置,其中,用于给所述便携计算装置授予证书的指令包括用于以下的指令:
确定所述第一用户节点在阈值分离度内连接至所述第二用户节点。
4.根据权利要求1所述的第一计算装置,其中,用于给所述便携计算装置授予证书的指令包括用于以下的指令:
确定由所述社交网络系统用户标识符识别的用户属于用户指定的一组受信任的朋友。
5.根据权利要求1所述的第一计算装置,其中,用于给所述便携计算装置授予证书的指令包括用于以下的指令:
确定由所述社交网络系统用户标识符识别的用户不出现在用户指定的黑名单上。
6.根据权利要求1所述的第一计算装置,其中,用于给所述便携计算装置授予证书的指令包括用于以下的指令:
确认检测所述第一计算装置的存在;
确认成功接收来自所述第一计算装置的许可
确认成功接收认证证书;或者
确认预先给所述便携计算装置授予的证书未到期或者撤销。
7.根据权利要求1所述的第一计算装置,其中,授予的证书授权所述便携计算装置和所述第二计算装置中的一个或多个之间的点对点连接。
8.根据权利要求7所述的第一计算装置,其中,所述授予的证书授权基于与所述社交网络系统用户标识符相关联的用户配置文件来访问
9.一种通信方法,包括:
由包括多个无线电的第一计算装置在阈值邻近度内感测便携计算装置,其中,便携计算装置包括处理器、一个或多个无线电以及耦接至所述便携计算装置的处理器的存储器;
由所述第一计算装置建立与所述便携计算装置的直接连接;
由所述第一计算装置从所述便携计算装置检索初始信息,所述初始信息包括社交网络系统用户标识符;
在由所述第一计算装置认证所述便携计算装置后,基于所述初始信息,由所述第一计算装置给所述便携计算装置授予证书,其中,由所述第一计算装置授予的所述证书允许所述便携计算装置与一个或多个第二计算装置通信,并且其中,一个或多个所述第二计算装置中的每个所述第二计算装置包括处理器、一个或多个无线电以及耦接至处理器的存储器。
10.根据权利要求9所述的方法,其中,给所述便携计算装置授予证书包括:
确定第一用户节点在社交图谱中连接至第二用户节点,其中,所述第一用户节点表示与所述第一计算装置相关联的第一用户,并且其中,所述第二用户节点由所述社交网络系统用户标识符识别。
11.根据权利要求10所述的方法,其中,给所述便携计算装置授予证书包括:
确定所述第一用户节点在阈值分离度内连接至所述第二用户节点。
12.根据权利要求9所述的方法,其中,给所述便携计算装置授予证书包括:
确定由所述社交网络系统用户标识符识别的用户属于用户指定的一组受信任的朋友。
13.根据权利要求9所述的方法,其中,给所述便携计算装置授予证书包括:
确定由所述社交网络系统用户标识符识别的用户不出现在用户指定的黑名单上。
14.根据权利要求9所述的方法,其中,给所述便携计算装置授予证书包括:
确认检测所述第一计算装置的存在;
确认成功接收来自所述第一计算装置的许可;
确认成功接收认证证书;或者
确认预先给所述便携计算装置授予的证书未到期或者撤销。
15.根据权利要求9所述的方法,其中,授予的证书授权所述便携计算装置和所述第二计算装置中的一个或多个之间的点对点连接。
16.根据权利要求15所述的方法,其中,所述授予的证书授权基于与所述社交网络系统用户标识符相关联的用户配置文件来访问。

说明书全文

用于网络计算的便携式平台

技术领域

[0001] 本公开总体上涉及一种网络计算装置。

背景技术

[0002] 可以包括社交网络网站的社交网络系统能够使其用户(例如,个人或组织)与该系统并且通过该系统彼此互动。通过用户的输入,社交网络可以在社交网络系统内创建和储存与用户相关联的用户配置文件。用户配置文件可以包括人口统计信息、通信信道信息以及关于用户的个人兴趣的信息。通过用户的输入,社交网络系统还可以创建和储存用户与社交网络系统的其他用户的关系的记录,并且提供服务(例如,涂鸦墙、照片分享、活动组织、消息传送、游戏或广告),以在用户之间或之中促进社会互动。
[0003] 社交网络系统可以通过一个或多个网络将与其服务相关的内容或消息发送给用户的移动或其他计算装置。用户还可以在用户的移动或其他计算装置上安装软件应用程序,用于评估用户的用户配置文件以及在社交网络系统内的其他数据。社交网络系统可以生成一组个性化的内容对象,以向用户显示,例如,与该用户联系的其他用户的聚合故事的新闻推送。
[0004] 移动计算装置(例如,智能电话、平板电脑或膝上型电脑)可以包括确定其位置、方向或方位的功能,例如,GPS接收器、指南针、测高仪、加速计或陀螺仪。这种装置还可以包括用于通过任何传统的技术来无线通信的功能,例如(通过实例而非限制的方式)BLUETOOTH、近场通信(NFC)、射频(例如,RFID)、红外线(IR)、Wi-Fi、寻呼机或蜂窝(例如,2G、3G、4G)。这种装置还可以包括一个或多个照相机触摸屏、麦克或扬声器。移动计算装置还可以执行软件应用程序,例如,游戏、网页浏览器或社交网应用程序。通过社交网应用程序,用户可以在其社交网内与其他用户联系、通信以及共享信息。发明内容
[0005] 在具体实施方式中,便携式网络计算装置(“PND”)为在装置内的用户的装置提供无缝的以及便携式网络连接。在具体实施方式中,PND可以是独立式小型(例如,钥匙坠大小)装置;在其他实施方式中,PND可以整合到一个用户装置(例如,智能电话或平板计算装置)内。PND可以被设计为利用任何可用的网络连接,以便用作不包括所有相同功能的装置的网络接入点。在位于与PND配对的装置的阈值邻近度内时,PND可以通过对等的方式通过低功率无线电与直接与其通信的一个或多个装置配对。PND本身可以监控网络可用性和/或链路质量,并且根据需要打开一个或多个其自身的额外无线电(节省功率并且可以降低成本)。例如,在PND检测到WiFi信号变弱时,可以激活其蜂窝无线电,以在PND附近给配对的装置无缝地提供网络连接。
[0006] 引入用户装置云内的崭新装置可以利用与用户相关联的已经登记的装置的邻近度,以使用社交网信息通过装置启动用户体验的自定义。此外,在访客进入PND用户的家时,访客的PND尝试与在装置云内的一个用户装置建立对等连接。可以根据社交图谱信息和其他社交网信息验证访客(例如,自动验证一级朋友,以访问和使用用户装置)。可以根据与用户的社交图谱的元素相关联的任何性能或属性同意/限制这种访问(例如,仅仅允许访问在指定的“亲密朋友”组内的其他社交网用户,以在进入用户家庭时自动验证)。
[0007] 在用户的装置云内的移动/便携式PND配对装置可以包括2G无线电或双向寻呼机无线电,以便根据没有在范围内检测PND的能,如果确定丢失,那么装置可以发送出警报并且传送其位置。
[0008] 用户能够使用在装置云内的一个装置,来控制包括用户的装置云的一个或多个移动/便携式PND配对装置(例如,PND、电话、平板电脑、膝上型电脑、汽车手表、照相机)。在组情况下,例如,在家庭的每个成员具有随身携带的其自己单独的PND的情况下,每个PND可以被配置为用于个体认证以及授权级别,以访问和/或控制在家庭装置云内的装置。可以根据社交图谱信息和其他社交网信息,授予许可可以通过社交图谱与家庭成员连接的漫游用户。
[0009] 可以在控制装置上提供用户界面,以控制在装置云内的其他装置。可以通过方便的方式显示这种控制界面,以便不削弱用户体验。例如,如果控制装置是智能电话,那么可以通过这种方式提供控制其他装置的界面,以便不要求用户将其智能电话解,以便使用该界面。根据智能电话与一个或多个装置的邻近度,用于控制所述一个或多个装置的图标可以出现在锁定屏幕的界面上。附图说明
[0010] 图1示出了与用户相关联的一个实例装置云;
[0011] 图2示出了用于给用户的装置提供无缝和便携式网络连接性的一个实例方法;
[0012] 图3示出了图1的实例装置云和装有PND的访客用户;
[0013] 图4示出了用于构造与用户相关联的装置的基于PND的生态系统的一个实例方法400;
[0014] 图5A-5D示出了用于控制在云装置内的装置的一个实例界面500;
[0015] 图6示出了用于显示用户界面以便控制在云装置内的装置的一个实例方法600;
[0016] 图7示出了与社交网络系统相关联的一个实例网络环境;
[0017] 图8示出了一个实例社交图谱;
[0018] 图9示出了一个实例计算机系统

具体实施方式

[0019] 一种便携式网络计算装置(“PND”)可以用作与PND配对的一个或多个装置的通用控制和网络接入点。在具体实施方式中,PND可以包括便携式装置(例如,钥匙坠大小的装置),包括网络元件,以能够使PND与PND配对的装置配对并且通信。在具体实施方式中,PND使用要求任何这种配对装置在PND的阈值邻近度内的无线电(例如,使用蓝牙低功率(BLE)标准的低功率无线电或者使用WI-FI DIRECT标准的软接入点功能的传统无线电)与装置配对。
[0020] 图1示出了与用户101相关联的包括装置的一个实例装置云100。用户的PND 110可以与在装置云100内的一个或多个装置配对;在位于装置的阈值邻近度内时,PND 110可以通过对等的方式通过低功率无线电直接与在装置云100内的一个或多个PND配对装置通信。在具体实施方式中,PND配对装置可以包括包含至少一个处理器和至少一个网络连接模式(例如,电话120、台式电脑130、箱140、安全系统150、电视(TV)160、汽车170、平板电脑180以及照相机190)的任何装置。通过使装置与PND 110配对,用户能够激活、控制以及使用在装置云内的装置。对于每个PND配对装置,PND 110可以储存唯一装置标识符(例如,UDID)、验证信息或用户标识符(例如,用于装置的拥有人/操作人员/授权用户的标识符)。
[0021] PND 110可以被设计为利用任何可用网络连接,同时用作不包括所有相同功能的装置的网络接入点。因此,PND配对装置能够节省功率,而不牺牲网络连接性,仅仅包括低功率无线电,这还可以提高装置的形状因数,消除了蜂窝无线电和天线,并且减小了电池的尺寸(允许具有更细长、更轻的装置)。
[0022] PND 110可以包括天线和一个或多个低功率和高功率无线电,用于各种类型的网络连接,例如,蜂窝(例如,2G/3G/4G/4G LTE)、Wi-Fi(例如,802.11n、802.11ac、802.11ad WiGig)、基于Wi-Fi的更高级协议(例如,INTEL WIRELESS DISPLAY(WiDi)、Wi-Fi网格(例如,ITU-T G.hn))、TV空白/网格(TVWS或802.11af)、GPS、蓝牙、蓝牙低能量、近场通信(NFC)、卫星、无线电寻呼机等。
[0023] 在具体实施方式中,PND 110还可以包括外部物理特征,例如(例如而非限制性地)按钮界面、状态指示符、小型低功率屏幕、记忆卡插槽以及连接端口(例如,USB、以太网、光纤)。在具体实施方式中,PND能够连接至电源适配器,消耗所接收的RF信号的功率,使用集成压电元件生成功率、或者使用任何传统的来源利用功率。
[0024] 每个PND配对装置能够持续地(例如,每当保持PND 110的用户在PND配对装置附近)或者根据需要(例如,每当PND配对装置的网络连接基于用户的财务成本或者PND配对装置的能量/资源消耗变得分散/微弱/不可用或昂贵时)将PND 110用于网络连接。
[0025] 例如,PND 110可以包括小型装置,其连接至用户的钥匙链,该钥匙链具有蜂窝和Wi-Fi连接性并且通过Wi-Fi、蓝牙或NFC与平板电脑180和电话120配对。由于PND 110始终无缝地连接至互联网,所以如果用户101在包里随身携带平板电脑180和电话120,那么PND 110可以给用户101提供与互联网的无缝连接,无论用户101可能走到哪里(采用PND 110和用户的PND配对装置),以便给电话120提供基于IP的电话以及消息传递功能,并且给平板电脑180提供互联网连接。PND 110还可以与其他装置配对并且给其他装置提供网络连接,以便只要PND 110在装置的阈值邻近度内,用户就能够在任何这种装置上使用网络启用特征。
[0026] 由于PND 110可以用作接入点(从而为与PND 110配对的装置建立局部专用网),所以甚至在PND 110不连接至外部网络时,连接至一个PND 110的多个装置还能够通过PND 110彼此通信。
[0027] 在具体实施方式中,在与用户的PND配对时,一个或多个PND配对装置可以用作变成个性化计算装置的“哑终端”装置。“哑终端”装置可以包括不持续储存用户特定信息的任何计算装置并且可以暂时转换成用户的个性化计算装置(例如,公共或共享使用)。PND 110能够与哑终端装置配对并且使用哑终端装置,用于任何以及所有合适的目的。在一些实施方式中,PND 110可以与装置无线配对;在一些实施方式中,PND 110能够物理地插入装置内。
[0028] 例如,文库可以提供多个标准配置的台式计算机130(即,哑终端装置),其中,文库的成员可以使台式计算机130与其PND 110配对,并且PND 110将台式计算机130配置成采用用户偏好(例如,桌面主题、语言设置以及时区),符合用户的安全策略(例如,认证、授权、以及屏幕锁定超时策略),并且访问和装载用户的内容(例如,社交网信息、音乐库、相册、订阅的期刊)。
[0029] 在另一个实例中,用户101能够进入汽车170(自主的机器驱动的“出租车”),在与PND 110配时,该汽车给用户101提供个性化目的地建议(例如,用户的家庭、工作场所、学校或在用户的日历中规定的目的地),授权用户101支付(基于用户选择的目的地),并且根据其个人偏好(例如,尽快地、或者受控制的以及从而地)将用户101输送到其选择的目的地,同时在乘车期间,给用户101提供视频会议设施。
[0030] PND 110还可以储存用户特有的认证和授权证书、支付证书(例如,智能卡芯片)、电话标识符(例如,SIM卡)、配置设置、偏好、收藏夹列表/书签、应用程序、或任何其他数据,以使PND 110能够与PND配对装置相结合促进个性化安全计算。在具体实施方式中,某些PND配对装置(例如,家庭安全系统、保险箱、枪锁定器、自行车链条、膝上型安全电缆)可以包括用于安全目的的额外元件(例如,用于执行生物识别的传感器和逻辑)。
[0031] 在具体实施方式中,PND 110能够否认与哑终端装置配对,而不留下个人信息、使用记录、或关于哑终端装置的其他用户识别信息的任何痕迹。
[0032] PND 110本身可以监控网络可用性和/或链路质量,并且根据需要打开一个或多个其无线电,以便节省功率并且降低成本(例如,打开高功率无线电,例如,蜂窝无线电,或者打开给需要支付使用带宽的网络提供连接的无线电)。在由PND 110检测的链路质量(例如,其特征在于所接收的信号强度指示(RSSI))下降为低于特定的阈值(即,开始降低为用户似乎要离开Wi-Fi网络的区域的点)时,PND 110打开蜂窝无线电并且在其Wi-Fi上进入接入点模式内,以在PND 110的阈值邻近度内给配对的装置无缝地提供网络连接。阈值可以根据信号的多个不同属性中的任一个表征,包括但不限于:信号强度、信噪比、平均数据吞吐量、平均数据延迟、或信号的任何其他属性、或属性的任何组合。阈值还可以由一个或多个数据质量度量表征,相对于延迟和/或吞吐量(例如,如果延迟超过阈值或者吞吐量下降为低于阈值,那么PND 110可以进入接入点模式内)的进入已知地点(例如,社交网网站)的当前和/或历史吞吐量。在具体实施方式中,PND 110和/或PND配对装置能够检测网络可用性和/或链路质量。在具体实施方式中,PND 110可以从PND配对装置中获得这种信息,反之亦然。
[0033] 在具体实施方式中,PND 110可以计算阈值和/或作出这个决定,以除了仅仅检测RSSI的实时降低(例如,在特定的位置记录RSSI数据的历史数据(例如,PND 110由用户携带并且朝向“哑点”方向,其中,RSSI历史地降低为低于某个阈值)、低RSSI位置的指定(例如,安全军事复合体的内部,其阻止所有无线信号,除了在特定带宽上的信号以外)、在特定位置的估计的RSSI的指定(例如,根据信号类型以及基站位置信息计算的网络覆盖图))以外,还基于其他因素或条件,进入接入点模式内。在具体实施方式中,可以根据在用户的网络上共享的信息,确定这种因素,例如,登记的PND用户的网络、与组织(例如,公司的员工或支付网络服务的一组客户)相关联的用户的网络、或者在社交图谱内联系的用户的社交网络。
[0034] 在PND配对装置失去网络连接性(例如,从家庭Wi-Fi网络的范围内移出)时,转子可以自动开始将PND 110用于网络连接。PND 110本身可以监控与熟悉网络的连接程度,并且在检测到熟悉网络的任何信号变得衰减时,仅仅用作接入点。
[0035] 在具体实施方式中,PND 110能够在不同类型的网络之间进行无缝切换,以便避免在连接中具有任何干扰。一旦PND配对装置进入熟悉网络的范围内,就能够从将PND 110用于网络连接无缝地切换回使用熟悉网络(例如,在用户回家并且在家庭Wi-Fi网络的范围内时,用户的平板电脑180可以切换成连接至家庭Wi-Fi网络)。
[0036] 图2示出了用于给用户的装置提供无缝和便携式网络连接性的一个实例方法200。该方法可以步骤210中开始,在该步骤中,PND配置熟悉的网络连接。可以在用户首先与PND相关联时并且每当用户与新网络连接并且建立网络,作为新的熟悉网络时,执行这个初始步骤。如上所述,PND可以从用户的其他装置中获得网络连接信息,或者通过本地或者通过社交网络访问用户的配置文件,PND可以获得这种信息。
[0037] 在步骤220中,PND可以与一个或多个装置配对。例如,虽然用户在家里并且在电话120、台式计算机130、冰箱140、安全系统150、电视(TV)160、平板电脑180以及照相机190中的任一个或所有的阈值邻近度内,但是PND依然与任何这种装置配对在具体实施方式中,PND可以与装置配对,以便在配置任何网络连接之前,检索网络连接信息。在具体实施方式中,PND 110要求使用需要极为贴近的无线电(例如,NFC)或者通过由最大RSSI阈值确定距离的Wi-Fi或蓝牙无线电与装置发生初始配对,以便提供额外的安全性并且帮助PND 110与装置无意中配对。
[0038] 在步骤230中,PND可以监控可用网络并且检测熟悉网络(例如,家庭Wi-Fi网络)。只要网络的检测信号具有充分的质量,PND本身就可以将熟悉网络用于网络连接并且期望任何PND配对装置这样做。在具体实施方式中,PND可以自动确定检测的网络是“熟悉的”网络,这是因为由用户101已知的另一个用户(例如,用户101的社交网联系人)提供。通过检测其他用户的PND,并且识别和/或验证该PND,PND可以识别网络供应商。在具体实施方式中,属于用户101的PND可以根据检测的网络的属性(例如,是开放式还是完全的网络,其他用户是用户101信任的朋友还是仅仅是朋友的朋友)使用特定的安全措施。在具体实施方式中,属于用户101的PND可以根据检测的网络的属性(例如,如果检测的网络需要根据下载的数据的带宽使用或数据量来支付,或者如果检测的网络施加带宽限制)通过配对装置限制或减缓某些类型的网络通信。
[0039] 在具体实施方式中,PND 110能够在位于地理区域内的非常密集的用户提供可以与PND 110连接的无线网络访问时形成的访问网状网络网格。携带PND的用户能够穿过大量距离(例如,穿过一个城市),而不激活任何蜂窝无线电(或其他高功率无线电),仅仅从无线网络切换到无线网络。例如,在具体实施方式中,很多(如果不是全部的话)居民可以建立单独的Wi-Fi和/或电视空白(TVWS)网络,其中,除了更远程的网络(例如,商业蜂窝网络)以外,用户的PND 110被配置为访问一些或所有这种网络,以给与用户的PND 110配对的装置提供无缝连接。
[0040] 通过建立对希望连接至其无线网络的漫游用户施加限制的规则,例如(通过实例而非限制的方式):(1)限制访问其他社交网用户(例如,确认这些用户具有有效用户标识符),(2)限制访问在其社交图谱内的其他社交网用户,(3)限制访问在阈值分离度内的其他社交网用户,(4)根据与用户的社交图谱的元素相关联的任何其他性能或属性限制访问(例如,仅仅允许访问在指定组内的其他社交网络用户),(5)限制访问特定的天数或时间,(6)仅仅允许访问特定的用户(例如,不在用户的社交图谱内的其他社交网用户),(7)限制访问最大数量的漫游用户,(8)限制访问每个装置的最大带宽,(9)限制访问特定的应用类型,(10)限制由连接超时访问,(11)限制访问,以通过提供其自身的无线网络,仅仅允许也促进访问网格的漫游用户连接,或这种规则的组合,这种实施方式可以促进网状网络(例如,单独的家庭Wi-Fi网络)的单元的安全和/或带宽消耗控制。
[0041] 在步骤240中,PND可以检测熟悉网络的信号正在降低或者降低为低于阈值质量平(例如,信号降低、变得不稳定或者衰减),并且启用其接入点模式(在步骤250中),从而给任何配对装置提供网络连接性。可以如上所述,根据各种因素和/或条件,确定网络信号的阈值质量水平。如果用户101拿着电话120、平板电脑180以及照相机190走出家,进入汽车170内,并且开始开走,那么PND可以检测到其不再在家庭Wi-Fi网络的范围内并且现在仅仅在家庭TVWS网络的范围内。此时,PND可以启用其接入点模式,以便给电话120、平板电脑
180、照相机190以及汽车170提供无缝连接。在具体实施方式中,PND可以仅仅基于用户101进入并且打开汽车170这一事实,启用其接入点模式,这是因为此时,用户101非常可能迫切地从家庭Wi-Fi网络的范围中移出,在具体实施方式中,如果PND在PND的阈值邻近度内检测到PND配对的装置,那么PND可以仅仅启用接入点模式(从而如果没有需要将PND用于网络连接的装置,那么节省功率)。
[0042] PND还可以开始执行操作,以便为任何这种装置平稳地建立网络连接,以便可以继续通过PND(而非熟悉的网络)通信,例如,通过暂时平行使用熟悉网络和PND接入点,来开始/促进软切换。PND可以使用多频无线电(2.4GHz和5GHz)来确保可以保持接入点模式并且测试熟悉网络的质量。PND还可以使用GPS或室内信标来确定原始Wi-Fi的即将丢失。PND和用户装置还可以通过对等的方式通信,以相互评估网络变化。
[0043] 在具体实施方式中,并未在网络之间切换,PND可以合并在多个网络上的可用带宽(例如,以便满足规定的服务质量标准或要求,用于传输特定类型的内容,例如,高清晰度视频)。
[0044] 在步骤260中,PND可以检测到熟悉网络的信号再次具有充分的质量(或者另一个熟悉的网络现在在范围内),并且禁用其接入点模式(在步骤270中)。在具体实施方式中,如果PND检测到具有通过PND通信的任何配对装置,那么PND可以执行操作,以便为任何这种装置平稳地切换网络连接,以便反而连接至熟悉网络。例如,如果用户101到达工作单位,并且PND 110检测用户的工作Wi-Fi网络,或者如果用户101达到具有TVWS网络的经常去的咖啡馆,那么PND可以连接至最近检测的网络,为目前将PND用于网络连接的任何装置(例如,电话120和平板电脑180)开始/促进软切换,然后,禁用其接入模式。在具体实施方式中,PND 110可以检测到配对装置将PND 110用于高要求的活动(例如,拨打电话或者使高带宽内容流动),并且延迟禁用接入点模式,直到活动结束。
[0045] 如果不止一个网络可用,那么选择加入哪个特定的网络可以包括评估哪个网络最佳,其中,分析可以基于任何数量的成本因素,包括但不限于技术因素、经济因素、安全因素以及用户偏好因素,例如:可用带宽、网络类型(例如,4G蜂窝对TVWS对802.11n)、信号强度、噪声、干扰等级、与网络建立和保持连接所需要的资源消耗(例如,使用连接至蜂窝网络的无线电需要比连接至Wi-Fi网络的无线电更多的功率)、特定的网络是否为PND 110所熟悉(例如,PND 110预先成功地连接至网络或者具有储存的密码,以访问网络)、连接至网络是否带来任何成本(例如,具有免费访问?访问免费,但是网络需要使用显示广告的软件?这是用户已经支付定期订阅网络的沉没成本?访问是按次计费?)、网络是由已知的个人还是实体操作(例如,由你的老板、由在社交网内与你联系的另一个用户、由用户购买了入场费的活动的主持人)、可用安全性的水平(例如,开放式对WEP对WPA2)等。
[0046] 一旦PND配对装置(例如,电话120)进入与用户的特定电话号码相关联的网络(例如,“家庭”网络或“工作”网络)的范围内,PND配对装置就可以响应于呼叫特定电话号码的呼叫者响个不停。例如,在用户在家里(在其“家庭”的范围内)时,PND配对装置可以检测到家庭电话号码的呼入电话并且促使装置响个不停。PND 110还能够提供基于IP的电话特征,该特征在国界线上并且在不同的网络(可以基于不同的技术来操作)透明地运行;在具体实施方式中,“电话号码”可以与用户的社交网用户身份相关联,并且社交网的第一用户能够仅仅通过使用其社交网标识符(例如,登录用户名)“拨打”第二用户来呼叫社交网的第二用户。
[0047] 在适当的情况下,具体实施方式可以重复图2的方法的一个或多个步骤。虽然本公开描述并且显示了按照特定顺序发生的图2的方法的特定步骤,但是本公开预计具有按照任何合适的顺序发生的图2的方法的任何合适的步骤。而且,虽然本公开描述并且显示了执行图2的方法的特定步骤的特定元件、装置或系统,但是本公开预计具有执行图2的方法的任何合适的步骤的任何合适的元件、装置或系统。
[0048] 图3示出了如图1中所示的与PND 110配对的装置的用户101的实例装置云100(例如,电话120、台式计算机130、冰箱140、安全系统150、电视(TV)160、汽车170、平板电脑180以及照相机190)和装有其自己的PND 310并且希望暂时或永久与在用户101的装置云100内的一个或多个装置配对的访客用户301。
[0049] 通常,在用户设立新的个性化装置时,例如,ANDROID或APPLE IOS装置,用户需要使用其现有的用户ID登录装置。该设立过程可以要求用户反复输入其密码,这对于用户较为麻烦。通常,基于与其现有用户登录相关联的轮廓信息,在装置可以给用户呈现在装置上定制的体验之前,需要一段时间。此外,在使用装置来进行购买时,用户需要再次反复输入其密码。
[0050] 图4示出了用于构造与用户相关联的装置的基于PND的生态系统的一个实例方法400。生态系统可以包括PND本身以及在装置云内的装置。在步骤410中,新的PND 110储存与用户101相关联的配置信息。PND 110可以通过任何传统的方式获得配置信息:(1)通过将用户识别和/或认证信息直接输入PND 110内(例如,通过给PND 110提供生物识别,或者通过输入用户ID和密码,用于用户101的社交网账户),(2)通过(至少暂时)使PND 110与可以用于给PND 110提供用户证书的哑终端装置配对,(3)通过在销售时,在商店或订单履行仓库使用用户识别信息将PND 110编码,(4)通过在与用户的家庭Wi-Fi网络连接时(可能在接收用户的确认之后),使用用户识别信息将崭新的PND 110编码,以此类推。在具体实施方式中,PND 110可以被配置为访问用户101的用户配置文件(例如,基于在社交网络系统上的用户标识符,在社交网络系统上),从该配置文件中,PND 110可以检索网络连接性设置,或者访问任何其他用户特有的信息。
[0051] 在步骤420中,PND 110(或已经与PND 110配对的装置)在阈值邻近度内感测新(未配对的)装置。在具体实施方式中,新装置本身可以感测到其在PND 110或PND配对装置的阈值邻近度内。例如,如果用户在线购买新的平板装置,并且将其运送到用户的家里,那么在用户将平板电脑拿到家里时,平板电脑可以在用户的PND和/或与用户相关联的登记的一个或多个装置的阈值邻近度内。新平板电脑还可以感测到其在用户的家庭Wi-Fi网络的范围内,其中,用户的Wi-Fi路由器与PND 110配对。阈值邻近度可以由用于与新装置配对的特定无线电的自然范围确定。例如,为了防止无意中配对(或者试图与装置配对),一些实施方式要求近场通信(NFC)无线电用于与新装置配对。在其他实施方式中(例如,使用具有更长的信号范围的网络技术,例如,Wi-Fi Direct或BLE,进行配对),可以在特定的距离(例如,1英尺或更小或者1米或更小),或者根据RSSI指示符(例如,饱和的上限值),配置阈值邻近度。
[0052] 在具体实施方式中,引入用户装置云内的崭新装置可以利用PND或者与用户相关联的已经登记的其他装置的邻近度,以便使用社交网信息通过装置启动用户体验的自定义。在具体实施方式中,在用户访问在新装置上的购买/激活界面和/或新装置在与用户相关联的已经登记的一个或多个其他装置的阈值邻近度内时,用户的配置文件可以预先配置为允许购买/激活崭新的装置。
[0053] 在步骤430中,在具体实施方式中,新装置与用户的PND配对并且加入用户的装置云。作为配对工艺的一部分,PND 110可以尝试与装置建立直接对等式连接,以便交换初始信息。用户的PND可以储存与新装置(例如,装置ID、MAC地址)相关联的初始信息,并且新装置同样可以储存与PND(例如,PND ID)相关联的初始信息。在具体实施方式中,如果新装置在用户的家庭Wi-Fi网络的范围内,那么即使不在PND 110的阈值邻近度内,新装置也能够与用户的PND 110配对(例如,即使用户101离开在其工作场所的PND 110,新装置也依然能够与PND 110配对,经由家庭Wi-Fi网络通过互联网连接至PND 110,以便通过装置启动用户体验的自定义。
[0054] 在步骤440中,新装置可以给PND 110提供信息。例如,属于用户101的装置可以在与PND 110配对之前建立其自身的网络连接设置(例如,Wi-Fi服务集标识符(SSID)、加密配置设置以及密码),然后,在与PND 110配对时,可以PND 110共享所述设置。
[0055] 在步骤450中,新装置可以从PND或另一个PND配对装置中获得用户信息。例如,基于作为崭新装置的平板电脑的状态以及平板电脑与一个或多个其他装置的邻近度和/或在用户的家庭Wi-Fi内具有装置,平板电脑可以获得用户的识别信息,例如,用户的社交网用户标识符。
[0056] 在步骤460中,新装置使用用户信息来给用户101提供自定义的用户体验。例如,平板电脑可以使用用户的社交网用户标识符来建立与社交网络的连接,并且开始下载各种类型的一些信息,以便呈现开箱即用的基于社交网的用户体验(例如,通过在锁定的屏幕上显示封面照片,通过允许其访问用户的家庭Wi-Fi网络,通过根据用户的偏好(例如,时区、优选语言等)设置基本装置设置和/或元数据)。在一些实施方式中,可以不同意完全访问装置以及用户的社交网信息(呈现在装置上),直到用户将其社交网络系统证书输入装置内。在具体实施方式中,可以在工厂、仓库或者在配送链内的某个其他点内,使用在集成芯片(例如,RFID/NFC标签)上的用户的社交网用户标识符,将崭新的装置编码,以便装置可以开始下载各种类型的一些信息,以便呈现开箱即用的基于社交网的用户体验,在这种情况下,只要将新装置放入与用户相关联的已经登记的另一个装置的阈值邻近度内,用户就不需要输入其社交网密码。
[0057] 一旦用户101设立一个或多个PND配对装置,用户就可以希望给访客301安全地提供对在用户的装置云内的装置(例如,冰箱140、TV 160以及汽车170)的访问。可以根据社交图谱信息和其他社交网信息(例如,可以自动验证一级朋友,以访问和使用用户装置)验证访客301。可以根据与用户的社交图谱的元素相关联的任何性能或属性同意/限制这种访问(例如,仅仅允许访问在指定的“亲密朋友”组内的其他社交网用户,以在进入用户家庭时自动验证)。
[0058] 在步骤470中,在具体实施方式中,在访客301进入用户家庭并且在装置(例如,TV 160)的阈值邻近度内时,访客301的PND 310尝试与TV 160建立直接对等式连接。在PND 310与用户的装置之间连接直接连接的要求意味着访客301站在用户面前,从而降低通过欺骗获得访问的可能性。在具体实施方式中,对于这种类型的认证使用实例,PND 310需要使用NFC或另一种类型的无线技术建立直接连接,其中,阈值邻近度非常低(以便访客301需要非常接近装置,与站在窗外相反)。
[0059] 在步骤480中,一旦建立直接连接,装置就可以尝试验证和/或授权访问访客301。例如,TV 160可以从PND 310检索访客301的社交网用户ID,访问社交网络系统,并且确定访客301和用户是否在社交网络系统的社交图谱内联系。如果是的话,那么TV 160可以将访客
301视为用户的朋友并且向用户显示界面,以给访客301授予证书。可以给这种证书分配到期时间戳或者取消。在具体实施方式中,可以基于访客301是否在阈值分离度内与用户101联系,基于访客301是否属于用户指定的一组受信任的朋友(或者受信任的朋友的用户指定的黑名单),或者基于与访客301相关联的某种其他信息,根据授权等级,装置可以同意访问。
[0060] 在具体实施方式中,PND的使用可以支持可以通过社交图谱与用户联系的访客的多因素认证。占有隐私可以由自身携带PND的访客301满足。在依赖于(一种类型的)占有+固有的一个实例中,在访客301进入用户的房屋并且尝试使其PND于用户的TV配对时,PND 310可以将令牌传输给TV,该电视使用该令牌来在用户的社交图谱内搜索访客301,并且检索其用户配置文件。然后,TV可以显示访客301的配置文件,并且要求用户点击在其自身的PND上的按钮,以确认其访客的身份并且允许访客301使其PND与TV配对。在依赖于占有+知识的一个实例中,在TV将访客301定位在用户的社交图谱内之后,TV可以显示请求访客301输入认证证书,例如,密码或滑动手势模式(例如,使用TV的遥控,使用PND 310,使用与PND 110配对的另一个装置,或者使用与PND 310配对的另一个装置)。在依赖于两个占有度的一个实例中,也需要具有用户自己的PND(属于在家庭内的其他人的PND)。在具体实施方式中,验证要求PND 310至少在用户101的装置云内的最小数量的装置(例如,三个PND配对装置)的阈值邻近度内;如果可以确定PND 310至少在那些最小数量的用户101的装置的阈值邻近度内,那么可以验证访客301(假设如果没有邀请进入,那么访客301不在所述很多用户101装置的阈值邻近度内)。还可以选择性地应用多因素验证的更严格的要求(例如,对于并非在社交图谱内的用户的一级朋友的访客)。
[0061] 在具体实施方式中,可以使用基于令牌的对等技术,验证PND,如在于2013年3月15日提交的并且题为“Wireless Data Privacy Maintained Through a Social Network”的美国专利号13/843,155中所述。在具体实施方式中,可以进行验证。
[0062] 在步骤490中,基于其PND 310的检测的存在,装置同意访问和/或控制访客301。在一些实施方式中,如果未检测PND 310,那么装置可以临时或者永久地禁用访问/控制(或者仅仅某些类型的访问/控制,直到检测PND 310和/或访客301重新验证其身份)。在具体实施方式中,这个工艺还可以包括授权访客301访问装置的不同特征的步骤。例如,在用户确认应验证访客301时,用户还可以相对于该装置自动配置访客301的访问许可。在另一个实例中,可以根据访客301的社交网轮廓和其他社交网信息,自动配置访问许可。例如,如果访客301是儿童,那么TV的频道范围可以自动限制为被认为适合于儿童的那些频道。
[0063] 虽然PND 110描述为与单个用户相关联,但是在具体实施方式中,PND 110可以由一组用户(例如,一个家庭或者一组朋友)使用,以给与在该组内的任何用户相关联的装置提供连接性,和/或允许在该组内的任何用户连接至哑终端装置。在具体实施方式中,这种PND 110可以与组配置文件相关联,包括在本文中描述的任何合适类型的信息(例如,组级别的授权和安全性设置、用于组行账户的支付证书、共享的组内容)。在具体实施方式中,PND 110可以与社交网络系统联合使用,以自动检测并且允许访问PND 110的用户的“朋友”,这种访问可以由在用户社交图谱内的分离度限制。
[0064] 在适当的情况下,具体实施方式可以重复图4的方法的一个或多个步骤。虽然本公开描述并且显示了按照特定顺序发生的图4的方法的特定步骤,但是本公开预计具有按照任何合适的顺序发生的图4的方法的任何合适的步骤。而且,虽然本公开描述并且显示了执行图4的方法的特定步骤的特定元件、装置或系统,但是本公开预计具有执行图4的方法的任何合适的步骤的任何合适的元件、装置或系统。
[0065] 在一些实施方式中,由于不在PND的范围内,也不再熟悉网络的范围内,所以在PND配对装置确定已经丢失时,装置可以包括2G无线电或双向寻呼机无线电,以便该装置可以发出警报并且传送其位置。这种装置可以使用可以地理定位的IP地址,或者在Wi-Fi的情况下,SSID/密码组合可以用于指定受信任的位置(家庭、工作场所、朋友的家里等)。
[0066] 具体地,由于使寻呼机无线电适合于在整合到已经丢失的装置内时使用,所以寻呼机无线电通常用于紧急情况下:(1)寻呼机网络通常基于卫星控制的网络通过多个重叠的寻呼机传输器的同时联播递送,(2)寻呼机无线电可以比其他无线电(例如,蜂窝或Wi-Fi)更容易渗透固体结构,以及(3)寻呼机无线电消耗非常低的功率。
[0067] 在一些实施方式中,如果装置在受信任的网络(例如,家庭Wi-Fi网络)的范围内发生,或者能够与PND 110保持对等连接,那么可以不生成任何警报。在一些实施方式中,2G或寻呼机无线电保持关机,直到PND配对装置不检测PND 110并且不在受信任的网络的范围内。
[0068] 如上所述,通过使装置与PND 110配对,用户能够激活、控制以及使用在装置云内的装置。通过与PND连接,在装置云内的一个或多个装置可以用于与在装置云内的一个或多个其他装置通信并且控制(积极地或者自动地)这些装置。控制界面可以位于一个装置(“控制装置”)上,以控制在装置云内的其他装置。在具体实施方式中,控制装置可以仅仅给在装置云内的特定“可控”装置提供控制,例如,在阈值邻近度内感测的装置、包括装置可以通过其接收和处理遥控的命令的远程交互界面的装置、授权PND 110的用户控制装置的装置、或者可用的装置(例如,接通电源、连接至网络、操作性和/或能够用于遥控)。
[0069] 图5A-5D示出了用于控制在云装置内的装置的一个实例用户界面(UI)500。在图5A-5D中显示的实例中,在用户101的智能电话120的屏幕上显示UI 500。在具体实施方式中,可以在智能电话120的家庭屏幕上,或者甚至在锁定屏幕的界面上,显示UI 500(从而可供使用,而不要求用户101将智能电话120解锁)。
[0070] 在智能电话120在云装置100内的各种装置的阈值邻近度内时,每个装置的图标可以出现在智能电话120的屏幕上。例如,在图5A中,在用户101将智能电话120带入客厅内时,UI 500显示在阈值邻近度内的4个装置的图标:“主电视”(在客厅内的电视)、“窗帘”、“客厅灯”、以及“楼下的恒温器”。基于以下因素:用于与PND配对装置建立连接的无线电的范围(例如,具有Wi-Fi接收器的大屏幕电视可以具有比具有蓝牙接收器的手表更大的范围)、PND配对装置的使用剖面(例如,大屏幕电视的使用和操作的正常距离(观看距离)可以比触摸屏平板电脑的使用和操作的正常距离(舒适的臂长距离)更远)等,在阈值邻近度内的标准可以在一个PND配对装置与另一个PND配对装置之间不同。如果用户101选择用于特定装置的图标,那么可以显示界面,该界面使智能电话120能够用作所选择的装置的遥控。如图5B中所示,在用户101选择“客厅灯”图标时,显示界面,以使用户101能够在看电视的同时控制在客厅内的调光器控制的天花板嵌入式灯具的两个阵列。如图5C中所示,在用户101选择“楼下的恒温器”图标时,用户101还可以在客厅内控制空调和底层地板加热。
[0071] 在另一个实例场景中,在用户在电视上看电影时,(1)可以在智能电话上提供界面,通过该界面,用户可以控制遥控汽车,并且(2)画中画(PiP)显示可以出现在TV上,其中,用户可以监控安装在遥控汽车内的摄影机,以到处跟随在用户的学步的小孩或小狗,并且监控学步的小孩或小狗在另一个房间所做的事情。
[0072] 在另一个实例场景中,如果用户在其楼上的家庭办公室内关着门工作,那么在某个人用钥匙打开前门时(此时,控制界面出现在膝上型电脑的屏幕上,以显示由安装在前门上的监控摄像机捕捉的用户的小孩的图像),用户的膝上型电脑可以显示第一通知,并且在楼下的TV刚刚打开并且将频道变成看动画片时(此时,控制界面可以提供用于控制TV、关掉TV、将频道变成教育频道,或者通过TV的扬声器传输音频的功能,以便用户可以告诉孩子去做作业),用户的膝上型电脑可以显示第二通知。
[0073] 在另一个实例场景中,用户在睡觉之前走过房屋时,在用户沿着走廊走并且穿过不同的房间时,不同的界面可以在智能电话的屏幕上弹出,其中每个界面显示UI,以控制相关联的房间的各个方面(例如,关灯、锁门、关电视、将手机铃声设置为静音、拉下窗帘等)。如图5D中所示,在用户101看完电视并且上楼睡觉之后,智能电话120感测到在主卧室内的装置,并且显示图标,以控制那些装置:“主卧室电视”、“安全系统”、“卧室灯”、“楼上的恒温器”。
[0074] 在一些实施方式中,用户并未物理地携带单个指定的控制装置,根据哪个装置(能够提供适当的控制界面)最接近PND 110(假设为用户),PND 110可以在装置云内的装置之间输送指定。不同类型的控制界面(例如,显示屏、用于检测口头命令的嵌入式麦克风、用于检测手势命令的嵌入式3D运动传感器等)可以整合到不同类型的装置内。例如,在用户在汽车(在仪表板内具有嵌入式麦克风和触摸屏)内时,在汽车转到其所在的街道上(并且PND 110进入用户房屋的Wi-Fi范围内)时,用户可以命令打开车库门并且烤箱开始预先加热。在用户将汽车停在车库内之后,PND 110检测到用户离开汽车并且进入厨房,并且通过在门内的交互式屏幕、嵌入式麦克风以及嵌入式3D运动传感器,将将控制装置指定从汽车中传输给冰箱。由于在用户在厨房做饭时冰箱是指定的控制装置,所以用户可以监控在楼上睡觉的婴儿身上安装的摄影机,并且虽然手上凌乱是给冰箱提供口头命令和/或运动姿势命令,以回复发送给智能电话120的文本消息。
[0075] 在具体实施方式中,可以同时触发自动和主动控制,例如,如果在具有很多房间的大房子内具有一个人,那么在这个人走过在房屋内的不同房间来做饭、看电视、使用洗手间以及去睡觉时,在用户进入和离开房间时,每个房间可以自动调整温度和照明,并且在用户进入一个房间之后,界面可以在前20秒短暂地在用户的智能手机上弹出,以也允许用户主动控制温度和照明。
[0076] 在组情况下,例如,在家庭的每个成员具有随身携带的其自己单独的PND的情况下,每个PND可以被配置为用于个体认证以及授权。通过这种方式,可以给每个PND授予不同的许可(例如,父母可以具有对所有装置具有管理层次的控制,而青少年可以具有有限的控制,学步的小孩/宠物可以没有控制)。在这种情况下,在每个PND与在房屋内的一个或多个装置配对时,可以实现自动控制,以根据在装置附近检测的特定PND,控制特定装置。
[0077] 例如,学步的小孩或小狗的PND可以被配置为使PND用作跟踪装置,在PND接近时,该跟踪装置通知在家庭内的装置。如果PND和/或PND配对装置检测到学步的小孩/小狗接近,那么PND可以给PND配对装置发送信号,以采取被配置为用于成年人或大龄儿童(例如,机械化的婴儿门自动封锁楼梯入口)的PND不触发的某些行动。在另一个实例中,如果学步的小孩醒来并且接近成年人正在观看恐怖片的客厅,那么点事可以自动暂停该电影,并且显示适合于儿童的屏保或频道。在另一个实例中,如果含有药物/烈酒/清洁用品的安全柜检测到儿童接近该柜子,附近没有大人,那么安全柜可以锁门。
[0078] 在涉及并非家庭成员的一个或多个漫游用户(每个用户随身携带PND)的情况下,可以基于社交网信息或其他信息,给漫游用户授予不同的控制等级。例如,可以根据其不同的色,给不同的服务供应商授予不同的访问许可(例如,园丁需要进入通向后花园的侧门,但是不进入房屋;保姆需要进入房屋,但是不进入父母的卧室或者家庭办公室;清洁工需要进入房屋的几乎所有区域;在主人离开时待在房屋内的留宿的宾客可以访问除了特定的衣柜和酒柜以外的任何物体,并且不能授予访问购买点播电影)。
[0079] 可以根据社交图谱信息和其他社交网信息(例如,可以自动同意一级朋友访问家庭Wi-Fi网络),给通过社交图谱与家庭成员联系的其他漫游用户授予许可。可以通过例如(通过实例而非限制的方式):(1)限制访问其他社交网用户(例如,确认这些用户具有有效用户标识符),(2)限制访问在其社交图谱内的其他社交网用户,(3)限制访问在阈值分离度内的其他社交网用户,或(4)根据与用户的社交图谱的元素相关联的任何其他性能或属性限制访问(例如,仅仅允许访问在指定组内的其他社交网络用户),来同意/限制这种许可。
[0080] 图6示出了用于给用户装置提供无缝和便携式网络连接的一个实例方法600。该方法可以在步骤610中开始,在该步骤中,指定为控制装置(例如,智能电话120)的在装置云100内的特定装置感测在阈值邻近度内的在装置云100内的一个或多个其他装置。可以相对于控制装置的位置,或者相对于PND的位置,评估阈值邻近度。在特定实施方式中,仅仅与特定用户相关联的装置可以用作控制装置。在步骤620中,控制装置确定在阈值邻近度内的哪些装置可控。通过从PND检索这种信息或者由控制装置本身,做出这个确定。在步骤630中,控制装置可以呈现UI,该UI使用户能够查看和选择每个装置,在一些实施方式中,仅仅用户授权访问和/或控制装置的在阈值邻近度内的那些装置。在步骤640中,在接收用户输入,选择在用户希望访问或控制的UI中呈现的特定装置时,控制装置呈现UI,以控制所选择的装置。在步骤650中,根据通过UI接收的用户输入,控制装置发送命令,以访问或控制所选择的装置。在具体实施方式中,用户输入可以指示用户希望监控所选择的装置相对于特定操作的进度(例如,打开烤箱灯,并且观看巧克力舒芙里的进度),或者在发生特定事件时(例如,烤箱的温度达到425华氏度)接收通知。可以将命令从控制装置中直接发送给所选择的装置,例如,通过PND。在步骤660中,控制装置从所选择的装置中接收反馈(例如,确认成功执行命令)或者表示装置的当前状态的传感器数据。与命令一样,反馈可以从所选择的装置中或者通过PND直接发送给控制装置。在步骤670中,在用户(从而控制装置)移动穿过物理空间时,控制装置可以更新UI,从而朝着或者远离在装置云100内的装置移动,然后,返回步骤
620(为了确定用户是否授权访问和/或控制任何最近感测的装置)。
[0081] 在具体实施方式中,可以通过方便的方式显示UI 500,以便不减少用户体验。例如,如果检测到智能电话和PND在TV附近,那么可以通过这种方式提供用于控制TV的界面,以便不要求用户将其智能电话解锁,以便使用该界面(例如,在锁定屏幕的界面上显示控制,其中,还提示用户将其智能电话解锁)。在另一个实例中,可以将通知发送给智能电话,在点击时,智能电话打开装置控制界面,无需将智能电话解锁。在另一个实例中,基于智能电话与一个或多个装置的邻近度,用于控制一个或多个装置的一个或多个图标可以出现在锁定屏幕的界面上。
[0082] 图7示出了与社交网络系统相关联的一个实例网络环境700。网络环境700包括客户端装置或客户端系统730、社交网络系统760以及通过网络710彼此连接的第三方系统770。虽然图7示出了客户端系统730、社交网络系统760、第三方系统770以及网络710的特定设置,但是本公开预计客户端系统730、社交网络系统760、第三方系统770以及网络710具有任何合适的设置。作为一个实例,并非通过限制的方式,客户端系统730、社交网络系统760以及第三方系统770中的两个或多个彼此直接连接,绕过网络710。作为另一个实例,客户端系统730、社交网络系统760以及第三方系统770中的两个或多个在物理上或逻辑上彼此完全或部分共同定位。而且,虽然图7示出了特定数量的客户端系统730、社交网络系统760、第三方系统770以及网络710,但是本公开预计客户端系统730、社交网络系统760、第三方系统
770以及网络710具有任何合适的数量。作为一个实例,并非通过限制的方式,网络环境700可以包括多个客户端系统730、社交网络系统760、第三方系统770以及网络710。
[0083] 本公开预计任何合适的网络710。作为一个实例,并非通过限制的方式,网络710的一个或多个部分可以包括自组织网络、内联网、外联网、虚拟专用网络(VPN)、局域网(LAN)、无线LAN(WLAN)、广域网(WAN)、无线WAN(WWAN)、城域网(MAN)、一部分互联网、一部分公共交换电话网(PSTN)、蜂窝电话网络、或其中的两个或多个的组合。网络710可以包括一个或多个网络710。
[0084] 链路750可以使客户端系统730、社交网络系统760以及第三方系统770与通信网络710或者彼此连接。本公开预计任何合适的链路750。在具体实施方式中,一个或多个链路
750包括一个或多个有线(例如,数字用户线路(DSL)或电缆数据服务接口规范(DOCSIS))、无线(例如,Wi-Fi或全球微波接入互操作性(WiMAX))、或光学(例如,同步光纤网络(SONET)或同步数字系列(SDH))链路。在具体实施方式中,一个或多个链路750均包括自组织网络、内联网、外联网、VPN、LAN、WLAN、WAN、WWAN、MAN、一部分互联网、一部分PSTN、基于蜂窝技术的网络、基于卫星通信技术的网络、另一个链路750或两个或多个这种链路750的组合。在整个网络设备700中,链路750不必相同。一个或多个第一链路750可以在一个或多个方面与一个或多个第二链路750不同。
[0085] 在具体实施方式中,客户端系统730可以是电子装置,其包括硬件、软件或嵌入式逻辑元件或两个或多个这种元件的组合,并且能够执行由客户端系统730实现或支持的合适功能。作为一个实例,并非通过限制的方式,客户端系统730可以包括计算机系统,例如,台式电脑、笔记本或膝上型电脑、笔记本、平板电脑、电子阅读器、GPS装置、照相机、个人数字助理(PDA)、手持式电子装置、蜂窝电话、智能电话、其他合适的电子装置、或其任何合适的组合。本公开预计任何合适的客户端系统730。客户端系统730可以使在客户端系统730上的网络用户访问网络710。客户端系统730可以使其用户与在其他客户端系统730上的其他用户通信。
[0086] 在具体实施方式中,客户端系统730可以包括网页浏览器732,例如,MICROSOFT INTERNET EXPLORER、GOOGLE CHROME或MOZILLA FIREFOX,并且可以具有一个或多个附加组件、插件或其他延伸部分,例如,TOOLBAR或YAHOO TOOLBAR。在客户端系统730上的用户可以输入统一资源定位符(URL)或其他地址,将网页浏览器732引向特定用户(例如,服务器762或与第三方系统770相关联的服务器),并且网页浏览器732可以生成超文本传输协议(HTTP)请求,并且将HTTP请求传送给服务器。服务器可以接受HTTP请求并且将响应于HTTP请求的一个或多个超文本标记语言(HTML)文件传送给客户端系统730。客户端系统730可以基于来自服务器的HTML文件渲染网页,用于呈现给用户。本公开预计任何合适的网页文件。作为一个实例,并非通过限制的方式,网页可以根据特定的需要从HTML文件、可扩展超文本标记语言(XHTML)文件或可扩展标记语言(XML)文件中渲染。这种页面还可以执行脚本,例如,例如并且没有限制地,通过JAVASCRIPT、JAVA、MICROSOFT SILVERLIGHT、标记语言和脚本(例如,AJAX(异步JAVASCRIPT和XML)的组合等编写的脚本。在本文中,在适当的情况下,网页的引用包括一个或多个相应的网页文件(浏览器可以用于渲染网页的文件),反之亦然。
[0087] 在具体实施方式中,社交网络系统760可以是可以托管在线社会网络的网络可寻址计算系统。社交网络系统760可以生成、储存、接收并且发送社交网络数据,例如,用户配置文件数据、概念配置文件数据、社交图谱信息、或与在线社会网络相关的其他合适数据。社交网络系统760可以由网络环境700的其他元件直接或者通过网络710访问。在具体实施方式中,社交网络系统760可以包括一个或多个服务器762。每个服务器762可以是单一式服务器或分布式服务器,其跨过多个计算机或多个数据中心。服务器762可以是各种类型,例如,例如并且没有限制地,网络服务器、新闻服务器、邮件服务器、消息服务器、广告服务器、文件服务器、应用程序服务器、交换服务器、数据库服务器、代理服务器、适合于执行在本文中描述的功能或工艺的另一个服务器、或其任何组合。在具体实施方式中,每个服务器762可以包括硬件、软件或嵌入式逻辑元件或两个或多个这种元件的组合,用于执行由服务器
762实现或支持的合适功能。在具体实施方式中,社交网络系统764可以包括一个或多个数据储存764。数据储存764可以用于储存各种类型的信息。在具体实施方式中,可以根据特定的数据结构,组织储存在数据储存764内的信息。在具体实施方式中,每个数据储存764可以关联式、柱状、相关性或其他合适的数据库。虽然本公开描述或显示了特定类型的数据库,但是本公开预计任何合适类型的数据库。具体实施方式可以提供界面,所述界面使客户端系统730、社交网络系统760或者第三方系统770能够管理、检索、增加或删除储存在数据储存764内的信息。
[0088] 在具体实施方式中,社交网络系统760可以在一个或多个数据储存764内储存一个或多个社交图谱。在具体实施方式中,社交图谱可以包括多个节点-其可以包括多个用户节点(每个节点与特定的用户对应)或多个概念节点(每个节点与特定的概念对应)-以及连接所述节点的多个矢线。社交网络系统760可以给在线社会网络的用户提供与其他用户通信和互动的能力。在具体实施方式中,用户可以通过社交网络系统760加入在线社会网络,然后,增加与用户希望联系的社交网络系统760的多个其他用户的联系(例如,关系)。在本文中,术语“朋友”可以表示用户通过社交网络系统760与其形成联系、关联性或关系的社交网络系统760的任何其他用户。
[0089] 在具体实施方式中,社交网络系统760可以给用户提供对由社交网络系统760支持的各种类型的物品或对象采取行动的能力。作为一个实例,并非通过限制的方式,物品和对象可以包括社交网络系统760的用户所属的群组或社会网络、用户可能感兴趣的活动或日历项、用户可以使用的基于计算机的应用程序、允许用户通过服务购买或销售的物品的交易、与用户可以执行的广告的互动、或其他合适的物品或对象。用户可以与能够在社交网络系统760内或者由第三方系统770的外部系统表示的任何物体互动,该外部系统与社交网络系统760分开并且通过网络710耦接至社交网络系统760。
[0090] 在具体实施方式中,社交网络系统760能够连接各种实体。作为一个实例,并非通过限制的方式,社交网络系统760可以使用户能够彼此互动并且接收来自第三方系统770或其他实体的内容,或者允许用户通过应用程序编程接口(API)或其他通信信道与这些实体互动。
[0091] 在具体实施方式中,第三方系统770可以包括一种或多种类型的服务器、一个或多个数据储存、一个或多个接口(包括但不限于API)、一个或多个网络服务、一个或多个内容源、一个或多个网络、或(例如)可以与服务器通信的任何其他合适的元件。第三方系统770可以由与操作社交网络系统760的实体不同的实体操作。在具体实施方式中,然而,社交网络系统760和第三方系统770可以彼此相结合地操作,以给社交网络系统760或第三方系统770的用户提供社交网络服务。在这个意义上,社交网络系统760可以提供平台或支柱,其他系统(例如,第三方系统770)可以使用该平台或支柱来通过互联网给用户提供社交网络服务和功能。
[0092] 在具体实施方式中,第三方系统770可以包括第三方内容对象提供商。第三方内容对象提供商可以包括可以传送给客户端系统730的内容对象的一个或多个来源。作为一个实例,并非通过限制的方式,内容对象可以包括关于用户感兴趣的东西或活动的信息,例如,电影放映时间、电影评论、餐厅评论、餐厅菜单、产品信息和评论、或其他合适的信息。作为一个实例,并非通过限制的方式,内容对象可以包括激励内容对象,例如,优惠券、折扣票、礼品券或其他合适的激励对象。
[0093] 在具体实施方式中,社交网络系统760还包括用户生成的内容对象,所述内容对象可以增强用户与社交网络系统760的互动。用户生成的内容可以包括用户可以增加、上传、发送或“张贴”到社交网络系统760中的任何物体。作为一个实例,并非通过限制的方式,用户将帖子从客户端系统730中传送给社交网络系统760。帖子可以包括状态更新或其他文本数据等数据、位置信息、照片、视频、链接、音乐或其他相似的数据或介质。还可以由第三方系统770通过“通信通道”(例如,新闻推送或流)增加到社交网络系统760中。
[0094] 在具体实施方式中,社交网络系统760可以包括各种服务器、子系统、程序、模、记录以及数据储存。在具体实施方式中,社交网络系统760可以包括以下中的一个或多个:网络服务器、活动记录器、API请求服务器、相关性和排名引擎、内容对象分类器、通知控制器、活动记录、第三方内容对象曝光记录、推理模块、授权/隐私服务器、搜索模块、广告目标模块、用户界面模块、用户配置文件储存、连接储存、第三方内容储存或位置储存。社交网络系统760还可以包括合适的元件,例如,网络接口、安全机构、负载平衡器、故障转移服务器、管理和网络操作控制台、其他合适的元件、或其任何合适的组合。在具体实施方式中,社交网络系统760可以包括一个或多个用户配置文件储存,用于储存用户配置文件。用户配置文件可以包括(例如)传记信息、人口统计信息、行为信息、社会信息、或其他类型的描述性信息,例如,工作经验、学历、爱好或偏好、兴趣、亲和力或位置。兴趣信息可以包括与一个或多个类别相关联的兴趣。类别可以是一般或特定类别。作为一个实例,并非通过限制的方式,如果用户“喜欢”关于某个品牌的的物品,那么类别可以是该品牌或者一般类别的“鞋子”或“衣服”。连接储存可以用于储存关于用户的连接信息。连接信息可以表示具有相似或共同工作经历、群组关系、爱好、学历的或者通过任何方式相关的或者分享共同属性的用户。
连接信息还可以包括在不同用户与内容(内部和外部)之间的用户定义的连接。网络服务器可以用于通过网络710连接社交网络系统760和一个或多个客户端系统730或者一个或多个第三方系统770。网络服务器可以包括邮件服务器或其他消息传递功能,用于在社交网络系统760与一个或多个客户端系统730之间接收和理由消息。API请求服务器可以允许第三方系统770通过调用一个或多个API来访问来自社交网络系统760的信息。活动记录器可以用于从网络服务器中接收关于用户在社交网络系统760上或者远离社交网络系统760的活动的通信。与活动记录相结合,第三方内容对象记录可以保持用户曝光到第三方内容对象中。
通知控制器可以给客户端系统730提供关于内容对象的信息。可以将信息作为通知推向客户端系统730,或者可以响应于从客户端系统730中接收的请求,从客户端系统730中拉动信息。授权服务器可以用于实施社交网络系统760的用户的一个或多个隐私设置。用户的隐私设置确定可以分享与用户相关联的特定信息的方式。授权服务器可以允许用户决定加入或退出由社交网络系统760记录的或者与其他系统(例如,第三方系统770)分享的活动,例如,通过设置合适的隐私设置。第三方内容对象储存可以用于储存从第三方接收的内容对象,例如,第三方系统770。位置储存可以用于储存从与用户相关联的客户端系统730中接收的位置信息。广告定价模块可以合并社会信息、当前时间、位置信息或其他合适的信息,以通过通知的形式向用户提供相关广告。
[0095] 图8示出了实例社交图谱800。在具体实施方式中,社交网络系统760可以在一个或多个数据储存中储存一个或多个社交图谱800。在具体实施方式中,社交图谱800可以包括多个节点-其可以包括多个用户节点802或多个概念节点804-以及连接所述节点的多个矢线806。为了教育的目的,在二维视觉图表示中显示了在图8中示出的实例社交图谱800。在具体实施方式中,社交网络系统760、客户端系统730或第三方系统770可以访问用于合适的应用程序的社交图谱800和相关的社交图谱信息。社交图谱800的节点和矢线可以作为数据对象(例如)储存在数据储存(例如,社交图谱数据库)内。这种数据储存可以包括社交图谱800的节点和矢线的一个或多个可搜索或可查询的索引。
[0096] 在具体实施方式中,用户节点802可以与社交网络系统760的用户对应。作为一个实例,并非通过限制的方式,用户可以是个人(个人用户)、实体(例如,企业、商业或第三方应用程序)、或与或者通过社交网络系统760互动或通信的群组(例如,个人或实体)。在具体实施方式中,在用户通过社交网络系统760注册账号时,社交网络系统760可以创建与用户对应的用户节点802,并且在一个或多个数据储存内储存用户节点802。在适当的情况下,在本文中描述的用户和用户节点802表示注册的用户以及与注册的用户相关联的用户节点802。此外或者作为替换物,在适当的情况下,在本文中描述的用户和用户节点802表示没有通过社交网络系统760注册的用户。在具体实施方式中,用户节点802可以与由用户提供的信息或者由各种系统聚集的信息相关联,包括社交网络系统760。作为一个实例,并非通过限制的方式,用户可以提供其名称、大头贴、联系信息、生日、性别、婚姻状况、家庭状况、职业、教育背景、爱好、兴趣或其他人口统计信息。在具体实施方式中,用户节点802可以与一个或多个数据对象相关联,所述数据对象与和用户相关联的信息对应。在具体实施方式中,用户节点802可以与一个或多个网页对应。
[0097] 在具体实施方式中,概念节点804可以与概念对应。作为一个实例,并非通过限制的方式,概念可以对应于地点(例如,电影院、餐馆、地标或城市);网站(例如,与社交网络系统760相关联的网站或者与网络应用程序服务器相关联的第三方网站);实体(例如,个人、企业、群组、体育队或名流);资源(例如,音频文件、视频文件、数字照片、文本文件、结构化文档或应用程序),其可以位于社交网络系统760内或外部服务器上,,例如,网络应用程序服务器;不动产或知识产权(例如,雕塑、绘画、电影、游戏、歌曲、理念、照片、或书面工作);游戏;活动;理念或理论;另一种合适的概念;或两个或多个这种概念。概念节点804可以与由用户提供的概念的信息或者由各种系统聚集的信息相关联,包括社交网络系统760。作为一个实例,并非通过限制的方式,概念的信息可以包括名字或称号;一个或多个图像(例如,书的封面的图像);位置(例如,地址或地理位置);网站(其可以与URL相关联);联系方式(例如,电话号码或电子邮件地址);其他合适的概念信息;或这种信息的任何合适的组合。在具体实施方式中,概念节点804可以与一个或多个数据对象相关联,所述数据对象与和概念节点804相关联的信息对应。在具体实施方式中,概念节点804可以与一个或多个网页对应。
[0098] 在具体实施方式中,在社交图谱800内的节点可以表示网页(可以称为“配置文件页面”)或者由该网页表示。配置文件页面可以由社交网络系统760托管或者可存取。配置文件页面还可以在与第三方系统770相关联的第三方网站上托管。作为一个实例,并非通过限制的方式,与特定的外部网页对应的配置文件页面可以是特定的外部网页,并且配置文件页面可以与特定的概念节点804对应。配置文件页面可以由所有或者所选择的子集的其他用户可查看。作为一个实例,并非通过限制的方式,用户节点802可以具有对应的用户配置文件页面,在该配置文件页面中,相应的用户可以添加内容,发表声明,或者另外表达自己的意见。作为另一个实例,并非通过限制的方式,概念节点804可以具有相应概念的配置文件页面,在该配置文件页面中,一个或多个用户可以添加内容,发表声明,或者表达自己的意见,尤其关于与概念节点804对应的概念。
[0099] 在具体实施方式中,概念节点804可以表示由第三方系统770托管的第三方网页或资源。在其他部件之中,第三方网页或资源可以包括内容、可选择的或其他图标、或者表示活动或行动的其他可互动的对象(例如,可以在JavaScript、AJAX或PHP代码内实现)。作为一个实例,并非通过限制的方式,第三方网页可以包括可选择的图标,例如,“喜欢”、“登记”、“吃”、“推荐”、或另一个合适的活动或行动。通过选择一个图标(例如,“吃”),查看第三方网页的用户可以执行活动,促使客户端系统730给社交网络系统760发送表示用户的活动的消息。响应于该消息,社交网络系统760可以在与用户对应的用户节点802与和第三方网页或资源对应的概念节点804之间创建矢线(例如,“吃”矢线),并且在一个或多个数据储存内储存矢线806。
[0100] 在具体实施方式中,在社交图谱800内的一对节点可以通过一个或多个矢线806彼此连接。连接一对节点的矢线806可以表示在这对节点之间的关系。在具体实施方式中,矢线806可以包括或表示与在一对节点之间的关系对应的一个或多个数据对象或属性。作为一个实例,并非通过限制的方式,第一用户可以表示第二用户是第一用户的“朋友”。响应于这个指示,社交网络系统760可以给第二用户发送“朋友请求”。如果第二用户确认“朋友请求”,那么社交网络系统760可以在社交图谱800内创建连接第一用户的用户节点802和第二用户的用户节点802的矢线806,并且在一个或多个数据储存764内储存矢线806,作为社交图谱信息。在图8的实例中,社交图谱800包括表示在用户“A”和用户“B”的用户节点802之间的朋友关系的矢线806以及表示在用户“C”和用户“B”的用户节点802之间的朋友关系的矢线。虽然本公开描述或显示了连接特定的用户节点802的具有特定属性的特定矢线806,但是本公开预计连接用户节点802的具有任何合适的属性的任何合适的矢线806。作为一个实例,并非通过限制的方式,矢线806可以表示友谊、家庭关系、业务或雇佣关系、粉丝关系、追随者关系、访客关系、用户关系、上级/下级关系、互惠关系、非互惠的关系、另一种合适类型的关系、或两个或更多这种关系。而且,虽然本公开总体上描述正在连接的节点,但是本公开还描述了正在连接的用户或概念。在本文中,在合适的地方,正在连接的用户或概念的引用可以表示与由一个或多个矢线806在社交图谱800内连接的那些用户或概念对应的节点。
[0101] 在具体实施方式中,在用户节点802与概念节点804之间的矢线806可以表示由与用户节点802相关联的用户朝着与概念节点804相关联的概念执行的特定活动或行动。作为一个实例,并非通过限制的方式,如图8中所示,用户可以“喜欢”、“参加”、“播放”、“收听”、“烹饪”、“工作”或“观看”概念,其中的每个均与矢线类型或子类型对应。与概念节点804对应的概念配置文件页面可以包括(例如)可选择的“登记”图标(例如,可点击的“登记”图标)或可选择的“添加到收藏夹”图标。同样,在用户点击这些图标之后,社交网络系统760可以响应于与相应的活动对应的用户活动创建“收藏夹”矢线或“登记”矢线。作为一个实例,并非通过限制的方式,用户(用户“C”)可以使用特定的应用程序(例如,SPOTIFY,这是在线音乐应用程序)收听特定的歌曲(“Ramble On”)。在这种情况下,社交网络系统760可以在与用户对应的用户节点802与和歌曲和应用程序对应的概念节点804之间创建“收听”的矢线806和“使用”的矢线(如图8中所示),以表示用户收听歌曲和使用应用程序。而且,社交网络系统760可以在与歌曲和应用程序对应的概念节点804之间创建“收听”的矢线806(如图8中所示),以表示由特定的应用程序播放特定的歌曲。在这种情况下,“收听”的矢线806与由外部应用程序(SPOTIFY)在外部音频文件(歌曲“Imagine”)上执行的活动对应。虽然本公开描述了连接用户节点802和概念节点804的具有特定属性的特定矢线806,但是本公开预计连接用户节点802和概念节点804的具有任何合适的属性的任何合适的矢线806。而且,虽然本公开描述了表示单个关系的在用户节点802和概念节点804之间的矢线,但是本公开预计表示一个或多个关系的在用户节点802和概念节点804之间的矢线。作为一个实例,并非通过限制的方式,矢线806可以表示用户喜欢并且使用的特定概念。交替地,另一个矢线806可以表示在用户节点802和概念节点804之间(如图8中所示,在用户“E”的用户节点802和“SPOTIFY”的概念节点804之间)的每种类型的关系(或单个关系的倍数)。
[0102] 在具体实施方式中,社交网络系统760可以在用户节点802和概念节点804之间创建矢线806。作为一个实例,并非通过限制的方式,查看概念配置文件页面的用户(例如,通过使用由用户的客户端系统730托管的网络浏览器或专用应用程序)可以通过点击或选择“喜欢”图标来指示该用户喜欢由概念节点804表示的概念,这可以促使用户的客户端系统730给社交网络系统760发送表示用户喜欢与概念配置文件页面相关联的概念的消息。响应于该消息,社交网络系统760可以在与用户相关联的用户节点802和概念节点804之间创建矢线806,如“喜欢”在用户和概念节点804之间的矢线806所示。在具体实施方式中,社交网络系统760可以在一个或多个数据储存内储存矢线806。在具体实施方式中,可以由社交网络系统760响应于特定的用户活动自动形成矢线806。作为一个实例,并非通过限制的方式,如果第一用户上传图片,看电影,或者收听歌曲,那么可以在与第一用户对应的用户节点
802和与那些概念对应的概念节点804之间形成矢线806。虽然本公开描述了通过特定的方式形成特定的矢线806,但是本公开预计通过任何合适的方式形成任何合适的矢线806。
[0103] 图9示出了一个实例计算机系统900。在具体实施方式中,一个或多个计算机系统900执行在本文中描述或显示的一个或多个方法的一个或多个步骤。在具体实施方式中,一个或多个计算机系统900提供在本文中描述或显示的功能。在具体实施方式中,在一个或多个计算机系统900上运行的软件执行在本文中描述或显示的一个或多个方法的一个或多个步骤,或者提供在本文中描述或显示的功能。具体实施方式包括一个或多个计算机系统900的一个或多个部分。在本文中,在适当的情况下,计算机系统的引用可以包括计算装置,反之亦然。而且,在适当的情况下,计算机系统的引用可以包括一个或多个计算机系统。
[0104] 本公开预计具有任何适当数量的计算机系统900。本公开预计具有采用任何合适的物理形式的计算机系统900。作为实例,并非通过限制的方式,计算机系统900可为嵌入式计算机系统、片上系统(SOC)、单板计算机系统(SBC)(例如,计算机模块(COM)或系统模块(SOM))、台式电脑系统、膝上型或笔记本式电脑系统、交互式自助服务机、主机、计算机系统的网格、移动电话、个人数字助理(PDA)、服务器、平板电脑系统、或其中的两个或多个的组合。在适当的情况下,计算机系统900可包括一个或多个计算机系统900;可为单一式或分布式;跨过多个位置;跨过多台机器;或者位于云中,其在一个或多个网络中可包括一个或多个云元件。在适当的情况下,一个或多个计算机系统900可执行在本文中描述或显示的一个或多个方法的一个或多个步骤,无需大量空间或时间限制。作为实例,并非通过限制的方式,一个或多个计算机系统900可实时或以成批的方式执行在本文中描述或显示的一个或多个方法的一个或多个步骤。在适当的情况下,一个或多个计算机系统900可在不同的时间或者在不同的位置执行在本文中描述或显示的一个或多个方法的一个或多个步骤。
[0105] 在具体实施方式中,计算机系统900包括处理器902、存储器904、储存介质906、输入/输出(I/O)接口908、通信接口910以及总线912。虽然本公开描述和显示了在特定的设置中具有特定数量的特定元件的特定计算机系统,但是本公开预计在任何合适的设置中具有任何合适的数量的任何合适的元件的任何合适的计算机系统。
[0106] 在具体实施方式中,处理器902包括用于执行指令的硬件,例如,构成计算机程序的那些指令。作为实例,并非通过限制的方式,为了执行指令,处理器902可从内部寄存器、内部高速缓存、存储器904或储存介质906检索(或提取)指令;将这些指令解码并且执行这些指令;然后将一个或多个结果写入内部寄存器、内部高速缓存、存储器904或储存介质906中。在具体实施方式中,处理器902可以包括用于数据、指令或地址的一个或多个内部高速缓存。本公开预计处理器902在适当的情况下包括任何合适数量的任何合适的内部高速缓存。作为实例,并非通过限制的方式,处理器902可以包括一个或多个指令高速缓存、一个或多个数据高速缓存、以及一个或多个转译后备缓冲器(TLB)。在指令高速缓存内的指令可以是在存储器904或储存介质906内的指令的副本,并且指令高速缓存可以加速由处理器902检索那些指令。在数据高速缓存内的数据可以是在存储器904或储存介质906内的数据的副本,用于要起作用的的在处理器902上执行的指令;在处理器902上执行的先前指令的结果由在处理器902上执行的后续指令访问或者写入存储器904或储存介质906内;或者其他合适的数据。数据高速缓存可以加速处理器902的读取或写入操作。TLB可以加速处理器902的虚拟地址转译。在具体实施方式中,处理器902可以包括用于数据、指令或地址的一个或多个内部寄存器。在适当的情况下,本公开预计处理器902包括任何合适数量的任何合适的内部寄存器。在适当的情况下,处理器902可以包括一个或多个算术逻辑单元(ALU);是多核处理器;或者包括一个或多个处理器902。虽然本公开描述和显示了特定的处理器,但是本公开预计任何合适的处理器。
[0107] 在具体实施方式中,存储器904包括主存储器,用于储存要执行的处理器902的指令或者要起作用的处理器902的数据。作为实例,并非通过限制的方式,计算机系统900可将指令从储存介质906或另一个源(例如,另一个计算机系统900)中装载到存储器904中。然后,处理器902可将指令从存储器904中装载到内部寄存器或内部高速缓存中。为了执行这些指令,处理器902可从内部寄存器或内部高速缓存检索指令,并且将这些指令解码。在执行指令期间或之后,处理器902可将一个或多个结果(这些结果可为中间或最终结果)写入内部寄存器或内部高速缓存中。然后,处理器902可将这些结果中的一个或多个写入存储器904中。在具体实施方式中,存储器904仅仅执行在一个或多个内部寄存器或内部高速缓存内或者在存储器904内(与储存介质906相对或者在别处)的指令,并且仅仅操作在一个或多个内部寄存器或内部高速缓存内或者在存储器904内(与储存介质906相对或者在别处)的数据。一个或多个内存总线(这些总线均可包括地址总线数据总线)可使处理器902与存储器904耦接。如下所述,总线912可包括一个或多个内存总线。在具体实施方式中,一个或多个内存管理单元(MMU)位于处理器902与存储器904之间,并且有助于访问由处理器902请求的存储器904。在具体实施方式中,存储器904包括随机存取存储器(RAM)。在适当的情况下,该RAM可为易失性存储器。在适当的情况下,该RAM可为动态RAM(DRAM)或静态RAM(SRAM)。而且,在适当的情况下,该RAM可为单端口或多端口RAM。本公开预计任何合适的RAM。在适当的情况下,存储器904可以包括一个或多个存储器904。虽然本公开描述和显示了特定的存储器,但是本公开预计任何合适的存储器。
[0108] 在具体实施方式中,储存介质906包括用于数据或指令的大容量存储器。作为实例,并非通过限制的方式,储存介质906可包括HDD、软盘驱动器、闪速存储器、光盘、磁光盘、磁带或通用串行总线(USB)驱动器或其中的两个或多个的组合。在适当的情况下,储存介质906可包括可移动或固定的(或固定的)介质。在适当的情况下,储存介质906可位于计算机系统900的内部或外部。在具体实施方式中,储存介质906是非易失性固态存储器。在具体实施方式中,储存介质906包括只读存储器(ROM)。在适当的情况下,该ROM可为掩膜编程的ROM、可编程的ROM(PROM)、可擦PROM(EPROM)、电可擦PROM(EEPROM)、电可改写ROM(EAROM)、或闪速存储器或其中的两个或多个的组合。本公开预计采用任何合适的物理形式的大容量储存介质906。在适当的情况下,储存介质906可以包括促进在处理器902与储存介质906之间通信的一个或多个储存控制单元。在适当的情况下,储存介质906可以包括一个或多个储存介质906。虽然本公开描述和显示了特定的储存器,但是本公开预计任何合适的储存器。
[0109] 在具体实施方式中,I/O接口908包括硬件和/或软件,其提供一个或多个接口,用于在计算机系统900与一个或多个I/O装置之间进行通信。在适当的情况下,计算机系统900可包括这些I/O装置中的一个或多个。这些I/O装置中的一个或多个能够在个人与计算机系统900之间进行通信。作为实例,并非通过限制的方式,I/O装置可包括键盘、按键、麦克风、显示器、鼠标打印机扫描仪、扬声器、静物照相机、唱针、平板电脑、触摸式屏幕、轨迹球、摄影机、另一个合适的I/O装置或其中的两个或多个的组合。I/O装置可包括一个或多个传感器。本公开预计具有任何合适的I/O装置以及用于这些I/O装置的任何合适的I/O接口908。在适当的情况下,I/O接口908可包括一个或多个装置或软件驱动器,其能够允许处理器902驱动这些I/O装置中的一个或多个。在适当的情况下,I/O接口908可包括一个或多个I/O接口908。虽然本公开描述和显示了特定的I/O接口,但是本公开预计具有任何合适的I/O接口。
[0110] 在具体实施方式中,通信接口910包括硬件和/或软件,其提供一个或多个接口,用于在计算机系统900与一个或多个其他计算机系统900或一个或多个网络之间进行通信(例如,基于分组的通信)。作为实例,并非通过限制的方式,通信接口910可包括网络接口控制器(NIC)、或用于与以太网或其他有线网络或无线NIC(WNIC)进行通信的网络适配器、或用于与无线网络(例如,WI-FI网络)进行通信的网络适配器。本公开预计具有任何合适的网络以及用于该网络的任何合适的通信接口910。作为实例,并非通过限制的方式,计算机系统900可与自组织网络、个人区域网络(PAN)、局域网(LAN)、广域网(WAN)、城域网(MAN)、或互联网的一个或多个部分或其中的两个或多个的组合进行通信。这些网络中的一个或多个的一个或多个部分可为有线或无线部分。作为一个实例,计算机系统900可与无线PAN(WPAN)(例如,BLUETOOTH WPAN)、WI-FI网络、WI-MAX网络、蜂窝电话网络(例如,全球移动通讯系统(GSM)网络)、或其他合适的无线网络或其中的两个或多个的组合进行通信。在适当的情况下,计算机系统900可以包括用于这些网络中的任一个的任何合适的通信接口910。在适当的情况下,通信接口910可以包括一个或多个通信接口910。虽然本公开描述和显示了特定的通信接口,但是本公开预计具有任何合适的通信接口。
[0111] 在具体实施方式中,总线912包括硬件和/或软件,其使计算机系统900的元件彼此耦接。作为实例,并非通过限制的方式,总线912可包括加速图形端口(AGP)或其他图形总线、增强型工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准结构(ISA)总线、无限带宽互连、低脚位(LPC)总线、内存总线、微通道结构(MCA)总线、外围组件互连(PCI)总线、PCI高速(PCIe)总线、串行高级技术附件(SATA)总线、视频电子标准协会本地(VLB)总线、或另一个合适的总线或其中的两个或多个的组合。在适当的情况下,总线912可包括一个或多个总线912。虽然本公开描述和显示了特定的总线,但是本公开预计具有任何合适的总线或互连。
[0112] 在本文中,在适当的情况下,计算机可读非暂时性储存介质的引用可包括基于半导体的或者其他集成电路(IC)(例如,现场可编程门阵列(FPGA)或专用IC(ASIC))、硬盘驱动器HDD、混合硬盘驱动器(HHD)、光盘、光盘驱动器(ODD)、磁光盘、磁光驱动器、软盘、软盘驱动器(FDD)、磁带、固态驱动器(SSD)、RAM驱动器、安全数字卡、安全数字卡或驱动器、另一个合适的计算机可读非暂时性储存介质、或者其中的一个合适的组合。在适当的情况下,计算机可读非暂时性储存介质可为易失性、非易失性或者易失性和非易失性的组合。
[0113] 在本文中,除非另有明确规定或者在上下文中另有明确规定,否则“或”具有包括而非排除的意思。因此,在本文中,除非另有明确规定或者在上下文中另有明确规定,否则“A或B”表示“A和/或B”。而且,除非另有明确规定或者在上下文中另有明确规定,否则“和”具有共同和单独的意思。因此,在本文中,除非另有明确规定或者在上下文中另有明确规定,否则“A和B”表示“共同或单独的A和B”。
[0114] 本公开的范围包括本领域的技术人员会理解的在本文中描述或显示的实例实施方式的所有变化、替换、变动、变更以及修改。本公开的范围不限于在本文中描述或显示的实例实施方式。而且,虽然本公开描述和显示了在本文中相应的实施方式包括特定的元件、部件、功能、操作或步骤,但是这些实施方式中的任一个可以包括本领域的技术人员会理解的在本文中的任何地方描述或显示的任何元件、部件、功能、操作或步骤的任何组合或排列。而且,只要适合于、被设置为、能够、被配置为、启用、可用于或者有效地执行一个特定的功能的设备、系统、或设备或系统的元件这样适合、设置、能够、配置、启用、可用或者有效,就无论是否激活、打开或开启该设备、系统、元件或该特定的功能,在所附权利要求中引用该设备、或系统、或元件都包括该设备、系统、元件。
QQ群二维码
意见反馈