WO2007001608A2 - Storing queries on devices with rewritable media - Google Patents

Storing queries on devices with rewritable media Download PDF

Info

Publication number
WO2007001608A2
WO2007001608A2 PCT/US2006/015672 US2006015672W WO2007001608A2 WO 2007001608 A2 WO2007001608 A2 WO 2007001608A2 US 2006015672 W US2006015672 W US 2006015672W WO 2007001608 A2 WO2007001608 A2 WO 2007001608A2
Authority
WO
WIPO (PCT)
Prior art keywords
query
target device
query request
computer
query result
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/US2006/015672
Other languages
English (en)
French (fr)
Other versions
WO2007001608A3 (en
Inventor
Oren Rosenbloom
Vladimir Sadovsky
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Priority to BRPI0612313-9A priority Critical patent/BRPI0612313A2/pt
Priority to EP06751401A priority patent/EP1896994A2/en
Priority to JP2008518144A priority patent/JP2008547109A/ja
Priority to MX2007015444A priority patent/MX2007015444A/es
Publication of WO2007001608A2 publication Critical patent/WO2007001608A2/en
Publication of WO2007001608A3 publication Critical patent/WO2007001608A3/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload

Definitions

  • consumer electronic devices have the ability to share information.
  • Many consumer electronic devices include content, such as media content, that may be accessed by other devices.
  • a personal music player may be capable of transmitting music files to an automobile stereo, a home stereo, or a television set, which may play back the music files.
  • a camera may transmit photograph files to a printer to be printed, or to a laptop computer containing a photo editor program.
  • a television connected to a personal music player may query the music player to obtain a list of the music files available, or a printer may query a camera to obtain a list of the photographs to be printed.
  • many devices designed for capturing or storing content may include a relatively small processor and relatively large storage capacity. These devices may not be well-suited to generate responses to particular query requests. For example, some devices may lack the processing capability to quickly respond to complex query requests that include operating over a large data set. These devices may be unable to respond to query requests in a timely manner.
  • a system and method are provided for preparing and storing pre-determined queries on devices with large re-writable media.
  • a target device receives a query request to which it is unable to respond in a timely fashion, the target device will store the query request.
  • the target device connects to a personal computer for a sync operation, or is otherwise placed in communication with a machine that has relatively large processing power, the personal computer or other processing device will respond to the query request, and store the query result on the target device.
  • a more capable device such as a personal computer or other processing device, responds to the query request and authors the query result.
  • the personal computer or other processing devices may be used simply as an authoring device.
  • the processing device may not make any requests of the target device, but rather generates results to queries based on historic information, user information, or other information not stored on the target device.
  • a processing device may perform a method for responding to query requests.
  • the method may include obtaining at least one query request from a target device, the query request being generated by a requesting device, and determining whether to respond to the query request.
  • the method may further include, if the query request is to be responded to, generating a query result in response to the query request and sending the query result to be stored in the target device for consumption by the requesting device.
  • the method may be embodied in computer-executable instructions stored on one or more computer- readable media.
  • a target device may perform a method for responding to query requests.
  • the method may include obtaining at least one query request from a requesting device, the query request being generated by a requesting device, and determining whether a query result responsive to the query request is available in local storage.
  • the method may further include, if a query result responsive to the query request is available in local storage, sending the query result to the requesting device; and if a query result responsive to the query request is not available in local storage, determining whether to respond to the query request.
  • the method may also include, if the query request is to be responded to, generating a query result in response to the query request and sending the query result to the requesting device; and if the query request is not to be responded to, storing the query result for future transmission to a processing device.
  • the method may be embodied in computer-executable instructions stored on one or more computer-readable media.
  • a requesting device may perform a method for preparing and receiving a response to a query request.
  • the method may include generating a query request, sending the query request to a target device, and obtaining at least one query result from a target device, the query result being responsive to the query request and being generated by a processing device.
  • the method may be embodied in computer-executable instructions stored on one or more computer-readable media.
  • FIG. 1 is block diagram illustrating a computerized environment in which embodiments of the invention may be implemented;
  • FIG. 2 is a block diagram showing a system in accordance with an aspect of the present invention.
  • FIG. 3 is a flow chart illustrating a method for queuing a request, in accordance with an embodiment of the present invention.
  • FIG. 4 is a flow chart illustrating a method for connecting to a processor device, in accordance with an aspect of the present invention.
  • the invention relates to a system and method for preparing and storing pre-determined queries on devices with large re-writable media.
  • This invention addresses the problem of processing of data query request on devices that may not have the processing power to return data set results in a timely manner.
  • a requesting device may query a target device for information, such as information relating to the content stored on the target device. If the target device is not capable of providing a timely query result, the target device may not respond to the query request, but may instead store the query.
  • FIG. 1 illustrates an example of a suitable computing system environment 100 on which the system for preparing, storing, or processing queries 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.
  • the invention is described in the general context of computer- executable instructions, such as program modules, being executed by a computer.
  • program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types.
  • program modules may be located in both local and remote computer storage media including memory storage devices.
  • the exemplary system 100 for implementing the invention includes a general purpose-computing device in the form of a computer 110 including 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.
  • Computer 110 typically includes a variety of computer readable media.
  • computer readable media may comprise computer storage media and communication media.
  • the system memory 130 includes computer storage media in the form of volatile and/or nonvolatile memory such as read only memory (ROM) 131 and random access memory (RAM) 132.
  • ROM read only memory
  • RAM random access memory
  • 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.
  • FIG. 1 illustrates operating system 134, application programs 135, other program modules 136, and program data 137.
  • the computer 110 may also include other removable/nonremovable, volatile/nonvolatile computer storage media.
  • FIG. 1 illustrates a hard disk drive 141 that reads from or writes to nonremovable, nonvolatile magnetic media, a magnetic disk drive 151 that reads from or writes to a removable, nonvolatile magnetic disk 152, and an optical disk drive 155 that reads from or writes to a removable, nonvolatile optical disk 156 such as a CD ROM or other optical media.
  • removable/nonremovable, volatile/nonvolatile 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 an 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.
  • 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.
  • FIG. 1 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.
  • 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.
  • 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.
  • 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.
  • the computer 110 in the present invention will 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, 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 in FIG. 1 include a local area network (LAN) 171 and a wide area network (WAN) 173, but may also include other networks.
  • LAN local area network
  • WAN wide area network
  • the computer 110 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.
  • program modules depicted relative to the computer 110, or portions thereof may be stored in the remote memory storage device.
  • 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.
  • FIG. 2 is a block diagram illustrating an overview of a system in accordance with an embodiment of the present invention.
  • a system 200 may include a requesting device 202, such as a consumer electronic device.
  • the requesting device 202 may communicate with a target device 204, such as another consumer electronic device.
  • the target device may further communicate with an Initiator 206, which may be a device with relatively high processing power, such as a personal computer or the like.
  • the target device 204 may include storage 208, which may store content 210, such as media content.
  • the requesting device 202 may retrieve content 210 from the target device 204.
  • the requesting device 202 may retrieve content 210 in order to perform playback, editing, printing, or some other operation on the content 210.
  • Each of the requesting device 202, the target device 204, and the Initiator 206 may be equipped with one or more storage readers and/or writers.
  • Each of the requesting device 202 and the target device 204 may be, for example, an automotive built-in media system, a portable digital stereo system, a non- networked home entertainment system with built-in storage, a camera, a portable gaming device, a mobile telephone, a printer, a personal digital assistant (PDA), or any other electronic system.
  • PDA personal digital assistant
  • the requesting device 202, the target device 204, and the Initiator 206 each implement a protocol that allows for the exchange of information when a network connection is established.
  • the requesting device 202, the target device 204, and the Initiator 206 may have Universal Serial Bus (USB) connectors 211 that allow for connection via direct USB cables 212 or some combination of USB cables and USB hubs.
  • USB Universal Serial Bus
  • the requesting device 202, the target device 204, and the Initiator 206 may implement Media Transfer Protocol (MTP) to allow for the transfer of media objects.
  • MTP Media Transfer Protocol
  • wireless peer-to-peer communication may be used, such as, for example, communication between devices implementing Bluetooth, Ultra Wideband (UWB) 5 or 802.11 technologies. Those skilled in the art will appreciate that other transfer protocols may be used.
  • the requesting device 202 may query the target device 204.
  • the requesting device 202 may query the target device 204 to obtain metadata related to the content 210 stored in the target device 204.
  • the requesting device 202 may generate one or more query requests 213, which are transmitted to the target device 204.
  • the target device 204 may determine whether it is to generate a query result. Determining whether the target device 204 is to generate a query result may depend, for example, on whether the target device 204 has sufficient processing power to generate a query result in a timely fashion.
  • the target device 204 may generate a query result 214 and return the query result to the requesting device 202.
  • the target device 204 may store the query request 213.
  • the query request 213 may not be responded to at this time. Rather, the query request 213 may be responded to at a later time, when the target device connects to the Initiator 206.
  • the Initiator may search the target device 204 for pending query requests. If pending query requests are found, the Initiator may determine whether it is to act as a processing device to generate a query result. If the Initiator 206 determines that it has sufficient processing power or is otherwise suited to act as a processing device, the Initiator 206 may generate one or more query results 214 and stores them on the target device 204.
  • the requesting device 202 may retrieve the query requests 214 from the target device 204.
  • both the query request 213 and the query result 214 may contain an object representing the original query as generated by the requesting device 202. This may ensure, for example, that duplicate query requests 214 are not stored in the target device 204, or that query results 213 that are already present may be returned on response to new query requests when appropriate. Furthermore, the query requests 214 may contain a Boolean variable or other marker to indicate whether they are pending requests or have already been responded to. This may ensure, for example, that query requests are not unnecessarily responded to multiple times. [0036] In some cases, the query requests 213 may be related to the content
  • the query requests 213 may be unrelated to the target device 204.
  • the query requests 213 may be related, for example, to the requesting device 202, to the Initiator 206, to another external device, or may be requests for general information.
  • the target device 204 may be used to transport information between the requesting device 202 and the Initiator 206.
  • a television set could query a personal music player for television guide information.
  • the personal computer could obtain television guide information from the Internet, from its own storage, or from some other source.
  • the personal computer could store the television guide information on the personal music player as a query result.
  • Fig. 3 is a flow chart illustrating a method for queuing a request. As shown in Fig. 3, the method may begin in step 300, wherein a requesting device may generate a query request.
  • the query request may be, for example, a request for information relating to a target device.
  • the query request may be a request for information relating to the requesting device, information relating to a processing device, information related to another external device, or general information.
  • the target device may receive the query request.
  • the target device determines whether the query result is available. For example, if the target device has already obtained the query result from a processing device, the target device will contain the query result, and the query result will be available. If the requesting device is making the query request for the first time, the target device will likely not have the query result available. [0039] If the query result is available, such as, for example, if the target device has previously received the query result from a processing device or if the target device has previously generated the query result, the target device will return the query result to the requestor in step 306.
  • the target device may be able to generate the query result. Determining whether the target device is to generate the result may be determined, for example, based on the processing power of the target device, the storage of the target device, and the particular query request. If it is determined in step 308 that the target device is to generate the result set, the target device may generate the result set in step 310. The target device may store the result set in step 312. Thus, the next time the requesting device or another device makes an identical query request, the query result may be available in step 304 and may be returned in step 306.
  • the query request may be stored in step 312.
  • the query request may be stored in a queue to indicate that the query request is an ongoing request, and that a new query result should be generated in response to the query request on a regular basis.
  • the query request stored in the queue may indicate that a new query result should be generated every time the content stored in the target device changes, every time the target device connects to the requesting device, or the like.
  • the method may continue in step 314, wherein the target device may store the query request.
  • the target device may store the query request in a queue so that it may be responded to at a later time by a processor device.
  • the query request may be persistent, and may remain in the queue even after it has been responded to.
  • a persistent query request may indicate, for example, that the query request is to be responded to on a regular basis, such as every time the target device connects to the processor device.
  • the query request may persist only until it is responded to.
  • This type of query request may be known as a "one-time" query request, and may indicate that the query request is to be responded to only once. It will be appreciated by those skilled in the art that other types of query requests that persist for other lengths of time could be used.
  • the target device may communicate "pending" status to the requesting device. This indicates, for example, that the query request has been queued and will be responded to at a later time, such as when the target device connects to a processing device.
  • the requesting device may communicate pending status to the user, such as by presenting a user with a dialogue box indicating that the query request will be responded to at a later time, or by any other appropriate method.
  • a query result may be returned and a query request may be queued.
  • a target device may have available, or may be able to generate, a partial query result to a particular query request.
  • the target device may return a partial query result to the requester and may also store the query request to be responded to at a later time.
  • a television may request a list of all the music on a personal music player.
  • the personal music player may be capable of returning the list of file names very quickly, but may not be capable returning the metadata associated with each file, such as the title, the artist, and the like, in a timely fashion.
  • the personal music player may return the list of file names, and may also stores the query request.
  • the personal music player may store the complete query request, or may store only a partial query request, for example, the portion of the query request that has not yet been responded to.
  • the personal music player is connected to a processor device and the result set is created and stored on the personal music player, upon next connection with the television, the personal music player can return a complete query result including a richer set of metadata, rather than returning only the file name.
  • a target device may be capable of responding to a query request, but the target device may take a relatively long period of time to do so. In this case, the target device may respond to the query request, but may store the query request and mark it as "underperforming." The next time the target device connects to a processing device, the processing device may generate a query result responsive to the query request and store it on the target device, so that a subsequent query request could be responded to in a shorter period of time.
  • This embodiment may be useful, for example, when the requestor is not capable of handling "pending" query requests, but is capable of waiting a relatively long period of time for a query result.
  • each target device may store a threshold value, and all query requests that result in a processing time over the threshold value could be queued.
  • MTP Media Transfer Protocol
  • the requesting device may use the MTP GetObjectPropList operation to generate a query request 300 and to issue the query request to the target device 302.
  • the target device may attempt in step 304 to find an object stored in its file system that represents the query results for this query. If no such object is found, the target device may determine 308 whether to generate a query result.
  • Determining if the request should be generated by the target device 308 is a heuristic that can be device dependent. It may depend, for example, on the characteristics of the device's processing capabilities, the size and speed of its data storage, and the communication bus to which it is currently satisfying the request. Similarly, another heuristic will be used to determine if the target device is connecting to a processing device or another device that is capable of processing the query results. This heuristic will be on the side of the processing device, which may be termed the "Initiator.” When the target device connects to an Initiator, the Initiator may interrogate the target device to determine if it can act as a processing device to respond to the query.
  • the target device will satisfy the query request by producing a query result set 310.
  • the target device may then optionally produce an MTP object with a format code that suitably describes the object as a query result set.
  • This object may also have metadata properties set so that future query requests can be compared with this object and determined if this object is a suitable query result set.
  • the target device may create an MTP object with a format code that indicates that this is a pending query that needs processing.
  • FIG. 4 is a flow chart illustrating a method for connecting to a processor device.
  • the method may begin in step 400, wherein a target device may connect to an Initiator, such as a personal computer, laptop computer, or other computing device.
  • the target device connects to the Initiator during a sync operation.
  • much of the metadata and other information that is used in the method of FIG. 4 may be transmitted between the target device and the Initiator during the sync operation and used for other purposes.
  • bandwidth may be reduced and the total communication time between the target device and the Initiator may be reduced.
  • the Initiator may search the target device for pending query requests, such as, for example, by retrieving one or more queries from a queue. In step 406, it is determined whether any pending query requests have been found. If no pending query requests have been found, the method may end. [0053] If one or more pending query requests are found, the method may continue in step 408, wherein the Initiator may determine whether it is to generate a query result for one or more of the pending query requests. When the target device connects to an Initiator, the Initiator may interrogate the target device to determine if it can act as a processing device to respond to one or more of the pending query requests.
  • Determining whether the Initiator is to generate the result 408 may be determined, for example, based on the processing power of the Initiator, the storage of the target device, and the particular query request. Determining if the query result should be generated by the Initiator 408 is a heuristic that may depend, for example, on the characteristics of the Initiator's processing capabilities, the size and speed of the target device's data storage, and the communication bus to which it is currently satisfying the request. This heuristic may be on the side of the Initiator.
  • the Initiator determines that it is not to generate a query result for any of the pending query requests, for example, because the Initiator lacks sufficient processing power or for some other reason, the method may end. If the Initiator determines that it is to generate a query result for one or more of the pending query requests, the Initiator acts as a processing device, and the method may continue in step 410.
  • the Initiator generates one or more query results responding to one or more of the pending query requests.
  • the Initiator will issue suitable commands to the target device so that it can operate over its contents and produce query results.
  • the query results may contain metadata as requested by the query request, and may also contain an index, such as an Object Handle in MTP, that links this metadata to the actual object on the device.
  • the query results may be in a file format that can be easily consumed by the original query requestor.
  • One method of producing query results in such an easily consumable file format is to produce the result set in the same form as MTP results produced by the GetObjectPropList operation, specifically the ObjectPropList dataset.
  • Yet another way to produce query results in an easily consumable file format is for the requesting device to specify to the target device the format for which it wishes to receive the results. The Initiator will then produce the query results in this easily consumable format.
  • the query results may be transferred to the target device.
  • the target device may store the query results.
  • the query results may be marked, as with a format code or by some other appropriate method, to indicate it is a result set.
  • the metadata associated with each query result will contain the original query request object.
  • the original query request can be included, for example, as a binary object property, or linked to the query result with an MTP reference. Depending on how long the query request is to persist, the query request may be removed from the queue, or may be marked to indicate that it is no longer pending.
  • Query templates are, for example, queries that contain one or more parameter references in lieu of particular parameters.
  • the parameter references may be filled in by the processing device when query results are to be generated.
  • a requestor may send a query request to a personal video player, asking for a list of the most recently recorded television programs.
  • one of the parameters in the query request would be "today's date.”
  • the requestor may generate a query request including a parameter reference, such as %date%.
  • removable storage is as a target device.
  • removable storage such as a microdrive
  • the removable storage may contain a large media content collection along with query requests and associated query results.
  • the removable storage could be inserted into a personal computer to transfer content from a media device to the personal computer, as during a sync operation, while also communicating device information regarding the media device.
  • stored query results could be used to accelerate access to the media content on the removable storage.
  • the media device When the media device has a query request regarding the content of the removable storage, it determines whether it is able to generate a query result in a timely fashion. If the media device is not able to generate a query result in a timely fashion, it stores the query request on the removable storage. When the removable storage is placed in the personal computer, the personal computer may generate query results and store the query results on the removable storage for later consumption by the media device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
PCT/US2006/015672 2005-06-24 2006-04-26 Storing queries on devices with rewritable media Ceased WO2007001608A2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
BRPI0612313-9A BRPI0612313A2 (pt) 2005-06-24 2006-04-26 armazenamento de consultas em dispositivos com mìdia regravável
EP06751401A EP1896994A2 (en) 2005-06-24 2006-04-26 Storing queries on devices with rewritable media
JP2008518144A JP2008547109A (ja) 2005-06-24 2006-04-26 書換可能媒体を備えたデバイスに対する問合せを記憶する方法
MX2007015444A MX2007015444A (es) 2005-06-24 2006-04-26 Almacenamiento de consultas en dispositivos con medios re-escribibles.

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/165,193 2005-06-24
US11/165,193 US20060294064A1 (en) 2005-06-24 2005-06-24 Storing queries on devices with rewritable media

Publications (2)

Publication Number Publication Date
WO2007001608A2 true WO2007001608A2 (en) 2007-01-04
WO2007001608A3 WO2007001608A3 (en) 2007-11-22

Family

ID=37568798

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2006/015672 Ceased WO2007001608A2 (en) 2005-06-24 2006-04-26 Storing queries on devices with rewritable media

Country Status (10)

Country Link
US (1) US20060294064A1 (https=)
EP (1) EP1896994A2 (https=)
JP (1) JP2008547109A (https=)
KR (1) KR20080024138A (https=)
CN (1) CN101203854A (https=)
BR (1) BRPI0612313A2 (https=)
MX (1) MX2007015444A (https=)
RU (1) RU2007147989A (https=)
TW (1) TW200705187A (https=)
WO (1) WO2007001608A2 (https=)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010541043A (ja) * 2007-09-20 2010-12-24 マイクロソフト コーポレーション スクリプティング環境および他のプログラミング環境からデバイスによってホストされるサービスへのアクセス

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7627645B2 (en) * 2005-06-27 2009-12-01 Microsoft Corporation Remotely controlling playback of content on a stored device
US20080195750A1 (en) * 2007-02-09 2008-08-14 Microsoft Corporation Secure cross platform auditing
US20090182774A1 (en) * 2008-01-16 2009-07-16 Scott Krig Method And System For Protocol Operations And Datasets To Manage Object Identification Numbers
US12223951B2 (en) * 2021-12-20 2025-02-11 Adeia Guides Inc. Methods and systems for responding to a natural language query
US12518112B2 (en) 2021-12-20 2026-01-06 Adeia Guides Inc. Methods and systems for responding to a natural language query

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6370543B2 (en) * 1996-05-24 2002-04-09 Magnifi, Inc. Display of media previews
US6397206B1 (en) * 1999-12-15 2002-05-28 International Business Machines Corporation Optimizing fixed, static query or service selection and execution based on working set hints and query signatures
US6871204B2 (en) * 2000-09-07 2005-03-22 Oracle International Corporation Apparatus and method for mapping relational data and metadata to XML
US7111020B1 (en) * 2002-03-26 2006-09-19 Oracle International Corporation Incremental refresh of materialized views containing rank function, and rewrite of queries containing rank or rownumber or min/max aggregate functions using such a materialized view
US8150937B2 (en) * 2004-10-25 2012-04-03 Apple Inc. Wireless synchronization between media player and host device
ES2278193T3 (es) * 2002-06-13 2007-08-01 Vodafone Group Plc Seguridad de red.
US6938036B2 (en) * 2002-10-24 2005-08-30 International Business Machines Corporation Query modification analysis
US7532628B2 (en) * 2002-12-30 2009-05-12 Cisco Technology, Inc. Composite controller for multimedia sessions
US7673020B2 (en) * 2003-05-02 2010-03-02 Microsoft Corporation System and method for facilitating communication between a computing device and multiple categories of media devices
US7127449B2 (en) * 2003-08-21 2006-10-24 International Business Machines Corporation Data query system load optimization
US7502820B2 (en) * 2004-05-03 2009-03-10 Microsoft Corporation System and method for optimized property retrieval of stored objects
US7555554B2 (en) * 2004-08-06 2009-06-30 Microsoft Corporation System and method for generating selectable extension to media transport protocol
US8370216B2 (en) * 2005-03-04 2013-02-05 Amazon Technologies, Inc. Personalized preloading of digital content
US20060224628A1 (en) * 2005-03-29 2006-10-05 Bea Systems, Inc. Modeling for data services
US20060288036A1 (en) * 2005-06-17 2006-12-21 Microsoft Corporation Device specific content indexing for optimized device operation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010541043A (ja) * 2007-09-20 2010-12-24 マイクロソフト コーポレーション スクリプティング環境および他のプログラミング環境からデバイスによってホストされるサービスへのアクセス

Also Published As

Publication number Publication date
WO2007001608A3 (en) 2007-11-22
CN101203854A (zh) 2008-06-18
JP2008547109A (ja) 2008-12-25
US20060294064A1 (en) 2006-12-28
RU2007147989A (ru) 2009-06-27
TW200705187A (en) 2007-02-01
EP1896994A2 (en) 2008-03-12
BRPI0612313A2 (pt) 2010-11-03
MX2007015444A (es) 2008-02-25
KR20080024138A (ko) 2008-03-17

Similar Documents

Publication Publication Date Title
JP4644249B2 (ja) 記憶オブジェクトのプロパティ検索を最適化するシステムおよび方法
TWI250742B (en) Method and system for identifying available resources in a peer-to-peer network
JP2000222278A5 (https=)
US20080301261A1 (en) Data file edit system, storage medium, process server, and user client
CN101632063B (zh) 用于优化设备操作的设备特定内容索引
US20070143277A1 (en) Content based partial download
JP2005025759A5 (https=)
KR101261660B1 (ko) 미디어 전송 통신의 직렬화
US20060294064A1 (en) Storing queries on devices with rewritable media
KR101235272B1 (ko) 미디어 서버의 데이터 포맷 변환 및 제어 포인트의 데이터포맷 변환 요청 방법 및 장치
JP5149815B2 (ja) メディア装置コンテンツの変更の識別
JP2007527575A (ja) コンテンツを同期及び識別する方法及び装置
CN1532714A (zh) 数字图像系统中的图像数据的传送控制
US8239544B2 (en) Removable storage content transfer
CN101286167A (zh) 用于访问物理数据存储器中的文件的系统和方法
JP2005346706A (ja) メディアファイルの移動方法及び装置、並びにその方法を行うためのプログラムが保存された保存媒体
CN114547353B (zh) 多功能智慧杆图像文件管理方法、系统、计算机及介质
CN1992776A (zh) 管理存储在外部存储介质中的图像文件的方法和设备
US20090222456A1 (en) Apparatus for storing and processing contents and method of transmitting object meta information on contents using media transfer protocol from the apparatus
EP1732328A1 (en) Method for automatically removing metadata information from audio data files
JP4238318B2 (ja) データ管理装置
JP3972593B2 (ja) 識別情報管理装置、コンピュータデータ通信システム、及びプログラム
KR100694157B1 (ko) 홈 네트워크의 멀티미디어 컨텐츠를 관리하는 방법 및 장치
JP2003186844A (ja) アクセス制限装置、アクセス制限方法、アクセス制限プログラムを記録したコンピュータ読み取り可能なプログラム格納媒体及び、アクセス制限プログラム
JP4700887B2 (ja) サーバ・コンピュータおよびその制御方法

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200680022158.2

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2006751401

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: MX/a/2007/015444

Country of ref document: MX

WWE Wipo information: entry into national phase

Ref document number: 1020077029755

Country of ref document: KR

ENP Entry into the national phase

Ref document number: 2007147989

Country of ref document: RU

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 10002/DELNP/2007

Country of ref document: IN

ENP Entry into the national phase

Ref document number: 2008518144

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: PI0612313

Country of ref document: BR

Kind code of ref document: A2