Patent · US10754683B1 · B1 · US
Optimizing preemptive operating system with motion sensing
- (11) Publication number
- US10754683B1
- (21) Application number
- 15/937,855
- (22) Filing date
- 2018-03-27
- (30) Priority date
- 2007-07-27
- (43) Publication date
- 2020-08-25
- (45) Date of grant
- 2020-08-25
- (51) IPC
- G06F 9/48; G06F 9/50; G06N 5/02
- (52) CPC
- (73) Assignee
- DP Technologies Inc
- (72) Inventors
- Philippe Richard Kahn; Arthur Kinsolving
- (54) Title
- Optimizing preemptive operating system with motion sensing
- (57) Abstract
A method and apparatus to provide a scheduler comprising determining a current use characteristic for the device based on motion information and active applications, and scheduling a future task.
- Full text
- View on Google Patents
Claims (20)
- A method comprising: identifying one or more resources currently in use by a device; identifying current motion information for the device; determining predicted future motion for the device; and scheduling a future task based on the resources used by other active tasks, the current motion information, and the predicted future motion of the device.
- The method of claim 1, further comprising: scheduling the future task to be immediately executed when the task utilizes resources not currently used by the device.
- The method of claim 1, further comprising: determining that the future task would utilize a particular resource currently used by an other task on the device; and when the future task is a higher priority than the other task, reducing resource availability to the other task.
- The method of claim 3, wherein reducing resource availability comprises terminating the other task by the device.
- The method of claim 4, wherein when the other task is terminated, the other task is placed on a future task list to be executed when the resource becomes available again.
- The method of claim 1, further comprising: prioritizing tasks based on resource use and application profile.
- The method of claim 1, wherein the task is transmitting data to a server, and wherein the data transmission task is scheduled when the motion information and the currently active applications indicate that the device is idle.
- The method of claim 7, wherein the data is for one or more of: uploading, downloading, and synchronizing data with a server.
- The method of claim 7, wherein the device is idle when the device is motionless, and no user interaction with the device is occurring.
- The method of claim 7, wherein the device is idle when the device is motionless and no voice call is being made.
- A device comprising: a motion sensor to obtain motion information; resource detector to detect one or more currently used resources; and a processor to predict a future use characteristic for the device, based on the one or more currently used resources, current motion information of the device, and predicted future motion information; and a scheduler to schedule one or more tasks to be executed at a future time based on the future use characteristics of the device.
- The device of claim 11, further comprising: the scheduler to schedule the task to be immediately executed, when the task utilizes resources not currently used.
- The device of claim 11, further comprising: a prioritizer to determine a conflict between the currently used resources and the resources needed by the task; and when the task is a higher priority, a resource restrictor to reduce resource availability to current users of the resource.
- The device of claim 13, wherein reducing resource availability comprises terminating the current users of the resource.
- The mobile device of claim 14, wherein when the existing operation is terminated, the existing operation is placed on a future task list to be executed when the resource becomes available again.
- The device of claim 11, further comprising: the scheduler to prioritize tasks based on resource use and application profile.
- The device of claim 11, wherein the task is transmitting data to a server, and wherein the data transmission task is scheduled when the motion information and the currently active applications indicate that the device is idle.
- The device of claim 17, wherein the data call is for one or more of: uploading, downloading, and synchronizing data with a server.
- The device of claim 17, wherein the device is idle when one of the following is occurring: the device is motionless and no user interaction with the device is occurring, or when the device is motionless and no voice call is being made.
- A device including a network connection comprising: a motion information logic to receive motion information of a device, and to predict future motion information; a resource detector to detect current resource usage of the device; a processor to determine future use characteristics based on the one or more of the current resource usage, the current motion information, and the predicted future motion information; a scheduler to receive a task to be scheduled to be executed at a future time; the scheduler to schedule the task for future execution based on the predicted future use characteristics.
Description
The present patent application is a continuation of U.S. application Ser. No. 14/936,629, filed on Nov. 9, 2015, issued as U.S. Pat. No. 9,940,161 on Apr. 10, 2018, which is a continuation of U.S. application Ser. No. 14/047,937, filed on Oct. 7, 2015, issuing as U.S. Pat. No. 9,183,044 on Nov. 10, 2015, which is a continuation of U.S. application Ser. No. 11/829,813, filed on Jul. 27, 2007, now U.S. Pat. No. 8,555,282, which issued on Oct. 8, 2013, all of which are incorporated herein by reference.
The present invention relates to preemptive operating systems, and more particularly to scheduling in preemptive operating systems.
Mobile devices are gaining increasing functionality and importance in our daily lives. Accelerometers may be incorporated in these devices for measuring the motion that the device experiences. More and more of these mobile devices have multi-tasking preemptive operating systems that allow the device to run several programs or applications at once. These preemptive operating systems have schedulers to prioritize tasks. In prior implementations, these schedulers based their decision on the priority of each application or function, and occasionally on the time of day.
A method and apparatus to provide a scheduler comprising determining a current use characteristic for a device based on motion information and active applications, and scheduling a future task.
The present invention is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which:
Citations (476)
- US4238146A
- US4285041A
- US4571680A
- US4578769A
- US4700369A
- US4776323A
- JPH0720547Y2
- US5313060A
- US5506987A
- US5192964A
- US5386210A
- US5446725A
- US5454114A
- US5515419A
- US5430480A
- US6061456A
- US5323060A
- US5717611A
- US5446775A
- US5485402A
- US6786877B2
- US5654619A
- US7451056B2
- US7054784B2
- US7512515B2
- US20040225467A1
- US7072789B2
- US7158912B2
- US20060259268A1
- US6885971B2
- US5778882A
- US5583776A
- US5593431A
- US5911065A
- US5703786A
- US5708863A
- US5790490A
- US6122595A
- US6129686A
- US6941239B2
- US6766176B1
- EP0833537B1
- US5955667A
- US5737439A
- US6145389A
- US5771001A
- US7092846B2
- US6959259B2
- US6539336B1
- US7042509B2
- US6408330B1
- US5960085A
- US20030083596A1
- US6428490B1
- US20020193124A1
- US5976083A
- US6135951A
- US20020150302A1
- US7200517B2
- US20070061105A1
- US6493652B1
- US20100057398A1
- US6611789B1
- US20070208531A1
- US6898550B1
- US6513381B2
- WO1999022338A1
- US6336891B1
- US20050157181A1
- US6634992B1
- US6013007A
- US6246321B1
- US6496695B1
- US7027087B2
- JP2000090069A
- US6369794B1
- US6532419B1
- US5955871A
- US20050168587A1
- US6353449B1
- US20020138017A1
- US6731958B1
- US6396883B2
- US20020044634A1
- WO2000063874A1
- US6788980B1
- US20060161459A9
- US20020022551A1
- US6997852B2
- US7765553B2
- US6771250B1
- JP2001057695A
- US6790178B1
- US6478736B1
- US6282496B1
- US7220220B2
- EP1104143A2
- US20010047488A1
- US20030139692A1
- US7149964B1
- US7010332B1
- US6665802B1
- US6685480B2
- US7155507B2
- US20020042830A1
- US20020190947A1
- US6470147B2
- US20030236625A1
- US6601016B1
- US6522266B1
- US20030208110A1
- US6807564B1
- US20020023654A1
- US20080171918A1
- US20050113650A1
- US8398546B2
- US20030048218A1
- US20020006284A1
- US7148879B2
- US6836744B1
- US20040024846A1
- US20070037605A1
- US20070037610A1
- US20070192483A1
- US20020027164A1
- US7020487B2
- US6529144B1
- US20020054214A1
- US6609004B1
- US20060017692A1
- US6895425B1
- US20020089425A1
- US6700499B2
- US20020109600A1
- US6374054B1
- US20020091956A1
- US20040047498A1
- US20040043760A1
- US20020118121A1
- US20020122543A1
- US20040106958A1
- US6607493B2
- US7028547B2
- US20020142887A1
- US6672991B2
- US6595929B2
- US20030139908A1
- US20020151810A1
- US6826477B2
- US20030018430A1
- WO2002088926A1
- US20020173295A1
- US7245725B1
- US20040219910A1
- US20050243178A1
- US20040135898A1
- US20040078220A1
- US20030109258A1
- US20030208113A1
- US20030033411A1
- US20060040793A1
- US7736272B2
- US6628898B2
- US20030093187A1
- JP2003108154A
- US20030149526A1
- JP2003143683A
- US20030101260A1
- US20040078219A1
- US20050101841A9
- US20060289819A1
- US20050081200A1
- US7171331B2
- US7002553B2
- US20030187683A1
- US20030151672A1
- US20070017136A1
- US20050182824A1
- US20040081441A1
- US20030227487A1
- US20040017300A1
- US6813582B2
- US20050256414A1
- US20040044493A1
- US20080072014A1
- US7089508B1
- US7171222B2
- US6881191B2
- US20040106421A1
- US6975959B2
- US20040122294A1
- US20040122485A1
- US20040122296A1
- US20040122295A1
- US20040122486A1
- US20040122297A1
- US20040122484A1
- US20040122333A1
- US20040122487A1
- US20040125073A1
- US20050015768A1
- US7212230B2
- US20040130628A1
- US20040148351A1
- US20040148341A1
- US20040146048A1
- US20040148340A1
- US20040148342A1
- US20040176067A1
- US20040185821A1
- US7212943B2
- US7353112B2
- US20040236500A1
- US20070165790A1
- US7387611B2
- US20040242202A1
- US20040247030A1
- US20040259494A1
- US20050038691A1
- US7177684B1
- US20070213126A1
- US6928382B2
- US20050113649A1
- US20050027567A1
- US20050033200A1
- US20050107944A1
- US20060068919A1
- US20050079877A1
- US20050048945A1
- US20050048955A1
- US7502643B2
- US7934020B1
- US6823036B1
- US20050079873A1
- US20050078197A1
- US20050248718A1
- US7857772B2
- US20050235058A1
- US7457872B2
- US7379999B1
- US20050102167A1
- US20050202934A1
- US20050143106A1
- US7664657B1
- JP2005167758A
- US20050125797A1
- US20050131736A1
- US7328611B2
- US20050141522A1
- US20050146431A1
- US20050165719A1
- US20050210419A1
- US20050183086A1
- US7096619B2
- US20080153671A1
- US20080214358A1
- US20060154642A1
- US20050203430A1
- US20070260418A1
- US20050216403A1
- US20050210300A1
- US7301529B2
- US20050212760A1
- US7301526B2
- US7301528B2
- US7280096B2
- US7301527B2
- US7180501B2
- US7365735B2
- US7365736B2
- US7176887B2
- US20050212751A1
- US7365737B2
- US20050212753A1
- US7180502B2
- US20050212752A1
- US7173604B2
- US7180500B2
- US7176888B2
- US7176886B2
- JP2005277995A
- US20050234676A1
- US20050222801A1
- US20050245988A1
- US20050232404A1
- US20050262237A1
- JP2005309691A
- US7297088B2
- US7169084B2
- US20050232388A1
- US20050238132A1
- US20050240375A1
- US20060063980A1
- US7057551B1
- US20050258938A1
- US20070259717A1
- US20070259716A1
- US20050281289A1
- US20070225935A1
- US20060009243A1
- US20090099668A1
- JP2006026092A
- US20060010699A1
- US7705884B2
- US7148797B2
- US20060020177A1
- US7334472B2
- US20060026212A1
- US20060029284A1
- US20060098097A1
- US20060080551A1
- US20060109113A1
- US20060064276A1
- US20080311929A1
- JP2006118909A
- US20060090088A1
- US20060090161A1
- US20060100546A1
- US7382611B2
- US7397357B2
- US20060167647A1
- US20060149516A1
- US20060249683A1
- US7254516B2
- US20060136173A1
- US20060140422A1
- US20060161377A1
- US20060201964A1
- US20060167387A1
- US20060167943A1
- US20060172706A1
- JP2006239398A
- US20090024233A1
- US7305323B2
- US20060174685A1
- JP2005260944A
- US20060206258A1
- US20060204214A1
- US20060205406A1
- US20060223547A1
- JP2006287730A
- US7526402B2
- US20060288781A1
- US7640804B2
- US20060256082A1
- US20060259574A1
- US20060257042A1
- US20070038364A1
- US20070073482A1
- US20060284979A1
- US20070050157A1
- US20070005988A1
- US20070004451A1
- US20070024441A1
- US20070040892A1
- US20070060446A1
- US20140369522A1
- US20070063850A1
- US20070067094A1
- JP2007080219A
- US20070072158A1
- US20070072581A1
- US20070078324A1
- JP2007104670A
- US20070075965A1
- US20070143068A1
- US7463997B2
- US20070125852A1
- US20070082789A1
- US20120092157A1
- GB2431813A
- JP2007121694A
- US20070106991A1
- US20070104479A1
- US20070102525A1
- JP2007142611A
- US20070150136A1
- US20070130582A1
- US20070145680A1
- US20070142715A1
- US20070143765A1
- US20070075127A1
- US7489937B2
- US20070156364A1
- US20070161410A1
- US20070169126A1
- JP2007193908A
- US20070176776A1
- US20070176898A1
- US20070204744A1
- US7689107B2
- US20070221045A1
- US20070195784A1
- EP1988492A1
- US7467060B2
- US20070208544A1
- US20100199189A1
- US20070213085A1
- US20070219708A1
- US20090031319A1
- US20070263995A1
- US20070233788A1
- US20070239399A1
- US20070250261A1
- US20070259685A1
- US20070260482A1
- US20080005738A1
- US7608050B2
- US20070281762A1
- US20070296696A1
- US7280849B1
- US20080030586A1
- US20080046888A1
- US20080052716A1
- US20080082994A1
- US20080086734A1
- US7892080B1
- US20080102785A1
- US20080109158A1
- US20080125959A1
- US20080114538A1
- US20080113689A1
- US20080120520A1
- US7457719B1
- US7788059B1
- US20080140338A1
- US7653508B1
- US7881902B1
- US20080161072A1
- US20080165022A1
- US20080168361A1
- US8949070B1
- US8275635B2
- US8458715B1
- US20080231714A1
- US20080232604A1
- US20080231713A1
- US20080243432A1
- US7753861B1
- US20080254944A1
- US7987070B2
- US20090234614A1
- US20080303681A1
- US7774156B2
- US7752011B2
- US20090017880A1
- US9183044B2
- US8555282B1
- US20090043531A1
- US7647196B2
- US20090047645A1
- US20090067826A1
- US7907901B1
- US20090082994A1
- US20090088204A1
- US20090099812A1
- US20090098880A1
- US20090124348A1
- US8790279B2
- US20090124938A1
- US20090128448A1
- US20090174782A1
- US20090215502A1
- US20090213002A1
- US20090274317A1
- US20090296951A1
- US8996332B2
- US20090319221A1
- US20090325705A1
- US8187182B2
- US20100056872A1
- US20100245131A1
- US8562489B2
- US20110003665A1
- US20100277489A1
- US20100283742A1
Record as JSON
{
"publication_number": "US10754683B1",
"country": "US",
"kind": "B1",
"title": "Optimizing preemptive operating system with motion sensing",
"abstract": "A method and apparatus to provide a scheduler comprising determining a current use characteristic for the device based on motion information and active applications, and scheduling a future task.",
"claims": [
"1. A method comprising: identifying one or more resources currently in use by a device; identifying current motion information for the device; determining predicted future motion for the device; and scheduling a future task based on the resources used by other active tasks, the current motion information, and the predicted future motion of the device.",
"2. The method of claim 1, further comprising: scheduling the future task to be immediately executed when the task utilizes resources not currently used by the device.",
"3. The method of claim 1, further comprising: determining that the future task would utilize a particular resource currently used by an other task on the device; and when the future task is a higher priority than the other task, reducing resource availability to the other task.",
"4. The method of claim 3, wherein reducing resource availability comprises terminating the other task by the device.",
"5. The method of claim 4, wherein when the other task is terminated, the other task is placed on a future task list to be executed when the resource becomes available again.",
"6. The method of claim 1, further comprising: prioritizing tasks based on resource use and application profile.",
"7. The method of claim 1, wherein the task is transmitting data to a server, and wherein the data transmission task is scheduled when the motion information and the currently active applications indicate that the device is idle.",
"8. The method of claim 7, wherein the data is for one or more of: uploading, downloading, and synchronizing data with a server.",
"9. The method of claim 7, wherein the device is idle when the device is motionless, and no user interaction with the device is occurring.",
"10. The method of claim 7, wherein the device is idle when the device is motionless and no voice call is being made.",
"11. A device comprising: a motion sensor to obtain motion information; resource detector to detect one or more currently used resources; and a processor to predict a future use characteristic for the device, based on the one or more currently used resources, current motion information of the device, and predicted future motion information; and a scheduler to schedule one or more tasks to be executed at a future time based on the future use characteristics of the device.",
"12. The device of claim 11, further comprising: the scheduler to schedule the task to be immediately executed, when the task utilizes resources not currently used.",
"13. The device of claim 11, further comprising: a prioritizer to determine a conflict between the currently used resources and the resources needed by the task; and when the task is a higher priority, a resource restrictor to reduce resource availability to current users of the resource.",
"14. The device of claim 13, wherein reducing resource availability comprises terminating the current users of the resource.",
"15. The mobile device of claim 14, wherein when the existing operation is terminated, the existing operation is placed on a future task list to be executed when the resource becomes available again.",
"16. The device of claim 11, further comprising: the scheduler to prioritize tasks based on resource use and application profile.",
"17. The device of claim 11, wherein the task is transmitting data to a server, and wherein the data transmission task is scheduled when the motion information and the currently active applications indicate that the device is idle.",
"18. The device of claim 17, wherein the data call is for one or more of: uploading, downloading, and synchronizing data with a server.",
"19. The device of claim 17, wherein the device is idle when one of the following is occurring: the device is motionless and no user interaction with the device is occurring, or when the device is motionless and no voice call is being made.",
"20. A device including a network connection comprising: a motion information logic to receive motion information of a device, and to predict future motion information; a resource detector to detect current resource usage of the device; a processor to determine future use characteristics based on the one or more of the current resource usage, the current motion information, and the predicted future motion information; a scheduler to receive a task to be scheduled to be executed at a future time; the scheduler to schedule the task for future execution based on the predicted future use characteristics."
],
"description_excerpt": "The present patent application is a continuation of U.S. application Ser. No. 14/936,629, filed on Nov. 9, 2015, issued as U.S. Pat. No. 9,940,161 on Apr. 10, 2018, which is a continuation of U.S. application Ser. No. 14/047,937, filed on Oct. 7, 2015, issuing as U.S. Pat. No. 9,183,044 on Nov. 10, 2015, which is a continuation of U.S. application Ser. No. 11/829,813, filed on Jul. 27, 2007, now U.S. Pat. No. 8,555,282, which issued on Oct. 8, 2013, all of which are incorporated herein by reference.\n\nThe present invention relates to preemptive operating systems, and more particularly to scheduling in preemptive operating systems.\n\nMobile devices are gaining increasing functionality and importance in our daily lives. Accelerometers may be incorporated in these devices for measuring the motion that the device experiences. More and more of these mobile devices have multi-tasking preemptive operating systems that allow the device to run several programs or applications at once. These preemptive operating systems have schedulers to prioritize tasks. In prior implementations, these schedulers based their decision on the priority of each application or function, and occasionally on the time of day.\n\nA method and apparatus to provide a scheduler comprising determining a current use characteristic for a device based on motion information and active applications, and scheduling a future task.\n\nThe present invention is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which:",
"cpc": [
"G06F 9/48",
"G06F 9/4818",
"G06F 9/4843",
"G06F 9/4881",
"G06F 9/4887",
"G06F 9/4893",
"G06F 9/50",
"G06F 9/5005",
"G06F 9/5011",
"G06F 9/5016",
"G06F 9/5027",
"G06F 9/5044",
"G06F 9/5055",
"G06F 9/5094",
"G06N 5/02"
],
"ipc": [
"G06F 9/48",
"G06F 9/50",
"G06N 5/02"
],
"assignees": [
"DP Technologies Inc"
],
"inventors": [
"Philippe Richard Kahn",
"Arthur Kinsolving"
],
"filing_date": "2018-03-27",
"publication_date": "2020-08-25",
"grant_date": "2020-08-25",
"priority_date": "2007-07-27",
"application_number": "US-201815937855-A",
"family_id": "49262643",
"cited_by_count": 5,
"citations": [
"US4238146A",
"US4285041A",
"US4571680A",
"US4578769A",
"US4700369A",
"US4776323A",
"JPH0720547Y2",
"US5313060A",
"US5506987A",
"US5192964A",
"US5386210A",
"US5446725A",
"US5454114A",
"US5515419A",
"US5430480A",
"US6061456A",
"US5323060A",
"US5717611A",
"US5446775A",
"US5485402A",
"US6786877B2",
"US5654619A",
"US7451056B2",
"US7054784B2",
"US7512515B2",
"US20040225467A1",
"US7072789B2",
"US7158912B2",
"US20060259268A1",
"US6885971B2",
"US5778882A",
"US5583776A",
"US5593431A",
"US5911065A",
"US5703786A",
"US5708863A",
"US5790490A",
"US6122595A",
"US6129686A",
"US6941239B2",
"US6766176B1",
"EP0833537B1",
"US5955667A",
"US5737439A",
"US6145389A",
"US5771001A",
"US7092846B2",
"US6959259B2",
"US6539336B1",
"US7042509B2",
"US6408330B1",
"US5960085A",
"US20030083596A1",
"US6428490B1",
"US20020193124A1",
"US5976083A",
"US6135951A",
"US20020150302A1",
"US7200517B2",
"US20070061105A1",
"US6493652B1",
"US20100057398A1",
"US6611789B1",
"US20070208531A1",
"US6898550B1",
"US6513381B2",
"WO1999022338A1",
"US6336891B1",
"US20050157181A1",
"US6634992B1",
"US6013007A",
"US6246321B1",
"US6496695B1",
"US7027087B2",
"JP2000090069A",
"US6369794B1",
"US6532419B1",
"US5955871A",
"US20050168587A1",
"US6353449B1",
"US20020138017A1",
"US6731958B1",
"US6396883B2",
"US20020044634A1",
"WO2000063874A1",
"US6788980B1",
"US20060161459A9",
"US20020022551A1",
"US6997852B2",
"US7765553B2",
"US6771250B1",
"JP2001057695A",
"US6790178B1",
"US6478736B1",
"US6282496B1",
"US7220220B2",
"EP1104143A2",
"US20010047488A1",
"US20030139692A1",
"US7149964B1",
"US7010332B1",
"US6665802B1",
"US6685480B2",
"US7155507B2",
"US20020042830A1",
"US20020190947A1",
"US6470147B2",
"US20030236625A1",
"US6601016B1",
"US6522266B1",
"US20030208110A1",
"US6807564B1",
"US20020023654A1",
"US20080171918A1",
"US20050113650A1",
"US8398546B2",
"US20030048218A1",
"US20020006284A1",
"US7148879B2",
"US6836744B1",
"US20040024846A1",
"US20070037605A1",
"US20070037610A1",
"US20070192483A1",
"US20020027164A1",
"US7020487B2",
"US6529144B1",
"US20020054214A1",
"US6609004B1",
"US20060017692A1",
"US6895425B1",
"US20020089425A1",
"US6700499B2",
"US20020109600A1",
"US6374054B1",
"US20020091956A1",
"US20040047498A1",
"US20040043760A1",
"US20020118121A1",
"US20020122543A1",
"US20040106958A1",
"US6607493B2",
"US7028547B2",
"US20020142887A1",
"US6672991B2",
"US6595929B2",
"US20030139908A1",
"US20020151810A1",
"US6826477B2",
"US20030018430A1",
"WO2002088926A1",
"US20020173295A1",
"US7245725B1",
"US20040219910A1",
"US20050243178A1",
"US20040135898A1",
"US20040078220A1",
"US20030109258A1",
"US20030208113A1",
"US20030033411A1",
"US20060040793A1",
"US7736272B2",
"US6628898B2",
"US20030093187A1",
"JP2003108154A",
"US20030149526A1",
"JP2003143683A",
"US20030101260A1",
"US20040078219A1",
"US20050101841A9",
"US20060289819A1",
"US20050081200A1",
"US7171331B2",
"US7002553B2",
"US20030187683A1",
"US20030151672A1",
"US20070017136A1",
"US20050182824A1",
"US20040081441A1",
"US20030227487A1",
"US20040017300A1",
"US6813582B2",
"US20050256414A1",
"US20040044493A1",
"US20080072014A1",
"US7089508B1",
"US7171222B2",
"US6881191B2",
"US20040106421A1",
"US6975959B2",
"US20040122294A1",
"US20040122485A1",
"US20040122296A1",
"US20040122295A1",
"US20040122486A1",
"US20040122297A1",
"US20040122484A1",
"US20040122333A1",
"US20040122487A1",
"US20040125073A1",
"US20050015768A1",
"US7212230B2",
"US20040130628A1",
"US20040148351A1",
"US20040148341A1",
"US20040146048A1",
"US20040148340A1",
"US20040148342A1",
"US20040176067A1",
"US20040185821A1",
"US7212943B2",
"US7353112B2",
"US20040236500A1",
"US20070165790A1",
"US7387611B2",
"US20040242202A1",
"US20040247030A1",
"US20040259494A1",
"US20050038691A1",
"US7177684B1",
"US20070213126A1",
"US6928382B2",
"US20050113649A1",
"US20050027567A1",
"US20050033200A1",
"US20050107944A1",
"US20060068919A1",
"US20050079877A1",
"US20050048945A1",
"US20050048955A1",
"US7502643B2",
"US7934020B1",
"US6823036B1",
"US20050079873A1",
"US20050078197A1",
"US20050248718A1",
"US7857772B2",
"US20050235058A1",
"US7457872B2",
"US7379999B1",
"US20050102167A1",
"US20050202934A1",
"US20050143106A1",
"US7664657B1",
"JP2005167758A",
"US20050125797A1",
"US20050131736A1",
"US7328611B2",
"US20050141522A1",
"US20050146431A1",
"US20050165719A1",
"US20050210419A1",
"US20050183086A1",
"US7096619B2",
"US20080153671A1",
"US20080214358A1",
"US20060154642A1",
"US20050203430A1",
"US20070260418A1",
"US20050216403A1",
"US20050210300A1",
"US7301529B2",
"US20050212760A1",
"US7301526B2",
"US7301528B2",
"US7280096B2",
"US7301527B2",
"US7180501B2",
"US7365735B2",
"US7365736B2",
"US7176887B2",
"US20050212751A1",
"US7365737B2",
"US20050212753A1",
"US7180502B2",
"US20050212752A1",
"US7173604B2",
"US7180500B2",
"US7176888B2",
"US7176886B2",
"JP2005277995A",
"US20050234676A1",
"US20050222801A1",
"US20050245988A1",
"US20050232404A1",
"US20050262237A1",
"JP2005309691A",
"US7297088B2",
"US7169084B2",
"US20050232388A1",
"US20050238132A1",
"US20050240375A1",
"US20060063980A1",
"US7057551B1",
"US20050258938A1",
"US20070259717A1",
"US20070259716A1",
"US20050281289A1",
"US20070225935A1",
"US20060009243A1",
"US20090099668A1",
"JP2006026092A",
"US20060010699A1",
"US7705884B2",
"US7148797B2",
"US20060020177A1",
"US7334472B2",
"US20060026212A1",
"US20060029284A1",
"US20060098097A1",
"US20060080551A1",
"US20060109113A1",
"US20060064276A1",
"US20080311929A1",
"JP2006118909A",
"US20060090088A1",
"US20060090161A1",
"US20060100546A1",
"US7382611B2",
"US7397357B2",
"US20060167647A1",
"US20060149516A1",
"US20060249683A1",
"US7254516B2",
"US20060136173A1",
"US20060140422A1",
"US20060161377A1",
"US20060201964A1",
"US20060167387A1",
"US20060167943A1",
"US20060172706A1",
"JP2006239398A",
"US20090024233A1",
"US7305323B2",
"US20060174685A1",
"JP2005260944A",
"US20060206258A1",
"US20060204214A1",
"US20060205406A1",
"US20060223547A1",
"JP2006287730A",
"US7526402B2",
"US20060288781A1",
"US7640804B2",
"US20060256082A1",
"US20060259574A1",
"US20060257042A1",
"US20070038364A1",
"US20070073482A1",
"US20060284979A1",
"US20070050157A1",
"US20070005988A1",
"US20070004451A1",
"US20070024441A1",
"US20070040892A1",
"US20070060446A1",
"US20140369522A1",
"US20070063850A1",
"US20070067094A1",
"JP2007080219A",
"US20070072158A1",
"US20070072581A1",
"US20070078324A1",
"JP2007104670A",
"US20070075965A1",
"US20070143068A1",
"US7463997B2",
"US20070125852A1",
"US20070082789A1",
"US20120092157A1",
"GB2431813A",
"JP2007121694A",
"US20070106991A1",
"US20070104479A1",
"US20070102525A1",
"JP2007142611A",
"US20070150136A1",
"US20070130582A1",
"US20070145680A1",
"US20070142715A1",
"US20070143765A1",
"US20070075127A1",
"US7489937B2",
"US20070156364A1",
"US20070161410A1",
"US20070169126A1",
"JP2007193908A",
"US20070176776A1",
"US20070176898A1",
"US20070204744A1",
"US7689107B2",
"US20070221045A1",
"US20070195784A1",
"EP1988492A1",
"US7467060B2",
"US20070208544A1",
"US20100199189A1",
"US20070213085A1",
"US20070219708A1",
"US20090031319A1",
"US20070263995A1",
"US20070233788A1",
"US20070239399A1",
"US20070250261A1",
"US20070259685A1",
"US20070260482A1",
"US20080005738A1",
"US7608050B2",
"US20070281762A1",
"US20070296696A1",
"US7280849B1",
"US20080030586A1",
"US20080046888A1",
"US20080052716A1",
"US20080082994A1",
"US20080086734A1",
"US7892080B1",
"US20080102785A1",
"US20080109158A1",
"US20080125959A1",
"US20080114538A1",
"US20080113689A1",
"US20080120520A1",
"US7457719B1",
"US7788059B1",
"US20080140338A1",
"US7653508B1",
"US7881902B1",
"US20080161072A1",
"US20080165022A1",
"US20080168361A1",
"US8949070B1",
"US8275635B2",
"US8458715B1",
"US20080231714A1",
"US20080232604A1",
"US20080231713A1",
"US20080243432A1",
"US7753861B1",
"US20080254944A1",
"US7987070B2",
"US20090234614A1",
"US20080303681A1",
"US7774156B2",
"US7752011B2",
"US20090017880A1",
"US9183044B2",
"US8555282B1",
"US20090043531A1",
"US7647196B2",
"US20090047645A1",
"US20090067826A1",
"US7907901B1",
"US20090082994A1",
"US20090088204A1",
"US20090099812A1",
"US20090098880A1",
"US20090124348A1",
"US8790279B2",
"US20090124938A1",
"US20090128448A1",
"US20090174782A1",
"US20090215502A1",
"US20090213002A1",
"US20090274317A1",
"US20090296951A1",
"US8996332B2",
"US20090319221A1",
"US20090325705A1",
"US8187182B2",
"US20100056872A1",
"US20100245131A1",
"US8562489B2",
"US20110003665A1",
"US20100277489A1",
"US20100283742A1"
]
}
Record 1,993 of 8,000 in Patents full text (MLC-0201). Request the full dataset.