Source: http://www.google.com/patents/US8018892?ie=ISO-8859-1&dq=5,987,610
Timestamp: 2014-07-10 09:32:17
Document Index: 218998530

Matched Legal Cases: ['art 11', 'art 11', 'art 11', 'art 11', 'art 11', 'art 11', 'art 11', 'art 11']

Patent US8018892 - All-in-one wireless network device - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign in<nobr>Advanced Patent Search</nobr>PatentsA method, apparatus, and computer-readable media for a wireless network device for communicating with a network comprises a memory to store an image comprising a plurality of virtual machines and only one multi-tasking operating system, wherein each of the virtual machines comprises a wireless network...http://www.google.com/patents/US8018892?utm_source=gb-gplus-sharePatent US8018892 - All-in-one wireless network deviceAdvanced Patent SearchPublication numberUS8018892 B1Publication typeGrantApplication numberUS 12/845,315Publication dateSep 13, 2011Filing dateJul 28, 2010Priority dateApr 21, 2004Also published asUS7768959, US8582507Publication number12845315, 845315, US 8018892 B1, US 8018892B1, US-B1-8018892, US8018892 B1, US8018892B1InventorsJames Chieh-Tsung Chen, Chuong Vu, Chor-Teck Law, Binh Quoc Tran, Jiaqi Shen, Brian BossoOriginal AssigneeMarvell International Ltd.Export CitationBiBTeX, EndNote, RefManPatent Citations (13), Non-Patent Citations (10), Classifications (7) External Links: USPTO, USPTO Assignment, EspacenetAll-in-one wireless network deviceUS 8018892 B1Abstract A method, apparatus, and computer-readable media for a wireless network device for communicating with a network comprises a memory to store an image comprising a plurality of virtual machines and only one multi-tasking operating system, wherein each of the virtual machines comprises a wireless network application to execute on the multi-tasking operating system; a processor to execute the virtual machines; and a port comprising a physical-layer device to communicate with the network, and a media access controller to communicate with the physical-layer device and the processor.
a memory configured to
store an image comprising a (i) plurality of virtual machines and (ii) a multi-tasking operating system, wherein each of the plurality of virtual machines comprises a wireless network application to execute on the multi-tasking operating system; and
store (i) a first queue for a first virtual machine of the plurality of virtual machines, (ii) a second queue for a second virtual machine of the plurality of virtual machines, and (iii) a processor queue;
execute the plurality of virtual machines;
while executing the first virtual machine, maintain the first queue as a copy of data in the processor queue; and
when switching execution to the second virtual machine, replace the processor queue with data from the second queue; and
a physical-layer device configured to communicate with the network; and
a media access controller configured to communicate with the physical-layer device and the processor.
the memory is configured to store a plurality of virtual machine queues including the first queue and the second queue, wherein the plurality of virtual machine queues corresponds one-to-one with the plurality of virtual machines; and
the processor is configured to, while executing any one of the plurality of virtual machines, maintain a copy of the data in the processor queue in the corresponding queue of the plurality of virtual machine queues.
3. The wireless network device of claim 2, wherein the processor is configured to, when switching execution to any one of the plurality of virtual machines, replace the processor queue with data from the corresponding queue of the plurality of virtual machine queues.
4. The wireless network device of claim 1, wherein the memory comprises a non-volatile memory, and wherein the wireless network device further comprises:
a memory controller configured to create a copy of the image from the non-volatile memory in the volatile memory, wherein the processor is configured to execute the virtual machines from the volatile memory.
5. The wireless network device of claim 1, wherein at least one of the wireless network applications of the plurality of virtual machines is selected from the group consisting of:
6. The wireless network device of claim 1, wherein the image further comprises:
a plurality of virtual machine device drivers configured to communicate with the plurality of virtual machines; and
a media access controller device driver configured to communicate with the plurality of virtual machine device drivers and the media access controller.
7. The wireless network device of claim 1, further comprising an input device configured to receive a selection identifying at least one of the plurality of virtual machines, wherein the processor is configured to execute the plurality of virtual machines according to the selection received by the input device.
8. The wireless network device of claim 1, wherein the processor is configured to execute the plurality of virtual machines concurrently.
9. The wireless network device of claim 1, wherein:
the wireless network application of the first virtual machine comprises a wireless network access point; and
the wireless network application of the second virtual machine comprises a wireless network client.
10. The wireless network device of claim 9, wherein:
the second virtual machine comprises
a first virtual wireless port configured to communicate with the media access controller; and
a first virtual bridge configured to communicate with the first virtual wireless port; and
the first virtual machine comprises
a second virtual wireless port configured to communicate with the media access controller;
a virtual distribution service port configured to communicate with the first virtual bridge; and
a second virtual bridge configured to communicate with the second virtual wireless port and the virtual distribution service port.
11. A method of operating a wireless network device, the method comprising:
in a memory of the wireless network device, storing an image comprising (i) a plurality of virtual machines and (ii) a multi-tasking operating system, wherein each of the plurality of virtual machines comprises a wireless network application to execute on the multi-tasking operating system;
in the memory, storing (i) a first queue for a first virtual machine of the plurality of virtual machines, (ii) a second queue for a second virtual machine of the plurality of virtual machines, and (iii) a processor queue;
executing the plurality of virtual machines using a processor of the wireless network device;
while executing the first virtual machine, maintaining the first queue as a copy of data in the processor queue;
when switching execution to the second virtual machine, replacing the processor queue with data from the second queue;
communicating with a wireless networking medium using a physical-layer device; and
communicating between the physical-layer device and the processor using a media access controller.
using the memory, storing a plurality of virtual machine queues including the first queue and the second queue, wherein the plurality of virtual machine queues corresponds one-to-one with the plurality of virtual machines; and
while executing any one of the plurality of virtual machines, maintaining a copy of the data in the processor queue in the corresponding queue of the plurality of virtual machine queues.
13. The method of claim 12, further comprising, when switching execution to any one of the plurality of virtual machines, replacing the processor queue with data from the corresponding queue of the plurality of virtual machine queues.
creating a copy of the image from non-volatile memory in volatile memory; and
executing the virtual machines from the volatile memory.
15. The method of claim 11, wherein at least one of the wireless network applications of the plurality of virtual machines is selected from the group consisting of:
16. The method of claim 11, wherein the image further comprises:
receiving a selection identifying at least one of the plurality of virtual machines; and
executing the plurality of virtual machines according to the selection.
18. The method of claim 11, further comprising executing the plurality of virtual machines concurrently.
a second virtual bridge configured to communicate with the second virtual wireless port and the virtual distribution service port. Description
CROSS-REFERENCE TO RELATED APPLICATIONS This application is a continuation of U.S. patent application Ser. No. 10/829,131, filed Apr. 21, 2004. The disclosure of the above application is incorporated herein by reference.
Many wireless network devices are available to facilitate data communications and network access at home and in the workplace, including wireless access points, wireless clients, wireless bridges, wireless repeaters, and even wireless enabled laptop computers and personal digital assistants. FIG. 1 shows a conventional combination wireless network device 100. Wireless network device 100 comprises a processor 102, a wireless port 104, a memory controller 110, a non-volatile memory 112, a volatile memory 114, and an antenna 116.
FIG. 2 shows a conventional architecture 200 for a conventional combination wireless network device 100 that can act as either a wireless access point or a wireless client. Architecture 200 comprises a plurality of software images comprising a software image 202A for the wireless access point and a software image 202B for the wireless client, and wireless port 104 of FIG. 1. Image 202A comprises a conventional operating system 204A, a wireless access point application 206A, and a media access controller (MAC) device driver 210A. Image 202B comprises a conventional operating system 204B, a wireless client application 206B, and a MAC device driver 210B3. Wireless port 104 comprises a MAC 212 and a wireless physical-layer device (PHY) 214.
Particular implementations can include one or more of the following features. A wireless network device is compliant with a standard selected from the group consisting of IEEE standards 802.11, 802.11a, 802.11b, 802.11g and 802.11n. The memory comprises a non-volatile memory, and the apparatus further comprises a volatile memory; and a memory controller to create a copy of the image from the non-volatile memory to the volatile memory; wherein the processor executes the virtual machines from the volatile memory. The memory comprises a virtual machine queue for each virtual machine and a processor queue for the processor; the processor stores data to be processed for the virtual machine being executed by the processor in the processor queue; each virtual machine creates a copy in the respective virtual machine queue of the data in the processor queue when the processor is executing the respective virtual machine; and when the processor resumes executing one of the virtual machines after executing another of the virtual machines, the one of the virtual machines copies the data from the respective virtual machine queue to the processor queue. The wireless network applications are selected from the group consisting of a wireless network access point; a wireless network client; a wireless network point-to-point bridge; a wireless network multi-point bridge; and a wireless network repeater. The image further comprises a plurality of virtual machine device drivers to communicate with the virtual machines; and a media access controller device driver to communicate with the virtual machine device drivers and the media access controller. The apparatus further comprises an input device to select one or more of the virtual machines; wherein the processor executes the virtual machines selected by the input device. The processor executes a plurality of the virtual machines concurrently. The virtual machines comprise a wireless network access point virtual machine and a wireless network client virtual machine; wherein the processor executes the wireless network access point virtual machine and the wireless network client virtual machine concurrently; wherein the wireless network client virtual machine comprises a first virtual wireless port to communicate with the port, and a first virtual bridge to communicate with the first virtual wireless port; and wherein the wireless network access point virtual machine comprises a second virtual wireless port to communicate with the port, a virtual distribution service port to communicate with the first virtual bridge, and a second virtual bridge to communicate with the second virtual wireless port and the virtual distribution service port.
In general, in one aspect, the invention features a method, apparatus, and computer-readable media for a wireless network device for communicating with a network. The apparatus comprises a memory to store an image comprising a plurality of virtual machines and only one multi-tasking operating system, wherein each of the virtual machines comprises a wireless network application to execute on the multitasking operating system; a processor to execute the virtual machines; and a bus to communicate with the processor and the network. The wireless network device is compliant with a standard selected from the group consisting of IEEE standards 802.11, 802.11a, 802.11b, 802.11g and 802.11n. The memory comprises a nonvolatile memory, and the apparatus further comprises a volatile memory; and a memory controller to create a copy of the image from the non-volatile memory to the volatile memory; wherein the processor executes the virtual machines from the volatile memory. The memory comprises a virtual machine queue for each virtual machine and a processor queue for the processor; wherein the processor stores data to be processed for the virtual machine being executed by the processor in the processor queue; wherein each virtual machine creates a copy in the respective virtual machine queue of the data in the processor queue when the processor is executing the respective virtual machine; and wherein when the processor resumes executing one of the virtual machines after executing another of the virtual machines, the one of the virtual machines copies the data from the respective virtual machine queue to the processor queue. The image further comprises a plurality of virtual machine device drivers to communicate with the virtual machines; and a bus interface driver to communicate with the virtual machine device drivers and the bus. The apparatus further comprises a physical-layer device to communicate with the network; and a media access controller to communicate with the physical-layer device and the bus. The image further comprises a plurality of virtual machine device drivers to communicate with the virtual machines; a first bus interface driver to communicate with the virtual machine device drivers and the bus; a second bus interface driver to communicate with the bus; and a media access controller device driver to communicate with the second bus interface driver and the media access controller. The wireless network applications are selected from the group consisting of a wireless network access point; a wireless network client; a wireless network point-to-point bridge; a wireless network multi-point bridge; and a wireless network repeater. The apparatus further comprises an input device to select one or more of the virtual machines; wherein the processor executes the virtual machines selected by the input device. The processor executes a plurality of the virtual machines concurrently. The virtual machines comprise a wireless network access point virtual machine and a wireless network client virtual machine; wherein the processor executes the wireless network access point virtual machine and the wireless network client virtual machine concurrently; wherein the wireless network client virtual machine comprises a first virtual wireless port to communicate with the port, and a first virtual bridge to communicate with the first virtual wireless port; and wherein the wireless network access point virtual machine comprises a second virtual wireless port to communicate with the port, a virtual distribution service port to communicate with the first virtual bridge, and a second virtual bridge to communicate with the second virtual wireless port and the virtual distribution service port.
A virtual machine is a software architectural block that allows multiple applications to share one hardware element, such as a wireless port. Each virtual machine 406 comprises a wireless network application to execute on multitasking operating system 404. The wireless network applications can include wireless network access points, wireless network clients, wireless network point-to-point bridges, wireless network multi-point bridges, wireless network repeaters, and the like. Multi-tasking operating system 404 can be implemented as any multi-tasking operating system such as eCos, which is described at http://sources.redhat.com/ecos/about.html, the contents of which are incorporated herein by reference.
FIG. 5 shows a process 500 for all-in-one wireless network device 300 and architecture 400 according to a preferred embodiment. Image 202 is stored in nonvolatile memory 312. When all-in-one wireless network device 300 powers up (step 502), memory controller 310 creates a copy of image 202 in volatile memory 314 (step 504). Processor 302 executes virtual machines 406 from volatile memory 314 (step 506).
Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS5572528Mar 20, 1995Nov 5, 1996Novell, Inc.Mobile networking method and apparatusUS5644576May 16, 1995Jul 1, 1997International Business Machines CorporationMedium access control scheme for wireless LAN using a variable length interleaved time division frameUS7290178Apr 2, 2004Oct 30, 2007Intel CorporationMethods and apparatus to enable code-based bus performance analysisUS7464138Mar 29, 2002Dec 9, 2008International Business Machines CorporationMirror queue in a shared queue environmentUS20020089875Jul 24, 2001Jul 11, 2002Mitsubishi Denki Kabushiki KaishaMicrocomputerUS20030212761Nov 22, 2002Nov 13, 2003Microsoft CorporationProcess kernelUS20040010788Jul 12, 2002Jan 15, 2004Cota-Robles Erik C.System and method for binding virtual machines to hardware contextsUS20040081119Oct 28, 2002Apr 29, 2004Zhun ZhongReducing packet drop in IEEE 802.11 handoff by packet forwarding using driver image queueUS20050078624Jul 22, 2004Apr 14, 2005Zhengjin ShuMethod and apparatus for automatic configuration of wireless networksUS20050102671Nov 6, 2003May 12, 2005Intel CorporationEfficient virtual machine communication via virtual machine queuesUS20050138197Dec 19, 2003Jun 23, 2005Venables Bradley D.Queue state mirroringUS20050174962Dec 16, 2004Aug 11, 2005David GurevichGeneric client for communication devicesUS20060123416Dec 1, 2005Jun 8, 2006Ivan Cibrario BertolottiProcess for managing virtual machines in a physical processing machine, corresponding processor system and computer program product thereforNon-Patent CitationsReference1"About eCOS," http://sources.redhat.com/ecos/about.html, as appeared on website Apr. 21, 2004, 3 pages, Red Hat Inc., US.2802.11n; IEEE P802.11-04/0889r6; Wireless LANs, TGn Sync Proposal Technical Specification; May 2005; 131 pages.3ANSI/IEEE Std 802.11, 1999 Edition; Information technology-Telecommunications and information exchange between systems-Local and metropolitan area networks-Specific requirements-Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications; LAN/MAN Standards Committee of the IEEE Computer Society; 528 pages.4ANSI/IEEE Std 802.11, 1999 Edition; Information technology�Telecommunications and information exchange between systems�Local and metropolitan area networks�Specific requirements�Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications; LAN/MAN Standards Committee of the IEEE Computer Society; 528 pages.5IEEE P802.11g/D8.2, Apr. 2003 (Supplement to ANSI/IEEE Std 802.11-1999(Reaff 2003)); Draft Supplement to Standard [for] Information Technology-Telecommunications and information exchange between systems-Local and metropolitan area networks-Specific requirements-Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications: Further Higher Data Rate Extension in the 2.4 GHz Band; LAN/MAN Standards Committee of the IEEE Computer Society; 69 pages.6IEEE P802.11g/D8.2, Apr. 2003 (Supplement to ANSI/IEEE Std 802.11-1999(Reaff 2003)); Draft Supplement to Standard [for] Information Technology�Telecommunications and information exchange between systems�Local and metropolitan area networks�Specific requirements�Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications: Further Higher Data Rate Extension in the 2.4 GHz Band; LAN/MAN Standards Committee of the IEEE Computer Society; 69 pages.7IEEE Std 802.11a-1999 (Supplement to IEEE Std 802.11-1999) [Adopted by ISO/IEC and redesignated as ISO/IEC 8802-11: 1999/Amd 1:2000(E)]; Supplement to IEEE Standard for Information technology-Telecommunications and information exchange between systems-Local and metropolitan area networks-Specific requirements-Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications High-speed Physical Layer in the 5 GHz Band; LAN/MAN Standards Committee of the IEEE Computer Society; 91 pages.8IEEE Std 802.11a-1999 (Supplement to IEEE Std 802.11-1999) [Adopted by ISO/IEC and redesignated as ISO/IEC 8802-11: 1999/Amd 1:2000(E)]; Supplement to IEEE Standard for Information technology�Telecommunications and information exchange between systems�Local and metropolitan area networks�Specific requirements�Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications High-speed Physical Layer in the 5 GHz Band; LAN/MAN Standards Committee of the IEEE Computer Society; 91 pages.9IEEE Std 802.11b-1999 (Supplement to IEEE Std 802.11-1999 Edition); Supplement to IEEE Standard for Information technology-Telecommunications and information exchange between systems-Local and metropolitan area networks-Specific requirements-Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications: Higher-Speed Physical Layer Extension in the 2.4 GHz Band; LAN/MAN Standards Committee of the IEEE Computer Society; Sep. 16, 1999 IEEE-SA Standards Board; 96 pages.10IEEE Std 802.11b-1999 (Supplement to IEEE Std 802.11-1999 Edition); Supplement to IEEE Standard for Information technology�Telecommunications and information exchange between systems�Local and metropolitan area networks�Specific requirements�Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications: Higher-Speed Physical Layer Extension in the 2.4 GHz Band; LAN/MAN Standards Committee of the IEEE Computer Society; Sep. 16, 1999 IEEE-SA Standards Board; 96 pages.Classifications U.S. Classification370/328, 370/338, 718/1, 370/310International ClassificationH04W4/00Cooperative ClassificationH04W88/10European ClassificationH04W88/10RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services©2012 Google