1460730341-75068452-74dd-4cea-a37d-9b13fd481c9b

1. A method of antivirus checking of software objects in a virtual environment, comprising:
monitoring and identifying, by an antivirus agent running on a virtual machine in the virtual environment executed by a processor, an event occurring in the virtual machine, an object related to the event, and a type of the object;
upon determining that the object needs an antivirus checking based on the type of the object, sending, by the antivirus agent, to a control module in the virtual environment, information of the object and the event;
determining, by the control module, priorities of executing two or more antivirus checking methods determined for the object based on the information received from the antivirus agent, comprising: determining information relating to a workload placed on each required computing resource of a host machine for performing each corresponding antivirus check method based on the information received from the antivirus agent, wherein required computing resources comprise information relating to performance of a processor, working memory, permanent memory of the host machine and a traffic capacity of a network connecting the host machine and a plurality of virtual machines; and
distributing, by the control module, among one or more selected components of an antivirus system in the virtual environment, the two or more antivirus checking methods to be performed on the object based on the priorities.
2. The method of claim 1, wherein the one or more selected components of the antivirus system are located in: a security virtual machine, or an external component of the virtual environment, or the antivirus agent in the virtual machine.
3. The method of claim 2, wherein the security virtual machine is configured to:
form a queue for executing the two or more antivirus checking methods based on the priorities; and
determine execution times for the two or more antivirus checking methods, wherein the execution times define a successive execution, execution delay by a selected time period, or parallel execution for the two or more antivirus checking methods.
4. The method of claim 2, wherein the one or more selected components of the antivirus system are selected at least partially based on a workload of computing resources of the virtual machine and the security virtual machine.
5. The method of claim 2, wherein the external component of the virtual environment comprises an external server connected to the virtual environment via the Internet.
6. The method of claim 2, wherein the one or more components are selected based at least partially on an availability of a function in: the virtual machine, the security virtual machine, or the external component, and the function is responsible for performing the two or more antivirus checking methods.
7. The method of claim 1, wherein the priorities are determined based on one or more of resource intensities of the two or more antivirus checking methods, times of performance of the two or more antivirus checking methods, and effectiveness of the two or more antivirus checking methods.
8. A system of antivirus checking of software objects in a virtual environment, comprising:
a control module in the virtual environment; and
a processor configured to execute an antivirus agent on a virtual machine in a virtual environment, the processor being further configured to:
monitor and identify an event occurring in the virtual machine, an object related to the event, and a type of the object, and
upon determining that the object needs an antivirus checking based on the type of the object, send to the control module in the virtual environment, information of the object and the event,

wherein the control module is configured to:
determine priorities of executing two or more antivirus checking methods determined for the object based on the information received from the antivirus agent, comprising: determining information relating to a workload placed on each required computing resource of a host machine for performing each corresponding antivirus check method based on the information received from the antivirus agent, wherein required computing resources comprise information relating to performance of a processor, working memory, permanent memory of the host machine and a traffic capacity of a network connecting the host machine and a plurality of virtual machines, and
distribute, among one or more selected components of an antivirus system in the virtual environment, the two or more antivirus checking methods to be performed on the object based on the priorities.
9. The system of claim 8, wherein the one or more selected components of the antivirus system are located in: a security virtual machine, or an external component of the virtual environment, or the antivirus agent in the virtual machine.
10. The system of claim 9, wherein the security virtual machine is configured to:
form a queue for executing the two or more antivirus checking methods based on the priorities; and
determine execution times for the two or more antivirus checking methods, wherein the execution times define a successive execution, execution delay by a selected time period, or parallel execution for the two or more antivirus checking methods.
11. The system of claim 9, wherein the one or more selected components of the antivirus system are selected at least partially based on a workload of computing resources of the virtual machine and the security virtual machine.
12. The system of claim 9, wherein the external component of the virtual environment comprises an external server connected to the virtual environment via the Internet.
13. The system of claim 9, wherein the one or more components are selected based at least partially on an availability of a function in: the virtual machine, the security virtual machine, or the external component, and the function is responsible for performing the two or more antivirus checking methods.
14. The system of claim 8, wherein the priorities are determined based on one or more of resource intensities of the two or more antivirus checking methods, times of performance of the two or more antivirus checking methods, and effectiveness of the two or more antivirus checking methods.
15. A computer program product stored on a non-transitory computer-readable storage medium, the computer program product comprising computer-executable instructions for antivirus checking of software objects in a virtual environment, including instructions for:
monitoring and identifying, by an antivirus agent running on a virtual machine in the virtual environment executed by a processor, an event occurring in the virtual machine, an object related to the event, and a type of the object;
upon determining that the object needs an antivirus checking based on the type of the object, sending, by the antivirus agent, to a control module in the virtual environment, information of the object and the event;
determining, by the control module, priorities of executing two or more antivirus checking methods determined for the object based on the information received from the antivirus agent, comprising: determining information relating to a workload placed on each required computing resource of a host machine for performing each corresponding antivirus check method based on the information received from the antivirus agent, wherein required computing resources comprise information relating to performance of a processor, working memory, permanent memory of the host machine and a traffic capacity of a network connecting the host machine and a plurality of virtual machines; and
distributing, by the control module, among one or more selected components of an antivirus system in the virtual environment, the two or more antivirus checking methods to be performed on the object based on the priorities.
16. The product of claim 15, wherein the one or more selected components of the antivirus system are located in: a security virtual machine, or an external component of the virtual environment, or the antivirus agent in the virtual machine.
17. The product of claim 16, wherein the security virtual machine is configured to:
form a queue for executing the two or more antivirus checking methods based on the priorities; and
determine execution times for the two or more antivirus checking methods, wherein the execution times define a successive execution, execution delay by a selected time period, or parallel execution for the two or more antivirus checking methods.
18. The product of claim 16, wherein the one or more selected components of the antivirus system are selected at least partially based on a workload of computing resources of the virtual machine and the security virtual machine.
19. The product of claim 16, wherein the external component of the virtual environment comprises an external server connected to the virtual environment via the Internet, the one or more components are selected based at least partially on an availability of a function in: the virtual machine, the security virtual machine, or the external component, and the function is responsible for performing the two or more antivirus checking methods.
20. The product of claim 15, wherein the priorities are determined based on one or more of resource intensities of the two or more antivirus checking methods, times of performance of the two or more antivirus checking methods, and effectiveness of two one or more antivirus checking methods.

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 utility knife comprising:
a first handle member;
a second handle member rotatably coupled to a portion of said first handle member and configured to move between a folded position and an unfolded position relative to said first handle member, said second handle member having a cavity defined within and an opening extending from said cavity to an exterior portion of said second handle member; and
a blade configured to be moved between a retracted position and an extended position, wherein, when in said retracted position, said blade is positioned within said cavity of said second handle member and, when in said extended position, a portion of said blade extends through said opening of said second handle member and is exposed;
wherein said blade is configured to be moved between said retracted and extended positions when said second handle member is in at least one of said folded and unfolded positions.
2. The utility knife of claim 1, wherein said first and second handle members are rotatably coupled to one another by way of a fastener.
3. The utility knife of claim 2, wherein said second handle member is configured to rotate about said fastener between said folded and unfolded positions.
4. The utility knife of claim 1, wherein, when transitioning from said unfolded position to said folded position, said second handle member is configured to rotate inwardly in a direction towards said first handle member and be received within a cavity defined in said first handle member.
5. The utility knife of claim 4, wherein said second handle member is entirely received and enclosed within said cavity of said first handle member when in said folded position.
6. The utility knife of claim 4, wherein, when transitioning from said folded position to said unfolded position, said second handle member is configured to rotate outwardly in a direction away from said cavity defined in said first handle member and extend from said first handle member.
7. The utility knife of claim 4, wherein at least one of said cavities of said first and second handle members is configured to store one or more additional blades within.
8. The utility knife of claim 1, wherein said first handle member has a first end and an opposing second end and said second handle member has a first end and an opposing second end, wherein said first end of said first handle member is rotatably coupled to said second end of said second handle member.
9. The utility knife of claim 8, wherein said opening is defined on said first end of said second handle member.
10. The utility knife of claim 1, further comprising a means for allowing a user to selectively move said blade between said retracted and extended positions and positions therebetween.
11. The utility knife of claim 1, further comprising a blade carrier slidably received within said cavity of said second handle member, said blade carrier configured to support said cutting blade and to move said cutting blade between said retracted and extended positions.
12. A utility knife comprising:
a first handle member;
a second handle member rotatably coupled to a portion of said first handle member by way of a fastener and configured to rotate about said fastener between a folded position and an unfolded position relative to said first handle member, said second handle member having a cavity defined within and an opening extending from said cavity to an exterior portion of said second handle member; and
a cutting blade configured to be moved between a retracted position and an extended position, wherein, when in said retracted position, a cutting surface of said cutting blade is positioned within said cavity of said second handle member and when in said extended position, a portion of said cutting blade extends through said opening of said second handle member and a portion of said cutting surface is exposed to allow cutting of a material;
wherein said cutting blade is configured to be moved between said retracted and extended positions when said second handle member is in at least one of said folded and unfolded positions.
13. The utility knife of claim 12, wherein said first handle member comprises a cavity shaped andor sized to receive at least a portion of said second handle member within.
14. The utility knife of claim 13, wherein at least one of said cavities of said first and second handle members is configured to store one or more additional blades within.
15. The utility knife of claim 13, wherein, when transitioning from said unfolded position to said folded position, said second handle member is configured to rotate inwardly in a direction towards said first handle member and be received within said cavity of said first handle member and wherein, when transitioning from said folded position to said unfolded position, said second handle member is configured to rotate outwardly in a direction away from said cavity of said first handle member and extend from said first handle member, wherein said first and second handle members form a substantially elongated handle.
16. The utility knife of claim 15, wherein said second handle member is entirely received and enclosed within said cavity of said first handle member when in said closed position.
17. The utility knife of claim 12, further comprising a blade carrier slidably received within said cavity of said second handle member, said blade carrier configured to support said cutting blade and to move said cutting blade between said retracted and extended positions.
18. A utility knife comprising:
a first handle member having a first end and an opposing second end and having a cavity formed within a portion thereof;
a second handle member having a first end and an opposing second end rotatably coupled to said first end of said first handle member by way of a fastener, said second handle member being configured to rotate about said fastener between a folded position and an unfolded position relative to said first handle member, said second handle member having an opening defined on said first end and extending from an exterior portion to a cavity formed within said second handle member; and
a cutting blade positioned within said cavity of said second handle member and configured to be moved between a retracted position and an extended position, wherein, when in said retracted position, a cutting surface of said cutting blade is entirely positioned within said cavity of said second handle member and when in said extended position, a portion of said cutting blade extends through said opening of said second handle member and a portion of said cutting surface is exposed to allow cutting of a material;
wherein said cutting blade is configured to be moved between said retracted and extended positions when said second handle member is in either said folded position or said unfolded position.
19. The utility knife of claim 18, wherein at least one of said cavities of said first and second handle members is configured to store one or more additional blades within.
20. The utility knife of claim 18, further comprising:
a means for allowing a user to selectively move said blade between said retracted and extended positions and positions therebetween; and
a blade carrier slidably received within said cavity of said second handle member and coupled to said means for allowing selective movement of said blade, said blade carrier configured to support said cutting blade and to move said cutting blade between said retracted and extended positions.