1. A method of an anti-malware processor, the method comprising:
filtering by a first logic unit of the processor, input data based on a rule; and
scanning by a second logic unit of the processor, for malware in the data, the filtering and the scanning being performed at a same time,
wherein the input data is packet data, the method further comprising determining whether the packet data contains data to be scanned for malware,
wherein the scanning is performed only if it is determined that the packet data contains data to be scanned for malware,
wherein, if the packet data does not match the rule as a result of the filtering and if it is determined that the packet data does not contain the malware as a result of the scanning, the packet data is transmitted to an external device or an application unit,
wherein, if the packet data does not match the rule as a result of the filtering, but if it is determined that the packet data contains the malware as a result of the scanning, the packet data is not transmitted to an external device or an application unit, and
wherein the method further comprises:
if it is determined that the packet data does not match the rule in the filtering, storing the packet data in a standby buffer; and
if it is determined that the packet data not matching the rule contains the data to be scanned for malware in the determining, copying the packet data to an auxiliary buffer and storing the packet data in the auxiliary buffer.
2. The method of claim 1, wherein the filtering overlaps with the scanning in time.
3. The method of claim 2, wherein the scanning starts before the filtering is completed.
4. The method of claim 1, wherein the processor is a system-on-chip (SOC).
5. The method as claimed in claim 1, wherein the input data is packet data and the method further comprising converting the packet data to be scanned for malware into data of a format for the scanning,
wherein the scanning scans the converted packet data.
6. The method as claimed in claim 1, further comprising, if it is determined that the packet data contains the data to be scanned for malware in the determining, determining a type of the data to be scanned for malware.
7. The method as claimed in claim 1, wherein the input data is packet data and the filtering comprises:
first matching the packet data and a rule pattern; and
determining whether to allow or block the packet data according to a result of the first matching,
wherein the scanning comprises:
second matching the packet data and a predetermined malware pattern; and
determining whether the packet data contains the malware according to a result of the second matching.
8. An anti-malware device comprising:
a processor comprising:
a firewall engine which comprises first logic units that filter input data based on a rule, and determines whether the input data contains data to be scanned for malware; and
an anti-malware engine which comprises second logic units that scan for malware in the input data, if the firewall engine determines that the input data contains the data to be scanned for malware,
wherein the firewall engine filters and the anti-malware engine scans at a same time
wherein the input data is packet data, the firewall engine determines whether the packet data contains data to be scanned for malware, and the second logic units scan for the malware only if the firewall engine determines that the packet data contains the data to be scanned for malware,
wherein the anti-malware device further comprises a standby buffer and an auxiliary buffer,
wherein the firewall engine stores the data in the standby buffer if it is determined that the packet data does not match the rule, and stores the data in the auxiliary buffer if the packet data not matching the rule contains the data to be scanned for malware.
9. The anti-malware device of claim 8, wherein the firewall engine filters during a first period of time and the anti-malware engine scans during a second period of time, wherein the first and second periods of time overlap.
10. The anti-malware device of claim 8: wherein the anti-malware engine starts to scan before the firewall engine completes filtering.
11. The anti-malware device as claimed in claim 8, wherein the firewall engine determines whether the data contains the data to be scanned for malware, only if the data does not match the rule.
12. The anti-malware device as claimed in claim 8, further comprising an anti-malware manager which converts the data to be scanned for malware into data of a format for the anti-malware engine,
wherein the anti-malware engine scans the converted 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.
What is claimed is:
1. A ground-engaging robotic vehicle, comprising:
a body;
two or more ground-engaging members coupled to the body, the ground-engaging members operable to propel the robotic vehicle across a surface; and
a spring member coupled to the body, the spring member movable between at least a first, stored position and a second, extended position.
2. The robotic vehicle of claim 1, further comprising a retraction apparatus operable to move the spring member to at least the first, stored position.
3. The robotic vehicle of claim 2, wherein the retraction apparatus comprises
a retraction mechanism coupled to the body, and a cable extending between the retraction apparatus and the spring member.
4. The robotic vehicle of claim 3, wherein the retraction apparatus is adapted to selectively retract and extend the cable.
5. The robotic vehicle of claim 2, wherein the retraction apparatus further comprises a latching mechanism operable to retain the spring member in the first, stored position.
6. The robotic vehicle of claim 1, wherein the body is cylindrical.
7. The robotic vehicle of claim 1, wherein the two or more ground-engaging members are wheels located at opposite ends of the body.
8. The robotic vehicle of claim 1, further comprising control circuits operable to permit remote control of the vehicle.
9. A method for traversing one or more surfaces with a ground-engaging, robotic vehicle, the method comprising:
providing a ground-engaging, robotic vehicle, comprising:
a body,
at least a first and a second ground-engaging member operatively coupled to the body, and
a spring member coupled to the body, the spring member movable between at least a first, stored position and a second, extended position; and
energizing one or both of the first and second ground-engaging members so that the ground-engaging robotic vehicle is propelled across a surface.
10. The method of claim 9, wherein the method further comprises retracting the spring member to the first, stored position, and releasing the spring member from the first, stored position.
11. The method of claim 9, wherein the method comprises releasing the spring member from the first, stored position and striking the surface, with the spring member, with sufficient force to lift the robotic vehicle from the surface.
12. The method of claim 9, wherein the method further comprises moving the spring member between the second, extended position and the first, stored position.
13. A ground-engaging robotic vehicle, comprising:
a body;
two or more rotatable, ground-engaging wheels coupled to the body, the ground-engaging wheels operable to propel the robotic vehicle across a surface; and
a spring member coupled to the body, the spring member movable between at least a first, deflected position and a second, undeflected position;
a retraction apparatus operable to position the spring member in the first, deflected position, the second, undeflected position, or anywhere in between.
14. The ground-engaging robotic vehicle of claim 13, wherein the retraction apparatus comprises:
a spool;
a power source coupled to the spool, the power source operable to selectively rotate the spool in either a first direction or a second direction; and
a flexible cable having a first end coupled to the spool and a second end coupled to the spring member.
15. The ground-engaging robotic vehicle of claim 13, wherein the retraction apparatus further comprises a latch mechanism operable to secure the spring member when the latter is in the first, deflected position.
16. The ground-engaging robotic vehicle of claim 14, wherein rotating the spool in the first direction retracts the flexible cable, moving the spring member towards the first, deflected position and rotating the spool in the second direction extends the flexible cable, moving the spring member towards the second, undeflected position.
17. The ground-engaging robotic vehicle of claim 13, further comprising one or more sensing devices.
18. The ground-engaging robotic vehicle of claim 17, wherein the one or more sensing devices comprises a video camera assembly.
19. The ground-engaging robotic vehicle of claim 18, wherein the video camera assembly is coupled to the vehicle with an adjustable base.
20. The ground-engaging robotic vehicle of claim 18, wherein the video camera assembly is at least partially enclosed within the body.
21. The ground-engaging robotic vehicle of claim 17, wherein the one or more sensing devices comprises a microphone.
22. The ground-engaging robotic vehicle of claim 13, further comprising a magnetometer.
23. The ground-engaging robotic vehicle of claim 13, further comprising a tilt sensor.
24. The ground-engaging robotic vehicle of claim 23, wherein the tilt sensor comprises at least one accelerometer.
25. The ground-engaging robotic vehicle of claim 24, wherein the at least one accelerometer is a two-axis accelerometer.
26. The ground-engaging robotic vehicle of claim 13, further comprising one or more antennas.
27. The ground-engaging robotic vehicle of claim 26, wherein the one or more antennas comprises an antenna for transmitting status data to and receiving commands from a remote location.
28. The ground-engaging robotic vehicle of claim 13, wherein the spring member may be located in the second, undeflected position or in a position between the first, deflected position and the second, undeflected position, such that the spring member engages the surface.
29. The ground-engaging robotic vehicle of claim 13, further comprising a drive wheel motor coupled to each ground-engaging wheel.
30. The ground-engaging robotic vehicle of claim 13, further comprising a protective casing covering a portion of the vehicle, the casing operable to protect the robotic vehicle during transport and delivery.
31. The ground-engaging robotic vehicle of claim 30, further comprising a casing release mechanism operable to release the protective casing from the robotic vehicle.
32. The ground-engaging robotic vehicle of claim 30, wherein the casing is releasable by movement of one or both of the ground-engaging wheels.
33. The ground engaging robotic vehicle of claim 14, wherein the spool is cylindrical and comprises a recessed, continuous helical groove.
34. A method of traversing an obstacle with a ground-engaging robotic vehicle, the method comprising:
providing a ground-engaging, robotic vehicle, comprising:
a body;
at least a first and a second ground-engaging wheel operatively coupled to the body; and
a spring member coupled to the body, the spring member movable between at least a first, deflected position and a second, undeflected position; and
locating the ground-engaging robotic vehicle upon a surface proximate an obstacle; and
positioning the spring member in the first, deflected position;
releasing the spring member from the first, deflected position, whereby the spring member strikes the surface with sufficient force to propel the ground-engaging vehicle over or onto the obstacle.
35. The method of claim 34, wherein positioning the spring member in the first, deflected position comprises:
providing a retraction apparatus comprising:
a retraction mechanism coupled to the body, the retraction mechanism having a spool rotatably coupled to the body, the spool rotatable in at least a first direction;
a cable extending between the spool and the spring member; and
a latching mechanism operable to releasably latch the spring member in the first, deflected position; and
rotating the spool in the first direction, thereby moving the spring member to the first, deflected position.
36. The apparatus of claim 35, further comprising:
latching the spring member in the first, deflected position with the latching mechanism;
rotating the spool in a second direction opposite the first direction, thereby unwinding the cable from the spool; and
releasing the latching mechanism such that the spring member is released from the first, undeflected position.
37. The method of claim 34, further comprising positioning the ground-engaging robotic vehicle proximate the obstacle prior to releasing the spring member.
38. A method of delivering one or more ground-engaging robotic vehicles to a desired location, the method comprising:
providing at least one ground-engaging, robotic vehicle, comprising:
a body;
at least a first and a second ground-engaging wheel operatively coupled to the body; and
a spring member coupled to the body, the spring member movable between at least a first, deflected position and a second, undeflected position;
providing a delivery apparatus operable to hold the at least one ground-engaging robotic vehicle; and
delivering the at least one ground-engaging robotic vehicle to the desired location with the delivery apparatus.
39. The method of claim 38, wherein delivering the at least one ground-engaging robotic vehicle comprises guiding the delivery apparatus to, or proximate to, the desired location and ejecting the at least one ground-engaging robotic vehicle from the delivery apparatus.
40. The method of claim 38, further comprising establishing a wireless communication link between the at least one ground-engaging robotic vehicle and a remote workstation.
41. The method of claim 40, wherein establishing the wireless communication link comprises communicating between the remote workstation and the delivery apparatus and between the delivery apparatus and the at least one ground-engaging robotic vehicle.
42. A robotic system, comprising:
at least one ground-engaging, robotic vehicle, comprising:
a body,
at least a first and a second ground-engaging wheel operatively coupled to the body, and
a spring member coupled to the body, the resilient member movable between at least a first, deflected position and a second, undeflected position; and
a remote workstation adapted to wirelessly communicate with the at least one ground-engaging robotic vehicle.
43. The robotic system of claim 42, further comprising a delivery apparatus for delivering at least one ground-engaging robotic vehicle to a desired location.
44. The robotic system of claim 43, wherein the delivery apparatus is a robotic delivery vehicle operable from the remote operator station.
45. The robotic system of claim 42, wherein the remote workstation comprises a palm-sized portable computer.
46. A method for guiding a ground-engaging robotic vehicle to the darkest portion of a predetermined area, the method comprising:
providing a ground-engaging, robotic vehicle, comprising:
a body,
two or more ground-engaging wheels operatively coupled to the body, and
a camera coupled to the body;
capturing a first image with the camera;
rotating the camera by a discrete increment;
capturing a second image with the camera;
comparing one or more characteristics of the first image and the second image; and
moving the robotic vehicle in a direction based on the comparing of one or more characteristics.
47. The method for of claim 46, wherein the one or more characteristics comprises light intensity.
48. The method for of claim 47, further comprising selecting the direction by determining which of the first and second images have the least light intensity.
49. The method for of claim 48, further comprising comparing light intensity values for a plurality of images taken at a corresponding plurality of camera positions.
50. The method of claim 46, wherein rotating the camera comprises rotating one or both of the ground-engaging wheels.
51. A method of controlling miniature robotic vehicles, the method comprising:
delivering a plurality of robotic vehicles to a preselected area, each of the plurality of robotic vehicles comprising:
a body,
at least a first and a second ground-engaging member operatively coupled to the body, and
a spring member coupled to the body, the spring member movable between at least a first, stored position and a second, extended position;
establishing a wireless communication link between each of the plurality of robotic vehicles and a remote workstation; and
issuing at least a first command to one or more of the plurality of robotic vehicles from the remote workstation.
52. The method of claim 51, further comprising:
receiving the at least first command from the remote workstation with a first robotic vehicle of the plurality of robotic vehicles; and
routing the at least first command from the first robotic vehicle to a second robotic vehicle of the plurality of robotic vehicles.
53. The method of claim 51, wherein delivering the plurality of robotic vehicles to the preselected area comprises:
providing a delivery vehicle operable to hold and transport the plurality of robotic vehicles;
remotely guiding the delivery vehicle to or proximate the preselected area; and
ejecting the plurality of robotic vehicles from the delivery vehicle.
54. A robotic system, comprising:
a plurality of robotic vehicles, wherein each robotic vehicle of the plurality of robotic vehicles comprises:
a body,
at least a first and a second ground-engaging member operatively coupled to the body, and
a spring member coupled to the body, the spring member movable between at least a first, stored position and a second, extended position;
wherein the plurality of robotic vehicles are operable to mechanically couple to one another.
55. The robotic system of claim 54, wherein a distal portion of the spring member of a first robotic vehicle of the plurality of robotic vehicles is operable to engage a second robotic vehicle of the plurality of robotic vehicles to mechanically couple the first robotic vehicle to the second robotic vehicle.
56. The robotic system of claim 54, wherein the plurality of robotic vehicles may be selectively decoupled from one another.
57. A robotic system, comprising:
a first robotic vehicle and a second robotic vehicle, wherein each of the first robotic vehicle and the second robotic vehicle comprise:
a cylindrical body;
at least a first and a second ground-engaging wheel operatively coupled to opposite ends of the cylindrical body; and
a spring member coupled to the cylindrical body, the spring member movable between at least a first, stored position and a second, extended position;
wherein a distal portion of the spring member of the first robotic vehicle is selectively coupled to the second robotic vehicle.