CN103229156A - 多操作系统环境中的对接系统的自动配置 - Google Patents

多操作系统环境中的对接系统的自动配置 Download PDF

Info

Publication number
CN103229156A
CN103229156A CN2011800574320A CN201180057432A CN103229156A CN 103229156 A CN103229156 A CN 103229156A CN 2011800574320 A CN2011800574320 A CN 2011800574320A CN 201180057432 A CN201180057432 A CN 201180057432A CN 103229156 A CN103229156 A CN 103229156A
Authority
CN
China
Prior art keywords
mobile
operating system
desktop
terminal environments
computing device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2011800574320A
Other languages
English (en)
Other versions
CN103229156B (zh
Inventor
B.里弗斯
P.里弗斯
R.特尔茨
D.里弗斯
S.瑟帕尔
C.泰格
C.汉希拉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Flex Electronics Id Co ltd
Original Assignee
Flex Electronics Id Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US13/217,121 external-priority patent/US9152582B2/en
Application filed by Flex Electronics Id Co ltd filed Critical Flex Electronics Id Co ltd
Publication of CN103229156A publication Critical patent/CN103229156A/zh
Application granted granted Critical
Publication of CN103229156B publication Critical patent/CN103229156B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • G06F9/441Multiboot arrangements, i.e. selecting an operating system to be loaded
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45537Provision of facilities of other operating environments, e.g. WINE
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/399Control of the bit-mapped memory using two or more bit-mapped memories, the operations of which are switched in time, e.g. ping-pong buffers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/545Gui
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Stored Programmes (AREA)
  • Telephone Function (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)

Abstract

一种移动计算设备,具有在不虚拟化的情况下同时并独立地在共享内核上运行移动操作系统和桌面操作系统。该移动操作系统提供适合于移动环境的对于移动计算设备的用户体验。当该移动计算设备对接到第二终端环境时,该桌面操作系统提供完全的桌面用户体验。该移动多计算设备配置该移动操作系统和/或该桌面操作系统以利用对接的第二终端环境。该移动计算设备可以是在修改的安卓内核上运行安卓移动OS和全桌面Linux OS发布的智能电话。

Description

多操作系统环境中的对接系统的自动配置
相关申请的交叉引用
本申请是以下美国临时申请的非临时申请并且要求它们的申请日的权益:美国临时申请号61/389,117,2010年10月1日提交,题为“Multi-OperatingSystem Portable Docking Device”;美国临时申请号61/507,199,2011年7月13日提交,题为“Dockable Mobile Software Architecture”;美国临时申请号61/507,201,2011年7月13日提交,题为“Cross-Environment CommunicationFramework”;美国临时申请号61/507,203,2011年7月13日提交,题为“Multi-Operating System”;美国临时申请号61/507,206,2011年7月13日提交,题为“Auto-Configuration of a Docked System in a Multi-OS Environment”;以及美国临时申请号61/507,209,2011年7月13日提交,题为“Auto-Wakingof a Suspended Secondary OS in a Dockable System”,其中以上优先权申请的全部内容通过引用合并于此用于所有目的。
技术领域
本申请一般涉及移动计算环境的领域,更具体地涉及通过在单个移动计算设备中使用多个操作系统来支持多个用户环境。
背景技术
移动计算设备在当今社会中正变得无处不在。例如,至2008年末,90%的美国人具有移动无线设备。同时,移动设备的性能正在迅速提升,包括将提升的计算能力与移动电话能力集成的智能电话。移动提供者在过去三年中已经基于几个不同的平台(例如苹果的iPhone,安卓,黑莓,Palm和WindowsMobile)投入了数百种新的智能电话。在美国,至2010年年中,智能电话渗透率(penetration)达到几乎23%,并且在某些年龄段达到35%。在欧洲,从2009年到2010年,智能电话市场增长了41%,至2010年7月,仅在五个最大的欧洲国家就有超过6千万的智能电话用户。
虽然智能电话的普及性和计算性能在增长,但是它们提供了有限的用户体验。具体地,它们通常具有被修改用于移动设备硬件的操作系统以及可用于该修改的操作系统的应用的限定集合。例如,许多智能电话运行Google的安卓操作系统。安卓仅运行专门被开发用于在基于Java的虚拟机运行时间环境内运行的应用。另外,尽管安卓是基于修改的Linux内核,但是其使用与Linux不同的标准C库、系统管理器和服务。因而,为Linux而写的应用在没有修改或移植(porting)的情况下不会在安卓上运行。类似地,苹果的iPhone使用iOS移动操作系统。同样,尽管iOS是从Mac OS X得到的,但是为OSX开发的应用不会在iOS上运行。因此,尽管许多应用可用于诸如安卓和iOS的移动操作系统,但是用于诸如Linux和Mac OS X的桌面操作系统的许多其他普通应用在移动平台上不可用。
因而,智能电话通常适合于有限的一些用户体验并且提供主要设计用于移动环境的应用。特别是,智能电话不提供适当的桌面用户体验,也不运行大多数普通桌面应用。因此,许多用户携带并使用多个计算设备,包括智能电话、桌面和/或平板计算机。在此实例中,每个设备具有其自己的CPU、存储器、文件存储区和操作系统。
智能电话和其他计算设备之间的连接性和文件共享涉及通过无线或有线连接将一个设备(例如运行移动OS(操作系统)的智能电话)与第二完全不同的设备(例如运行桌面OS的笔记本、桌面机或者平板)链接。通过在分别在每个设备上运行的应用之间同步数据而在设备之间共享信息。通常称为“同步”的此处理是麻烦的并且通常需要用户的主动管理。
发明内容
本发明的实施例涉及在单个移动计算设备中提供智能电话的移动计算体验以及第二终端环境的适当用户体验。第二终端环境可以是视觉呈现设备(例如监视器或显示器)、输入设备(例如鼠标、触控板、触摸屏、键盘等)和通过有线(例如USB、电线、雷电(Thunderbolt)等)或者无线(例如蓝牙、WiFi等)连接而连接到计算设备的其他计算外围设备(例如HDD、光盘驱动器、记忆棒、相机、打印机等)的某种组合。在这些实施例中,与移动环境的用户体验相关联的移动操作系统以及与第二终端环境的用户体验相关联的桌面操作系统在共享的内核上同时并独立地运行。
根据符合各个实施例的一个方面,移动计算设备在共享内核上运行第一执行环境中的移动操作系统,并且同时在该共享内核上运行第二执行环境中的桌面操作系统。通过以下来配置该移动计算设备的接口端口:检测该移动计算设备与第二终端环境的对接事件;确定对接的第二终端环境的用户体验简档与该桌面操作系统相关联;响应于确定该对接的第二终端环境的用户体验简档与该桌面操作系统相关联,将该桌面操作系统配置到该第二终端环境的显示器;以及从该接口端口输出该桌面操作系统的图形用户界面。
根据符合各个实施例的其他方面,移动计算设备的帧缓冲器与桌面操作系统相关联,并且被配置到第二终端环境的显示器的分辨率。确定和配置的步骤可以由移动操作系统的桌面监视服务进行。可以设置指示第二终端环境是否具有与桌面操作系统相关联的用户体验简档的标志(flag)。基于确定步骤,来自第二终端环境的输入设备的输入命令可以被移动操作系统忽略。确定的步骤可以包括从对接连接器接收第二终端环境的用户体验简档的指示符。
根据符合各个实施例的其他方面,计算系统包括移动计算设备。该移动计算设备包括:处理器,可操作以同时在共享内核上运行第一执行环境中的移动操作系统和运行第二执行环境中的桌面操作系统;以及接口端口,该接口端口可操作以将该移动计算设备连接到第二终端环境,其中该移动操作系统包括桌面监视服务,该桌面监视服务监视该接口端口,并基于该第二终端环境的用户体验简档将该接口端口与该移动操作系统或该桌面操作系统之一相关联。该计算系统可以包括第二终端环境。该第二终端环境可以包括显示设备,并且该接口端口可以包括显示器端口。
根据符合各个实施例的其他方面,通过以下来配置包括在共享内核上运行的第一执行环境中的移动操作系统和同时在共享内核上运行的第二执行环境中的桌面操作系统的移动计算设备的接口端口:检测该移动计算设备与第二终端环境的对接事件;确定该第二终端环境的用户体验简档与该移动操作系统相关联;以及响应于确定该第二终端环境的用户体验简档与该移动操作系统相关联,配置该接口端口以在该第二终端环境的显示器上显示该移动操作系统的图形用户界面。
根据符合各个实施例的其他方面,检测对接事件可以由共享内核的设备驱动器进行。配置该接口端口可以包括:通过该移动操作系统的桌面监视服务来实例化远程对象;以及响应于检测到所述对接事件,通过该移动操作系统中的事件监听器调用该远程对象,对该远程对象的调用包括该对接事件的通知。配置该接口端口可以包括在该桌面监视服务中接收指示已经发生了所述对接事件的对该远程对象的调用。配置该移动操作系统以在该第二终端环境的显示器上显示该移动操作系统图形用户界面可以包括配置与该移动操作系统相关联的帧缓冲器用于该第二终端环境的显示器的显示分辨率,和/或使该移动计算设备的显示器和其他输入设备停用。运行在移动操作系统上的应用和任务可以被配置用于第二终端环境的显示器。该第二终端环境可以包括平板型(tablet-style)第二终端环境。该第二终端环境的显示器可以包括触摸使能的显示器。
附图说明
在附图的引用的图中例示了本发明的实施例,附图中,对图的描述通篇中相同的数字指代相同的要素。
图1例示根据各个实施例的提供多个用户计算体验的计算环境。
图2例示根据各个实施例的用于移动计算设备的示例系统架构。
图3例示根据各个实施例的用于计算环境的操作系统架构。
图4例示根据各个实施例的用于计算环境的移动操作系统的方面。
图5例示根据各个实施例的用于计算环境的共享内核的方面。
图6例示根据各个实施例的用于计算环境的桌面操作系统的方面。
图7例示根据各个实施例的用于配置各个计算环境的移动计算设备的示例处理流程。
图8更详细地例示根据各个实施例的可以用于配置移动计算设备的操作系统架构的示例的引导过程。
图9例示根据各个实施例的应用计算环境的操作系统架构的示例配置。
图10例示根据各个实施例的用于配置移动计算设备以利用第二终端环境的示例处理流程。
图11例示根据各个实施例的用于为第二终端环境配置移动操作系统的处理流程。
图12例示根据各个实施例的用于计算环境的操作系统架构的示例配置。
图13例示根据各个实施例的用于计算环境的操作系统架构的示例配置。
图14例示根据各个实施例的用于对移动操作系统的输入设备进行响应的处理流程。
图15例示根据各个实施例的计算环境。
具体实施方式
传统上,手持移动电话设备(即“手持机”)独立地开发并且服务于与诸如桌面机和膝上机的个人计算机(“PC”)分离且不同的目的。手持移动电话设备主要关注于通信,而PC关注于诸如创建和编辑文档、基于文本的通信(例如电子邮件等)、多媒体和网页浏览的计算任务。但是,移动电话设备正在将不断增加的计算能力包括在内,并且用户日益需要将通信和计算性能集中到多用途移动设备中。
例如,包括计算性能的称为“智能电话”的移动电话设备正在日益普及。许多这些智能电话包括运行在移动处理器上的移动操作系统(“OS”)。尽管移动处理器和移动OS已经增加了这些设备的性能,但是至少由于所提供的受限的用户体验,智能电话还没有趋于取代诸如桌面或者笔记本计算机的PC环境。具体地,对于诸如打字或编辑文档的某些任务,全尺寸键盘以及大的显示器比通常在智能电话上得到的用户界面(user interface)组件更容易使用。例如,智能电话通常使用小的拇指型QWERTY键盘、触摸屏显示器、点击转盘(click-wheel)和/或滚轮作为用户接口组件。选择菜单选项或者项目通常涉及使用触摸屏显示器或者使用点击转盘或滚轮来导航菜单并选择项目。此接口适合于小显示屏幕以及通常在智能电话中得到的限制的菜单选项,但是不适合于控制具有更大数量的菜单选项、更大的屏幕区域以及围绕诸如传统的鼠标的指向设备而建立的用户界面的更传统的程序。
本发明的实施例指向单个移动计算设备,其提供智能电话的移动计算体验,并且在与第二终端环境对接时提供适合于第二终端环境的完全的用户体验。第二终端环境可以是视觉呈现设备(例如监视器或显示器)、输入设备(例如鼠标、触控板、触摸屏、键盘等)和通过有线(例如USB、电线、雷电(Thunderbolt)等)或者无线(例如蓝牙、WiFi等)连接而连接到计算设备的其他计算外围设备(例如HDD、光盘驱动器、记忆棒、相机、打印机等)的某种组合。尽管第二终端环境可能具有诸如微控制器或者其他专用集成电路(“ASIC”)的一些处理或逻辑元件,但是它们通常不具有运行操作系统的单独实例的处理器。
各种第二终端环境可能适合于不同的计算体验。例如,包括触摸屏显示器作为主要用户输入设备的第二终端环境通常适合于与移动OS相关联的用户体验。作为另一例子,包括键盘和指向设备作为主要用户输入设备的第二终端环境通常适合于与桌面OS相关联的用户体验。根据各个实施例,移动计算设备包括同时运行在共享内核上的移动OS和桌面OS。当该移动计算设备连接到第二终端环境时,该移动计算设备自动确定该第二终端环境是否适合于移动OS或者桌面OS。然后该移动计算设备关联并配置对于该第二终端环境适当的OS。
图1例示根据各个实施例的提供多个用户计算体验的计算环境100。计算环境100包括移动计算设备110。移动计算设备110包括移动计算硬件和软件组件。移动计算设备110的硬件组件包括移动处理器114、显示器116、(一个或多个)I/O设备118和/或端口120。移动计算设备110的软件组件包括第一OS130和第二OS160。在一个实施例中,第一OS130是移动OS并且第二OS160是桌面OS。当移动计算设备110操作为单独的移动设备时,移动OS130通过显示器116和(一个或多个)I/O设备118给出通常的移动计算用户体验。移动OS130提供的移动计算体验通常包括适合于包括显示器116和(一个或多个)I/O设备118的移动环境的移动电话能力和图形用户界面(“GUI”)。例如,显示器116可以是触摸屏显示器并且可以通过触摸屏显示器116上的移动OS130的GUI来控制运行在移动OS130上的应用程序(即“App”)。
移动计算设备110可以通过端口120连接到I/O设备144、146和/或148。I/O设备144、146和/或148可以构成第二终端环境140。在一些实例中,第二终端环境140可能比起移动OS130更适合于桌面OS160。例如,第二终端环境140可以包括键盘144、指向设备146和显示设备148。在这些实例中,桌面OS160可以与第二终端环境140相关联以通过第二终端环境140提供笔记本或者桌面计算机环境的全部能力。在其他实例中,第二终端环境140可能比起桌面OS160更适合于移动OS130。例如,第二终端环境140可以包括触摸屏显示器。在这些实例中,移动OS130可以与第二终端环境140相关联。
在图1中,端口120被示出为通过接口122连接到第二终端环境140的端口142。但是,端口120可以包括通过接口122到每个I/O设备144、146和148的各个单独连接。接口122可以是用于连接诸如键盘、监视器、指向设备等的设备的任何适合的有线或无线接口或者有线和无线接口的组合。例如,接口122可以是显示器接口(例如VGA、DVI、HDMI等)和设备通信接口(例如USB、蓝牙、火线(Firewire)、其他串行通信接口等)的组合。或者,接口122可以是支持视频和设备通信信号两者的单个通信接口(例如雷电(Thunderbolt)等)。
传统上,由于不同的使用模型以及对产品设计的竞争限制,对于手持机环境和PC环境的硬件和软件开发途径已经完全独立。包括桌面和膝上计算机的PC被设计为是灵活并且强大的。具体地,PC硬件架构通常基于通过主板上的各种通用接口连接到存储器、图形装置(graphics)和外部组件的通用PC处理器。例如,个人计算机主板可以包括通过通信接口(PCI、USB、ISA、IDE等)经逻辑芯片组连接到图形处理器、系统存储器(例如RAM)和各种其它组件的处理器。一些高度集成的PC处理器包括与图形处理器的接口(例如AGP等)和/或在该处理器上的与系统存储器的接口(例如SDR、DDR、DDR2、DDR3、DRDRAM等)。
PC处理器被优化用于高处理器时钟速度和计算密集的任务。个人计算机市场目前由基于x86的CPU架构的处理器主导。用于桌面计算机的当前基于x86的PC处理器具有多个64位的中央处理单元(“CPU”)(或者“核”),其时钟速度超过2.5GHz并且功耗接近100瓦。用于膝上计算机的当前基于x86的PC处理器通常以高达2.0GHz的时钟速度运行,并且具有在15-45瓦范围内的功耗。由于这些处理器的大功耗,桌面和膝上计算机可能需要诸如风扇或散热器的冷却设备来排除来自处理器的废热。另外,使用基于x86的PC处理器的膝上计算机的电池周期(life)通常小于四小时。
相对照,用于手持机的移动处理器被优化用于低功耗和高集成度以降低手持机的整体大小。例如,用于诸如智能电话的手持机的移动处理器通常以低于2.0GHz的时钟速度运行,具有小于1瓦的功耗,并且集成了移动环境常见的诸如图形控制器、通信接口和相机控制器的功能。最常见的移动处理器架构是精简指令集计算(“RSIC”)处理器架构。具体地,“ARM”移动处理器架构当前是被设计用于智能电话和其他超可携式和低功耗计算设备的移动处理器的主要架构。一些PC处理器制造者也将设计在膝上计算机中使用的PC处理器称为“移动处理器”。但是,如在此使用的,措辞“移动处理器”指适合于在手持机或者智能电话中使用的、通常消耗小于1瓦并且集成了移动功能性的处理器。
个人计算机和手持机通常具有不同的系统资源、输入/示出(“I/O”)设备和外围设备。例如,桌面和膝上计算机通常具有比手持机大得多的量的系统存储器和存储容量。尽管通常的膝上计算机可以具有多于2GB的RAM和具有多于250GB的容量的硬碟,但是手持机通常具有小于512MB的RAM和具有小于32GB的固态驱动器。个人计算机的用户接口组件通常包括对角线上大于9英寸的显示屏、全键盘和用于用户输入的指向设备。相对照,手持机通常包括对角线上小于7英寸的显示屏以及诸如拇指型QWERTY键盘、触摸屏显示器、点击转盘和/或滚轮的用户接口组件。在个人计算机上得到的外围设备通常包括光盘驱动器(例如CD、DVD、DVD-RW等)、扩展端口(例如PCMCIA、SCSI、快速卡(Express Card)等)、视频输出端口(例如VGA、DVI、HDMI等)和普通设备端口(例如USB等)。相对照,手持机通常不具有光盘驱动器或者扩展端口。但是,通常在手持机中集成其它设备,包括(一个或多个)无线通信接口(例如GSM、CDMA、LTE、EDFE、WiFi、WiMax等)、GPS芯片组、加速计、(一个或多个)相机和/或固态存储器端口(SD、记忆棒等)。
用于个人计算机和手持机的软件传统上也已独立开发。例如,包括桌面机和膝上机的个人计算机通常运行与移动设备不同的操作系统。操作系统是管理计算机硬件和资源并提供用于在计算机硬件上执行应用软件的公共服务的软件。操作系统通常被描述为具有各种抽象层,其中每个层通过接口与下面的层相接口。
通常,操作系统的内核指管理诸如(一个或多个)CPU(CPU调度)、存储器和I/O(包括外围设备和文件系统访问)的计算设备资源的核心OS层。内核通常将提供用于处理器的低级调度(分派)、处理间通信、处理同步、上下文切换、处理控制块的操纵、中断应对、处理创建和破坏以及处理挂起和恢复的特征。OS内核可以包括或者可以不包括设备驱动器。OS的其他层通过系统调用或应用编程接口(“API”)层来与内核相接口。
通常,其他OS层包括库层、应用框架层和应用层。库层通常包括系统库和其他用户库。应用框架层包括服务、管理器和运行时间环境。应用层包括用户应用,其可以在应用框架层的运行时间环境内运行。用户通过OS GUI与OS交互。GUI给出菜单、按钮和控制,其中用户选择这些菜单、按钮和控制来控制和使用在OS上运行的应用。通常,措辞“桌面环境”用于指代GUI类型,通过该GUI类型,用户使用图标、窗口、工具栏、文件夹和/或桌面窗口小部件(widget)与OS交互,并且“桌面环境”不限于桌面OS。例如,移动OS可以具有桌面环境,这是指移动OS GUI的外表和感觉。
用于个人计算机的操作系统(桌面OS)被设计用于多任务、更大屏幕面积并为应用开发者提供灵活的环境。如在此使用的,措辞桌面OS指被设计用于与个人计算机环境、例如桌面或膝上使用环境一起使用的操作系统。桌面OS的例子除了许多其他的之外还包括Linux、Mac OS X和Windows7的各种分布。
用于移动设备的操作系统(移动OS)被开发用于通常在手持机和智能电话上得到的更小的屏幕面积、更低的处理功率、更小的存储器以及更小的碟空间。示例的移动OS包括安卓、苹果的iOS(用于iPhone和iPad)、微软的Windows Mobile(被Windows Phone7取代)、Nokia的塞班以及Palm的PalmOS(被HP webOS取代)。如在此使用的,措辞移动OS指代被设计用于与移动环境一起使用的操作系统,包括与PC环境(即桌面或膝上计算机系统)相比、在具有减少的系统资源的低功率处理器上运行的移动环境。
移动操作系统通常具有被用于创建运行在移动OS上的应用程序(即“app”)的具体应用开发环境。应用开发环境通过提供用于访问系统资源和服务的常用工具和API而促进应用开发,并限制允许进行哪些应用以便移动设备能够继续提供其他需要的功能。例如,到来的电话呼叫和文本可能中断运行的应用以向用户通知到来的呼叫或文本。
最广泛采用的移动OS是Google的安卓。尽管安卓(Android)是基于Linux的,但是其包括对内核的修改以及用于移动环境和移动处理器的其他OS层。具体地,Linux内核被设计用于x86CPU架构,而安卓内核被修改用于基于ARM的移动处理器。安卓设备驱动器还特别适合于设备中的通常存在于移动硬件架构中的设备,该移动硬件架构包括触摸屏、移动连接(GSM/EDGE、CDMA、Wi-Fi等)、电池管理、GPS、加速计和相机模块。
在安卓中,应用运行在面向对象应用框架上的Dalvik虚拟机内,该面向对象应用框架是对于移动硬件架构的存储器和处理器速度限制而特别设计的。通过安卓SDK开发用于Dalvik虚拟机的应用。另外,安卓不具有本地的X Window系统,也不支持标准GNU库的全集,并且这使得其难以将现有的GNU/Linux应用或库移植到安卓。
苹果的iOS操作系统(运行在iPhone上)和微软的Windows Phone7类似地被修改用于移动环境和移动硬件架构。例如,尽管iOS从Mac OS X桌面OS得到,但是普通的Mac OS X应用并不本地地在iOS上运行。具体地,通过SDK开发用于iOS的应用以运行在iOS的“Cocoa Touch”运行时间环境内,这提供了基本的应用基础结构并且支持诸如基于触摸的输入、推送通知和系统服务的关键iOS特征。因此,为Mac OS X而写的应用不通过iOSSDK移植它们无法在iOS上运行。另外,由于两个OS的用户库和应用框架层之间的差别以及移动和桌面硬件的系统资源上的差别,可能难以将Mac OSX应用移植到iOS。
由于处理要求、系统资源和应用开发的差别,对桌面OS开发的应用通常不在移动OS上运行。另外,桌面应用可能不能容易地移植到移动OS,因为它们被优化用于更大的屏幕面积、更大的处理速度、更大的系统存储器、不同的库和通常不同的GUI。因此,用户通常对于每个用户环境使用单独的计算设备,包括智能电话、平板计算机、膝上计算机和/或桌面计算机。在此实例中,每个设备具有其自己的CPU、存储器、文件存储区和OS。
智能电话和其他设备之间的连接性和文件共享涉及通过无线或有线连接将一个设备(例如运行移动OS的智能电话)连接到第二完全不同的设备(例如运行桌面OS的笔记本、桌面机或平板机)。通过同步分别运行在每个设备上的应用之间的数据而在设备之间共享信息。通常称为“同步”的此处理是麻烦的并且通常需要用户的主动管理。
近来,已经进行一些尝试来为单个移动计算设备提供更完整的用户体验。例如,智能电话可以连接到外部监视器和诸如全键盘的输入设备以提供更像桌面的用户体验,且移动OS图形用户界面延伸到更大的屏幕并且接受来自输入设备的输入。但是,因为外部监视器和输入设备仅仅是智能电话的操作系统和用户接口的延伸,因此,对接环境的性能仍受智能电话的移动OS限制。例如,在桌面OS上可用的许多软件应用在移动OS上不可用或者具有限制的功能性。因而,这些设备在连接到外部环境时不给出完全的桌面用户体验。
仍参考图1,计算环境100提供多个用户计算体验而没有以上限制。具体地,因为移动计算设备110包括多个OS,其中每个OS适合于具体的计算环境,所以移动计算设备110可以与外部设备适配以为单个移动计算设备提供广阔范围的用户体验。例如,用户可以具有移动计算设备110和当连接到移动计算设备110时提供膝上机的用户体验的第二终端环境140。在此实例中,当第二终端环境连接到移动计算设备110时,移动计算设备的桌面OS160与第二终端环境140相关联。对于用户,桌面OS160的全部性能通过第二终端环境140可用。
图2例示根据各个实施例的移动计算设备110的示例硬件系统架构。移动计算设备硬件112包括移动处理器114,该移动处理器114包括一个或多个CPU核204以及外部显示接口220。通常,移动计算设备硬件112还包括I/O设备118、存储器206、存储设备208、连接到触摸屏显示器116的触摸屏显示器控制器210、连接到电池216的电力管理IC214、蜂窝调制解调器218、通信设备222和/或通过各种通信信号和接口连接到处理器114的其他设备224。I/O设备118通常包括按钮以及可以在移动计算设备110中采用的其他用户接口组件。例如,I/O设备118可以包括一组按钮(例如后退、菜单、主页(home)、搜索等等)、离屏(off-screen)手势区、点击转盘、滚轮、QWERTY键盘等等。其他设备224可以包括例如GPS设备、LAN连接、麦克风、扬声器、相机、加速计和/或MS/MMC/SD/SDIO卡接口。外部显示接口220可以是任何适当的显示接口(例如VGA、DVI、HDMI等等)。
处理器114可以是基于ARM的移动处理器。在实施例中,移动处理器114是诸如Texas Instruments的OMAP3430、Marvell的PXA320、Freescale的iMX51或者Qualcomm的QSD8650/8250的基于ARM的移动处理器。但是,移动处理器114可以是另一适合的基于ARM的移动处理器或者基于诸如例如基于x86的处理器架构或者其他基于RISC处理器架构的其他处理器架构的处理器。
尽管图2例示了移动计算设备110的一个示例的硬件实现112,但是在本发明的范围内可构思其他架构。例如,图2中所示的在移动处理器114外部的各个组件可以被集成到移动处理器114中,可选地,在图2中示出为集成到移动处理器114中的外部显示接口220可以在移动处理器114外部。另外,采用系统总线、分离的图形处理器和/或其他架构变型的其他计算机架构适合于采用本发明的方面。
图3例示根据各个实施例的可以采用以在移动计算设备110上同时运行移动OS130和桌面OS160的OS架构300。如图3所示,移动OS130和桌面OS160是独立的操作系统。具体地,移动OS130和桌面OS160可能具有独立的并且不兼容的用户库和/或框架层。OS架构300的功能和指令可以作为计算机程序代码存储在移动计算设备100的有形计算机可读介质上。例如,用于OS架构300的指令可以存储在移动计算设备硬件112的存储设备208中。
如图3所示,移动OS130具有库层330、应用框架层340和应用层350。在移动OS130中,应用352和354运行在移动OS130的应用框架层340所支持的应用层350中。应用框架层340包括由运行在移动OS130上的应用使用的(一个或多个)管理器342和(一个或多个)服务344。例如,应用框架层340可以包括窗口管理器、活动性管理器、包管理器、资源管理器、电话管理器、手势控制器和/或用于移动环境的其他管理器和服务。应用框架层340可以包括移动应用运行时间环境,其执行为移动OS130开发的应用。移动应用运行时间环境可以被优化用于诸如较低处理功率或限制的存储器空间的移动计算资源。对于处理隔离、存储器管理和线程支持,移动应用运行时间环境可以依靠内核。库层330包括实现诸如I/O和串操纵的普通功能的用户库332(“标准C库”)、图形库、数据库、通信库和/或其他库。
如图3所示,桌面OS160具有库层360、框架层370和应用层380。在桌面OS160中,应用382和384运行在由桌面OS160的应用框架层370支持的应用层380中。应用框架层370包括由运行在桌面OS160上的应用使用的(一个或多个)管理器372和(一个或多个)服务374。例如,应用框架层374可以包括窗口管理器、活动性管理器、包管理器、资源管理器和/或对于桌面环境常见的其他管理器和服务。库层360可以包括实现诸如I/O和串操纵的普通功能的用户库362(“标准C库”)、图形库、数据库、通信库和/或其他库。
在本公开的各个实施例中,桌面OS160运行在与移动OS130分开的执行环境中。例如,移动OS130可以运行在根(root)执行环境中并且桌面OS160可以运行在根执行环境之下建立的第二执行环境中。运行在移动OS130上的处理和应用在根执行环境中访问用户库332、管理器342和服务344。运行在桌面OS160上的处理和应用在第二执行环境中访问用户库362、(一个或多个)管理器372和(一个或多个)服务374。
通常,为移动OS130开发的应用不直接在桌面OS160上运行,并且为桌面OS160开发的应用不直接在移动OS130上运行。例如,运行在桌面OS160的应用层380中的应用382可能与移动OS130不兼容,意味着应用382不能在移动OS130上运行。具体地,应用382可以使用在移动OS130中的应用框架层340中不可用的或者与应用框架层340中的(一个或多个)管理器342和(一个或多个)服务344不兼容的桌面OS160的应用框架层370的(一个或多个)管理器372和(一个或多个)服务374。另外,应用382可以尝试访问存在于桌面OS160的库层360中但是在移动OS130的库层330中不可用的或者与在库层330中可用的用户库332不兼容的用户库362。
在OS架构300中,移动OS130和桌面OS160同时运行在共享内核320上。这意味着,移动OS130和桌面OS160在相同时间时运行在共享内核320上。具体地,移动OS130和桌面OS160两者通过进行对共享内核320的系统调用而经过相同的内核接口322接口到共享内核320。共享内核320管理用于移动OS130和桌面OS160两者的处理的任务调度。在这点上,移动OS130和桌面OS160在共享内核320上独立地并且同时运行。另外,共享内核320直接运行在移动计算设备硬件112的移动处理器114上,如硬件接口312所示。具体地,共享内核320直接管理移动计算设备硬件112的计算资源,诸如CPU调度、存储器访问和I/O。在这点上,硬件资源不是虚拟化的,意味着移动OS130和桌面OS160通过内核接口322在没有虚拟化的存储器或I/O访问的情况下进行系统调用。
存在几种已知的技术用于在相同的计算设备上提供多个OS。但是,这些技术都没有提供同时并独立地在共享内核上运行的多个不同的OS。更具体地,这些技术都没有提供对于运行在共享内核上的移动OS和桌面OS的解决方案。
在称为双引导的一个技术中,多个OS一次一个地被加载在计算设备上。例如,在引导时间,用户可以从多个可用的OS选择一个OS以在设备上运行,其中每个OS具有其自己的内核、库、框架和应用。然后系统引导到该操作系统并且其他OS不运行(即不与运行的OS同时加载其他OS的处理)。因此,此技术不在共享内核上运行多个OS,此技术也不同时运行多个OS。
用于在相同的设备上运行多个OS的另一技术是使用虚拟机管理器(“VMM”)或者“管理程序(Hypervisor)”。VMM或管理程序直接在硬件上运行,并且将每个OS的各自的内核与硬件分离,控制在任意给定时间哪些计算机硬件资源对每个OS可用。管理程序从一个设备有效地创建多个虚拟机,以便每个OS看到单独的虚拟机。因此,经过管理程序和VMM而运行在相同的设备上的多个OS不会运行在共享内核上。由于每个OS需要通过管理程序中的虚拟化访问系统资源,因此管理程序增加了系统开销。另外,因为管理程序必须分配CPU和其他计算资源,因此每个OS可能不能有效地调度处理和任务。
用于在相同的设备上运行多个OS的另一技术是使用主机容纳的(hosted)虚拟机。在此技术中,每个OS具有其自己的内核,访客(guest)OS的内核运行在主机OS中的虚拟机上。此虚拟机可以是与物理硬件平台不同的虚拟化的硬件平台。主机OS中的虚拟机可以实现在主机OS的内核中,在此实例中,主机OS的内核担当管理程序,通过该管理程序,访客OS的内核访问处理器和硬件资源。在此技术中无论虚拟机在哪里实现,主机OS和访客OS都具有单独的内核。因此,主机容纳的虚拟机不具有在共享内核上运行的多个OS。由于用于访客OS的硬件资源的虚拟化,因此使用此技术的系统性能可能降低。
虚拟化的另一形式是操作系统级虚拟化。在此技术中,可以在操作系统的内核上创建多个隔离的用户空间实例,从每个用户空间实例的用户的观点来看,这看起来像是分离的OS实例。在此技术中,主机OS和访客OS必须是相同的OS。因而,此技术不提供对于独立地并同时运行在共享内核上的移动OS和桌面OS的解决方案。此外,对于主机容纳的虚拟机类似地,此技术对于访客OS使用碟空间和存储器虚拟化。因而,此技术不为每个并行的OS提供对存储器和系统资源的访问。
运行多个OS的这些技术具有关于同时并独立地运行操作系统的限制。例如,性能化设计为访客OS设置不同的地址空间并且模拟到访客OS的I/O。因此,对包括系统存储器的硬件的访问具有用于使用虚拟化的访客OS的更高的系统开销。另外,使用管理程序的技术导致在每个OS的处理控制时缺少确定性。具体地,管理程序管理分配给每个OS的CPU时间量,并且每个OS然后分配CPU时间用于OS内的处理,而不知道其他OS中正发生什么。在这点上,一个OS内的高优先级处理可能未被给予所需的CPU时间来完成其任务,因为OS正通过管理程序共享CPU时间,这不能解决在每个OS内运行的处理的相对优先级。因为相对于桌面处理器架构,在移动处理器架构中可能限制处理功率,所以依赖于包括管理程序和操作系统级虚拟化的虚拟化的技术可能不能提供对于与移动处理器上的移动OS同时运行的桌面OS的最佳性能。
在符合OS架构300的一个实施例中,安卓移动OS和全Linux OS独立并同时运行在修改的安卓内核上。在此实施例中,安卓OS可以是修改的安卓发布,而Linux OS(“Hydroid”)是修改的Debian Linux桌面OS。图4-6更详细地例示根据各个实施例的可以在OS架构300中采用的安卓移动OS430、安卓内核520和Hydroid OS660。
如图4所示,安卓OS430包括通过应用框架层440来访问的库层432中的一组C/C++库。库层432包括被开发具体用于安卓以比“glibc”Linux C库更小并且更快的“仿生(bionic)”系统C库439。库层432还包括处理间通信(“IPC”)库436,其包括用于安卓OS的“绑定器(Binder)”IPC机制的基类。绑定器被开发具体用于安卓以允许处理和服务之间的通信。在图4中的库层432中示出的其他库包括支持媒体格式的记录和回放的媒体库435、管理从多个应用到显示子系统和合成图形层的访问的表面管理器434、2D和3D图形引擎438以及轻量级相关数据库引擎437。可以在库层432中包括但是未在图4中绘出的其他库包括位图和矢量字体呈现库、实用程序库、浏览器工具(即WebKit等)和/或安全通信库(即SSL等)。
安卓OS430的应用框架层440提供了允许开发者使用设备硬件的组件、访问位置信息、运行后台服务、设置警报、向状态条添加通知等的开发平台。框架层440还允许应用公布其性能以及利用其他应用的公布的性能。安卓移动OS430的应用框架层440的组件包括活动性管理器441、资源管理器442、窗口管理器443、对接管理器444、硬件和系统服务445、桌面监视服务446、多显示器管理器447和远程通信服务448。除了其他管理器和服务之外,可以在安卓移动OS430的框架层440中包括的其他组件包括查看系统、电话管理器、包管理器、位置管理器和/或通知管理器。
运行在安卓OS430上的应用在安卓面向对象的应用框架之上的安卓运行时间环境433中的Dalvik虚拟机431内运行。Dalvik虚拟机431是基于登记的虚拟机,并且运行被设计为降低存储器使用和处理要求的紧凑可执行格式。运行在安卓OS430上的应用包括主页屏幕451、电子邮件应用452、电话应用453、浏览器应用454和/或(一个或多个)其他应用(“App”)455。
由于这些原因,为安卓而写的应用通常不在Hydroid OS660上运行,并且为标准Linux发布而写的应用通常不在安卓OS430上运行。在这点上,用于安卓OS430和Hydroid OS660的应用不是字节码兼容的,意味着用于一者的编译的并可执行的程序不在另一者上运行。
图5更详细地例示根据各个实施例的修改的安卓内核520。修改的安卓内核520包括触摸屏显示器驱动器521、(一个或多个)相机驱动器522、(一个或多个)蓝牙驱动器523、共享存储器分配器524、(一个或多个)IPC驱动器525、(一个或多个)USB驱动器526、(一个或多个)WiFi驱动器527、(一个或多个)I/O设备驱动器528和/或电力管理模块530。(一个或多个)I/O设备驱动器528包括用于外部I/O设备的设备驱动器,外部I/O设备包括可以通过端口120连接到移动计算设备110的设备。修改的安卓内核520可以包括其他驱动器和功能块,包括低内存管理器(low memory killer)、内核调试器、记录能力和/或其他硬件设备驱动器。
图6更详细地例示根据各个实施例的Hydroid OS600。Hydroid是能够运行为标准Lunix发布开发的几乎任何应用的全Linux OS。具体地,Hydroid OS660的库层662包括支持联网、图形处理、数据库管理和其他普通程序功能的Linux库。例如,用户库662可以包括标准Linux C库(glibc)664、Linux图形库662(例如GTK等)、Linux实用程序库661、Linux数据库和/或其他Linux用户库。应用使用X-服务器674、窗口管理器673和/或桌面环境672在X-Windows Linux图形环境内的Hydroid上运行。例示的应用包括文字处理器681、电子邮件应用682、电子数据表格(spreadsheet)应用683、浏览器684和(一个或多个)其他应用685。
在一个实施例中,Hydroid OS600包括促进通过共享内核520与安卓OS430的通信的交叉环境通信框架的组件。这些组件包括IPC库663,该IPC库663包括用于安卓OS的绑定器IPC机制和远程通信服务671的基类。
在一个实施例中,Hydroid OS660运行在安卓根环境内的改变根目录的(chrooted)(以“改变根目录(chroot)”命令创建的)第二执行环境内。HydroidOS660内的处理和应用在该第二执行环境内运行,以便这些处理和应用看到的表象根目录是第二执行环境的根目录。以此方式,Hydroid OS660可以不用修改地运行为标准Linux发布而写的程序,因为在改变根目录的第二执行环境中,Linux用户库662对于在Hydroid OS660上运行的处理可用。
本发明的实施例涉及自动配置移动计算设备110以利用各种第二终端环境来提供对于每个第二终端环境的适当用户体验。配置移动计算设备110用于具体第二终端环境涉及将移动OS130和/或桌面OS160配置到第二终端环境,以便为用户呈现提供了最适合于该环境的用户体验的OS、GUI和应用。回去参考图1,移动计算设备110将移动OS130或桌面OS160与通过端口120连接到移动计算设备110的第二终端环境140相关联。相关联的OS被配置为通过端口120驱动第二终端环境的显示设备(例如设备144)并且处理通过端口120来自第二终端环境140的(一个或多个)输入设备(例如设备146和148)的输入命令。
依赖于构成第二终端环境的I/O设备,第二终端环境可以具有各种使用模型。例如,一些第二终端环境可以具有与移动OS130的GUI和应用相关联的用户体验简档(profile)。例如,第二终端环境可以包括作为输出设备的显示器、以及作为主要输入设备的键盘和指向设备。这种类型的第二终端环境可以具有与桌面OS160的GUI和应用相关联的用户体验简档。作为另一例子,第二终端环境可以包括用作显示器和主要输入设备两者的触摸屏。这种类型的第二终端环境可以具有与移动OS130的GUI和应用相关联的用户体验简档。
一个第二终端环境是平板型第二终端环境。平板型第二终端环境包括被用作显示器和主要输入设备的触摸使能的显示屏。通常,平板型第二终端环境具有比移动计算设备110的触摸屏114更大的触摸屏面积。尽管具有比移动计算设备110更大的触摸屏面积,但是平板型第二终端环境通常具有与移动OS130的GUI和应用相关联的用户体验。例如,相比于桌面OS GUI,用户更习惯于在平板型第二终端环境上使用诸如安卓OS430的GUI移动OSGUI。具体地,可以在平板型第二终端环境上使用在触摸屏116上使用的相同的手指手势和虚拟键盘输入来与安卓OS430交互(interface)。在称为“智能平板”的一个实施例中,平板型第二终端环境包括10.1英寸对角的(1280×800分辨率)触摸使能的显示屏、标准组的按钮(例如后退、菜单、主页、搜索等)、(一个或多个)相机和离屏手势区。
另一类型的第二终端环境是膝上型或者笔记本型第二终端环境。笔记本型第二终端环境通常包括在对折壳(clamshell)外壳中的键盘、显示器、指向设备和/或其他设备。参考图1,笔记本型第二终端环境可以包括在包括用于通过接口122与移动计算设备110通信的接口142的对折壳外壳中的键盘144、显示器146和指向设备148。在实施例中,膝上型或者笔记本型第二终端环境可以称为“智能显示器”或者“LapDock(膝上型坞)”。因为此类型的第二终端环境包括更大的显示器、键盘和指向设备,其通常具有与诸如Hydroid OS600的桌面OS而不是诸如安卓OS430的移动OS相关联的用户体验简档。在一个实施例中,对接插孔称为“智能坞(Smart Dock)”。
移动计算设备110还可以通过对接连接器或者其他接口(即“更新坞(Update Dock)”)连接到另一计算设备(例如膝上型、桌面型等等)。此配置中的其他计算设备不是第二终端环境,而是具有其自己的操作系统和应用。在这点上,更新坞是将移动计算设备110连接到另一计算设备、例如膝上计算机或者桌面计算机的方式。此配置可能在移动计算设备110正被更新时或者用户希望在移动计算设备110和该其他计算设备之间传输数据时最有帮助。
图7例示使用OS架构300结合各种第二终端环境和外部计算设备的用于移动计算设备100提供适当的用户体验的示例配置处理流程700。在配置处理流程700中,移动计算设备110自动检测其何时与第二终端环境对接并配置移动OS130或桌面OS160以通过对接的第二终端环境提供适当的用户体验。
在配置处理流程700的阶段702,移动计算设备119被关闭。在阶段704,移动计算设备110被通电,并且在移动计算设备1120上引导OS架构300的组件。例如,用户可以经由开关或按钮开启移动计算设备110。
图8例示可以用于在配置处理流程700的阶段704引导OS架构300的组件的示例引导过程800。引导过程800开始于步骤802,这时系统经由硬件通电。
在步骤804,利用从硬件或固件传递的引导变量,在存储器(RAM)中加载引导加载器。在步骤806,引导加载器设置根文件系统。在步骤808,引导加载器配置存储器和网络支持。在此步骤中,引导加载器还可以配置调制解调器支持、低存储器(内存)保护和安全选项。在步骤810,引导加载器查找共享内核320并将其加载到存储器,在需要时传递内核变量。引导加载器开始共享内核320,在该点时,共享内核320接管引导过程的控制。在一个实施例中,共享内核320是修改的安卓内核。
在步骤812,共享内核320初始化硬件设备的驱动器。在此步骤,共享内核320还初始化存储器保护、虚拟存储器模块和调度缓存。在步骤814,共享内核320初始化移动OS。在一个实施例中,共享内核运行用户空间初始化处理以初始化安卓OS430。初始化处理读取描述对于安卓OS的系统服务和另外的系统参数的配置文件。在步骤816,移动OS框架启动,这通常包括启动运行时间环境。在一个实施例中,安卓的根处理Zygote通过初始化处理运行,并且初始化Dalvik Java机器运行时间环境。在步骤818,用于移动OS的(一个或多个)服务344启动。用于移动OS的(一个或多个)服务344通常包括电话服务、相机服务、GPS服务和/或通信服务。在一个实施例中,Zygote启动安卓OS430的主安卓系统服务器,该主安卓系统服务器启动诸如电话、相机、蓝牙等的安卓服务。
在步骤820,桌面OS被初始化。在一个实施例中,安卓OS430的初始化处理解析第二配置文件,并且执行命令,并运行在第二配置文件中配置的服务。在步骤822,在移动OS中启动桌面监视服务446,该桌面监视服务446启动并监视桌面OS。在一个实施例中,在安卓OS430中启动桌面监视服务446。在步骤824,桌面监视服务建立用于桌面OS的单独的执行环境。在一个实施例中,桌面监视服务446使用Linux chroot(改变根目录)命令来设置在Hydroid OS660的根文件系统内的该单独的执行环境。用于桌面OS的单独的执行环境允许例如桌面OS具有与移动OS不同的用户库。在一个实施例中,Hydroid OS660的用户库662在安卓OS430的用户库432的单独的执行环境中。具体地,每个OS中的应用和程序可以静态地或者动态地单独链接到每个OS内的库,而没有链接冲突或者库兼容性问题。在步骤826,桌面监视服务启动(一个或多个)桌面OS服务374。在一个实施例中,这包括Hydroid OS660的X-窗口系统674和Xfce桌面环境672。
在阶段704引导OS架构之后,配置处理流程700前进到阶段706。在阶段706,移动OS130和桌面OS160同时运行在共享内核320上。如图7中所示,在阶段706,移动计算设备110未对接到第二终端环境。
在OS架构300中,移动OS130的服务对对接事件反应,控制桌面OS的挂起和恢复,并且配置移动OS130或桌面OS160用于对接的第二终端环境。在一个实施例中,安卓OS430的桌面监视服务446对对接事件反应,挂起或者恢复Hydroid OS660,并且配置安卓OS430或者Hydroid OS660用于对接的第二终端环境。在此实施例中,共享内核520中的实现硬件接口的(一个或多个)I/O设备驱动器528检测对接事件将该对接事件提供给输入模块。然后输入模块将该对接事件通知给安卓OS430的服务。输入模块通过安卓事件集线器(Android Event Hub)将该事件放入安卓OS430的输入队列中。桌面监视服务446接收事件通知并且配置安卓OS430和/或Hydroid OS160以通过对接的第二终端环境提供适当的用户体验。
在各个实施例中,移动OS130设置标志(DDOS_FLAG)以指示移动计算设备110是否与适合于桌面OS的第二终端环境对接。“对接用于桌面OS”标志可以是移动OS130或者共享内核320中的标志。在一个实施例中,“对接用于桌面OS”标志是可以通过实例化的(instantiated)远程IPC对象来访问的安卓OS430中的标志。当移动计算设备110与适合于桌面用户体验的用户体验的第二终端环境对接时,“对接用于桌面OS”标志被赋值(assert)(布尔值为真)。如果“对接用于桌面OS”标志未被赋值(布尔值为假),则移动计算设备110被认为未与适合于桌面用户体验的第二终端环境对接。
回去参考图1,“对接用于桌面OS”标志指示移动OS130或者桌面OS160是否与第二终端环境140的(一个或多个)输入设备144、146和/或148相关联。如果“对接用于桌面OS”标志被赋值,则桌面OS160与第二终端环境140的(一个或多个)输入设备144、146和/或148相关联。如果“对接用于桌面OS”标志未被赋值,则移动OS130与第二终端环境140的显示设备和(一个或多个)输入设备144、146和/或148相关联。
图9例示当移动计算设备100未对接到第二终端环境时对应于OS架构300的OS架构配置300a。例如,在配置处理流程700的步骤706。从用户的观点来看,OS架构配置300a对应于通常的移动计算体验,其中用户通过触摸屏显示器116和移动计算设备硬件112的其他用户接口组件与移动OS130的GUI交互。来自触摸屏显示器116和其他用户接口组件118的输入命令通过触摸屏显示设备驱动器922和其他设备驱动器(未在图9中例示)被翻译用于对移动OS130的输入。
在OS架构配置300a中,桌面OS160处于挂起状态。在桌面OS160被挂起的同时,桌面OS160的处理和服务被挂起。但是,当移动OS160被恢复时,移动OS160内的处理和服务从其停止处恢复,并且不丢失在其被挂起时它们在移动OS160中正进行工作的数据。在一些实施例中,当移动OS160被挂起时,移动OS160的挂起的处理和服务的当前状态被写到碟。
在移动OS160处于被挂起状态时,移动OS160的守护进程(daemonprocess)974继续运行在共享内核320上。守护进程974可以进行诸如联网和/或进行其他后台任务的后台功能。守护进程974还可以维持在桌面OS160中正运行的和挂起的处理id的列表。在一些实施例中,守护进程974可以被进行这些功能的服务替代。
桌面监视服务944通过共享内核320中的IPC通道与守护进程874通信。在实施例中,IPC通道包括共享内核320中的IPC驱动器926。守护进程974登记以通过IPC通道的实例化的IPC协议来接收通信。桌面监视服务446使用实例化的IPC协议以通过IPC驱动器525将消息传递到守护进程974。在一个实施例中,桌面监视服务944通过交叉环境通信框架与守护进程974通信。交叉环境通信框架包括安卓OS430的IPC库433、Hydroid OS660的IPC库663和安卓内核520的IPC驱动器525。IPC库433和663提供了用于交叉环境通信的IPC协议的实例的基类。在联合未决的美国专利申请No.XX/XXX,XXX、代理人Dkt.No.50224-01308、提交日*的题为“Cross-Environment Communications Framework”中更详细地描述了交叉环境通信框架的实施例,其全部内容通过引用合并于此。
从配置处理流程700的阶段706,移动计算设备110可以对接到各种第二终端环境。图10例示了当对接事件发生时桌面监视服务446遵循的处理流程1000。处理流程1000开始于步骤1002,这时移动计算设备100被对接到第二终端环境。在步骤1002,桌面监视服务446接收事件通知,并且前进到步骤1004。
在步骤1004,桌面监视服务446确定对接的第二终端环境的用户体验简档是否与移动OS或桌面OS相关联。在一个实施例中,用于通过端口120将移动计算设备110连接到第二终端环境140的对接连接器包括指示第二终端环境140的用户体验简档的机械或电学特征。例如,移动计算设备110可以通过端口120接收通过电压电平或者信号电压电平系列来指示第二终端环境140的用户体验简档是否与安卓OS430或者Hydroid OS160相关联的电信号。在其他实施例中,桌面监视服务446可以从构成第二终端环境140的I/O设备144、146和/或148的预定标准来确定用户体验简档。例如,包括被用作显示器和主要输入设备的触摸屏的平板型第二终端环境的用户体验简档可以与安卓OS430相关联。作为另一例子,如果第二终端环境140包括具有比预定值更大的显示器大小或分辨率的显示监视器,则第二终端环境140可以被确定为具有与Hydroid OS160相关联的用户体验简档。
第二终端环境的用户体验简档还可以是用户可选择的。例如,用户可以将I/O设备144、146和/或148的具体标准与关联于安卓OS430或者HydroidOS160的用户体验简档相关联。例如,用户可以将具体I/O设备或I/O设备的组合与关联于Hydroid OS160的桌面用户体验简档相关联。
第二终端环境的用户体验简档还可以是动态可配置的。例如,桌面监视服务446可以基于用户对于第二终端环境的用户体验的过去的选择而建议对于第二终端环境的用户体验简档。然后,桌面监视服务可以使用用户对于提出的用户体验简档的响应来更新用于确定建议的用户体验简档的标准。
如果在步骤1004,桌面监视服务446确定对接的第二终端环境具有与安卓OS430相关联的用户体验简档,则桌面监视服务446前进到步骤1006。在一个实施例中,来自对接的第二终端环境的对接连接器的电信号指示对接的第二终端环境的用户体验简档与安卓OS430相关联。在步骤1006,桌面监视服务446将“对接用于桌面OS”标志设置为假。桌面监视服务446然后前进到步骤1008,在那里,安卓OS430被配置用于对接的第二终端环境。
在一个实施例中,安卓OS430被配置为将其GUI重新指向到第二终端环境的显示器,同时使移动计算设备110上的触摸屏显示器116停用。在此实施例中,包括GUI和可见的应用和任务的显示信息被配置并重新指向到第二终端环境的显示器。
图11例示根据各个实施例用于将安卓OS430配置到第二终端环境的显示器的处理流程1100。配置处理流程1100开始于步骤1102,这时发生与平板型第二终端环境的对接事件。该对接事件被窗口管理器443派送到多显示器管理器447。在步骤1104到1108,多显示器管理器447调用活动性管理器已将所有可见的任务设置为不可见。在步骤1104,活动性管理器441遍历(traverse)任务堆栈,并且对于每个可见的任务,窗口管理器443被调用以将该任务的可见性设置为假。在步骤1106,窗口管理器443调用表面管理器431以释放与任务相关联的表面。在步骤1108,位图服务器缓存用于在步骤1106释放的表面的表面数据。对于所有可见的任务进行步骤1104到1108。在步骤1110,多显示器管理器447调用手势控制器以破坏为动画目的而保持的表面。
在步骤1112,多显示器管理器447调用表面管理器431来将显示输出重新指向到对接的第二终端环境的显示器。表面管理器431经端口112将经过显示驱动器的显示输出转移到显示输出。表面管理器431然后重新初始化其显示信息(例如显示器的数量、合成显示、显示尺寸、dpi等)。在步骤1114,显示控制器类被重新初始化并且从表面管理器431取回新的显示配置。在步骤1114,多显示器管理器447还重新建立可用显示器的映射。在步骤1116,多显示器管理器447重新建立其虚拟显示空间以便触摸事件可以被映射到第二终端环境显示器的恰当的坐标。
在步骤1118,表面管理器431触发方位(orientation)改变并且向窗口管理器443和活动性管理器441发送通知。在步骤1120,所有任务被活动性管理器441通知方位改变,并且从显示控制器取回对于它们正运行在其上的显示器的新的显示配置信息。
在步骤1122,多显示器管理器447调用活动性管理器441来将顶部任务设置为可见。还在步骤1122,活动性管理器441检查其任务堆栈以确定哪些任务先前可见。窗口管理器443被调用用于必须变得可见的每个任务。在步骤1124,窗口管理器443调用表面管理器431以创建新的表面来匹配第二终端环境的显示器的显示尺寸。在步骤1126,为每个任务(应用)呈现用户界面,并且该用户界面变得在第二终端环境的显示器上可见。
在处理流程1100完成之后,安卓OS430被配置用于第二终端环境并且安卓OS HUI被显示在第二终端环境的显示器上,如处理流程110的步骤1100所示。在处理流程1100的此步骤,用户可以经过对接的第二终端环境的显示器和I/O设备与安卓OS430交互。
返回参考图10的步骤1004,桌面监视服务944评估对于对接的第二终端环境的用户简档。如果桌面监视服务944确定对接的第二终端环境具有与桌面OS160相关联的用户体验简档,则桌面监视服务944前进到步骤1012。在一个实施例中,来自对接的第二终端环境的对接连接器的电信号指示其具有与桌面OS160相关联的用户体验简档。在步骤1012,桌面监视服务944将“对接用于桌面OS”标志设置为真。桌面监视服务944然后前进到步骤1014,在那里,桌面OS160被配置用于对接的第二终端环境。在此步骤,用于桌面OS160的帧缓冲器918被配置用于对接的第二终端环境的显示器的显示分辨率。然后桌面监视服务前进到步骤1016,在那里,桌面OS160的GUI被显示在第二终端环境上。当处理流程1000在步骤1016完成时,通过对接的第二终端环境为用户呈现桌面OS160的计算体验。
回去参考图7,在阶段708,移动计算设备110可以对接到平板型第二终端环境。图12例示根据各个实施例的其中在处理流程700的阶段708中移动计算设备110与平板型第二终端环境对接的OS架构配置300b。平板型第二终端环境1240包括端口1242、触摸屏显示器1244和其他I/O设备1246。
在OS架构配置300b中,移动OS130与平板型第二终端环境1140相关联,而桌面OS160被挂起。移动OS帧缓冲器916被配置用于触摸屏显示器1244的分辨率,并且通过端口120将视频信号驱动到触摸屏显示器1244。来自第二终端环境1240的I/O设备1246的输入命令通过端口120输入到移动计算设备110并且由I/O设备驱动器924处理。包括窗口管理器942的移动OS130的组件然后接受该输入命令。以此方式,在OS架构配置300b中通过平板型第二终端环境1240为用户呈现移动OS130的移动计算体验。
回去参考图7,在阶段710,移动计算设备110可以对接到构成通常的桌面计算环境的各种普通的输入/输出设备外围。例如,移动计算设备110可以通过坞座(dock cradle)或者“智能坞”与显示器、键盘和指向设备对接。图13例示了OS架构配置300c,其中在阶段710中移动计算设备110与构成通常的桌面计算环境的第二终端环境1340对接。第二终端环境1340包括端口1342、显示监视器1344、键盘1346和/或指向设备1348。
在OS架构配置300c中,移动OS130与包括触摸屏显示器116和其他I/O设备118的移动计算设备110的I/O设备相关联。具体地,移动OS130通过于移动OS130相关联的帧缓冲器916驱动触摸屏显示器116。触摸屏驱动器922接收来自触摸屏显示器116的输入命令,并产生由窗口管理器942和移动OS130的其他组件处理的事件。
桌面OS160通过端口120与第二终端环境1340相关联。具体地,桌面OS160通过与Hydroid OS160相关联的帧缓冲器918来驱动显示监视器1344。(一个或多个)I/O设备驱动器924接收来自第二终端环境1340的(一个或多个)输入设备的输入命令。因为移动OS130和桌面OS160正同时运行在共享内核320上,所以由(一个或多个)I/O设备驱动器924接收的输入命令在共享内核320中对于移动OS130和桌面OS160两者可用。
如上所述,“对接用于桌面OS”标志确定移动OS130还是桌面OS160处理来自附连的I/O设备的输入命令,所述附连的I/O设备诸如图13中所示的键盘1346和(一个或多个)指向设备1348。如果“对接用于桌面OS”标志被赋值,则桌面OS160将接收来自附连的I/O设备(例如键盘1346和(一个或多个)指向设备1348)的输入命令,并且移动OS130将忽略这些输入命令。可替换地,如果“对接用于桌面OS”标志未被赋值,则移动OS130将接收来自附连的I/O设备的输入命令,并且桌面OS160将忽略这些输入命令。
参考图14,更详细地描述“对接用于桌面OS”标志对移动OS130的输入/输出的影响。图14例示了当新设备连接到移动计算设备110时移动OS130遵循的处理流程1400。在处理流程1400的步骤1410,检测到新的设备。例如,当键盘连接到移动计算设备110时,在共享内核320中其可能看起来是新设备。在一个实施例中,它出现在安卓内核520中的节点/dev/kb0处。在步骤1412,移动OS检查以查看“对接用于桌面OS”标志是否被赋值。如果“对接用于桌面OS”标志被赋值(即,是真),则移动OS130在步骤1414检查设备配置文件以确定检测到的设备的类型是否通常与桌面用户体验相关联。例如,键盘和指向设备是通常与桌面用户体验相关联的设备类型的。如果在步骤1416移动OS130确定输入设备是通常与桌面用户体验相关联的设备类型,则在步骤1418,移动OS130忽略来自该设备的输入命令。如果在步骤1412“对接用于桌面OS”标志未被赋值,则在步骤1420移动OS130将接收来自该设备的输入命令。另外,如果设备的类型不是通常与桌面用户体验相关联的,如在设备配置文件中所述,则移动OS130将从步骤1416前进到在步骤1420接受来自该设备的输入命令。
回去参考图7,在阶段710,“对接用于桌面OS”(即,DDOS_FLAG)被赋值。与处理流程700的阶段710一致,在OS架构配置300c中,“对接用于桌面OS”标志被赋值。因而,包括窗口管理器972的桌面OS160接收来自与诸如键盘1346和(一个或多个)指向设备1348的第二终端环境1340的(一个或多个)外部I/O设备交流的I/O设备驱动器924的输入命令。如上所述,当“对接用于桌面OS”标志被赋值时,移动OS130忽略来自与第二终端环境1340相关联的外部I/O设备的输入命令。
图15示出根据各个实施例的其中可以采用OS架构配置300c的示例计算环境1500。在计算环境1500中,移动OS130通过移动计算设备110的I/O设备提供了移动计算体验。具体地,用户可以通过触摸屏116上的移动OS GUI和集成在移动计算设备110的移动计算设备硬件112中的其他I/O设备118而交互。移动OS GUI132可以是例如安卓OS430的GUI。
同时,桌面OS160通过第二终端环境1340提供了完整的桌面计算体验。如图5中所示,第二终端环境1340包括坞座1341。坞座1341包括通过接口122连接到移动计算设备的端口1342(未示出)。坞座1341通过接口1343连接到显示监视器1344、键盘1346和/或(一个或多个)指向设备1348。图14例示桌面OS GUI162被显示在第二终端环境1340的显示监视器1344上。运行在桌面OS160上的应用382和384可以被显示在桌面OS GUI162内的应用窗口1582、1584和/或1586中。桌面OS GUI162可以是例如Hydroid OS660的GUI。
回去参考图7,在阶段712,移动计算设备110可以对接到膝上型或者笔记本型第二终端环境。如上所述,膝上型或者笔记本型第二终端环境具有与诸如Hydroid OS660的桌面OS相关联的用户体验简档。在这点上,对于膝上型或者笔记本型第二终端环境的移动计算设备110的配置类似对于图12中所示的OS架构配置300c所示的配置。如在处理流程700的阶段712所示,“对接用于桌面OS”标志被赋值。因而,在阶段712,桌面OS160与对接的第二终端环境相关联,并且移动OS130忽略来自对接的第二终端环境的输入设备的输入命令。
还如处理流程700中所示,在阶段714移动计算设备110可以对接到单独的计算设备,用于更新OS架构300或者在移动计算设备110和该单独的计算设备之间传输数据。在阶段714,“对接用于桌面OS”标志未被赋值。
从阶段706、708、710、712和/或714的任意一个,移动计算设备110可以通过阶段716被断电到阶段702中的关闭状态。因而,处理流程700描述了移动计算设备110使用运行在共享内核320上的移动OS130和/或桌面OS160,利用几个不同的计算环境来提供适当的用户体验的自动配置。
如上所述,在一个实施例中,安卓移动OS和Linux桌面OS(“Hydroid”)同时运行在单个移动计算设备的同一共享内核上。安卓移动OS通过移动计算硬件提供移动计算体验,并且Linux桌面OS通过具有与Linux OS相关联的用户体验简档的第二终端环境提供桌面计算体验。但是,在本发明的各个实施例之内构思其他OS组合。例如,本发明的各个方面可以用于在共享内核或者共享的公共内核模式处理上运行Windows Mobile和Windows7。作为另一例子,运行在共享内核上的iOS和Mac OS X也在各个实施例的范围内。此外,可以有利地通过在共享内核上运行的嵌入式OS和桌面或移动OS的组合来使用本发明的方面。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本发明的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
以上所述的方法的各个操作可以通过能够进行相应的功能的任何适当的手段而进行。该手段可以包括各种硬件和/或软件组件和/或模块,包括但不限于电路、专用集成电路(ASIC)或处理器。
可以利用被设计用于进行在此所述的功能的通用处理器、数字信号处理器(DSP)、ASIC、场可编程门阵列信号(FPGA)或其他可编程逻辑器件(PLD)、离散门或晶体管逻辑、离散的硬件组件或者其任意组合而实现或进行所述的各个例示的逻辑块、模块和电路。通用处理器可以是微处理器,但是作为替换,该处理器可以是任何商业上可获得的处理器、控制器、微控制器或状态机。处理器还可以实现为计算设备的组合,例如DSP和微处理器的组合,多个微处理器、与DSP核协作的一个或多个微处理器或任何其他这样的配置。
结合本公开描述的方法或算法的步骤可以直接嵌入在硬件中、处理器执行的软件模块中或者这两种的组合中。软件模块可以存在于任何形式的有形存储介质中。可以使用的存储介质的一些例子包括随机存取存储器(RAM)、只读存储器(ROM)、快闪存储器、EPROM存储器、EEPROM存储器、寄存器、硬碟、可移动碟、CD-ROM等。存储介质可以耦接到处理器以便该处理器可以从该存储介质读取信息以及向该存储介质写信息。在替换方式中,存储介质可以与处理器是整体的。软件模块可以是单个指令或者许多指令,并且可以分布在几个不同的代码段上、不同的程序之间以及跨过多个存储介质。
在此公开的方法包括用于实现所述的方法的一个或多个动作。方法和/或动作可以彼此互换而不脱离权利要求的范围。换句话说,除非指定了动作的具体顺序,否则可以修改具体动作的顺序和/或使用而不脱离权利要求的范围。
所述的功能可以按硬件、软件、固件或其任意组合而实现。如果以软件实现,功能可以作为一个或多个指令存储在切实的计算机可读介质上。存储介质可以是可以由计算机访问的任何可用的切实介质。通过例子而不是限制,这样的计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光碟存储、磁碟存储或其他磁存储器件或者可以用于携带或存储指令或数据结构形式的期望的程序代码并且可以由计算机访问的任何其他切实介质。如在此使用的,碟(disk)和盘(disc)包括紧凑盘(CD)、激光盘、光盘、数字通用盘(DVD)、软碟和蓝光盘,其中碟通常磁地再现数据,而盘利用激光光学地再现数据。
因此,计算机程序产品可以进行在此给出的操作。例如,这样的计算机程序产品可以是具有有形存储(和/或编码)在其上的指令的计算机可读的有形介质,该指令可由一个或多个处理器执行以进行在此所述的操作。计算机程序产品可以包括包装的材料。
软件或指令也可以通过传输介质而传输。例如,可以使用诸如同轴电缆、光纤光缆、双绞线、数字订户线(DSL)或诸如红外、无线电或微波的无线技术的传输介质从网站、服务器或者其他远程源传输软件。
此外,用于进行在此所述的方法和技术的模块和/或其他适当的手段可以在适当时由用户终端和/或基站下载和/或其他方式获得。例如,这样的设备可以耦接到服务器以促进用于进行在此所述的方法的手段的传送。或者,在此所述的各种方法可以经由存储部件(例如RAM、ROM、诸如CD或软碟等的物理存储介质)提供,以便用户终端和/或基站可以在耦接到该设备或者向该设备提供存储部件时获得各种方法。此外,可以利用用于将在此所述的方法和技术提供给设备的任何其他适当的技术。
其他例子和实现方式在本公开和所附权利要求的范围和精神内。例如,由于软件的本质,以上所述的功能可以使用由处理器、硬件、固件、硬连线或这些的任意的组合执行的软件实现。实现功能的特征也可以物理地位于各个位置,包括被分发以便功能的部分在不同的物理位置处实现。而且,如在此使用的,包括在权利要求中使用的,在以“至少一个”开始的项的列举中使用的“或”指示分离的列举,以便例如“A、B或C的至少一个”的列举意味着A或B或C,或AB或AC或BC,或ABC(即A和B和C)。此外,措辞“示例的”不意味着描述的例子是优选的或者比其他例子更好。
可以不脱离由所附权利要求定义的教导的技术而进行对在此所述的技术的各种改变、替换和更改。此外,本公开的和权利要求的范围不限于以上所述的处理、机器、制造、事件的组成、手段、方法和动作的具体方面。可以利用与在此所述的相应方面进行基本相同的功能或者实现基本相同的结果的当前存在的或者稍后要开发的处理、机器、制造、事件的组成、手段、方法或动作。因而,所附权利要求包括在其范围内的这样的处理、机器、制造、事件的组成、手段、方法或动作。

Claims (19)

1.一种用于配置移动计算设备的接口端口的方法,该移动计算设备同时在共享内核上运行第一执行环境中的移动操作系统和在该共享内核上运行第二执行环境中的桌面操作系统,该方法包括:
检测该移动计算设备与第二终端环境的对接事件;
确定对接的第二终端环境的用户体验简档与该桌面操作系统相关联;
响应于确定该对接的第二终端环境的用户体验简档与该桌面操作系统相关联,将该桌面操作系统配置到该第二终端环境的显示器;以及
从该接口端口输出该桌面操作系统的图形用户界面。
2.如权利要求1的方法,其中将该桌面操作系统配置到该显示器的步骤包括由该共享内核将该移动计算设备的帧缓冲器与该桌面操作系统相关联,并且将该帧缓冲器配置到该第二终端环境的该显示器的分辨率。
3.如权利要求1的方法,其中确定该第二终端环境的用户体验简档以及配置该桌面操作系统的步骤由该移动操作系统的桌面监视服务进行。
4.如权利要求1的方法,还包括设置标志的步骤,该标志指示该第二终端环境具有与该桌面操作系统相关联的用户体验简档。
5.如权利要求1的方法,还包括基于确定该第二终端环境具有与该桌面操作系统相关联的用户体验简档,由该移动操作系统忽略来自该第二终端环境的输入设备的输入命令。
6.如权利要求1的方法,其中确定该第二终端环境的用户体验简档的步骤包括从对接连接器接收该第二终端环境的用户体验简档的指示符。
7.一种计算系统,包括:
移动计算设备,包括:
处理器,可操作以同时在共享内核上运行第一执行环境中的移动操作系统和运行第二执行环境中的桌面操作系统;以及
接口端口,该接口端口可操作以将该移动计算设备连接到第二终端环境,
其中该移动操作系统包括桌面监视服务,该桌面监视服务监视该接口端口,并基于该第二终端环境的用户体验简档将该接口端口与该移动操作系统或该桌面操作系统之一相关联。
8.如权利要求7的计算系统,还包括第二终端环境。
9.如权利要求8的计算系统,其中该第二终端环境包括显示设备,并且该接口端口包括显示器接口端口。
10.一种用于配置移动计算设备的接口端口的方法,该移动计算设备同时在共享内核上运行第一执行环境中的移动操作系统和在该共享内核上运行第二执行环境中的桌面操作系统,该方法包括:
检测该移动计算设备与第二终端环境的对接事件;
确定该第二终端环境的用户体验简档与该移动操作系统相关联;以及
响应于确定该第二终端环境的用户体验简档与该移动操作系统相关联,配置该接口端口以在该第二终端环境的显示器上显示该移动操作系统的图形用户界面。
11.如权利要求10的方法,其中所述对接事件的检测由所述共享内核的设备驱动器进行。
12.如权利要求10的方法,还包括:
通过该移动操作系统的桌面监视服务来实例化远程对象;以及
响应于检测到所述对接事件,通过该移动操作系统中的事件监听器调用该远程对象,对该远程对象的调用包括该对接事件的通知。
13.如权利要求12的方法,还包括在桌面监视服务中接收指示已经发生了所述对接事件的对该远程对象的调用的步骤。
14.如权利要求10的方法,其中所述配置该移动操作系统以在该第二终端环境的显示器上显示该移动操作系统图形用户界面的步骤包括配置与该移动操作系统相关联的帧缓冲器用于该第二终端环境的显示器的显示分辨率。
15.如权利要求10的方法,其中所述配置该接口端口以在该第二终端环境的显示器上显示该移动操作系统图形用户界面的步骤包括使该移动计算设备的显示器和其他输入设备停用。
16.如权利要求10的方法,还包括配置在该移动操作系统上运行的应用和任务用于该第二终端环境的显示器。
17.如权利要求10的方法,其中该第二终端环境包括平板型第二终端环境。
18.如权利要求10的方法,其中该第二终端环境的显示器包括触摸使能的显示器。
19.一种移动计算设备,包括存储用于物理处理器的指令的计算机可读介质,该指令在被执行时致使该处理器进行权利要求10的方法。
CN201180057432.0A 2010-10-01 2011-09-23 多操作系统环境中的对接系统的自动配置 Active CN103229156B (zh)

Applications Claiming Priority (15)

Application Number Priority Date Filing Date Title
US38911710P 2010-10-01 2010-10-01
US61/389,117 2010-10-01
US201161507203P 2011-07-13 2011-07-13
US201161507199P 2011-07-13 2011-07-13
US201161507201P 2011-07-13 2011-07-13
US201161507206P 2011-07-13 2011-07-13
US201161507209P 2011-07-13 2011-07-13
US61/507,203 2011-07-13
US61/507,199 2011-07-13
US61/507,209 2011-07-13
US61/507,201 2011-07-13
US61/507,206 2011-07-13
US13/217,121 2011-08-24
US13/217,121 US9152582B2 (en) 2010-10-01 2011-08-24 Auto-configuration of a docked system in a multi-OS environment
PCT/US2011/053127 WO2012044557A2 (en) 2010-10-01 2011-09-23 Auto-configuration of a docked system in a multi-os environment

Publications (2)

Publication Number Publication Date
CN103229156A true CN103229156A (zh) 2013-07-31
CN103229156B CN103229156B (zh) 2016-08-10

Family

ID=45889363

Family Applications (7)

Application Number Title Priority Date Filing Date
CN201180057432.0A Active CN103229156B (zh) 2010-10-01 2011-09-23 多操作系统环境中的对接系统的自动配置
CN201180057862.2A Active CN103282875B (zh) 2010-10-01 2011-09-23 多操作系统
CN201180057951.7A Active CN103262057B (zh) 2010-10-01 2011-09-23 跨环境通信框架
CN201710164946.5A Pending CN107122168A (zh) 2010-10-01 2011-09-23 多操作系统
CN201180058005.4A Active CN103329094B (zh) 2010-10-01 2011-09-29 交叉环境重定向
CN201180057364.8A Active CN103493010B (zh) 2010-10-01 2011-10-03 交叉环境事件通知
CN201180057454.7A Active CN103370689B (zh) 2010-10-01 2011-10-03 跨环境应用兼容

Family Applications After (6)

Application Number Title Priority Date Filing Date
CN201180057862.2A Active CN103282875B (zh) 2010-10-01 2011-09-23 多操作系统
CN201180057951.7A Active CN103262057B (zh) 2010-10-01 2011-09-23 跨环境通信框架
CN201710164946.5A Pending CN107122168A (zh) 2010-10-01 2011-09-23 多操作系统
CN201180058005.4A Active CN103329094B (zh) 2010-10-01 2011-09-29 交叉环境重定向
CN201180057364.8A Active CN103493010B (zh) 2010-10-01 2011-10-03 交叉环境事件通知
CN201180057454.7A Active CN103370689B (zh) 2010-10-01 2011-10-03 跨环境应用兼容

Country Status (7)

Country Link
US (9) US9077731B2 (zh)
EP (3) EP2622462A4 (zh)
JP (1) JP2013542515A (zh)
CN (7) CN103229156B (zh)
BR (1) BR112013007809A2 (zh)
MX (1) MX2013003427A (zh)
WO (13) WO2012044557A2 (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI502296B (zh) * 2014-08-27 2015-10-01 Hiwin Tech Corp 機器人的教導裝置
CN105487845A (zh) * 2014-09-18 2016-04-13 联想(北京)有限公司 一种信息处理方法及电子设备
CN106462531A (zh) * 2014-06-23 2017-02-22 高通股份有限公司 用于经由无线对接提供替代的可视化的方法、装置和计算机可读介质
CN106547628A (zh) * 2016-11-29 2017-03-29 北京元心科技有限公司 多系统的资源释放方法及装置
CN107249954A (zh) * 2014-12-29 2017-10-13 罗伯特·博世有限公司 用于使用个性化驾驶简档操作自主车辆的系统和方法
CN107943606A (zh) * 2017-11-22 2018-04-20 上海博泰悦臻电子设备制造有限公司 双操作系统下的故障处理方法及装置、存储器及电子设备
CN108367796A (zh) * 2015-08-26 2018-08-03 博洛斯股份公司 用于自行车的控制设备
CN110489188A (zh) * 2018-05-14 2019-11-22 施耐德电器工业公司 由桌面应用生成移动应用程序的计算机实现的方法和系统
CN110781528A (zh) * 2019-09-26 2020-02-11 深圳金澜汉源科技有限公司 协同安全操作系统架构、操作系统和电子设备
CN113646747A (zh) * 2019-01-21 2021-11-12 普罗米斯有限公司 连接计算设备软件集成系统和方法
CN114270314A (zh) * 2019-06-27 2022-04-01 思杰系统有限公司 智能工作空间平台的统一可访问性设置
CN115402243A (zh) * 2021-05-26 2022-11-29 丰田自动车株式会社 车辆部件选择方法

Families Citing this family (324)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9678624B2 (en) 2011-09-27 2017-06-13 Z124 Unified desktop triad control user interface for a phone manager
US8990713B2 (en) 2011-09-27 2015-03-24 Z124 Unified desktop triad control user interface for an application manager
US8819705B2 (en) 2010-10-01 2014-08-26 Z124 User interaction support across cross-environment applications
US9715252B2 (en) 2011-08-24 2017-07-25 Z124 Unified desktop docking behavior for window stickiness
US9405459B2 (en) 2011-08-24 2016-08-02 Z124 Unified desktop laptop dock software operation
US20130104062A1 (en) 2011-09-27 2013-04-25 Z124 Unified desktop input segregation in an application manager
US9047102B2 (en) 2010-10-01 2015-06-02 Z124 Instant remote rendering
US9268518B2 (en) 2011-09-27 2016-02-23 Z124 Unified desktop docking rules
US20130024812A1 (en) 2011-07-13 2013-01-24 Z124 Foreground/background assortment of hidden windows
US9152582B2 (en) 2010-10-01 2015-10-06 Z124 Auto-configuration of a docked system in a multi-OS environment
US20130024778A1 (en) 2011-07-13 2013-01-24 Z124 Dynamic cross-environment application configuration/orientation
US20130076592A1 (en) 2011-09-27 2013-03-28 Paul E. Reeves Unified desktop docking behavior for visible-to-visible extension
US8933949B2 (en) 2010-10-01 2015-01-13 Z124 User interaction across cross-environment applications through an extended graphics context
US9529494B2 (en) 2011-09-27 2016-12-27 Z124 Unified desktop triad control user interface for a browser
US8726294B2 (en) 2010-10-01 2014-05-13 Z124 Cross-environment communication using application space API
US8966379B2 (en) 2010-10-01 2015-02-24 Z124 Dynamic cross-environment application configuration/orientation in an active user environment
US8990712B2 (en) 2011-08-24 2015-03-24 Z124 Unified desktop triad control user interface for file manager
US9372711B2 (en) 2009-07-20 2016-06-21 Google Technology Holdings LLC System and method for initiating a multi-environment operating system
US9367331B2 (en) 2009-07-20 2016-06-14 Google Technology Holdings LLC Multi-environment operating system
US9348633B2 (en) 2009-07-20 2016-05-24 Google Technology Holdings LLC Multi-environment operating system
US9389877B2 (en) 2009-07-20 2016-07-12 Google Technology Holdings LLC Multi-environment operating system
KR101263217B1 (ko) * 2009-10-15 2013-05-10 한국전자통신연구원 모바일 클라우드 서비스 제공을 위한 모바일 단말 및 그의 동작 방법
US8719776B2 (en) * 2009-12-30 2014-05-06 Foneclay, Inc. System for creation and distribution of software applications usable on multiple mobile device platforms
WO2021144656A1 (en) 2020-01-15 2021-07-22 Monday.Com Digital processing systems and methods for graphical dynamic table gauges in collaborative work systems
US11410129B2 (en) * 2010-05-01 2022-08-09 Monday.com Ltd. Digital processing systems and methods for two-way syncing with third party applications in collaborative work systems
WO2021161104A1 (en) 2020-02-12 2021-08-19 Monday.Com Enhanced display features in collaborative network systems, methods, and devices
WO2021099839A1 (en) 2019-11-18 2021-05-27 Roy Mann Collaborative networking systems, methods, and devices
EP2622443B1 (en) 2010-10-01 2022-06-01 Z124 Drag move gesture in user interface
US9052800B2 (en) 2010-10-01 2015-06-09 Z124 User interface with stacked application management
CN103229156B (zh) 2010-10-01 2016-08-10 Flex Electronics ID Co.,Ltd. 多操作系统环境中的对接系统的自动配置
US8761831B2 (en) 2010-10-15 2014-06-24 Z124 Mirrored remote peripheral interface
US9622278B2 (en) 2010-10-26 2017-04-11 Kingston Digital Inc. Dual-mode wireless networked device interface and automatic configuration thereof
US20120113091A1 (en) * 2010-10-29 2012-05-10 Joel Solomon Isaacson Remote Graphics
KR101027971B1 (ko) * 2010-12-10 2011-04-13 (주)헬릭스테크 애플리케이션 검사 가능한 이동통신 단말기 및 그 검사 방법
US8682962B2 (en) * 2010-12-24 2014-03-25 Levono (Singapore) Pte. Ltd. Systems and methods for communicating and switching between components in a hybrid computing environment
US20120173986A1 (en) * 2011-01-04 2012-07-05 Motorola-Mobility, Inc. Background synchronization within a multi-environment operating system
US8782258B2 (en) * 2011-01-04 2014-07-15 Motorola Mobility Llc Transferring web data between operating system environments
US8689235B2 (en) * 2011-01-18 2014-04-01 Gbc Industries System and method for enabling interaction between a cloud application and a local application
BR112013019302A2 (pt) * 2011-02-01 2018-05-02 Timeplay Entertainment Corporation sistema de interação de localização múltipla e método para proporcionar experiência interativa a dois ou mais participantes localizados em um ou mais nós interativos
US8935318B1 (en) * 2011-03-28 2015-01-13 Google Inc. Opportunistic job processing in a distributed computer environment
US9354900B2 (en) 2011-04-28 2016-05-31 Google Technology Holdings LLC Method and apparatus for presenting a window in a system having two operating system environments
US8224894B1 (en) 2011-05-09 2012-07-17 Google Inc. Zero-click sharing of application context across devices
US8171137B1 (en) 2011-05-09 2012-05-01 Google Inc. Transferring application state across devices
US8812601B2 (en) * 2011-05-09 2014-08-19 Google Inc. Transferring application state across devices with checkpoints
US10089093B1 (en) * 2011-05-24 2018-10-02 BlueStack Systems, Inc. Apparatuses, systems and methods of switching operating systems
US8924958B1 (en) 2011-05-24 2014-12-30 BlueStack Systems, Inc. Application player
US8706860B2 (en) 2011-06-30 2014-04-22 Amazon Technologies, Inc. Remote browsing session management
US9621406B2 (en) 2011-06-30 2017-04-11 Amazon Technologies, Inc. Remote browsing session management
US8799412B2 (en) 2011-06-30 2014-08-05 Amazon Technologies, Inc. Remote browsing session management
US8577963B2 (en) 2011-06-30 2013-11-05 Amazon Technologies, Inc. Remote browsing session between client browser and network based browser
US10791538B1 (en) 2011-07-06 2020-09-29 BlueStack Systems, Inc. Cloud-based data synchronization
US9348626B2 (en) * 2011-08-05 2016-05-24 Vmware, Inc. Mobile device maintaining adequate security and data partitioning between user mode and business mode
US9037696B2 (en) 2011-08-16 2015-05-19 Amazon Technologies, Inc. Managing information associated with network resources
US20160124698A1 (en) 2011-08-24 2016-05-05 Z124 Unified desktop triad control user interface for an application launcher
US20130104051A1 (en) 2011-09-27 2013-04-25 Z124 Unified desktop big brother application pools
WO2013028202A1 (en) * 2011-08-25 2013-02-28 Intel Corporation Collaborative graphics rendering using mobile devices to support remote display
US9195768B2 (en) 2011-08-26 2015-11-24 Amazon Technologies, Inc. Remote browsing session management
US10089403B1 (en) 2011-08-31 2018-10-02 Amazon Technologies, Inc. Managing network based storage
US9203807B2 (en) 2011-09-09 2015-12-01 Kingston Digital, Inc. Private cloud server and client architecture without utilizing a routing server
US10237253B2 (en) 2011-09-09 2019-03-19 Kingston Digital, Inc. Private cloud routing server, private network service and smart device client architecture without utilizing a public cloud based routing server
US10601810B2 (en) 2011-09-09 2020-03-24 Kingston Digital, Inc. Private cloud routing server connection mechanism for use in a private communication architecture
US11683292B2 (en) 2011-09-09 2023-06-20 Kingston Digital, Inc. Private cloud routing server connection mechanism for use in a private communication architecture
US9935930B2 (en) 2011-09-09 2018-04-03 Kingston Digital, Inc. Private and secure communication architecture without utilizing a public cloud based routing server
US11863529B2 (en) 2011-09-09 2024-01-02 Kingston Digital, Inc. Private cloud routing server connection mechanism for use in a private communication architecture
KR101295428B1 (ko) * 2011-09-09 2013-08-23 주식회사 팬택 스마트 단말기에서 어플리케이션의 권한정보 관리 장치 및 제어 방법
US9781087B2 (en) 2011-09-09 2017-10-03 Kingston Digital, Inc. Private and secure communication architecture without utilizing a public cloud based routing server
US8914514B1 (en) 2011-09-27 2014-12-16 Amazon Technologies, Inc. Managing network based content
US11416131B2 (en) 2011-09-27 2022-08-16 Z124 Unified desktop input segregation in an application manager
US10693991B1 (en) 2011-09-27 2020-06-23 Amazon Technologies, Inc. Remote browsing session management
US9703468B2 (en) 2011-09-27 2017-07-11 Z124 Unified desktop independent focus in an application manager
US9298843B1 (en) * 2011-09-27 2016-03-29 Amazon Technologies, Inc. User agent information management
US9152970B1 (en) 2011-09-27 2015-10-06 Amazon Technologies, Inc. Remote co-browsing session management
US20160054757A1 (en) 2012-02-29 2016-02-25 Z124 Unified desktop docking flow
US9178955B1 (en) 2011-09-27 2015-11-03 Amazon Technologies, Inc. Managing network based content
US9383958B1 (en) 2011-09-27 2016-07-05 Amazon Technologies, Inc. Remote co-browsing session management
US8849802B2 (en) 2011-09-27 2014-09-30 Amazon Technologies, Inc. Historical browsing session management
US9641637B1 (en) 2011-09-27 2017-05-02 Amazon Technologies, Inc. Network resource optimization
US8842057B2 (en) 2011-09-27 2014-09-23 Z124 Detail on triggers: transitional states
US8589385B2 (en) 2011-09-27 2013-11-19 Amazon Technologies, Inc. Historical browsing session management
US20130080899A1 (en) 2011-09-27 2013-03-28 Paul E. Reeves Unified desktop big brother applications
US8966004B2 (en) 2011-09-29 2015-02-24 Comcast Cable Communications, LLC. Multiple virtual machines in a mobile virtualization platform
US8615431B1 (en) 2011-09-29 2013-12-24 Amazon Technologies, Inc. Network content message placement management
US9804864B1 (en) 2011-10-07 2017-10-31 BlueStack Systems, Inc. Method of mapping inputs and system thereof
US9313100B1 (en) 2011-11-14 2016-04-12 Amazon Technologies, Inc. Remote browsing session management
DE112012004767T5 (de) * 2011-11-16 2014-11-06 Flextronics Ap, Llc Vollständiges Fahrzeugökosystem
US9116786B2 (en) 2011-11-16 2015-08-25 Flextronics Ap, Llc On board vehicle networking module
US9173100B2 (en) 2011-11-16 2015-10-27 Autoconnect Holdings Llc On board vehicle network security
KR101844512B1 (ko) * 2011-11-18 2018-05-21 삼성전자주식회사 어플리케이션 이용 방법, 그를 이용한 게이트웨이, 그를 이용한 단말기, 및 그를 이용한 통신 시스템
US8972477B1 (en) 2011-12-01 2015-03-03 Amazon Technologies, Inc. Offline browsing session management
JP5514794B2 (ja) * 2011-12-05 2014-06-04 パナソニック株式会社 情報処理システム
US9009334B1 (en) 2011-12-09 2015-04-14 Amazon Technologies, Inc. Remote browsing session management
US9164544B2 (en) 2011-12-09 2015-10-20 Z124 Unified desktop: laptop dock, hardware configuration
US9117002B1 (en) 2011-12-09 2015-08-25 Amazon Technologies, Inc. Remote browsing session management
US9330188B1 (en) 2011-12-22 2016-05-03 Amazon Technologies, Inc. Shared browsing sessions
GB201200080D0 (en) * 2012-01-04 2012-02-15 Talaris Ltd Automated banking machines
US9342181B2 (en) 2012-01-09 2016-05-17 Nvidia Corporation Touch-screen input/output device touch sensing techniques
US8938518B2 (en) * 2012-01-16 2015-01-20 International Business Machines Corporation Transferring applications and session state to a secondary device
US9336321B1 (en) 2012-01-26 2016-05-10 Amazon Technologies, Inc. Remote browsing and searching
US8839087B1 (en) 2012-01-26 2014-09-16 Amazon Technologies, Inc. Remote browsing and searching
US9087024B1 (en) 2012-01-26 2015-07-21 Amazon Technologies, Inc. Narration of network content
US8627195B1 (en) 2012-01-26 2014-01-07 Amazon Technologies, Inc. Remote browsing and searching
US9092405B1 (en) 2012-01-26 2015-07-28 Amazon Technologies, Inc. Remote browsing and searching
US9509783B1 (en) 2012-01-26 2016-11-29 Amazon Technlogogies, Inc. Customized browser images
US9037975B1 (en) 2012-02-10 2015-05-19 Amazon Technologies, Inc. Zooming interaction tracking and popularity determination
US9183258B1 (en) 2012-02-10 2015-11-10 Amazon Technologies, Inc. Behavior based processing of content
CN103246463A (zh) * 2012-02-13 2013-08-14 联想(北京)有限公司 使用输入设备进行信息输入的方法、处理系统及电子设备
US9137210B1 (en) 2012-02-21 2015-09-15 Amazon Technologies, Inc. Remote browsing session management
US10296558B1 (en) 2012-02-27 2019-05-21 Amazon Technologies, Inc. Remote generation of composite content pages
US9374244B1 (en) 2012-02-27 2016-06-21 Amazon Technologies, Inc. Remote browsing session management
US9208316B1 (en) 2012-02-27 2015-12-08 Amazon Technologies, Inc. Selective disabling of content portions
US20130244579A1 (en) * 2012-03-16 2013-09-19 Rapidblue Solutions Method of enabling proximity based connectivity between mobile devices using different operating systems
US9460220B1 (en) 2012-03-26 2016-10-04 Amazon Technologies, Inc. Content selection based on target device characteristics
US9307004B1 (en) 2012-03-28 2016-04-05 Amazon Technologies, Inc. Prioritized content transmission
EP2648096A1 (en) 2012-04-07 2013-10-09 Samsung Electronics Co., Ltd Method and system for controlling display device and computer-readable recording medium
US20130293573A1 (en) * 2012-05-02 2013-11-07 Motorola Mobility, Inc. Method and Apparatus for Displaying Active Operating System Environment Data with a Plurality of Concurrent Operating System Environments
US20130298140A1 (en) * 2012-05-02 2013-11-07 Motorola Mobility, Inc. Method and Apparatus for Displaying Data from a Plurality of Concurrent Operating System Environments
US20130311888A1 (en) * 2012-05-17 2013-11-21 Motorola Mobility, Inc. Arranging a Set of Panels in a First Application Environment Via Arrangement of the Set of Panels in a Second Application Environment for a Multi-Modal Device
US9342325B2 (en) * 2012-05-17 2016-05-17 Google Technology Holdings LLC Synchronizing launch-configuration information between first and second application environments that are operable on a multi-modal device
US9177533B2 (en) 2012-05-31 2015-11-03 Microsoft Technology Licensing, Llc Virtual surface compaction
US9804740B2 (en) * 2012-06-06 2017-10-31 Apple Inc. Generating context-based options for responding to a notification
US9099031B2 (en) * 2012-06-15 2015-08-04 Apple Inc. Layout synchronization
JP2014010691A (ja) * 2012-06-29 2014-01-20 Canon Inc 情報処理装置、画面表示方法、およびプログラム
CN103544027B (zh) * 2012-07-13 2017-05-24 联想(北京)有限公司 控制应用更新的方法及电子设备
US9743017B2 (en) * 2012-07-13 2017-08-22 Lattice Semiconductor Corporation Integrated mobile desktop
US9184800B2 (en) 2012-07-16 2015-11-10 Google Inc. Automated sharing of application data over a near field communication link
US9798508B2 (en) 2012-07-16 2017-10-24 Microsoft Technology Licensing, Llc Implementing previously rendered frame buffer information in a customized GUI display
US9823935B2 (en) * 2012-07-26 2017-11-21 Nvidia Corporation Techniques for latching input events to display flips
US9772979B1 (en) 2012-08-08 2017-09-26 Amazon Technologies, Inc. Reproducing user browsing sessions
US8943197B1 (en) 2012-08-16 2015-01-27 Amazon Technologies, Inc. Automated content update notification
US20140075377A1 (en) * 2012-09-10 2014-03-13 Samsung Electronics Co. Ltd. Method for connecting mobile terminal and external display and apparatus implementing the same
US9307026B2 (en) * 2012-09-20 2016-04-05 Amazon Technologies, Inc. Fulfillment of applications to devices
US9390473B2 (en) * 2012-09-21 2016-07-12 Google Inc. Displaying applications on a fixed orientation display
US9772668B1 (en) 2012-09-27 2017-09-26 Cadence Design Systems, Inc. Power shutdown with isolation logic in I/O power domain
US9389884B2 (en) * 2012-10-11 2016-07-12 Google Technology Holdings LLC Method and apparatus for providing adaptive wallpaper display for a device having multiple operating system environments
US20140115606A1 (en) * 2012-10-24 2014-04-24 OpenMobile World Wide, Inc. Multi-platform mobile and other computing devices and methods
US10942735B2 (en) * 2012-12-04 2021-03-09 Abalta Technologies, Inc. Distributed cross-platform user interface and application projection
US9513979B2 (en) * 2013-01-11 2016-12-06 Sap Se Mobile communication device providing interconnectivity between apps based on storage scope
CN103984532B (zh) * 2013-02-07 2016-06-22 腾讯科技(深圳)有限公司 一种移动终端功能设置键的位置设置方法和装置
US9002982B2 (en) 2013-03-11 2015-04-07 Amazon Technologies, Inc. Automated desktop placement
US10142406B2 (en) 2013-03-11 2018-11-27 Amazon Technologies, Inc. Automated data center selection
US9148350B1 (en) 2013-03-11 2015-09-29 Amazon Technologies, Inc. Automated data synchronization
US10313345B2 (en) 2013-03-11 2019-06-04 Amazon Technologies, Inc. Application marketplace for virtual desktops
US9526120B2 (en) 2013-03-15 2016-12-20 Google Inc. Techniques for context-based application invocation for short-range wireless communication interactions
US9569161B2 (en) * 2013-03-21 2017-02-14 Nec Corporation Remote visualization and control for virtual mobile infrastructure
US9342842B2 (en) * 2013-04-01 2016-05-17 Apple Inc. Context-switching taxonomy for mobile advertisement
US9325581B2 (en) * 2013-04-02 2016-04-26 International Business Machines Corporation Context-aware management of applications at the edge of a network
WO2014168962A1 (en) * 2013-04-09 2014-10-16 Citrix Systems, Inc. Providing a native desktop using cloud-synchronized data
CN103197533A (zh) * 2013-04-11 2013-07-10 华为终端有限公司 电子设备中闹钟的实现方法、装置及电子设备
US20140316841A1 (en) * 2013-04-23 2014-10-23 Kofax, Inc. Location-based workflows and services
KR102210995B1 (ko) * 2013-04-24 2021-02-02 삼성전자 주식회사 전자 장치에서 보안 정보를 통지하기 위한 장치와 방법 및 이를 위한 컴퓨터로 판독 가능한 기록 매체
CN103281186B (zh) * 2013-05-08 2016-02-03 上海众人网络安全技术有限公司 一种基于android系统的动态令牌、交易系统及方法
CN103309657A (zh) * 2013-05-17 2013-09-18 北京小米科技有限责任公司 一种更换移动设备响铃音频的方法、装置和设备
US9300720B1 (en) * 2013-05-21 2016-03-29 Trend Micro Incorporated Systems and methods for providing user inputs to remote mobile operating systems
US9225799B1 (en) * 2013-05-21 2015-12-29 Trend Micro Incorporated Client-side rendering for virtual mobile infrastructure
US20140351833A1 (en) * 2013-05-26 2014-11-27 Min-Lee Teng Multi-computing environment operating on a single native operating system
US10021180B2 (en) * 2013-06-04 2018-07-10 Kingston Digital, Inc. Universal environment extender
US10152463B1 (en) 2013-06-13 2018-12-11 Amazon Technologies, Inc. System for profiling page browsing interactions
US9578137B1 (en) 2013-06-13 2017-02-21 Amazon Technologies, Inc. System for enhancing script execution performance
US10686646B1 (en) 2013-06-26 2020-06-16 Amazon Technologies, Inc. Management of computing sessions
US10623243B2 (en) 2013-06-26 2020-04-14 Amazon Technologies, Inc. Management of computing sessions
KR102112605B1 (ko) * 2013-07-01 2020-05-19 삼성전자 주식회사 모바일 단말 및 모바일 단말의 네트워크 전송 제어 방법
CN103401896B (zh) * 2013-07-15 2016-06-22 四川公用信息产业有限责任公司 一种多Android客户端服务共享方法及系统
CN103401941B (zh) * 2013-08-09 2017-02-08 广东威创视讯科技股份有限公司 一种gis场景信息处理方法、系统、节点机和服务端
KR102144553B1 (ko) * 2013-08-30 2020-08-13 삼성전자주식회사 다중 디스플레이 방법, 저장 매체 및 전자 장치
US9823728B2 (en) 2013-09-04 2017-11-21 Nvidia Corporation Method and system for reduced rate touch scanning on an electronic device
US10437903B2 (en) * 2013-09-20 2019-10-08 Jesse Lakes Redirection service profiling
CN104516703B (zh) * 2013-09-30 2018-02-16 中国电信股份有限公司 在安卓终端上实现虚拟桌面屏幕分辨率自动适配的方法和系统
US9881592B2 (en) 2013-10-08 2018-01-30 Nvidia Corporation Hardware overlay assignment
GB2520041A (en) * 2013-11-07 2015-05-13 Ibm Automated multimedia content editing
US9507470B2 (en) 2013-12-16 2016-11-29 Nvidia Corporation Method and system for reduced power touch input detection on an electronic device using reduced scanning
KR101548228B1 (ko) * 2013-12-27 2015-08-28 주식회사 케이티 사용자 상태에 기반하여 사용자 인터페이스를 동기화하는 동기화 기기 및 동기화 방법
TWI526849B (zh) * 2013-12-31 2016-03-21 Insyde Software Corp Portable electronic device, dual heterogeneity operating system sharing file, recording media and computer program products
EP3111296B1 (en) 2014-02-27 2022-07-27 Aptiv Technologies Limited In-process trapping for service substitution in hosted applications executing on mobile devices with multi operating system environment
CN103902390B (zh) * 2014-03-12 2017-04-19 深圳创维-Rgb电子有限公司 基于Android的应用层的进程间通信方法及基础应用通信系统
EP4224315A1 (en) * 2014-03-19 2023-08-09 Huawei Device Co., Ltd. Application data synchronization method and apparatus
US9898520B2 (en) * 2014-03-25 2018-02-20 Open Text Sa Ulc Systems and methods for seamless access to remotely managed documents using synchronization of locally stored documents
WO2015167563A1 (en) * 2014-04-30 2015-11-05 Hewlett-Packard Development Company, L.P. Multi architecture manager
US9785309B2 (en) * 2014-05-08 2017-10-10 Socialtopias, Llc Method and apparatus for providing a layered webpage
US9189264B1 (en) * 2014-06-09 2015-11-17 Western Digital Technologies, Inc. Notification propagation in virtual computing environment
US9635041B1 (en) 2014-06-16 2017-04-25 Amazon Technologies, Inc. Distributed split browser content inspection and analysis
US10303531B2 (en) * 2014-07-28 2019-05-28 Red Hat, Inc. Console application through web service
CN106462369B (zh) 2014-07-31 2020-01-03 惠普发展公司,有限责任合伙企业 用于管理多个实例的方法、系统和介质
JP2016035705A (ja) * 2014-08-04 2016-03-17 パナソニックIpマネジメント株式会社 表示装置、表示制御方法、及び表示制御プログラム
JP2016035706A (ja) * 2014-08-04 2016-03-17 パナソニックIpマネジメント株式会社 表示装置、表示制御方法、及び表示制御プログラム
US20160088079A1 (en) * 2014-09-21 2016-03-24 Alcatel Lucent Streaming playout of media content using interleaved media players
US20160085348A1 (en) * 2014-09-23 2016-03-24 UV Networks, Inc. Application host with distributed remote input and output interfaces
US20160085738A1 (en) * 2014-09-24 2016-03-24 Microsoft Technology Licensing, Llc Cloud-Based Parallel Computation Using Actor Modules
CN104317414A (zh) * 2014-09-25 2015-01-28 北京云巢动脉科技有限公司 一种在移动端虚拟机内实现中文输入的方法和系统
JP6078515B2 (ja) * 2014-11-13 2017-02-08 京セラドキュメントソリューションズ株式会社 電子機器およびプログラム
CN104410909B (zh) * 2014-11-28 2018-01-09 江苏银河电子股份有限公司 Linux系统软件模块在TVOS系统中的使用方法
CN104536869B (zh) * 2014-12-12 2017-09-12 华为技术有限公司 移动终端及其资源管理方法
CN104572943B (zh) * 2014-12-30 2018-05-08 北京奇虎科技有限公司 免安装程序清理方法及装置
US9928021B2 (en) 2014-12-30 2018-03-27 Qualcomm Incorporated Dynamic selection of content for display on a secondary display device
WO2016122616A1 (en) 2015-01-30 2016-08-04 Hewlett-Packard Development Company, L.P. Computer system to continuously maintain a user session when a display device is mechanically connected and disconnected
CN104731721B (zh) * 2015-02-10 2019-07-16 深圳酷派技术有限公司 一种显示用内存的共享方法及装置
CN104657213B (zh) * 2015-02-13 2018-04-10 深圳酷派技术有限公司 一种系统间应用切换的方法和终端
US20160239168A1 (en) * 2015-02-18 2016-08-18 Screenovate Technologies Ltd. Method and system of gui functionality management
US9572104B2 (en) 2015-02-25 2017-02-14 Microsoft Technology Licensing, Llc Dynamic adjustment of user experience based on system capabilities
CN104796529B (zh) * 2015-03-05 2018-05-15 宇龙计算机通信科技(深圳)有限公司 基于双系统的未处理事件的提醒方法及系统
CN104750492B (zh) * 2015-03-31 2018-01-19 广东欧珀移动通信有限公司 基于嵌入式操作系统的移动设备的开机控制方法及装置
CN105577906B (zh) * 2015-04-08 2019-06-11 宇龙计算机通信科技(深圳)有限公司 一种多系统终端通知消息的提示方法及装置
US11159603B2 (en) * 2015-04-15 2021-10-26 Hyland Switzerland Sàrl Cross-platform module for loading across a plurality of device types
DE112016006734T5 (de) * 2015-04-26 2019-01-03 Intel Corporation Integriertes Android- und Windows-Gerät
CN106327139A (zh) * 2015-06-17 2017-01-11 派斡信息技术(上海)有限公司 工作空间中对统一化元素进行组合工作的方法以及产品
US9920219B2 (en) 2015-06-22 2018-03-20 Awi Licensing Llc Soil and dirt repellent powder coatings
US10261985B2 (en) 2015-07-02 2019-04-16 Microsoft Technology Licensing, Llc Output rendering in dynamic redefining application
WO2017003007A1 (ko) * 2015-07-02 2017-01-05 엘지전자 주식회사 영상표시장치 및 이동 단말기
US10198252B2 (en) 2015-07-02 2019-02-05 Microsoft Technology Licensing, Llc Transformation chain application splitting
KR102444150B1 (ko) * 2015-07-02 2022-09-15 엘지전자 주식회사 영상표시장치
KR102403338B1 (ko) * 2015-07-02 2022-05-27 엘지전자 주식회사 이동 단말기
US10031724B2 (en) 2015-07-08 2018-07-24 Microsoft Technology Licensing, Llc Application operation responsive to object spatial status
US20170010758A1 (en) * 2015-07-08 2017-01-12 Microsoft Technology Licensing, Llc Actuator module for building application
US10198405B2 (en) 2015-07-08 2019-02-05 Microsoft Technology Licensing, Llc Rule-based layout of changing information
JP2017027366A (ja) * 2015-07-22 2017-02-02 キヤノン株式会社 情報処理装置及びイベント管理方法
US10565026B2 (en) * 2015-07-29 2020-02-18 Microsoft Technology Licensing, Llc Containing an application in an immersive non-windowed environment
CN108027493B (zh) * 2015-09-08 2021-08-13 Lg伊诺特有限公司 双相机模块及光学装置
US10083614B2 (en) 2015-10-22 2018-09-25 Drone Traffic, Llc Drone alerting and reporting system
KR102320810B1 (ko) * 2015-11-11 2021-11-02 삼성전자주식회사 전자 장치 및 이의 제어 방법
CN105426191B (zh) * 2015-11-23 2019-01-18 深圳创维-Rgb电子有限公司 用户界面显示处理方法及装置
US10326822B2 (en) 2015-12-03 2019-06-18 Google Llc Methods, systems and media for presenting a virtual operating system on a display device
CN105404558B (zh) * 2015-12-11 2019-07-09 北京元心科技有限公司 多系统中事件处理的方法及装置
CN105763453B (zh) * 2016-02-04 2019-05-07 新华三技术有限公司 一种报文处理方法和装置
CN105791567B (zh) * 2016-02-29 2019-05-14 宇龙计算机通信科技(深圳)有限公司 一种信息存储方法及多系统移动终端
CN105704341A (zh) * 2016-03-28 2016-06-22 努比亚技术有限公司 一种铃音播放方法及终端
CN107291561B (zh) * 2016-03-31 2020-11-24 阿里巴巴集团控股有限公司 一种图形合成方法、信息交互方法及系统
KR102507114B1 (ko) * 2016-06-08 2023-03-07 삼성전자주식회사 복수의 운영체제들의 화면을 통합하여 표시하는 방법 및 그 전자 장치
CN107515790A (zh) * 2016-06-16 2017-12-26 成都鼎桥通信技术有限公司 电子设备的系统
WO2017219362A1 (zh) * 2016-06-24 2017-12-28 阿贝尔环球国际有限公司 终端装置及其终端操作系统与云端装置及其云端操作系统
US10313404B2 (en) 2016-06-30 2019-06-04 Microsoft Technology Licensing, Llc Sharing user context and preferences
US20180046425A1 (en) * 2016-08-11 2018-02-15 International Business Machines Corporation Preserving an external display configuration
CN106445702A (zh) * 2016-09-21 2017-02-22 乐视控股(北京)有限公司 多系统通信方法及终端
WO2018065057A1 (en) * 2016-10-06 2018-04-12 Vestel Elektronik Sanayi Ve Ticaret A.S. Mobile virtualization
KR102597036B1 (ko) 2016-10-11 2023-11-02 삼성전자주식회사 듀얼 디스플레이를 가지는 전자 장치 및 이의 운용 방법
KR20180046791A (ko) * 2016-10-28 2018-05-09 삼성전자주식회사 전자 장치 및 전자 장치의 데이터 전송 방법
US10542120B2 (en) * 2016-11-10 2020-01-21 Microsoft Technology Licensing, Llc Wirelessly providing operating system specific features
CN108121607A (zh) * 2016-11-28 2018-06-05 厦门雅迅网络股份有限公司 事件的上报方法及上报系统
US11003632B2 (en) 2016-11-28 2021-05-11 Open Text Sa Ulc System and method for content synchronization
US10498843B2 (en) * 2016-12-06 2019-12-03 Bank Of America Corporation Tool for providing actionable functionality on a website
US11537272B2 (en) * 2016-12-21 2022-12-27 Aon Global Operations Se, Singapore Branch Content management system extensions
KR102661703B1 (ko) * 2016-12-23 2024-04-29 삼성전자주식회사 전자 장치 및 그의 제어 방법
EP3355188B1 (en) 2017-01-31 2021-08-25 OpenSynergy GmbH Instrument display on a car dashboard by checking frames of a gui by a realtime os
US10503237B2 (en) 2017-02-13 2019-12-10 Gbs Laboratories, Llc Mobile device virtualization solution based on bare-metal hypervisor with optimal resource usage and power consumption
CN106873932B (zh) * 2017-02-17 2020-03-03 浙江大学 一种Android系统服务端、远程桌面图像重定向方法及系统
US11327706B2 (en) 2017-02-23 2022-05-10 Autodesk, Inc. Infrastructure model collaboration via state distribution
CN106951294B (zh) * 2017-03-28 2020-07-10 北京奇虎科技有限公司 一种用于为跨系统应用提供服务的方法及设备
US10467796B2 (en) * 2017-04-17 2019-11-05 Intel Corporation Graphics system with additional context
US10567442B2 (en) 2017-05-10 2020-02-18 Microsoft Technology Licensing, Llc Automatic forwarding of incoming calls based on user interaction with devices
US11301431B2 (en) 2017-06-02 2022-04-12 Open Text Sa Ulc System and method for selective synchronization
CN108781235B (zh) 2017-06-13 2021-12-28 华为技术有限公司 一种显示方法及装置
US10757748B2 (en) 2017-07-19 2020-08-25 Hewlett-Packard Development Company, L.P. Device and display device having attached mode and detached mode
CN109426571B (zh) * 2017-08-28 2022-05-13 阿里巴巴集团控股有限公司 函数调用和数据访问的方法、系统、存储介质、处理器和装置
US10664538B1 (en) 2017-09-26 2020-05-26 Amazon Technologies, Inc. Data security and data access auditing for network accessible content
US10726095B1 (en) 2017-09-26 2020-07-28 Amazon Technologies, Inc. Network content layout using an intermediary system
CN109669764B (zh) * 2017-10-13 2023-08-01 斑马智行网络(香港)有限公司 处理方法、装置、设备和机器可读介质
CN107832203B (zh) * 2017-11-08 2020-11-13 浙江大学 一种移动终端渲染性能诊断方法
CN108133453A (zh) * 2017-12-13 2018-06-08 北京奇虎科技有限公司 一种基于OpenGL的图像处理器及其功能扩展方法
CN108279963B (zh) * 2018-01-05 2020-11-20 郑州信大捷安信息技术股份有限公司 一种单Linux内核多Android系统的智能终端显示虚拟化方法
CN108280020B (zh) * 2018-01-23 2021-09-14 广州视源电子科技股份有限公司 计算机设备的监控方法、装置、终端及计算机存储介质
CN108345438A (zh) * 2018-02-06 2018-07-31 深圳市恒晨电器有限公司 手机平台应用于车载平台的物理横屏显示方法
EP4213104A1 (en) * 2018-02-22 2023-07-19 Magic Leap, Inc. Browser for mixed reality systems
CN108304209B (zh) * 2018-02-28 2021-01-15 联想(北京)有限公司 固件升级方法及固件升级系统
CN108762815B (zh) * 2018-05-16 2021-01-01 北京麟卓信息科技有限公司 一种基于非虚拟化体系架构的Android运行环境实现方法
US10983811B2 (en) 2018-06-03 2021-04-20 Apple Inc. Multi-process model for cross-platform applications
US11436359B2 (en) 2018-07-04 2022-09-06 Monday.com Ltd. System and method for managing permissions of users for a single data type column-oriented data structure
US11698890B2 (en) 2018-07-04 2023-07-11 Monday.com Ltd. System and method for generating a column-oriented data structure repository for columns of single data types
KR102693268B1 (ko) * 2018-07-31 2024-08-08 삼성전자주식회사 전자 장치의 디스플레이 및 외부 디스플레이 전부를 이용하여 어플리케이션을 실행하기 위한 전자 장치 및 방법
CN109254858B (zh) * 2018-08-31 2021-07-23 武汉斗鱼网络科技有限公司 活动窗口的数据共享方法、装置、设备及存储介质
KR102631745B1 (ko) 2018-10-16 2024-02-01 삼성전자주식회사 이종 운영체제의 실행을 제어하기 위한 방법, 이를 위한 전자 장치 및 저장 매체
CN109375955A (zh) * 2018-11-01 2019-02-22 无锡市同芯恒通科技有限公司 一种同种cpu适配不同操作系统的方法
CN109582453A (zh) * 2018-11-29 2019-04-05 北京元心科技有限公司 多系统间协调调度的方法、装置及电子设备
US20200174814A1 (en) * 2018-11-30 2020-06-04 Nutanix, Inc. Systems and methods for upgrading hypervisor locally
US10650776B1 (en) * 2018-12-28 2020-05-12 Lenovo (Singapore) Pte. Ltd. Information processing device and controlling method for multiple operating systems
CN109714642B (zh) * 2018-12-29 2022-03-08 深圳Tcl数字技术有限公司 Linux应用复用于智能系统的方法、智能电视及存储介质
BR102019000921A2 (pt) * 2019-01-16 2020-08-04 Samsung Eletrônica da Amazônia Ltda. Sistema para habilitar uma experiência de desktop completa com base em um dispositivo móvel
US10852901B2 (en) 2019-01-21 2020-12-01 Promethean Limited Systems and methods for user interface adjustment, customization, and placement
US10558824B1 (en) 2019-02-04 2020-02-11 S2 Systems Corporation Application remoting using network vector rendering
US10552639B1 (en) 2019-02-04 2020-02-04 S2 Systems Corporation Local isolator application with cohesive application-isolation interface
US11880422B2 (en) 2019-02-04 2024-01-23 Cloudflare, Inc. Theft prevention for sensitive information
US10452868B1 (en) 2019-02-04 2019-10-22 S2 Systems Corporation Web browser remoting using network vector rendering
CN110618876B (zh) * 2019-03-21 2023-05-23 麒麟软件有限公司 一种基于飞腾平台与共享内核的Linux与Android并存和交互方法
US10986089B2 (en) 2019-04-11 2021-04-20 Kas Kasravi Virtual mobile device system and method thereof
JP2020177074A (ja) * 2019-04-16 2020-10-29 株式会社デンソー 車両用装置、車両用装置の制御方法
US11372965B2 (en) * 2019-05-10 2022-06-28 Microsoft Technology Licensing, Llc Application with self-configuring accessibility settings
US11786694B2 (en) 2019-05-24 2023-10-17 NeuroLight, Inc. Device, method, and app for facilitating sleep
CN110427251A (zh) * 2019-07-25 2019-11-08 吉旗(成都)科技有限公司 一种针对iOS CoreData数据库存储的优化方法
CN110515667B (zh) * 2019-08-26 2023-04-11 武汉蓝星科技股份有限公司 一种基于linux内核的终端双系统显示切换方法及终端双系统
US11347756B2 (en) * 2019-08-26 2022-05-31 Microsoft Technology Licensing, Llc Deep command search within and across applications
US11194699B2 (en) * 2019-09-17 2021-12-07 Red Hat, Inc. Compatibility testing with different environment configurations
CN112788377A (zh) * 2019-11-04 2021-05-11 海信视像科技股份有限公司 一种显示设备及信息提示方法
US11361156B2 (en) 2019-11-18 2022-06-14 Monday.Com Digital processing systems and methods for real-time status aggregation in collaborative work systems
CN110769320B (zh) * 2019-11-19 2021-10-15 三星电子(中国)研发中心 一种智能设备分享内容的方法、系统及装置
US11526325B2 (en) 2019-12-27 2022-12-13 Abalta Technologies, Inc. Projection, control, and management of user device applications using a connected resource
US20240184989A1 (en) 2020-05-01 2024-06-06 Monday.com Ltd. Digital processing systems and methods for virtualfile-based electronic white board in collaborative work systems systems
EP4143732A1 (en) 2020-05-01 2023-03-08 Monday.com Ltd. Digital processing systems and methods for enhanced collaborative workflow and networking systems, methods, and devices
CN112346792B (zh) * 2020-06-11 2021-09-21 广州锦行网络科技有限公司 一种基于Linux系统的端口复用方法
US11520598B2 (en) * 2020-07-01 2022-12-06 Anthony Donte Ebron Multi-processor mobile computing device
KR20220017193A (ko) * 2020-08-04 2022-02-11 삼성전자주식회사 전자 장치 및 전자 장치가 외부 장치 디스플레이 상에 어플리케이션 화면을 제공하는 방법
US11900046B2 (en) 2020-08-07 2024-02-13 Microsoft Technology Licensing, Llc Intelligent feature identification and presentation
US11019106B1 (en) 2020-09-22 2021-05-25 Netskope, Inc. Remotely accessed controlled contained environment
EP3992795A1 (en) * 2020-10-29 2022-05-04 Jolla Ltd. Computer system executing multiple operating systems
CN112379941B (zh) * 2020-11-13 2023-05-09 武汉蓝星科技股份有限公司 一种基于Linux内核的双系统设置项管理系统及其管理方法
CN112416629B (zh) * 2020-12-10 2023-07-25 深圳市富途网络科技有限公司 数据互通方法、系统及存储介质
CN112631538A (zh) * 2020-12-30 2021-04-09 安徽鸿程光电有限公司 显示方法、装置、设备及计算机存储介质
US11531452B2 (en) 2021-01-14 2022-12-20 Monday.com Ltd. Digital processing systems and methods for group-based document edit tracking in collaborative work systems
CN113220474B (zh) * 2021-04-21 2022-08-30 麒麟软件有限公司 一种基于Android-EMUGL的安卓应用共享Linux系统屏幕数据的方法
US11604657B2 (en) * 2021-04-30 2023-03-14 Ncr Corporation Containerized point-of-sale (POS) system and technique for operating
US12056664B2 (en) 2021-08-17 2024-08-06 Monday.com Ltd. Digital processing systems and methods for external events trigger automatic text-based document alterations in collaborative work systems
US11665638B2 (en) 2021-08-26 2023-05-30 Apple Inc. Application and service context aware cell selection
US11599235B1 (en) * 2021-09-21 2023-03-07 Salesforce, Inc. Mobile-generated desktop reminders
CN113852718B (zh) * 2021-09-26 2022-11-15 北京字节跳动网络技术有限公司 语音通道建立方法、装置、电子设备及存储介质
CN113867988A (zh) * 2021-09-29 2021-12-31 展讯通信(深圳)有限公司 通用远程通信调用架构及方法
CN113900754B (zh) * 2021-10-09 2023-10-31 深圳技德智能科技研究院有限公司 共享桌面方法、装置、计算机设备和存储介质
US12105948B2 (en) 2021-10-29 2024-10-01 Monday.com Ltd. Digital processing systems and methods for display navigation mini maps
KR102664915B1 (ko) * 2021-12-06 2024-05-17 엘지전자 주식회사 디스플레이 장치 및 그의 동작 방법
CN114253648B (zh) * 2021-12-24 2024-02-09 武汉噢易云计算股份有限公司 一种远程应用虚拟化方法与装置
WO2023143099A1 (zh) * 2022-01-29 2023-08-03 华为技术有限公司 一种数据聚合方法及计算系统
WO2023194938A1 (en) * 2022-04-06 2023-10-12 New York University In Abu Dhabi Corporation System, method and computer-accessible medium for a zero-copy data-coherent shared-memory inter-process communication system
US20230409357A1 (en) * 2022-05-25 2023-12-21 Citrix Systems, Inc. Asymmetric workspace application notification and interaction
WO2024102208A1 (en) * 2022-11-11 2024-05-16 Microsoft Technology Licensing, Llc Interoperability between actor frameworks and asynchronous frameworks
US11741071B1 (en) 2022-12-28 2023-08-29 Monday.com Ltd. Digital processing systems and methods for navigating and viewing displayed content
US11886683B1 (en) 2022-12-30 2024-01-30 Monday.com Ltd Digital processing systems and methods for presenting board graphics
US11893381B1 (en) 2023-02-21 2024-02-06 Monday.com Ltd Digital processing systems and methods for reducing file bundle sizes
US12056255B1 (en) 2023-11-28 2024-08-06 Monday.com Ltd. Digital processing systems and methods for facilitating the development and implementation of applications in conjunction with a serverless environment
CN118709793A (zh) * 2024-08-27 2024-09-27 成都阿加犀智能科技有限公司 一种深度学习推理方法、装置、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1512337A (zh) * 2002-12-27 2004-07-14 联想(北京)有限公司 一种计算机启动及多操作系统切换的方法
CN1997966A (zh) * 2004-07-06 2007-07-11 茵姆拜迪欧有限公司 用于多个内核的并行执行的方法和系统
US20080082815A1 (en) * 2001-12-07 2008-04-03 International Business Machines Corporation Apparatus, method and program product for initiating computer system operation
CN101382833A (zh) * 2007-09-05 2009-03-11 宏达国际电子股份有限公司 具有多种操作系统的系统、电子装置及其运作方法

Family Cites Families (260)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4207551A (en) * 1976-03-12 1980-06-10 Hans Kautzky Pressure transducer
US5396630A (en) * 1992-10-06 1995-03-07 International Business Machines Corporation Method and system for object management across process boundries in a data processing system
US5673403A (en) 1992-11-13 1997-09-30 International Business Machines Corporation Method and system for displaying applications of different operating systems on a single system using the user interface of the different operating systems
JPH06301555A (ja) * 1993-02-26 1994-10-28 Internatl Business Mach Corp <Ibm> マイクロカーネル上の複数の共存オペレーティング・システム・パーソナリティ用のシステム
US5956030A (en) 1993-06-11 1999-09-21 Apple Computer, Inc. Computer system with graphical user interface including windows having an identifier within a control region on the display
JP3437238B2 (ja) * 1994-02-04 2003-08-18 キヤノン株式会社 コンピュータ、コンピュータシステム及びその制御方法
JPH08212086A (ja) * 1994-09-30 1996-08-20 Microsoft Corp オフィスマシンのオペレーティングシステム及び方法
JPH08115144A (ja) * 1994-10-17 1996-05-07 Toshiba Corp 分離型ワークステーション装置
US6108715A (en) 1994-12-13 2000-08-22 Microsoft Corporation Method and system for invoking remote procedure calls
CA2173695A1 (en) 1995-04-14 1996-10-15 Panagiotis Kougiouris Method and system for providing interoperability among processes written to execute on different operating systems
US6260075B1 (en) 1995-06-19 2001-07-10 International Business Machines Corporation System and method for providing shared global offset table for common shared library in a computer system
US5874960A (en) * 1995-07-05 1999-02-23 Microsoft Corporation Method and system for sharing applications between computer systems
JPH0926769A (ja) 1995-07-10 1997-01-28 Hitachi Ltd 画像表示装置
US6477585B1 (en) 1995-08-18 2002-11-05 International Business Machines Corporation Filter mechanism for an event management service
US5874928A (en) 1995-08-24 1999-02-23 Philips Electronics North America Corporation Method and apparatus for driving a plurality of displays simultaneously
US6091414A (en) * 1996-10-31 2000-07-18 International Business Machines Corporation System and method for cross-environment interaction in a computerized graphical interface environment
US6018340A (en) 1997-01-27 2000-01-25 Microsoft Corporation Robust display management in a multiple monitor environment
US6157959A (en) 1997-07-03 2000-12-05 Tandem Computers, Incorporated Method and apparatus for providing portable kernel-mode support for fast interprocess communication
US5846257A (en) * 1997-08-15 1998-12-08 Nexus Medical System, Inc. Llc Pressure sensor for a surgical system
US6381682B2 (en) 1998-06-10 2002-04-30 Compaq Information Technologies Group, L.P. Method and apparatus for dynamically sharing memory in a multiprocessor system
US6178503B1 (en) 1998-09-11 2001-01-23 Powerquest Corporation Managing multiple operating systems on a single computer
US6507336B1 (en) 1999-02-04 2003-01-14 Palm, Inc. Keyboard for a handheld computer
US7334235B2 (en) 1999-06-16 2008-02-19 Microsoft Corporation Operating system application programming interfaces and methods of using operating systems
US6460136B1 (en) * 1999-07-12 2002-10-01 Hewlett-Packard Co., Method and apparatus for loading an operating system kernel from a shared disk memory
US7284203B1 (en) 1999-07-27 2007-10-16 Verizon Laboratories Inc. Method and apparatus for application sharing interface
US7007240B1 (en) 1999-08-03 2006-02-28 Gateway Inc. Method and system for displaying non-overlapping program and auxiliary windows
AU7357900A (en) 1999-09-20 2001-04-24 Neopoint, Inc. Automatic device synchronization apparatus and method using battery pack for data exchange
JP4395223B2 (ja) 1999-09-24 2010-01-06 株式会社日立製作所 表示装置、表示方法、および、ナビゲーション装置
US6917963B1 (en) 1999-10-05 2005-07-12 Veritas Operating Corporation Snapshot image for the application state of unshareable and shareable data
US20080062625A1 (en) 1999-10-18 2008-03-13 Jeffrey Batio Portable computer for dual, rotatable screens
KR100679809B1 (ko) 1999-12-28 2007-02-07 주식회사 케이티 분산객체간 통신장치 및 방법
JP2001209466A (ja) * 2000-01-26 2001-08-03 Internatl Business Mach Corp <Ibm> コンピュータの制御方法、コンピュータ、及び記録媒体
US20100005396A1 (en) 2000-02-18 2010-01-07 Nason D David Method and system for controlling a comlementary user interface on a display surface
JP4402797B2 (ja) 2000-03-02 2010-01-20 株式会社日立製作所 情報処理装置
AU2001253702A1 (en) 2000-04-19 2001-10-30 Broadcom Corporation Apparatus and method for persistent display interface
US20020158811A1 (en) 2000-06-02 2002-10-31 Davis Terry Glenn Dual-monitor duo-workpad TM device
US7210099B2 (en) 2000-06-12 2007-04-24 Softview Llc Resolution independent vector display of internet content
JP5081345B2 (ja) 2000-06-13 2012-11-28 富士フイルム株式会社 光電変換素子の製造方法
CN101284525A (zh) 2000-06-20 2008-10-15 株式会社日立制作所 车辆行驶控制装置
US6728722B1 (en) 2000-08-28 2004-04-27 Sun Microsystems, Inc. General data structure for describing logical data spaces
US20030020954A1 (en) 2001-07-26 2003-01-30 Charlie Udom Versatile printing from portable electronic device
GB0028890D0 (en) 2000-11-27 2001-01-10 Isis Innovation Visual display screen arrangement
US20030017417A1 (en) 2001-07-23 2003-01-23 Goodin Jonathan William Method for obtaining a lithographic printing surface using a metal complex
US6608629B2 (en) 2001-03-16 2003-08-19 Mitsubishi Electric Research Laboratories, Inc. Distance based constraints for adaptively sampled distance fields
TW502210B (en) * 2001-04-19 2002-09-11 Asustek Comp Inc Computer system capable of switching operating system
US6961941B1 (en) 2001-06-08 2005-11-01 Vmware, Inc. Computer configuration for resource management in systems including a virtual machine
US7173627B2 (en) 2001-06-29 2007-02-06 Intel Corporation Apparatus, method and system with a graphics-rendering engine having a graphics context manager
US8933949B2 (en) 2010-10-01 2015-01-13 Z124 User interaction across cross-environment applications through an extended graphics context
US9152582B2 (en) 2010-10-01 2015-10-06 Z124 Auto-configuration of a docked system in a multi-OS environment
US9047102B2 (en) 2010-10-01 2015-06-02 Z124 Instant remote rendering
US20130024778A1 (en) 2011-07-13 2013-01-24 Z124 Dynamic cross-environment application configuration/orientation
US8819705B2 (en) 2010-10-01 2014-08-26 Z124 User interaction support across cross-environment applications
US8966379B2 (en) 2010-10-01 2015-02-24 Z124 Dynamic cross-environment application configuration/orientation in an active user environment
US20130024812A1 (en) 2011-07-13 2013-01-24 Z124 Foreground/background assortment of hidden windows
US8726294B2 (en) 2010-10-01 2014-05-13 Z124 Cross-environment communication using application space API
US6970173B2 (en) 2001-09-14 2005-11-29 Ati Technologies, Inc. System for providing multiple display support and method thereof
JP4681225B2 (ja) 2001-10-17 2011-05-11 ベプテック インコーポレイテッド オペレーティングシステムにわたる通信の方法
US20030079205A1 (en) 2001-10-22 2003-04-24 Takeshi Miyao System and method for managing operating systems
US20030115443A1 (en) 2001-12-18 2003-06-19 Cepulis Darren J. Multi-O/S system and pre-O/S boot technique for partitioning resources and loading multiple operating systems thereon
US7143417B2 (en) 2002-01-10 2006-11-28 International Business Machines Corporation Notification services within a unified communications service
JPWO2003077097A1 (ja) 2002-03-08 2005-07-07 三菱電機株式会社 移動体通信装置、移動体通信装置の表示制御方法、並びに、そのプログラム
US20030226116A1 (en) 2002-03-08 2003-12-04 Katie Kuwata Method and system for implementing a historical buffer
US20030179541A1 (en) 2002-03-21 2003-09-25 Peter Sullivan Double screen portable computer
FR2840082B1 (fr) * 2002-05-24 2006-04-07 Bull Sa Procede d'echange d'informations entre systemes d'exploitation cohabitant sur un meme ordinateur
GB2394799B (en) 2002-07-31 2006-01-25 Hewlett Packard Co Improvements relating to mobile printing
US20070022155A1 (en) 2002-08-22 2007-01-25 Owens David H Method and system for integrating enterprise software applications with desktop software applications
EP1540840A4 (en) 2002-09-17 2008-04-16 Si Han Kim MULTI-DISPLAY DEVICE
US7176943B2 (en) 2002-10-08 2007-02-13 Microsoft Corporation Intelligent windows bumping method and system
US8508643B2 (en) 2003-01-17 2013-08-13 Hewlett-Packard Development Company, L.P. Method and system for processing an image
US7266774B2 (en) 2003-01-23 2007-09-04 International Business Machines Corporation Implementing a second computer system as an interface for first computer system
US6990573B2 (en) * 2003-02-05 2006-01-24 Dell Products L.P. System and method for sharing storage to boot multiple servers
US7389512B2 (en) 2003-05-09 2008-06-17 Sun Microsystems, Inc. Interprocess communication within operating system partitions
US7461080B1 (en) * 2003-05-09 2008-12-02 Sun Microsystems, Inc. System logging within operating system partitions using log device nodes that are access points to a log driver
US7167974B2 (en) * 2003-05-19 2007-01-23 Hewlett-Packard Development Company, L.P. Multiple saved kernel configurations
EP1503286B1 (en) * 2003-07-30 2014-09-03 Jaluna SA Multiple operating system networking
US7152186B2 (en) 2003-08-04 2006-12-19 Arm Limited Cross-triggering of processing devices
US7808549B2 (en) 2003-08-21 2010-10-05 Alps Electric Co., Ltd. Electronic device
US7181251B2 (en) 2003-10-22 2007-02-20 Nokia Corporation Mobile communication terminal with multi orientation user interface
TW200525421A (en) 2004-01-30 2005-08-01 Intervideo Digital Technology Corp Structure of shared application program in operating system and method thereof
US7483991B2 (en) 2004-03-25 2009-01-27 Microsoft Corporation Instant messaging communications channel for transporting data between objects executing within a managed code environment
JP2005305867A (ja) 2004-04-22 2005-11-04 Seiko Epson Corp 画像処理システム、画像表示装置、プリンタおよび印刷方法
US7478204B2 (en) 2004-04-29 2009-01-13 International Business Machines Corporation Efficient sharing of memory between applications running under different operating systems on a shared hardware system
US20060031572A1 (en) 2004-05-18 2006-02-09 Microsoft Corporation Event broker
WO2005119404A1 (en) 2004-06-01 2005-12-15 Beech Technology Incorporated Portable, folding and separable multi-display computing system
JP2005346244A (ja) 2004-06-01 2005-12-15 Nec Corp 情報表示装置及びその操作方法
KR100578592B1 (ko) * 2004-06-23 2006-05-12 공정배 서버/클라이언트 기반에서 온라인 이기종 운영 체제 제공 시스템 및 방법
US7996785B2 (en) 2004-06-30 2011-08-09 Microsoft Corporation Systems and methods for integrating application windows in a virtual machine environment
US7424601B2 (en) 2004-07-07 2008-09-09 Yongyong Xu Methods and systems for running multiple operating systems in a single mobile device
US20060058658A1 (en) * 2004-09-13 2006-03-16 Siemens Medical Solutions Usa, Inc. Communications between co-located operating systems for medical diagnostic ultrasound and other systems
US7489503B2 (en) 2004-09-21 2009-02-10 Nokia Corporation Foldable electronic device
US20060082581A1 (en) 2004-10-14 2006-04-20 Microsoft Corporation Encoding for remoting graphics to decoder device
US20070285401A1 (en) 2004-11-09 2007-12-13 Sharp Kabushiki Kaisha Portable Information Terminal
US7290114B2 (en) 2004-11-17 2007-10-30 Intel Corporation Sharing data in a user virtual address range with a kernel virtual address range
US20060111921A1 (en) 2004-11-23 2006-05-25 Hung-Yang Chang Method and apparatus of on demand business activity management using business performance management loops
EP1662760A1 (en) 2004-11-30 2006-05-31 Sony Ericsson Mobile Communications AB Method for providing alerts in a mobile device and mobile device therefor
JP4738805B2 (ja) 2004-12-16 2011-08-03 株式会社リコー 画面共有システム、画面共有方法、画面共有プログラム
US20060139862A1 (en) 2004-12-23 2006-06-29 Yajun Wang Hinged electronic device with hinged screen
KR100616157B1 (ko) 2005-01-11 2006-08-28 와이더댄 주식회사 애플리케이션 연동 방법 및 그 시스템
TWI267752B (en) * 2005-01-17 2006-12-01 Lite On Technology Corp Multi-mode computer system and operating method thereof
US20060183505A1 (en) 2005-02-15 2006-08-17 Willrich Scott Consulting Group, Inc. Digital mobile planner
US7289084B2 (en) 2005-02-22 2007-10-30 John Michael Lesniak Computer display apparatus
GB0504326D0 (en) 2005-03-02 2005-04-06 Symbian Software Ltd Dual mode operating system for a computing device
US20060248471A1 (en) 2005-04-29 2006-11-02 Microsoft Corporation System and method for providing a window management mode
US7565535B2 (en) 2005-05-06 2009-07-21 Microsoft Corporation Systems and methods for demonstrating authenticity of a virtual machine using a security image
WO2007005562A2 (en) * 2005-06-30 2007-01-11 Phoenix Technologies Ltd. Shared file system management between independent operating systems
US7950008B2 (en) 2005-07-06 2011-05-24 International Business Machines Corporation Software installation in multiple operating systems
US7870558B2 (en) 2005-07-15 2011-01-11 Microsoft Corporation Handle passing using an inter-process communication
US20070074192A1 (en) * 2005-08-30 2007-03-29 Geisinger Nile J Computing platform having transparent access to resources of a host platform
US20070067769A1 (en) 2005-08-30 2007-03-22 Geisinger Nile J Method and apparatus for providing cross-platform hardware support for computer platforms
US20070074191A1 (en) * 2005-08-30 2007-03-29 Geisinger Nile J Software executables having virtual hardware, operating systems, and networks
US20070283324A1 (en) * 2005-08-30 2007-12-06 Geisinger Nile J System and method for creating programs that comprise several execution layers
US20070050765A1 (en) * 2005-08-30 2007-03-01 Geisinger Nile J Programming language abstractions for creating and controlling virtual computers, operating systems and networks
US20070050770A1 (en) * 2005-08-30 2007-03-01 Geisinger Nile J Method and apparatus for uniformly integrating operating system resources
US20070050751A1 (en) 2005-08-31 2007-03-01 Microsoft Corporation Automatic interoperation with legacy POS service and control objects
US7844301B2 (en) 2005-10-14 2010-11-30 Lg Electronics Inc. Method for displaying multimedia contents and mobile communications terminal capable of implementing the same
US20070136356A1 (en) 2005-12-12 2007-06-14 Microsoft Corporation Mechanism for drivers to create alternate namespaces
US9189291B2 (en) * 2005-12-12 2015-11-17 International Business Machines Corporation Sharing a kernel of an operating system among logical partitions
US8140997B2 (en) 2005-12-26 2012-03-20 International Business Machines Corporation Manipulating display of multiple display objects
KR20070082691A (ko) 2006-02-17 2007-08-22 삼성전자주식회사 디지털 멀티미디어 장치
JP2007226413A (ja) * 2006-02-22 2007-09-06 Hitachi Ltd メモリダンプ方法、メモリダンププログラム、及び、計算機システム
US7595810B2 (en) * 2006-03-22 2009-09-29 Apple Inc. Methods of manipulating a screen space of a display device
FR2899755B1 (fr) 2006-04-10 2008-10-10 Streamezzo Sa Procede de restitution adaptative d'au moins un contenu multimedia sur un dispositif de visualisation orientable d'un terminal
US20090278806A1 (en) 2008-05-06 2009-11-12 Matias Gonzalo Duarte Extended touch-sensitive control area for electronic device
US7987432B1 (en) 2006-04-25 2011-07-26 Parallels Holdings, Ltd. Seamless integration and installation of non-native application into native operating system
US20080282181A1 (en) 2006-05-02 2008-11-13 Siemens Medical Solutions Usa, Inc. Executable Application Configuration Information Processing System
KR100772875B1 (ko) 2006-05-22 2007-11-02 삼성전자주식회사 사용자 선호도에 따른 사용자 인터페이스를 설정하는 장치및 그 방법
US9201703B2 (en) 2006-06-07 2015-12-01 International Business Machines Corporation Sharing kernel services among kernels
US7880728B2 (en) 2006-06-29 2011-02-01 Microsoft Corporation Application switching via a touch screen interface
US20080024388A1 (en) 2006-07-29 2008-01-31 Oscar Bruce Two-sided display monitor apparatus
US9019300B2 (en) 2006-08-04 2015-04-28 Apple Inc. Framework for graphics animation and compositing operations
KR100811794B1 (ko) 2006-10-12 2008-03-10 삼성전자주식회사 휴대단말기의 블루투스 기능을 이용하여 프린터를 제어하는방법
JP4933304B2 (ja) 2006-10-16 2012-05-16 キヤノン株式会社 画像処理装置、その制御方法及びプログラム
WO2008050175A1 (en) 2006-10-27 2008-05-02 Nokia Corporation Method and apparatus for facilitating movement within a three dimensional graphical user interface
KR101144423B1 (ko) 2006-11-16 2012-05-10 엘지전자 주식회사 휴대 단말기 및 휴대 단말기의 화면 표시 방법
US20080119731A1 (en) 2006-11-20 2008-05-22 North American Medical Corporation Portable ultrasound with touch screen interface
US8332866B2 (en) 2006-11-29 2012-12-11 Qualcomm Incorporated Methods, systems, and apparatus for object invocation across protection domain boundaries
US8839105B2 (en) 2006-12-01 2014-09-16 International Business Machines Corporation Multi-display system and method supporting differing accesibility feature selection
US20080155103A1 (en) 2006-12-21 2008-06-26 Kimberly Tekavec Bailey AF UNIX Socket Across Systems in the Same Computer on Computer Systems that Support Multiple Operating System Images
US20090197641A1 (en) * 2008-02-06 2009-08-06 Broadcom Corporation Computing device with handheld and extended computing units
JP5246388B2 (ja) 2007-03-08 2013-07-24 日本電気株式会社 仮想装置構成システム、及びその方法
JP2010522370A (ja) * 2007-03-20 2010-07-01 サンギュ イ 移動型仮想マシンイメージ
US8789063B2 (en) 2007-03-30 2014-07-22 Microsoft Corporation Master and subordinate operating system kernels for heterogeneous multiprocessor systems
US9104494B2 (en) 2007-04-13 2015-08-11 Nec Corporation Virtual computer system and its optimization method
WO2008132760A2 (en) 2007-04-26 2008-11-06 Hewlett-Packard Development Company, L.P. Method and system for allocating memory in a computing environment
US8285259B2 (en) 2007-05-29 2012-10-09 Microsoft Corporation Resource aggregation in an opportunistic network
US8004493B2 (en) 2007-06-08 2011-08-23 Apple Inc. Methods and systems for providing sensory information to devices and peripherals
KR101320504B1 (ko) 2007-07-10 2013-10-22 엘지전자 주식회사 휴대 단말기
US8458612B2 (en) 2007-07-29 2013-06-04 Hewlett-Packard Development Company, L.P. Application management framework for web applications
WO2009039375A2 (en) 2007-09-20 2009-03-26 C & S Operations, Inc. Computer system
US9003173B2 (en) 2007-09-28 2015-04-07 Microsoft Technology Licensing, Llc Multi-OS (operating system) boot via mobile device
GB2454033A (en) 2007-10-24 2009-04-29 Plastic Logic Ltd Portable paperless electronic printer
US20090158299A1 (en) * 2007-10-31 2009-06-18 Carter Ernst B System for and method of uniform synchronization between multiple kernels running on single computer systems with multiple CPUs installed
KR100883208B1 (ko) 2007-12-13 2009-02-13 성균관대학교산학협력단 가상화 기술을 기반으로 하여 소프트웨어의 업데이트가가능한 이동통신 단말기 및 그 업데이트 방법
TWI358028B (en) 2007-12-25 2012-02-11 Htc Corp Electronic device capable of transferring object b
US20090176571A1 (en) 2008-01-07 2009-07-09 Ippasa, Llc System for and method of operating video game system with control actuator-equipped stylus
US7960945B1 (en) 2008-01-30 2011-06-14 Google Inc. Estimating remaining use time of a mobile device
US9154606B2 (en) 2008-01-30 2015-10-06 Google Inc. Notification of mobile device events
US7870321B2 (en) * 2008-02-06 2011-01-11 Broadcom Corporation Extended computing unit with stand-alone application
US8195860B2 (en) * 2008-02-06 2012-06-05 Broadcom Corporation Computing device with handheld and extended computing devices
US20090198798A1 (en) * 2008-02-06 2009-08-06 Broadcom Corporation Handheld computing unit back-up system
US20090198989A1 (en) * 2008-02-06 2009-08-06 Broadcom Corporation Bios for a computing device with handheld and extended computing units
US20090196280A1 (en) * 2008-02-06 2009-08-06 Broadcom Corporation Extension unit and handheld computing unit
US7895365B2 (en) * 2008-02-06 2011-02-22 Broadcom Corporation File storage for a computing device with handheld and extended computing units
US8064952B2 (en) * 2008-02-06 2011-11-22 Broadcom Corporation A/V control for a computing device with handheld and extended computing units
US8151100B2 (en) * 2008-02-06 2012-04-03 Broadcom Corporation Operating system for a computing device with handheld and extended computing units
CN101520745B (zh) 2008-02-27 2012-03-28 联想(北京)有限公司 数据处理设备及其状态切换方法
CN101526836A (zh) 2008-03-03 2009-09-09 鸿富锦精密工业(深圳)有限公司 双屏笔记本电脑
US20100164836A1 (en) 2008-03-11 2010-07-01 Truview Digital, Inc. Digital photo album, digital book, digital reader
US7930328B2 (en) 2008-03-31 2011-04-19 Lenovo (Singapore) Pte. Ltd. Apparatus, system, and method for file system sharing
EP2109080A1 (en) 2008-04-09 2009-10-14 IBBT vzw A method and device for processing and presenting medical images
US9286027B2 (en) 2008-04-11 2016-03-15 T-Mobile Usa, Inc. Digital picture frame having communication capabilities
US7949633B1 (en) 2008-05-12 2011-05-24 Adobe Systems Incorporated Shared edit access of electronic content
ATE504155T1 (de) 2008-05-29 2011-04-15 Lg Electronics Inc Transparente anzeige und betriebsverfahren dafür
US8230180B2 (en) 2008-06-11 2012-07-24 Samsung Electronics Co., Ltd. Shared memory burst communications
CN102089729A (zh) 2008-06-12 2011-06-08 卡诺瓦科技有限公司 双屏显示系统
US8359372B2 (en) 2008-06-29 2013-01-22 Microsoft Corporation Automatic transfer of information through physical docking of devices
JP5522041B2 (ja) 2008-06-30 2014-06-18 日本電気株式会社 情報処理装置、表示制御方法、及びプログラム
US20090322690A1 (en) 2008-06-30 2009-12-31 Nokia Corporation Screen display
US20100007603A1 (en) 2008-07-14 2010-01-14 Sony Ericsson Mobile Communications Ab Method and apparatus for controlling display orientation
EP2309369B1 (en) 2008-07-25 2016-09-28 NEC Corporation Information processing device, information processing program, and display control method
US8191004B2 (en) 2008-08-06 2012-05-29 Microsoft Corporation User feedback correlated to specific user interface or application features
US20100046026A1 (en) 2008-08-21 2010-02-25 Samsung Electronics Co., Ltd. Image forming apparatus and image forming method
US8613394B2 (en) 2008-08-29 2013-12-24 The Invention Science Fund I, Llc Bendable electronic interface external control system and method
US8933874B2 (en) 2008-09-08 2015-01-13 Patrik N. Lundqvist Multi-panel electronic device
US8803816B2 (en) 2008-09-08 2014-08-12 Qualcomm Incorporated Multi-fold mobile device with configurable interface
US9009984B2 (en) 2008-09-08 2015-04-21 Qualcomm Incorporated Multi-panel electronic device
US8860632B2 (en) 2008-09-08 2014-10-14 Qualcomm Incorporated Multi-panel device with configurable interface
US8866840B2 (en) 2008-09-08 2014-10-21 Qualcomm Incorporated Sending a parameter based on screen size or screen resolution of a multi-panel electronic device to a server
US8165558B2 (en) * 2008-09-08 2012-04-24 Celio Technology Corporation Client device for cellular telephone as server
US8836611B2 (en) 2008-09-08 2014-09-16 Qualcomm Incorporated Multi-panel device with configurable interface
US20100060572A1 (en) * 2008-09-11 2010-03-11 Ely Tsern Display device for interfacing with a handheld computer device that dynamically generates a different user environment for the display device
US8896632B2 (en) 2008-09-12 2014-11-25 Qualcomm Incorporated Orienting displayed elements relative to a user
KR101501167B1 (ko) 2008-10-20 2015-03-10 삼성전자주식회사 다중 모뎀을 구비한 이동통신 단말기에서 다중 운용 체제를운용하기 위한 장치 및 방법
JP4935796B2 (ja) 2008-10-30 2012-05-23 富士ゼロックス株式会社 表示制御装置、画像形成装置及びプログラム
US8352967B2 (en) 2008-11-10 2013-01-08 Google Inc. Safe browser plugins using native code modules
US9075457B2 (en) 2008-12-12 2015-07-07 Maxim Integrated Products, Inc. System and method for interfacing applications processor to touchscreen display for reduced data transfer
US7864524B2 (en) 2008-12-24 2011-01-04 Research In Motion Limited Multiple-fold portable electronic device
CN101770399B (zh) * 2009-01-05 2014-04-23 联想(北京)有限公司 一种电子设备及切换其操作系统桌面的方法、装置
US8300022B2 (en) 2009-01-09 2012-10-30 International Business Machines Corporation Dynamically reconfigurable touch screen displays
KR101569776B1 (ko) 2009-01-09 2015-11-19 삼성전자주식회사 접히는 표시부를 가지는 휴대 단말기 및 이의 운용 방법
KR20100083640A (ko) 2009-01-14 2010-07-22 삼성전자주식회사 디스플레이 장치, 스캐너, 디스플레이 시스템 및 이를 이용한 디스플레이 방법
KR101608748B1 (ko) 2009-02-18 2016-04-21 삼성전자주식회사 탈부착 가능한 서브 디스플레이부를 구비하는 휴대 단말기
US20100211769A1 (en) * 2009-02-19 2010-08-19 Subramonian Shankar Concurrent Execution of a Smartphone Operating System and a Desktop Operating System
US20100217835A1 (en) * 2009-02-26 2010-08-26 Broadcom Corporation Dockable handheld computing device with file transfer and methods for use therewith
US8090890B2 (en) * 2009-02-26 2012-01-03 Broadcom Corporation Dockable handheld computing device with video application and methods for use therewith
US7987309B2 (en) * 2009-02-26 2011-07-26 Broadcom Corporation Dockable handheld computing device with graphical user interface and methods for use therewith
US8355755B2 (en) 2009-03-03 2013-01-15 Lg Electronics Inc. Mobile terminal
US8446377B2 (en) 2009-03-24 2013-05-21 Microsoft Corporation Dual screen portable touch sensitive computing system
US20100251233A1 (en) 2009-03-25 2010-09-30 Honeywell International Inc. Embedded computing system user interface emulated on a separate computing device
US8194001B2 (en) 2009-03-27 2012-06-05 Microsoft Corporation Mobile computer device display postures
US8630088B2 (en) * 2009-03-27 2014-01-14 Qualcomm Incorporated Portable docking station for a portable computing device
US8707061B2 (en) * 2009-03-27 2014-04-22 Qualcomm Incorporated System and method of providing scalable computing between a portable computing device and a portable computing device docking station
US7864517B2 (en) 2009-03-30 2011-01-04 Microsoft Corporation Mobile computer device binding feedback
US8776088B2 (en) * 2009-03-30 2014-07-08 Microsoft Corporation Operating system distributed over heterogeneous platforms
WO2010114007A1 (ja) 2009-03-31 2010-10-07 日本電気株式会社 携帯端末装置、並びに、その制御プログラム及び複数表示画面制御方法
TWI400652B (zh) 2009-06-11 2013-07-01 Insyde Software Corp Dual operating system parallel processing methods, recording media and computer program products
US20100321275A1 (en) 2009-06-18 2010-12-23 Microsoft Corporation Multiple display computing device with position-based operating modes
US8839422B2 (en) 2009-06-30 2014-09-16 George Mason Research Foundation, Inc. Virtual browsing environment
US9389877B2 (en) 2009-07-20 2016-07-12 Google Technology Holdings LLC Multi-environment operating system
US9348633B2 (en) * 2009-07-20 2016-05-24 Google Technology Holdings LLC Multi-environment operating system
US9367331B2 (en) * 2009-07-20 2016-06-14 Google Technology Holdings LLC Multi-environment operating system
US9372711B2 (en) 2009-07-20 2016-06-21 Google Technology Holdings LLC System and method for initiating a multi-environment operating system
US8868899B2 (en) 2009-07-20 2014-10-21 Motorola Mobility Llc System and method for switching between environments in a multi-environment operating system
US8847984B2 (en) 2009-07-27 2014-09-30 Disney Enterprises, Inc. System and method for forming a composite image in a portable computing device having a dual screen display
JP2011028673A (ja) 2009-07-29 2011-02-10 Kyocera Corp 携帯端末装置
US20110102314A1 (en) 2009-10-30 2011-05-05 Xerox Corporation Dual-screen electronic reader with tilt detection for page navigation
US20110113329A1 (en) 2009-11-09 2011-05-12 Michael Pusateri Multi-touch sensing device for use with radiological workstations and associated methods of use
US8797268B2 (en) 2009-11-18 2014-08-05 Qualcomm Incorporated Folding mobile device
KR20110092802A (ko) 2010-02-10 2011-08-18 삼성전자주식회사 복수개의 표시부를 가지는 단말기의 데이터 운용 방법 및 이를 지원하는 단말기
US9454304B2 (en) 2010-02-25 2016-09-27 Microsoft Technology Licensing, Llc Multi-screen dual tap gesture
US20110210922A1 (en) 2010-02-26 2011-09-01 Research In Motion Limited Dual-screen mobile device
JP5800501B2 (ja) 2010-03-12 2015-10-28 任天堂株式会社 表示制御プログラム、表示制御装置、表示制御システム、及び、表示制御方法
US20110239142A1 (en) 2010-03-25 2011-09-29 Nokia Corporation Method and apparatus for providing content over multiple displays
US9740507B2 (en) 2010-04-01 2017-08-22 Citrix Systems, Inc. Interacting with remote applications displayed within a virtual desktop of a tablet computing device
US9213480B2 (en) 2010-04-08 2015-12-15 Nokia Technologies Oy Method, apparatus and computer program product for joining the displays of multiple devices
JP4865053B2 (ja) 2010-04-22 2012-02-01 株式会社東芝 情報処理装置およびドラッグ制御方法
US8400564B2 (en) 2010-05-03 2013-03-19 Microsoft Corporation Image capture
US9851747B2 (en) 2010-05-21 2017-12-26 Peter G. Winsky Electronic book reader with closely juxtaposed display screens
US20110291964A1 (en) 2010-06-01 2011-12-01 Kno, Inc. Apparatus and Method for Gesture Control of a Dual Panel Electronic Device
US8954099B2 (en) 2010-06-16 2015-02-10 Qualcomm Incorporated Layout design of proximity sensors to enable shortcuts
US8589952B2 (en) * 2010-06-30 2013-11-19 Palm, Inc. Dual operating system operation and configuration
US20120005602A1 (en) 2010-07-02 2012-01-05 Nokia Corporation Methods and apparatuses for facilitating task switching
US8397245B2 (en) 2010-07-12 2013-03-12 International Business Machines Corporation Managing loading and unloading of shared kernel extensions in isolated virtual space
KR101688942B1 (ko) 2010-09-03 2016-12-22 엘지전자 주식회사 다중 디스플레이에 기반한 사용자 인터페이스 제공 방법 및 이를 이용하는 이동 단말기
US8700987B2 (en) 2010-09-09 2014-04-15 Sony Corporation Annotating E-books / E-magazines with application results and function calls
US20120066624A1 (en) 2010-09-13 2012-03-15 Ati Technologies Ulc Method and apparatus for controlling movement of graphical user interface objects
US8724696B2 (en) 2010-09-23 2014-05-13 Vmware, Inc. System and method for transmitting video and user interface elements
CN103229156B (zh) 2010-10-01 2016-08-10 Flex Electronics ID Co.,Ltd. 多操作系统环境中的对接系统的自动配置
US20130312106A1 (en) 2010-10-01 2013-11-21 Z124 Selective Remote Wipe
EP2622443B1 (en) 2010-10-01 2022-06-01 Z124 Drag move gesture in user interface
US9430122B2 (en) 2010-10-01 2016-08-30 Z124 Secondary single screen mode activation through off-screen gesture area activation
US9052800B2 (en) 2010-10-01 2015-06-09 Z124 User interface with stacked application management
US8761831B2 (en) 2010-10-15 2014-06-24 Z124 Mirrored remote peripheral interface
US8369893B2 (en) 2010-12-31 2013-02-05 Motorola Mobility Llc Method and system for adapting mobile device to accommodate external display
US20120176413A1 (en) 2011-01-11 2012-07-12 Qualcomm Incorporated Methods and apparatuses for mobile device display mode selection based on motion direction
US20120278747A1 (en) 2011-04-28 2012-11-01 Motorola Mobility, Inc. Method and apparatus for user interface in a system having two operating system environments
US9354900B2 (en) 2011-04-28 2016-05-31 Google Technology Holdings LLC Method and apparatus for presenting a window in a system having two operating system environments
US8810533B2 (en) 2011-07-20 2014-08-19 Z124 Systems and methods for receiving gesture inputs spanning multiple input devices
US8842057B2 (en) 2011-09-27 2014-09-23 Z124 Detail on triggers: transitional states
DE112012004767T5 (de) 2011-11-16 2014-11-06 Flextronics Ap, Llc Vollständiges Fahrzeugökosystem

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080082815A1 (en) * 2001-12-07 2008-04-03 International Business Machines Corporation Apparatus, method and program product for initiating computer system operation
CN1512337A (zh) * 2002-12-27 2004-07-14 联想(北京)有限公司 一种计算机启动及多操作系统切换的方法
CN1997966A (zh) * 2004-07-06 2007-07-11 茵姆拜迪欧有限公司 用于多个内核的并行执行的方法和系统
CN101382833A (zh) * 2007-09-05 2009-03-11 宏达国际电子股份有限公司 具有多种操作系统的系统、电子装置及其运作方法

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106462531A (zh) * 2014-06-23 2017-02-22 高通股份有限公司 用于经由无线对接提供替代的可视化的方法、装置和计算机可读介质
TWI502296B (zh) * 2014-08-27 2015-10-01 Hiwin Tech Corp 機器人的教導裝置
CN105487845A (zh) * 2014-09-18 2016-04-13 联想(北京)有限公司 一种信息处理方法及电子设备
CN105487845B (zh) * 2014-09-18 2018-08-31 联想(北京)有限公司 一种信息处理方法及电子设备
CN107249954A (zh) * 2014-12-29 2017-10-13 罗伯特·博世有限公司 用于使用个性化驾驶简档操作自主车辆的系统和方法
CN108367796A (zh) * 2015-08-26 2018-08-03 博洛斯股份公司 用于自行车的控制设备
CN106547628B (zh) * 2016-11-29 2020-05-01 北京元心科技有限公司 多系统的资源释放方法及装置
CN106547628A (zh) * 2016-11-29 2017-03-29 北京元心科技有限公司 多系统的资源释放方法及装置
CN107943606A (zh) * 2017-11-22 2018-04-20 上海博泰悦臻电子设备制造有限公司 双操作系统下的故障处理方法及装置、存储器及电子设备
CN107943606B (zh) * 2017-11-22 2023-12-15 博泰车联网科技(上海)股份有限公司 双操作系统下的故障处理方法及装置、存储器及电子设备
CN110489188A (zh) * 2018-05-14 2019-11-22 施耐德电器工业公司 由桌面应用生成移动应用程序的计算机实现的方法和系统
CN110489188B (zh) * 2018-05-14 2024-01-26 施耐德电器工业公司 由桌面应用生成移动应用程序的计算机实现的方法和系统
CN113646747A (zh) * 2019-01-21 2021-11-12 普罗米斯有限公司 连接计算设备软件集成系统和方法
CN114270314A (zh) * 2019-06-27 2022-04-01 思杰系统有限公司 智能工作空间平台的统一可访问性设置
CN110781528A (zh) * 2019-09-26 2020-02-11 深圳金澜汉源科技有限公司 协同安全操作系统架构、操作系统和电子设备
CN115402243A (zh) * 2021-05-26 2022-11-29 丰田自动车株式会社 车辆部件选择方法
CN115402243B (zh) * 2021-05-26 2024-08-27 丰田自动车株式会社 车辆部件选择方法

Also Published As

Publication number Publication date
WO2012045074A2 (en) 2012-04-05
US20120081354A1 (en) 2012-04-05
US8683496B2 (en) 2014-03-25
EP2622490A4 (en) 2015-04-29
WO2012044557A2 (en) 2012-04-05
CN103262057B (zh) 2016-02-10
CN103282875A (zh) 2013-09-04
WO2012044792A2 (en) 2012-04-05
US9060006B2 (en) 2015-06-16
US20120143944A1 (en) 2012-06-07
EP2622464A2 (en) 2013-08-07
US9049213B2 (en) 2015-06-02
WO2012044645A2 (en) 2012-04-05
WO2012045073A2 (en) 2012-04-05
US20120081380A1 (en) 2012-04-05
BR112013007809A2 (pt) 2017-12-12
CN103329094B (zh) 2017-02-15
CN103370689B (zh) 2018-02-02
WO2012044676A2 (en) 2012-04-05
JP2013542515A (ja) 2013-11-21
US8963939B2 (en) 2015-02-24
CN107122168A (zh) 2017-09-01
US20120081353A1 (en) 2012-04-05
WO2012044557A3 (en) 2012-06-28
US20120089906A1 (en) 2012-04-12
WO2012044784A2 (en) 2012-04-05
US9077731B2 (en) 2015-07-07
EP2622490B1 (en) 2018-12-05
CN103282875B (zh) 2017-04-12
EP2622462A4 (en) 2014-01-29
WO2012045073A3 (en) 2012-06-07
WO2012044687A2 (en) 2012-04-05
WO2012044872A3 (en) 2012-07-19
US9160796B2 (en) 2015-10-13
WO2012044784A3 (en) 2012-06-14
CN103370689A (zh) 2013-10-23
US20120081383A1 (en) 2012-04-05
CN103262057A (zh) 2013-08-21
WO2012044792A3 (en) 2012-06-14
US20120084793A1 (en) 2012-04-05
WO2012044558A2 (en) 2012-04-05
CN103493010A (zh) 2014-01-01
WO2012045078A3 (en) 2012-06-14
WO2012045078A2 (en) 2012-04-05
MX2013003427A (es) 2013-10-28
CN103329094A (zh) 2013-09-25
US20120081396A1 (en) 2012-04-05
US8819180B2 (en) 2014-08-26
WO2012044558A3 (en) 2012-06-28
WO2012045074A3 (en) 2012-07-19
WO2012044546A2 (en) 2012-04-05
US20120084798A1 (en) 2012-04-05
EP2622464A4 (en) 2015-01-07
WO2012044676A3 (en) 2012-07-05
WO2012044872A2 (en) 2012-04-05
WO2012044687A3 (en) 2012-07-05
EP2622490A2 (en) 2013-08-07
WO2012044539A3 (en) 2012-06-21
CN103229156B (zh) 2016-08-10
WO2012044539A2 (en) 2012-04-05
EP2622462A2 (en) 2013-08-07
US8957905B2 (en) 2015-02-17
CN103493010B (zh) 2017-02-08
WO2012044546A3 (en) 2012-05-18
WO2012044645A3 (en) 2012-06-21
US9071625B2 (en) 2015-06-30

Similar Documents

Publication Publication Date Title
CN103229156A (zh) 多操作系统环境中的对接系统的自动配置
US9152582B2 (en) Auto-configuration of a docked system in a multi-OS environment
US9354900B2 (en) Method and apparatus for presenting a window in a system having two operating system environments
RU2456662C2 (ru) Согласование загрузки между несколькими способными к загрузке устройствами
US20160054862A1 (en) Foreground/background assortment of hidden windows
US20120278747A1 (en) Method and apparatus for user interface in a system having two operating system environments
CN103262025A (zh) 使用应用空间api的跨环境通信
CN103339600A (zh) 立即远程呈现
KR102416501B1 (ko) 전자 장치 및 그의 제어 방법
KR102586628B1 (ko) 전자 장치 및 전자 장치의 메모리 관리 방법
KR102510846B1 (ko) 전자 장치 및 그의 제어방법
CN108401453B (zh) 一种控制显示屏的方法、装置和智能终端
CN112732233A (zh) 应用程序生成系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant