Abstract:
Systems and methods for producing a simulated off condition in a computing device. The computing device includes system components such as a power supply, processors and fans that are put into a low power state upon receiving a signal to power off the device. This provides the appearance to users that the computing device is off. The system components, however, remain enabled to run applications when the computing device is in the simulated off condition. If necessary, the device can be returned to a fully on condition to process applications that require the system components to be brought out of the low power state to execute.

Description:
FIELD OF THE INVENTION  
       [0001]     This invention relates in general to the field of power management. More particularly, this invention relates to a system and method of controlling power usage by individual components within a computing device in order to reduce acoustic emissions to simulate an OFF condition while remaining in an ON state to run applications.  
       BACKGROUND OF THE INVENTION  
       [0002]     As the functionality of PCs begins to converge with that of consumer electronics (CE) devices such as personal-video recording (e.g., digital video recorders (DVR), eHome PCs, etc.), PCs will likely move from locations such as the den or home office into the living room, so they can be connected to a home entertainment center (e.g., TV, stereo receiver, set-top box, etc.). This move creates a challenge for the PC, in that users will expect very high reliability and ease of use, similar to CE devices. Expectations for PCs have historically been much lower than CE devices because PCs have been difficult to use and prone to stability problems that have to do with both hardware and software. Thus, to succeed in the CE space, the PC must behave more like an appliance and less like a conventional PC.  
         [0003]     PCs also differ significantly from CE devices with regard to powering ON and OFF. Conventionally, to be instantly available from an off state, the PC is placed into a low-power standby state (ACPI S3). Typically, this low-power state enables the PC to power on in less than two seconds. However, while the PC is in the low-power state, the only action it can perform is waking the system to a fully “on” state (ACPI S0) such that the PC may perform other functions. In addition, the latency between S3 and “on” depends on many factors, both hardware and software. Although it might take less than two seconds to power on one time, it might take five or seven seconds the next. For this reason, the PC low-power standby state cannot provide the instant-on behavior that users expect from a CE device.  
         [0004]     Thus, there is a need for an improved system for restoring a PC to a fully “on” state from a reduced power state, wherein the PC may perform certain functions in the reduce power state. The present invention provides such a solution.  
       SUMMARY OF THE INVENTION  
       [0005]     The present invention is directed to systems and methods for providing a simulated off condition in a computing device. According to a first aspect, there is provided a method that includes receiving a signal to power off the computing device; notifying system components of a low power request; and reducing power consumption of the system components to a low power state such that the computing device appears to be off. The system components remain enabled to run applications when the computing device is in the simulated off condition.  
         [0006]     According to a feature of the invention, the method also may include determining if running applications require full processing when the computing device receives the signal to power off, and providing a notification that applications will be canceled if the computing device is turned off. An input may be received to override the signal to power down the computing device.  
         [0007]     According to another feature, the method includes notifying system components of a low power request by sending a the request to software drivers that control power management features of the system components to place the system components into the low power state. Reducing power consumption of the system components may be accomplished by instructing processors within the system to clock-down to a lowest state, discontinuing a display signal to turn off a monitor, reducing a power supply output, and turning off cooling fans. There may also be an indication that the computing device is in the simulated off condition.  
         [0008]     According to yet another feature, the method includes monitoring for applications that require the system components to utilize more power than the low power state, and bringing predetermined ones of the system components out of the lower power state to process the applications that require more power. The computing device may be returned to the simulated off condition after the applications that require the system components to utilize more power have completed.  
         [0009]     According to another feature, the computing device is in an ACPI S0 state when the computing device is in the simulated off condition.  
         [0010]     According to another aspect of the invention, there is provided a computing device having a simulated off state. The computing device includes a central processing unit, a graphics processing unit, a hard disk drive, random access memory, and a power supply. When the computing device is powered down, the device is placed into the simulated off state by placing the system components into a low power state such that the computing device appears to be off. The computing device, however, remains enabled to run applications when in the simulated off state.  
         [0011]     According to another aspect of the invention, there is provided a method of producing a simulated off condition in a computing device when the computing device is in an ACPI S0 state. The method includes receiving a signal to power off the computing device, notifying system components of a low power request, and reducing power consumption of the system components via software methods to a low power state such that the computing device appears to be off. Here, the system components remain enabled to run applications when the computing device is in the simulated off condition.  
         [0012]     Additional features and advantages of the invention will be made apparent from the following detailed description of illustrative embodiments that proceeds with reference to the accompanying drawings. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0013]     The foregoing summary, as well as the following detailed description of preferred embodiments, is better understood when read in conjunction with the appended drawings. For the purpose of illustrating the invention, there is shown in the drawings exemplary constructions of the invention; however, the invention is not limited to the specific methods and instrumentalities disclosed. In the drawings:  
         [0014]      FIG. 1  is a block diagram showing an exemplary computing environment in which aspects of the invention may be implemented;  
         [0015]      FIG. 2  is a block diagram showing an SMBus Interface and associated components;  
         [0016]      FIGS. 3-4  are flowcharts illustrating the processing of the present invention; and  
         [0017]      FIG. 5  is a graph of power usage versus ACPI/Smart OFF state in accordance with the present invention. 
     
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS  
       [0018]     Exemplary Computing Environment  
         [0019]      FIG. 1  illustrates an example of a suitable computing system environment  100  in which the invention may be implemented. The computing system environment  100  is only one example of a suitable computing environment and is not intended to suggest any limitation as to the scope of use or functionality of the invention. Neither should the computing environment  100  be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary operating environment  100 .  
         [0020]     The invention is operational with numerous other general purpose or special purpose computing system environments or configurations. Examples of well known computing systems, environments, and/or configurations that may be suitable for use with the invention include, but are not limited to, personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and the like.  
         [0021]     The invention may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network or other data transmission medium. In a distributed computing environment, program modules and other data may be located in both local and remote computer storage media including memory storage devices.  
         [0022]     With reference to  FIG. 1 , an exemplary system for implementing the invention includes a general purpose computing device in the form of a computer  110 . Components of computer  110  may include, but are not limited to, a processing unit  120 , a system memory  130 , and a system bus  121  that couples various system components including the system memory to the processing unit  120 . The system bus  121  may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. By way of example, and not limitation, such architectures include Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA) local bus, Peripheral Component Interconnect (PCI) bus (also known as Mezzanine bus), Peripheral Component Interconnect Express (PCI-Express), and Systems Management Bus (SMBus).  
         [0023]     Computer  110  typically includes a variety of computer readable media. Computer readable media can be any available media that can be accessed by computer  110  and includes both volatile and non-volatile media, removable and non-removable media. By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. Computer storage media includes both volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can accessed by computer  110 . Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Combinations of any of the above should also be included within the scope of computer readable media.  
         [0024]     The system memory  130  includes computer storage media in the form of volatile and/or non-volatile memory such as ROM  131  and RAM  132 . A basic input/output system  133  (BIOS), containing the basic routines that help to transfer information between elements within computer  110 , such as during start-up, is typically stored in ROM  131 . RAM  132  typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processing unit  120 . By way of example, and not limitation,  FIG. 1  illustrates operating system  134 , application programs  135 , other program modules  136 , and program data  137 .  
         [0025]     The computer  110  may also include other removable/non-removable, volatile/non-volatile computer storage media. By way of example only,  FIG. 1  illustrates a hard disk drive  141  that reads from or writes to non-removable, non-volatile magnetic media, a magnetic disk drive  151  that reads from or writes to a removable, non-volatile magnetic disk  152 , and an optical disk drive  155  that reads from or writes to a removable, non-volatile optical disk  156 , such as a CD-ROM or other optical media. Other removable/non-removable, volatile/non-volatile computer storage media that can be used in the exemplary operating environment include, but are not limited to, magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM, and the like. The hard disk drive  141  is typically connected to the system bus  121  through a non-removable memory interface such as interface  140 , and magnetic disk drive  151  and optical disk drive  155  are typically connected to the system bus  121  by a removable memory interface, such as interface  150 .  
         [0026]     The drives and their associated computer storage media, discussed above and illustrated in  FIG. 1 , provide storage of computer readable instructions, data structures, program modules and other data for the computer  110 . In  FIG. 1 , for example, hard disk drive  141  is illustrated as storing operating system  144 , application programs  145 , other program modules  146 , and program data  147 . Note that these components can either be the same as or different from operating system  134 , application programs  135 , other program modules  136 , and program data  137 . Operating system  144 , application programs  145 , other program modules  146 , and program data  147  are given different numbers here to illustrate that, at a minimum, they are different copies. A user may enter commands and information into the computer  110  through input devices such as a keyboard  162  and pointing device  161 , commonly referred to as a mouse, trackball or touch pad. Other input devices (not shown) may include a microphone, joystick, game pad, satellite dish, scanner, or the like. These and other input devices are often connected to the processing unit  120  through a user input interface  160  that is coupled to the system bus, but may be connected by other interface and bus structures, such as a parallel port, game port or a universal serial bus (USB). A monitor  191  or other type of display device is also connected to the system bus  121  via an interface, such as a video interface  190 . In addition to the monitor, computers may also include other peripheral output devices such as speakers  197  and printer  196 , which may be connected through an output peripheral interface  195 .  
         [0027]     The computer  110  may operate in a networked environment using logical connections to one or more remote computers, such as a remote computer  180 . The remote computer  180  may be a personal computer, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the elements described above relative to the computer  110 , although only a memory storage device  181  has been illustrated in  FIG. 1 . The logical connections depicted include a local area network (LAN)  171  and a wide area network (WAN)  173 , but may also include other networks. Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets and the Internet.  
         [0028]     When used in a LAN networking environment, the computer  110  is connected to the LAN  171  through a network interface or adapter  170 . When used in a WAN networking environment, the computer  110  typically includes a modem  172  or other means for establishing communications over the WAN  173 , such as the Internet. The modem  172 , which may be internal or external, may be connected to the system bus  121  via the user input interface  160 , or other appropriate mechanism. In a networked environment, program modules depicted relative to the computer  110 , or portions thereof, may be stored in the remote memory storage device. By way of example, and not limitation,  FIG. 1  illustrates remote application programs  185  as residing on memory device  181 . It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers may be used.  
         [0029]     Exemplary Embodiments of the Always Ready Computing Device  
         [0030]     Modern PC operating systems, such as WINDOWS XP available from Microsoft Corp., Redmond, Wash., have the ability to control the amount of power that certain components of the system draw through Advanced Configuration and Power Interface (ACPI) methods. Such components include, but are not limited to, the CPU, graphics processor (GPU), monitor, hard disk drives, power supplies, cooling fans, etc. This has the benefit of reducing power utilization to make the system more energy efficient, while also reducing acoustic emissions from cooling fans. Particularly, the largest noise contributors in PCs today are the cooling fans, including CPU fans, GPU fans, power supply fans, and system case fans. As devices draw less power and emit less heat, the need to actively dissipate heat through fans is reduced, thus lowering acoustic emissions. In order for PCs to gain acceptance in the living room, these sources of noise will need to be significantly reduced.  
         [0031]     The present invention is directed to a PC system having a “smart off” state (a simulated off state) wherein the PC remains in an “on” state (ACPI S0) while appearing to the user to be “off.” In accordance with the present invention, when the power button (“smart off power button”) on a PC is pressed (either on the system case, through a remote control, or keyboard or mouse action), the system registers the “off” event and instead of signaling the operating system to enter an ACPI state (e.g., S1, S3, S4 or S5) other than the current running state (S0), a series of power management triggers are set to power down system components such as the CPU, GPU, monitor, fans, etc. through custom software and ACPI methods. Thus, the PC is “always on” and ready to perform tasks. Alternatively, the present invention may first enter the “smart off” state, and then after a predetermined period of time, transition to S3. In this case, when some event occurs (e.g., the PC is tasked as a PVR, etc), the system wakes from S3 to “smart off” (i.e., the monitor is off, audio is muted, etc) and performs the task and then returns to S3 after a period of inactivity.  
         [0032]     This technique makes for a system that is unobtrusive and appears “off” in many ways while being able to process low intensity tasks. The system may turn itself back “on” as needed to accomplish higher intensity tasks. For example, if the user turned the PC off, but scheduled a TV program to be recorded at a predetermined time while at the same time another user is streaming media from the PC, the PC may turn itself back “on” to provide the processing power and cooling necessary to accomplish these tasks. The system could then be programmed to turn itself back “off” after the task has completed.  
         [0033]     In accordance with the present invention, five “pseudo-off” states within S0 are contemplated, as follows:  
         [0034]     (1) On with user interaction. This state is when the user is interacting with the system by watching TV, playing music, watching a DVD, etc. This could also include any other typical PC use such as word processing or internet browsing.  
         [0035]     (2) Smart Off. As noted above, this state is entered when the user is finished with their entertainment or computing experience and presses the “off” button on the PC. The PC remains in the S0 state, but all devices are clocked down, all cooling fans are stopped, input devices such as mice and keyboards are locked, etc., indicating to the user that the device is off. Because of the reduced clocking, the system is in a lower power state than in state (1) and able to be cooled via passive cooling.  
         [0036]     (3) Smart Off with user interaction. In this state, the user is able perform certain tasks on the PC without fully “waking” from Smart Off to state (1). For example, “Smart Off” provides enough processing power to carry out music playback. It may be preferable that user is able to play audio on their PC without the fans or monitor turning on. In this instance, the PC may include a front-panel display similar to those used on DVD/CD players to indicate what track is playing, time remaining, etc.  
         [0037]     (4) On without user interaction. This state is entered, for example, after the PC was in state (2), but was required to return to state (1) without the screen coming back on. For example, this state could be entered when the system is tasked to record a TV show that requires full CPU or GPU processing (e.g., a personal video recorder (PVR)). This state results in higher acoustic emissions from fans than state (2), but lower acoustic emissions that state (1).  
         [0038]     (5) Active Smart Off. This state is similar to state (1), however, the processing workload is small enough that the PC can handle it while remaining in state (2). In this state, the PC processes tasks without turning on the fans and continues to appear off even though it is processing instructions. It is also possible that the PVR scenario noted in the description of state (4) could be accomplished in this state. It may be desirable to light an LED so the user can visually confirm that the task is being accomplished with the PC “off,” similar to a VCR lighting up a light indicating that a show is being recorded.  
         [0039]     From any of the S0 states noted above, the user will be able to completely shut down the system to S5/G3 state as well. This may be implemented with a second power button or “off switch” (e.g., at the rear of the chassis). In addition, it may be desirable to implement a long push (e.g., 4 sec) of the smart off power button to bring the system to S5/G3. Lastly, the user can still shut down the system using the Operating System&#39;s user interface controls.  
         [0040]     In accordance with the present invention, the following, non-limiting list of components may be powered down in the following manners to achieve lower acoustic emissions:  
         [0041]     CPU  
         [0042]     Current CPU technology allows for regulation of frequency and voltage of the CPU during use to vary the power consumption based on system needs. For example, when video is rendered, a 3.06 GHz processor may clock-up to its full frequency and voltage to provide the highest processing power possible, which would equal roughly 90 Watts. When the system is at idle, however, the CPU may clock-down to a much lower voltage and frequency (e.g., sub 800 MHz) which would then only draw approximately 10-35 Watts.  
         [0043]     Conventional cooling solutions for CPUs are designed to cool for the highest power possible at all times, so unnecessarily high acoustic emissions result during lower power operations. However, in accordance with the present invention, a heat sink is used for the CPU that may passively cool 35 Watts, or whatever wattage results from the clocked-down frequency the CPU supports, thus the CPU fan may turn completely off when the smart off power button is pressed.  
         [0044]     GPU  
         [0045]     In much in the same way as a CPU, the cooling solution for most graphics adapters is designed for the highest power utilization scenarios, whether the adapters are discrete or integrated. By implementing the same technique as described for CPUs above, the GPU fan can be turned off when the smart off power button is pressed. In addition to turning off the GPU fan, the video signal may also be immediately removed to provide the appearance on the display that the device is off.  
         [0046]     System Case Fans  
         [0047]     System case fans are employed to reduce the ambient temperature of the system chassis, which helps to maximize the effectiveness of component fans as well as provide airflow for passively cooled devices in the system. Depending on system load, these fans can be turned off or driven at a very slow speed, which would produce acoustic emissions below the human threshold of hearing.  
         [0048]     Hard Disk Drives  
         [0049]     Hard disk drive technology has improved to the point where acoustic emissions outside of the PC chassis are not perceptible; however, it is possible to spin down the drive based on inactivity. It is preferable that hard drives continue to spin while the PC is in the smart off state such that the PC will be able perform background functions such as updated system code or downloading media content from a cable feed or the Internet.  
         [0050]     Power Supply  
         [0051]     By employing the solutions described earlier, the load on the power supply will decrease significantly when the components in the system are placed in lower power states. By reducing the load on the power supply, passive heat sinks of an appropriate size may be used to cool the power supply such that the power supply fan may be turned off during the lower power state.  
         [0052]     In accordance with the present invention, the preferred implementation uses software drivers that control the frequency and voltage of the CPU using existing ACPI methods. Similarly, the GPU is controlled through a defined API to throttle down the GPU as requested by the PC operating system. Software drivers may be used to control other components, such as fans and the power supply, etc.  
         [0053]     The communication protocol used in a preferred implementation is SMBus (Systems Management Bus Interface), which utilizes an existing microcontroller in a power supply. As shown in  FIG. 2 , through an SMBus Interface  200 , various components, including a SMBus system host  202 , power supply  204  and other devices  206  can communicate to control the system host fan, buttons, and LEDs. The SMBus interface is described in the “System Management Bus (SMBus) Specification,” Version 2.0, Aug. 3, 2000, published by the SBS Implementers Forum, which is incorporated herein by reference in its entirety.  
         [0054]     The power supply  204  may consist of a power supply unit that converts AC to DC, a battery, and an integral battery charger. The power supply  204  monitors particular environmental parameters to provide adequate information for power management and charge control regardless of the particular power supply unit&#39;s size, or the size and chemistry of the battery. The host  110  to power supply  204  communication is used to get data that is either presented to a user or to the host&#39;s  110  power management system. The user may obtain two types of data from the power supply: factual and predictive. Factual data can be measured, such as temperature or battery charge/discharge state, or it can be a battery characteristic, such as the battery&#39;s chemistry. Predictive data is calculated, based on the PSU&#39;s and battery&#39;s present state.  
         [0055]     In accordance with the present invention, the power management system may query a device driver to determine if an action will cause harm to the system&#39;s integrity. For example, spinning up a disk drive while the power supply  204  is at maximum load may cause its output voltage to drop below acceptable limits, thus causing a system failure. In order to prevent this, the device driver needs information from the power supply that will yield desirable results. If the driver queries the power supply  204  and discovers that not enough power is available, it can then request that the power management system turn off a non-critical power use or change the power/performance operating point of system components.  
         [0056]     The power supply  204  has the ability to inform the host  110  of potentially critical conditions. These notifications represent an effort on the part of the power supply  204  to inform the host  110  that power is about to fail or that the battery charge is low. The power supply  204  expects that the user or host  110  will take the appropriate corrective action. Such critical notifications may originate from the power supply  204  using an SMBAlert to signal the host  110  that the power supply  204  state has changed.  
         [0057]     Alternatively, the CPU frequency and voltage may be controlled through a hardware mechanism involving microcode in a microcontroller (such as a system BIOS). This could be triggered by the power supply using a control protocol (e.g., SMBus or other control protocol) to notify the CPU to change frequency and voltage based on an event of loss of AC power and/or the presence of DC power (battery power). This implementation does not rely on ACPI and is completely HW/firmware based.  
         [0058]     Referring now to  FIGS. 3 and 4 , there are illustrated flow charts of the transitions between various pseudo-off states within APCI S0 described above. At step  300 , the PC is at a fully “on” state, described above as State (1). At step  302 , the user has completed his/her interaction with the PC and presses the smart off power button on the PC. At step  304  the system determines if any active applications require full processing power and notifies the user (step  306 ) that actions will be canceled if the system is turned off. At step  308  the user may cancel the actions noted at step  306 , where the process returns to step  304 , or may choose not to cancel the actions, where the PC returns to step  300  and remains in the full on state.  
         [0059]     If at step  304  the active application do not require full processing power, then at step  310 , system components are notified of a low power request. Next, at step  312 , the CPU clocks-down to the lowest state and the CPU fan is stopped. At step  314 , the GPU turns off, the fan is stopped and the video signal is cut. At step  316 , the HDD may flush the cache and spin down to further reduce power consumption. At step  318 , the system case fan stops and then the power supply output is decreased and the fan stops at step  320 . At step  322 , the power button (or case LED) indicates an off state (i.e., Smart Off) such that the PC appears off (step  324 ).  
         [0060]      FIG. 4  illustrates the process of returning to a fully on state when the system is in the smart off state (step  326 ). At step  328 , it is determined if there is an application that requires more power. Such applications may be scheduled or triggered by user interaction. If no applications require more power, then the process returns to step  236 . If there are applications that require additional power, then at step  330 , the power supply fan turns on, followed by the system case fan at step  332 . At step  334 , the hard drive spins up and then the GPU and its fan turn on at step  336 . At step  338 , the CPU clocks-up and it fan turns on. At step  340 , the power button then indicates that the PC is on, where by the PC is now at a fully on state (step  342 ).  
         [0061]      FIG. 5  illustrates an exemplary graph of power consumption versus APCI/Smart Off state. When the PC is in APCI S0 state, the various components within the PC are allowed to run at full power. Thus, the power consumption of the PC is relatively high, ranging from approximately 50 Watts to over 200 Watts. However, when the user initiates the Smart Off, power consumption is aggressively managed to limit consumption to a threshold value, e.g., 60 Watts (or other amount that can be passively cooled). When in the Smart Off state, the PC remains in S0 and the components are managed such that the total consumption remains below the threshold value. The PC is able to perform processing tasks in this state. When in the Smart Off state, the PC attempts to curtail power below the threshold, while meeting application processing demands. Should the PC be tasked to run applications that require more processing than is possible under the power restrictions of the Smart Off state, the PC components are powered-up and active cooling components reenergized. The PC is thus returned to a full on (S0) state. However, if the user requests that the PC enter other APCI states (S3, S4/S5), power consumption is further reduced and the PC is unable to perform any processing tasks.  
         [0062]     While the present invention has been described in connection with the preferred embodiments of the various Figs., it is to be understood that other similar embodiments may be used or modifications and additions may be made to the described embodiment for performing the same function of the present invention without deviating therefrom. For example, one skilled in the art will recognize that the present invention as described in the present application may apply to any computing device or environment, whether wired or wireless, and may be applied to any number of such computing devices connected via a communications network, and interacting across the network. Furthermore, it should be emphasized that a variety of computer platforms, including handheld device operating systems and other application specific operating systems are contemplated, especially as the number of wireless networked devices continues to proliferate. Still further, the present invention may be implemented in or across a plurality of processing chips or devices, and storage may similarly be effected across a plurality of devices. Therefore, the present invention should not be limited to any single embodiment, but rather should be construed in breadth and scope in accordance with the appended claims.