1461165043-f7c985cc-f650-42ef-9793-630829148dfe

1. A method comprising:
requesting data to be streamed from a source device to a client device over a network; and
resolving a distributed topology from the request, wherein:
the distributed topology references a plurality of software components that, when executed, fulfill the request; and
at least one of the plurality of software components is executable on each of:
the source device; and
the client device.
2. A method as described in claim 1, wherein the resolving further comprises:
discovering the capabilities of the client device to render a stream of data;
discovering the capabilities of the source device to stream data that is to be rendered; and
deriving the distributed topology from both said capabilities.
3. A method as described in claim 1, wherein the distributed topology is selected from the group consisting of:
a remote sink distributed topology;
a remote source distributed topology; and
a third party distributed topology.
4. A method as described in claim 1, further comprising building a distributed software infrastructure from the distributed topology, wherein the distributed software infrastructure includes the plurality of software components.
5. A method as described in claim 1, further comprising building a distributed software infrastructure from an optimized distributed topology such that the distributed software infrastructure is configured to stream data from the source device to the client device without rendering the data with the source device before the data is streamed.
6. A method as described in claim 1, wherein:
the request also requests streaming data from an additional source device to the client device; and
the resolving resolves the distributed topology such that the plurality of software components, when executed, fulfills the request to stream data from each of the source device and the additional source device, respectively, to the client device.
7. A method as described in claim 1, wherein:
the request also requests streaming data from the source device to an additional client device; and
the resolving resolves the distributed topology such that the plurality of software components, when executed, fulfills the request to stream data from the source device to each of the client device and the additional client device.
8. A method as described in claim 1, wherein the distributed software infrastructure includes a distributed media session that provides a federated mechanism for control, whereby:
the at least one software component that is executable on the source device is controllable by the distributed media session; and
the at least one software component that is executable on the client device is controllable by the distributed media session.
9. A method as described in claim 1, wherein the resolving is executed without user intervention on a device selected from the group consisting of:
the source device;
the client device; and
a third party device.
10. One or more computer-readable media comprising computer-executable instructions that, when executed, perform the method as recited in claim 1.
11. A method comprising:
receiving a request to stream data from a source device to a client device over a network; and
resolving a distributed topology that references software components to fulfill the request, wherein the distributed topology is resolved from:
capabilities of the client device to render a stream of data; and
capabilities of the source device to stream data that is to be rendered; and

building from the distributed topology a distributed software infrastructure that includes the referenced software components, wherein at least one of the software components is executable on each of:
the source device; and
the client device.
12. A method as described in claim 11, wherein the distributed topology is selected from the group consisting of:
a remote sink distributed topology;
a remote source distributed topology; and
a third party distributed topology.
13. A method as described in claim 11, wherein the resolving further comprises:
discovering the capabilities of the client device to render a stream of data;
discovering the capabilities of the source device to stream data that is to be rendered; and
deriving a distributed topology from both said capabilities, wherein the distributed topology references the software components.
14. A method as described in claim 11, wherein the building further comprises building the distributed software infrastructure from an optimized distributed topology such that the distributed software infrastructure is configured to stream data from the source device to the client device without rendering the data with the source device before the data is streamed.
15. A method as described in claim 11, wherein the distributed topology references a distributed media session that provides a federated mechanism for control such that:
the at least one software component that is executable on the source device is controllable by the distributed media session; and
the at least one software component that is executable on the client device is controllable by the distributed media session.
16. A method as described in claim 11, wherein the receiving and the resolving are executed without user intervention on a device selected from the group consisting of:
the source device;
the client device; and
a third party device.
17. One or more computer-readable media comprising computer-executable instructions that, when executed, perform the method as recited in claim 11.
18. A method comprising:
discovering the capabilities of a client device to render a stream of data;
discovering the capabilities of a source device to stream data that is to be rendered; and
deriving a distributed topology from both said capabilities, wherein:
the distributed topology references a plurality of software components to fulfill the request; and
at least one of the software components referenced by the distributed topology is executable on each of:
the source device; and
the client device.
19. A method as described in claim 18, wherein the distributed topology is selected from the group consisting of:
a remote sink distributed topology;
a remote source distributed topology; and
a third party distributed topology.
20. A method as described in claim 18, further comprising building from the distributed topology a distributed software infrastructure that includes said software components.
21. A method as described in claim 18, wherein:
the discovering of the capabilities of the client device further comprises examining the client device to find a software component which renders a stream of data; and
the discovering of the capabilities of the source device further comprises examining the source device to find a software component which streams data.
22. A method as described in claim 18, wherein the discovering of the capabilities of the client and source devices, respectively, further comprises querying a look-up table that contains:
the capabilities of the client device to render the stream of data; and
the capabilities of the source device to stream data that is to be rendered.
23. A method as described in claim 18, wherein the distributed topology references a distributed media session that provides a federated mechanism for control such that:
the at least one software component that is executable on the source device is controllable by the distributed media session; and
the at least one software component that is executable on the client device is controllable by the distributed media session.
24. A method as described in claim 18, wherein the receiving and the resolving are executed without user intervention on a device selected from the group consisting of:
the source device;
the client device; and
a third party device.
25. One or more computer-readable media comprising computer-executable instructions that, when executed, perform the method as recited in claim 18.
26. A method comprising:
receiving a request to stream data from a source device to a client device;
discovering the capabilities of the client device to render a stream of data;
discovering the capabilities of the source device to stream data that is to be rendered;
deriving a distributed topology to fulfill the request from both said capabilities, wherein the distributed topology references a plurality of software components;
building from the distributed topology a distributed software infrastructure, wherein the distributed software infrastructure includes said software components referenced by the distributed topology;
streaming the data from the source device to the client device over the network; and
rendering the data by the client device.
27. A distributed media session comprising
a software component having instructions that, when executed, directs acts comprising:
resolving a distributed topology that references a plurality of software components that, when executed, fulfill a request to stream data from a source device to a client device; and
building, from the distributed topology, a distributed software infrastructure that includes said software components, wherein at least one of the said software components is executable on each of:
the source device; and
the client device.
28. A distributed media session as described in claim 27, wherein the resolving further comprises:
discovering the capabilities of the client device to render a stream of data;
discovering the capabilities of the source device to stream data that is to be rendered; and
deriving the distributed topology from both said capabilities.
29. A distributed media session as described in claim 27, wherein the distributed topology is selected from the group consisting of:
a remote sink distributed topology;
a remote source distributed topology; and
a third party distributed topology.
30. A distributed media session as described in claim 27, wherein the building further comprises supplying at least one additional software component which is referenced by the distributed topology.
31. A distributed media session as described in claim 27, wherein the resolving further comprises optimizing the distributed topology such that the distributed software infrastructure which is built from the distributed topology is configured to stream data from the source device to the client device without rendering the data by the source device before the data is streamed.
32. A computer-readable medium comprising computer-executable instructions that, when executed, direct a computing device to perform acts comprising:
resolving, without user intervention, a distributed topology that references a plurality of software components that, when executed, stream data from a source device to a client device over a network, wherein at least one of the plurality of software components is executable on each of:
the source device; and
the client device.
33. A computer-readable medium as described in claim 32, wherein the resolving further comprises:
discovering the capabilities of the client device to render a stream of data;
discovering the capabilities of the source device to stream data that is to be rendered; and
deriving the distributed topology from both said capabilities.
34. A computer-readable medium as described in claim 32, wherein the distributed topology is selected from the group consisting of:
a remote sink distributed topology;
a remote source distributed topology; and
a third party distributed topology.
35. A computer-readable medium as described in claim 32, further comprising building a distributed software infrastructure from the distributed topology.
36. A computer-readable medium as described in claim 32, further comprising building a distributed software infrastructure from an optimized distributed topology such that the distributed software infrastructure is configured to stream data from the source device to the client device without rendering the data with the source device before the data is streamed.
37. A computer-readable medium comprising computer-executable instructions that, when executed, direct a computing device to perform acts comprising:
discovering the capabilities of a client device to render a stream of data;
discovering the capabilities of a source device to stream data that is to be rendered; and
deriving, without user intervention, a distributed topology from both said capabilities, wherein:
the distributed topology references a plurality of software components that, when executed, stream data from the source device to the client device; and
at least one of the plurality of software components referenced by the distributed topology is executable on each of:
the source device; and
the client device.
38. A computer-readable medium as described in claim 37, further comprising building from the distributed topology a distributed software infrastructure that includes the plurality of software components.
39. A system comprising:
a source device that is operable to stream data to be rendered;
a client device that is operable to render a stream of data; and
a distributed media session, which when executed, causes actions to be performed including:
resolving a distributed topology that references a plurality of software components that, when executed, stream data from the source device to the client device over a network; and
building from the distributed topology a distributed software infrastructure that includes said software components, wherein at least one of the said software components is executable on each of:
the source device; and
the client device.
40. A system as described in claim 39, wherein the source device is selected from the group consisting of:
a computing device which is locally connected to a source peripheral device; and
a network-ready device that is operable to stream data that is to be rendered.
41. A system as described in claim 39, wherein the client device is selected from the group consisting of:
a computing device which is locally connected to a rendering device; and
a network-ready device suitable for rendering data.
42. A system as described in claim 39, wherein the resolving further comprises:
discovering the capabilities of the client device to render a stream of data;
discovering the capabilities of the source device to stream data that is to be rendered; and
deriving the distributed topology from both said capabilities.
43. A system as described in claim 39, wherein the distributed topology is selected from the group consisting of:
a remote sink distributed topology;
a remote source distributed topology; and
a third party distributed topology.
44. A system as described in claim 39, wherein the building further comprises supplying at least one software component that is referenced by the distributed topology.
45. A system as described in claim 39, wherein the building further comprises building the distributed software infrastructure from an optimized distributed topology such that the distributed software infrastructure is configured to stream data from the source device to the client device without rendering the data with the source device before the data is streamed.
46. A system as described in claim 39, wherein the execution of the distributed media session is performed by one of:
the source device;
the client device; and
a third party device.
47. A system comprising:
a source device which includes a software component that, when executed by the source device, streams data that is to be rendered;
a client device which includes a software component that, when executed by the client device, renders a stream of data; and
a distributed media session, which when executed by either the source device or the client device, provides a federated mechanism for control of:
the software component that, when executed by the source device, streams data that is to be rendered; and
the software component that, when executed by the client device, renders a stream of data.
48. A system as described in claim 47, wherein the source device is selected from the group consisting of:
a computing device which is locally connected to a source peripheral device; and
a network-ready device that is operable to stream data that is to be rendered.
49. A system as described in claim 47, wherein the client device is selected from the group consisting of:
a computing device which is locally connected to a rendering device; and
a network-ready device suitable for rendering data.
50. A system comprising:
a network;
a source device which is configured to:
compress data; and
stream the compressed data without rendering the compressed data; and

a client device, communicatively coupled to the source device over the network, wherein the client device is configured to:
receive the streamed data from the source device over the network;
decompress the received data; and
render the decompressed data.
51. A system as described in claim 50, wherein the source device is selected from the group consisting of:
a computing device which is locally connected to a source peripheral device; and
a network-ready device that is operable to stream data that is to be rendered.
52. A system as described in claim 50, wherein the client device is selected from the group consisting of:
a computing device which is locally connected to a rendering device; and
a network-ready device suitable for rendering data.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A substrate for use in a microelectronic assembly comprising:
(a) a unitary dielectric structure having first and second regions, said dielectric structure bearing contact elements in said first region and bearing unitary traces extending between said first and second regions, at least some of said traces being connected to at least some of the contact elements; and
(b) a first dielectric encapsulant disposed on said dielectric structure in said first region, said first dielectric encapsulant being disposed so that said contact elements are exposed at a surface of the first dielectric encapsulant in said first region.
2. The substrate as claimed in claim 1 wherein said first dielectric encapsulant reinforces said dielectric structure in said first region so that said first region is more rigid than said second region.
3. The substrate as claimed in claim 1 wherein the contact elements project from a first surface of said dielectric structure and at least a portion of the first dielectric encapsulant forms a layer covering at least a portion of the first surface in the first region, such layer having a top surface remote from the first surface of the substrate, tips of the contact elements being exposed at the top surface of the layer.
4. The substrate as claimed in claim 1 wherein at least a portion of the first dielectric encapsulant forms a wall projecting from said dielectric structure and surrounding at least a portion of the first region.
5. The substrate as claimed in claim 1 further comprising in the first region an optical component affixed to the wall.
6. The substrate as claimed in claim 1 further comprising a conductive shield disposed proximate to said dielectric structure.
7. The substrate as claimed in claim 1 wherein the contact elements are contact pins, contact pads, or a combination thereof.
8. The substrate as claimed in claim 1 wherein the contact elements and the traces are formed from at least one conductive plate.
9. The substrate as claimed in claim 1 wherein in the second region trace ends are provided with electrical terminals.
10. The substrate as claimed in claim 1 wherein widths of at least some of the traces are equal to or smaller than widths of bases of the contact elements, said bases disposed proximate said dielectric structure.
11. The substrate as claimed in claim 10 wherein at least some of the traces have contact areas at least partially surrounding the bases of the contact elements.
12. The substrate as claimed in claim 1 further comprising a second encapsulant flexibly encapsulating the traces at least in the second region.
13. The substrate as claimed in claim 1 further comprising a conductive shield disposed adjacent to said dielectric structure and having an exposed electrical contact.
14. The substrate as claimed in claim 1 wherein the first dielectric encapsulant is molded from an epoxy, a thermoplastic, polyimide, or liquid crystal polymer.
15. The substrate as claimed in claim 1 wherein the first dielectric encapsulant comprises a recess adapted for receiving at least one microelectronic device.
16. A microelectronic element connected to the substrate of claim 1, wherein the element is a fingerprint scanner.
17. A microelectronic element connected to the substrate of claim 1, wherein the element is an image sensor.
18. A microelectronic element connected to the substrate of claim 1, wherein the element is an RF package.
19. A microelectronic assembly, comprising:
a substrate including:
(a) a dielectric structure having first and second regions, said dielectric structure bearing contact elements in said first region and bearing unitary traces extending between said first and second regions, at least some of said traces being connected to at least some of the contact elements; and
(b) a first dielectric encapsulant disposed on said structure in said first region, said first dielectric encapsulant being disposed so said contact elements are exposed at a surface of the first dielectric encapsulant in said first region; and
at least one microelectronic device which terminals are selectively connected to said contact elements using a ball bonding technique or a wire bonding technique.
20. The assembly as claimed in claim 19 wherein said first dielectric encapsulant reinforces said structure in said first region so that said first region is more rigid than said second region.
21. The assembly as claimed in claim 19 wherein at least a portion of the first dielectric encapsulant forms a wall projecting from the structure and surrounding at least some of the at least one microelectronic device.
22. The assembly as claimed in claim 21 wherein the substrate in the first region further comprises an optical component affixed to the wall.
23. The assembly as claimed in claim 21 wherein the substrate further comprises a recess receiving the at least one microelectronic device.

1461165032-f643727a-1a1f-4fc5-be72-7f72e3477039

1. An ultrathin tellurium nanowire structure, comprising:
a rod-like crystalline structure of tellurium, wherein the crystalline structure is defined by diameters of between 5-6 nm.
2. The ultrathin tellurium nanowire structure of claim 1, wherein the crystalline structure is prepared by a process comprising the steps of:
(a) mixing an amount of polyvinylpyrrolidone, an amount of an alkali, and an amount of one of tellurium dioxide and telluride salt to generate a first solution;
(b) dissolving the first solution in ethylene glycol to generate a second mixture;
(c) heating the second mixture; and
(d) mixing an amount of hydrazine hydrate with the second mixture to generate a third mixture containing the rod-like crystalline structure of tellurium.
3. The ultrathin tellurium nanowire structure of claim 2, wherein the amount of polyvinylpyrrolidone is about 0.1 to 1.0 g.
4. The ultrathin tellurium nanowire structure of claim 3, wherein the amount of alkali is about 0.2 to 0.8 g.
5. The ultrathin tellurium nanowire structure of claim 4, wherein the alkali is one of sodium hydroxide and potassium hydroxide.
6. The ultrathin tellurium nanowire structure of claim 5, wherein the tellurium salt is one of sodium tellurite, potassium tellurite, and tellurium dioxide.
7. The ultrathin tellurium nanowire structure of claim 6, wherein the second mixture is heated to about 100-180\xb0 C.
8. The ultrathin tellurium nanowire structure of claim 7, wherein the amount of hydrazine hydrate is about 0.2 to 1 ml.
9. An ultrathin tellurium-based nanowire structure, comprising:
a rod-like crystalline structure of one of lead telluride and bismuth telluride, wherein an ultrathin tellurium nanowire structure is used as a precursor to generate the rod-like crystalline structure.
10. The ultrathin tellurium-based nanowire structure of claim 9, wherein the lead telluride rod-like crystalline structure includes diameters between 9-10 nm and the bismuth telluride rod-like crystalline structures includes diameters between 7-8 nm.
11. The ultrathin tellurium-based nanowire structure of claim 10, wherein the precursor ultrathin nanowire includes diameters between 5-6 nm.
12. The ultrathin tellurium-based nanowire structure of claim 9, wherein the crystalline structure is prepared by a process comprising the step of:
injecting one of lead acetate tri-hydrate and bismuth nitrate penta-hydrate into an ethylene glycol precursor solution containing the ultrathin tellurium nanowire structures.
13. A nanoscale heterostructure tellurium-based nanowire structure, comprising:
a dumbbell-like crystalline heterostructure having a center rod-like portion and one octahedral structure connected to each end of each of the center rod-like portions, wherein the center rod-like portion is a tellurium nanowire structure and the octahedral structures are one of lead telluride, cadmium telluride, and bismuth telluride.
14. The nanoscale heterostructure tellurium-based nanowire structure of claim 13, wherein the center rod-like portion is defined by a diameter of about 20 nm.
15. The nanoscale heterostructure tellurium-based nanowire structure of claim 14, wherein edge length of the lead telluride is about 65 nm.
16. The nanoscale heterostructure tellurium-based nanowire structure of claim 15, wherein diameter of the cadmium telluride octahedral structure is about 30 nm.
17. The nanoscale heterostructure tellurium-based nanowire structure of claim 13, wherein the dumbbell-like crystalline structure is prepared by a process comprising the steps of:
(a) preparing a lead precursor solution; and
(b) injecting the lead precursor solution into an ethylene glycol precursor solution containing the tellurium-based nanowire structures.
18. The nanoscale heterostructure tellurium-based nanowire structure of claim 17, wherein the lead precursor is prepared by dissolving one of Pb(CH3COO)23H2O and Pb(NO3)23H2O into ethylene glycol.
19. The nanoscale heterostructure tellurium-based nanowire structure of claim 17, wherein the ethylene glycol precursor solution containing the tellurium-based nanowire structures is prepared by a process comprising the steps of:
(a) mixing an amount of polyvinylpyrrolidone, an amount of an alkali, and an amount of one of tellurium dioxide and telluride salt to generate a first solution;
(b) dissolving the first solution in ethylene glycol to generate a second mixture;
(c) heating the second mixture; and
(d) mixing an amount of hydrazine hydrate with the second mixture to generate the ethylene glycol precursor solution.
20. The nanoscale heterostructure tellurium-based nanowire structure of claim 19, wherein the molar ratio between one of Pb(CH3COO)23H2O and Pb(NO3)23H2O and tellurium dioxide is less than 1.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method for estimating a position of a wireless local area network (WLAN) enabled mobile device, comprising:
receiving, by the mobile device, one or more WLAN packets transmitted within a range of the mobile device;
extracting WLAN information from the one or more WLAN packets to identify one or more WLAN access points (APs);
based on the extracted WLAN information, caching information, at the mobile device, indicating an identity of the one or more WLAN APs and a time of detection of the one or more WLAN APs;
subsequent to the caching, receiving a request for a position estimate of the mobile device; and
in response to the subsequently-received request for the position estimate, providing the cached information to a WLAN positioning system (WPS) to obtain an estimate of the position of the mobile device that is based, at least in part, on one or more past positions of the mobile device indicated by the cached information.
2. The method of claim 1, wherein the extracted WLAN information includes a media access control (MAC) address of the one or more WLAN APs, and the caching maintains a list of MAC addresses of the one or more WLAN APs.
3. The method of claim 1, wherein the cached information maintains the identity of WLAN APs identified over a last given period of time.
4. The method of claim 1, wherein the cached information maintains the identity of most recently identified WLAN APs up to a maximum number of most recently identified WLAN APs.
5. The method of claim 1, wherein the receiving occurs when WLAN APs cannot be detected by the mobile device, and the providing obtains the estimated position of the mobile device in the absence of presently-detectable WLAN APs.
6. The method of claim 1, wherein the estimate of the position of the mobile device is based on a history of movement of the mobile device derived from the cached information.
7. The method of claim 1, wherein the receiving comprises sniffing one or more WLAN packets destined for one or more WLAN devices other than the mobile device.
8. The method of claim 1, wherein the receiving comprises sniffing one or more WLAN packets originated by the one or more WLAN APs.
9. The method of claim 1, wherein the receiving comprises sniffing one or more WLAN packets destined for the one or more WLAN APs.
10. The method of claim 1, wherein the WPS is resident, at least in part, on a server remote from the mobile device, and the providing comprises:
sending the cached information to the server.
11. The method of claim 1, wherein the WPS is resident, at least in part, on the mobile device.
12. The method of claim 1, wherein the one or more WLAN packets include broadcast packets.
13. The method of claim 1, wherein the extracting further comprises:
detecting at least one error in the one or more WLAN packets;
combining different packets with a measure of similarity that is above a threshold, to produce combined information; and
identifying the one or more WLAN APs based on the combined information.
14. A wireless local area network (WLAN) enabled mobile device operable to estimate a position, comprising:
a WLAN radio module configured to receive one or more WLAN packets transmitted within a range of the mobile device;
extraction logic configured to extract WLAN information from the one or more WLAN packets to identify one or more WLAN access points (APs);
a cache configured to maintain cached information indicating an identity of the one or more WLAN APs and a time of detection of the one or more WLAN APs; and
logic configured to, in response to a request for a position estimate of the mobile device, provide the cached information to a WLAN positioning system (WPS) to obtain an estimate of a position of the mobile device that is based, at least in part, on one or more past positions of the mobile device indicated by the cached information.
15. The mobile device of claim 14, wherein the extracted WLAN information includes a media access control (MAC) address of the one or more WLAN APs, and the cache maintains a list of MAC addresses of the one or more WLAN APs.
16. The mobile device of claim 14, wherein the cached information includes the identity of WLAN APs identified over a last given period of time.
17. The mobile device of claim 14, wherein the cached information includes the identity of most recently identified WLAN APs identified to a maximum number of most recently identified WLAN APs.
18. The mobile device of claim 14, wherein the logic is configured to provide the cached information to the WPS to obtain an estimate of a position of the mobile device in an absence of presently-detectable WLAN APs.
19. One or more non-transitory computer-readable media storing positioning software, the positioning software when executed on one or more processors operable to:
detect one or more wireless local area network (WLAN) packets transmitted within a range of a mobile device;
extract WLAN information from the one or more WLAN packets to identify one or more WLAN access points (APs);
based on the extracted WLAN information, cache information indicating an identity of the one or more WLAN APs;
use the cached information indicating the identity of the one or more WLAN APs to obtain an estimate of a position of the mobile device that is based, at least in part, on one or more past positions of the mobile device indicated by the cached information.
20. The one or more non-transitory computer-readable media of claim 19, wherein the extracted WLAN information includes a media access control (MAC) address of the one or more WLAN APs, and the cached information includes a list of MAC addresses of the one or more WLAN APs.
21. A method for estimating a position of a wireless local area network (WLAN) enabled mobile device, comprising:
receiving, by the mobile device, one or more WLAN packets transmitted within a range of the mobile device;
extracting WLAN information from the one or more WLAN packets to identify one or more WLAN access points (APs);
storing a history of detected WLAN APs, at the mobile device, indicating an identity of the one or more WLAN APs and a time of detection of the one or more WLAN APs; and
subsequent to the storing,
receiving a request for a position estimate of the mobile device from an application on the mobile device,
determining the mobile device cannot detect WLAN APs, and
using the history of detected WLAN APs to obtain the position estimate of the mobile device.
22. The method of claim 21, wherein the history of detected WLAN APs maintains the identity of WLAN APs identified over a last given period of time.
23. The method of claim 21, wherein the history of detected WLAN APs maintains the identity of most recently identified WLAN APs up to a maximum number of most recently identified WLAN APs.
24. A wireless local area network (WLAN) enabled mobile device operable to estimate a position, comprising:
a WLAN radio module configured to receive one or more WLAN packets transmitted within a range of the mobile device;
extraction logic configured to extract WLAN information from the one or more WLAN packets to identify one or more WLAN access points (APs);
a cache configured to maintain cached information indicating an identity of the one or more WLAN APs and a time of detection of the one or more WLAN APs; and
logic configured to, in response to a request for a position estimate of the mobile device received from an application on the mobile device, determine the mobile device cannot detect WLAN APs, and provide the history of detected WLAN APs to a WLAN positioning system (WPS) to obtain the position estimate of the mobile device.
25. The mobile device of claim 24, wherein the extracted WLAN information includes a media access control (MAC) address of the one or more WLAN APs, and the cache maintains a list of MAC addresses of the one or more WLAN APs.