1. A processor comprising:
a plurality of processor cores, wherein each of the plurality of processor cores comprises at least one translation lookaside buffer (TLB); and
an interconnect to which the plurality of processor cores are coupled;
wherein a first processor core of the plurality of processor cores is configured to broadcast a demap command on the interconnect responsive to executing a demap operation in the first processor core, and wherein the demap command identifies one or more translations to be invalidated in each TLB in each of the plurality of processor cores, and wherein remaining processor cores of the plurality of processor cores are configured to invalidate the one or more translations in the respective TLBs and to transmit a response to the first processor core, and wherein the first processor core is configured to delay continued processing of the demap operation, including delaying invalidation of the one or more translations in the TLB in the first processor core, until the responses are received from each of the remaining processor cores.
2. The processor as recited in claim 1 wherein each of the plurality of processor cores is multithreaded.
3. The processor as recited in claim 2 wherein at least some strands in a given processor core share the TLB in that processor core, and wherein the demap operation is issued on only one of the sharing strands.
4. The processor as recited in claim 1 wherein the at least one TLB in each processor core comprises an instruction TLB and a data TLB in each processor core, and wherein invalidating the one or more translations comprises invalidating the one or more translations in one or both of the instruction TLB and the data TLB.
5. The processor as recited in claim 1 wherein each of the plurality of processor cores is programmable with a number of expected responses, and wherein the first processor core is configured to use the number of expected responses and a count of received responses to determine that all of the responses have been received from the remaining processor cores.
6. The processor as recited in claim 1 wherein the remaining processor cores are configured to process the demap command as if a locally executed demap operation occurred.
7. A processor comprising:
a plurality of processor cores, wherein each processor core of the plurality of processor cores comprises a plurality of strands, wherein each strand comprises hardware to support a different thread of a plurality of concurrently activateable threads in the processor core, and wherein each processor core further comprises at least one translation lookaside buffer (TLB); and
an interconnect to which the plurality of processor cores are coupled;
wherein a first processor core of the plurality of processor cores is configured to broadcast a demap command on the interconnect responsive to executing a demap operation in the first processor core, and wherein the demap command identifies one or more translations to be invalidated in each TLB in each of the plurality of processor cores, and wherein remaining processor cores of the plurality of processor cores are configured to invalidate the one or more translations in the respective TLBs and to transmit a response to the first processor core, and wherein the first processor core is configured to delay continued processing of the demap operation, including delaying invalidation of the one or more translations in the TLB in the first processor core, until the responses are received from each of the remaining processor cores.
8. The processor as recited in claim 7 wherein each of the plurality of processor cores is programmable with a number of expected responses, and wherein the first processor core is configured to use the number of expected responses and a count of received responses to determine that all of the responses have been received from the remaining processor cores.
9. The processor as recited in claim 7 wherein at least two strands in the first processor core share the TLB in the first processor core, and wherein the demap operation is issued on only one of the sharing strands.
10. The processor as recited in claim 7 wherein the at least one TLB in each processor core comprises an instruction TLB and a data TLB in each processor core, and wherein invalidating the one or more translations comprises invalidating the one or more translations in one or both of the instruction TLB and the data TLB.
11. The processor as recited in claim 7 wherein the remaining processor cores are configured to process the demap command as if a locally executed demap operation occurred.
12. A method for a system that includes a plurality of processor cores, wherein each of the plurality of processor cores comprises at least one translation lookaside buffer (TLB), and an interconnect to which the plurality of processor cores are coupled, the method comprising:
a first processor core of the plurality of processor cores executing a demap operation;
responsive to executing the demap operation, the first processor core of the plurality of processor cores broadcasting a demap command on the interconnect, wherein the demap command identifies one or more translations to be invalidated in each TLB in each of the plurality of processor cores;
remaining processor cores of the plurality of processor cores invalidating the one or more translations in the respective TLBs;
each remaining processor core transmitting a response to the first processor core; and
the first processor core delaying continued processing of the demap operation, including delaying invalidation of the one or more translations in the TLB in the first processor core, until the responses are received from each of the remaining processor cores.
13. The method as recited in claim 12 wherein each of the plurality of processor cores is multithreaded.
14. The method as recited in claim 13 wherein at least some strands in a given processor core share the TLB in that processor core, the method further comprising the demap operation issuing on only one of the sharing strands.
15. The method as recited in claim 12 wherein the at least one TLB in each processor core comprises an instruction TLB and a data TLB in each processor core, and wherein invalidating the one or more translations comprises invalidating the one or more translations in one or both of the instruction TLB and the data TLB.
16. The method as recited in claim 12 further comprising:
programming each of the plurality of processor cores with a number of expected responses; and
the first processor core using the number of expected responses and a count of received responses to determine that all of the responses have been received from the remaining processor cores.
17. The method as recited in claim 12 further comprising the remaining processor cores processing the demap command as if a locally executed demap operation occurred.
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 function providing apparatus comprising:
a receiving unit that receives a use request to use the function providing apparatus, the use request including identification information identifying an operation unit to be operated to use the function providing apparatus, or a user using the function providing apparatus;
a denial unit that, if the use request is to use the function providing apparatus in an unauthorized mode, denies use of the function providing apparatus in the unauthorized mode; and
a providing unit that, if the use request is intended to use the function providing apparatus in the unauthorized mode, provides information that limits use of a different function providing apparatus responsive to the use request including the identification information,
wherein the receiving unit receives as the use request a use request of the function providing apparatus to connect the function providing apparatus to the different function providing apparatus, and
wherein the use of function providing apparatus in the unauthorized mode is to connection of the function providing apparatus to the different function providing apparatus if connection of the function provided apparatus to the different function providing apparatus is not permitted.
2. The function providing apparatus according to claim 1, wherein the providing unit provides a management apparatus managing the different function providing apparatus with the information that limits the use of the different function providing apparatus responsive to the use request including the identification information.
3. The function providing apparatus according to claim 2, wherein if the management apparatus fails to be provided with the information that limits the use of the different function providing apparatus responsive to the use request including the identification information, the providing unit provides the information to the different function providing apparatus.
4. The function providing apparatus according to claim 1, wherein the providing unit provides information that makes unusable a part of functions of the function providing apparatus in the unauthorized mode, among a plurality of functions provided by the different function providing apparatus.
5. The function providing apparatus according to claim 1, wherein if the number of use requests to use the function providing apparatus in the unauthorized mode exceeds a predetermined value, the providing unit provides the information that makes unusable the different function providing apparatus responsive to the use request including the identification information.
6-7. (canceled)
8. A function providing system, comprising:
a plurality of function providing apparatuses that provide functions; and
a management apparatus that manages the function providing apparatuses;
wherein a first function providing apparatus among the function providing apparatuses includes:
a receiving unit that receives a use request to use the function providing apparatus, the use request including identification information identifying an operation unit to be operated to use the first function providing apparatus, or a user using the first function providing apparatus;
a denial unit that, if the use request is to use the first function providing apparatus in an unauthorized mode, denies use of the function providing apparatus in the unauthorized mode; and
a notifying unit that, if the use request is to use the first function providing apparatus in the unauthorized mode, notifies the management apparatus of limitation information that limits use of the function providing apparatuses responsive to the use request including the identification information, and
wherein the management apparatus includes a storage unit that stores the limitation information, upon receiving the limitation information; and
wherein a second function providing apparatus among the function providing apparatuses includes a controller that, if the management apparatus stores the limitation information, performs control to limit the use of the second function providing apparatus responsive to the use request including the identification information,
wherein the receiving unit receives as the use request a use request of the function providing apparatus to connect the function providing apparatus to the different function providing apparatus, and
wherein the use of function providing apparatus in the unauthorized mode is to connection of the function providing apparatus to the different function providing apparatus if connection of the function provided apparatus to the different function providing apparatus is not permitted.
9. The function providing system according to claim 8, wherein the notifying unit in the first function providing apparatus notifies the second function providing apparatus of the limitation information in response to a failure to notify the management apparatus of the limitation information, and
wherein in response to notification of the limitation information, the controller in the second function providing apparatus controls to limit the use of the second function providing apparatus responsive to the use request including the identification information.
10. A non-transitory computer readable medium storing a program causing a computer to execute a process for providing a function, the process comprising:
receiving a use request to use a function providing apparatus, the use request including identification information identifying an operation unit to be operated to use the function providing apparatus, or a user using the function providing apparatus;
denying use of the function providing apparatus in the unauthorized mode if the use request is to use the first function providing apparatus in an unauthorized mode; and
providing information that limits use of another function providing apparatus responsive to the use request including the identification information if the use request is to use the first function providing apparatus in an unauthorized mode,
wherein the receiving unit receives as the use request a use request of the function providing apparatus to connect the function providing apparatus to the different function providing apparatus, and
wherein the use of function providing apparatus in the unauthorized mode is to connection of the function providing apparatus to the different function providing apparatus if connection of the function provided apparatus to the different function providing apparatus is not permitted.
11. A function providing apparatus comprising:
a receiving unit that receives a use request to use the function providing apparatus, the use request including identification information identifying an operation unit to be operated to use the function providing apparatus, or a user using the function providing apparatus;
a denial unit that, if the use request is to use the function providing apparatus in an unauthorized mode, denies use of the function providing apparatus in the unauthorized mode; and
a providing unit that, if the use request is to use the function providing apparatus in the unauthorized mode, provides information that limits use of a different function providing apparatus responsive to the use request including the identification information,
wherein the receiving unit receives as the use request a use request of the function providing apparatus to cause the function providing apparatus to view a memory area provided by the different function providing apparatus, and
wherein the use of the function providing apparatus in the unauthorized mode is to cause the function providing apparatus to view the memory area if viewing of the memory area by the function providing apparatus is not permitted.
12. The function providing apparatus according to claim 11, wherein the providing unit provides a management apparatus managing the different function providing apparatus with the information that limits the use of the different function providing apparatus responsive to the use request including the identification information.
13. The function providing apparatus according to claim 12, wherein if the management apparatus fails to be provided with the information that limits the use of the different function providing apparatus responsive to the use request including the identification information, the providing unit provides the information to the different function providing apparatus.
14. The function providing apparatus according to claim 11, wherein the providing unit provides information that makes unusable a part of functions of the function providing apparatus in the unauthorized mode, among a plurality of functions provided by the different function providing apparatus.
15. The function providing apparatus according to claim 11, wherein if the number of use requests to use the function providing apparatus in the unauthorized mode exceeds a predetermined value, the providing unit provides the information that makes unusable the different function providing apparatus responsive to the use request including the identification information.
16. A function providing system, comprising:
a plurality of function providing apparatuses that provide functions; and
a management apparatus that manages the function providing apparatuses;
wherein a first function providing apparatus among the function providing apparatuses includes:
a receiving unit that receives a use request to use the function providing apparatus, the use request including identification information identifying an operation unit to be operated to use the first function providing apparatus, or a user using the first function providing apparatus;
a denial unit that, if the use request is to use the first function providing apparatus in an unauthorized mode, denies use of the function providing apparatus in the unauthorized mode; and
a notifying unit that, if the use request is to use the first function providing apparatus in the unauthorized mode, notifies the management apparatus of limitation information that limits use of the function providing apparatuses responsive to the use request including the identification information, and
wherein the management apparatus includes a storage unit that stores the limitation information, upon receiving the limitation information;
wherein a second function providing apparatus among the function providing apparatuses includes a controller that, if the management apparatus stores the limitation information, performs control to limit the use of the second function providing apparatus responsive to the use request including the identification information,
wherein the receiving unit receives as the use request a use request of the function providing apparatus to cause the function providing apparatus to view a memory area provided by the different function providing apparatus, and
wherein the use of the function providing apparatus in the unauthorized mode is to cause the function providing apparatus to view the memory area if viewing of the memory area by the function providing apparatus is not permitted.
17. The function providing system according to claim 16, wherein the notifying unit in the first function providing apparatus notifies the second function providing apparatus of the limitation information in response to a failure to notify the management apparatus of the limitation information, and
wherein in response to notification of the limitation information, the controller in the second function providing apparatus controls to limit the use of the second function providing apparatus responsive to the use request including the identification information.
18. A non-transitory computer readable medium storing a program causing a computer to execute a process for providing a function, the process comprising:
receiving a use request to use a function providing apparatus, the use request including identification information identifying an operation unit to be operated to use the function providing apparatus, or a user using the function providing apparatus;
denying use of the function providing apparatus in the unauthorized mode if the use request is to use the first function providing apparatus in an unauthorized mode; and
providing information that limits use of another function providing apparatus responsive to the use request including the identification information if the use request is to use the first function providing apparatus in an unauthorized mode,
wherein the receiving unit receives as the use request a use request of the function providing apparatus to cause the function providing apparatus to view a memory area provided by the different function providing apparatus, and
wherein the use of the function providing apparatus in the unauthorized mode is to cause the function providing apparatus to view the memory area if viewing of the memory area by the function providing apparatus is not permitted.