1460735408-8e8b7192-69b5-4758-b858-d46dfb002f70

1. A computer program product for executing an instruction, said computer program product comprising:
a non-transitory computer readable storage medium readable by a processor and storing instructions for execution by the processor for performing a method comprising:
executing, by a processor, a test protection machine instruction, the test protection machine instruction configured to provide information about storage to be used by a program, the information including one or more indications regarding protection of the storage, and the test protection machine instruction comprising an opcode field specifying the test protection machine instruction and a first operand, the executing comprising:
testing a location of storage designated by the first operand to obtain one or more indications regarding protection of the location of storage, wherein the testing determines whether access is to be permitted by a separate instruction but does not perform the access, and wherein the location of storage has a segment table entry associated therewith comprising a first storage key, and wherein the testing comprises:
using a storage key to determine whether access to the location of storage is permitted, wherein the storage key is a second storage key associated with the location of storage or the first storage key in the segment table entry; and
providing a condition code based on the testing, wherein the condition code indicates that access is permitted although translation tables are not updated to remove a copy-on-write protection.
2. The computer program product of claim 1, wherein the condition code specifies one of:
fetching and storing are permitted; and
fetching is permitted, but not storing.
3. The computer program product of claim 1, wherein the first storage key comprises at least one of one or more access bits stored in the segment table entry and a fetch bit stored in the segment table entry.
4. The computer program product of claim 1, wherein the using comprises comparing the storage key to an access key specified by a second operand of the test protection machine instruction.
5. The computer program product of claim 1, wherein the segment table entry further includes a dynamic address translation (DAT) protection bit set to indicate that DAT protection applies to an entire segment and to be used to translate the first operand.
6. The computer program product of claim 5, wherein the DAT protection bit is OR’ed with one or more DAT protection bits in one or more region table entries to translate the first operand.
7. A computer system for executing an instruction, said computer system comprising:
a memory; and
a processor in communications with the memory, wherein the computer system is configured to perform a method, said method comprising:
executing, by a processor, a test protection machine instruction, the test protection machine instruction configured to provide information about storage to be used by a program, the information including one or more indications regarding protection of the storage, and the test protection machine instruction comprising an opcode field specifying the test protection machine instruction and a first operand, the executing comprising:
testing a location of storage designated by the first operand to obtain one or more indications regarding protection of the location of storage, wherein the testing determines whether access is to be permitted by a separate instruction but does not perform the access, and wherein the location of storage has a segment table entry associated therewith comprising a first storage key, and wherein the testing comprises:
using a storage key to determine whether access to the location of storage is permitted, wherein the storage key is a second storage key associated with the location of storage or the first storage key in the segment table entry; and
providing a condition code based on the testing, wherein the condition code indicates that access is permitted although translation tables are not updated to remove a copy-on-write protection.
8. The computer system of claim 7, wherein the condition code specifies one of:
fetching and storing are permitted; and
fetching is permitted, but not storing.
9. The computer system of claim 7, wherein the first storage key comprises at least one of one or more access bits stored in the segment table entry and a fetch bit stored in the segment table entry.
10. The computer system of claim 7, wherein the using comprises comparing the storage key to an access key specified by a second operand of the test protection machine instruction.
11. The computer system of claim 7, wherein the segment table entry further includes a dynamic address translation (DAT) protection bit set to indicate that DAT protection applies to an entire segment and to be used to translate the first operand.
12. The computer system of claim 11, wherein the DAT protection bit is OR’ed with one or more DAT protection bits in one or more region table entries to translate the first operand.
13. A method of executing an instruction, said method comprising:
executing, by a processor, a test protection machine instruction, the test protection machine instruction configured to provide information about storage to be used by a program, the information including one or more indications regarding protection of the storage, and the test protection machine instruction comprising an opcode field specifying the test protection machine instruction and a first operand, the executing comprising:
testing a location of storage designated by the first operand to obtain one or more indications regarding protection of the location of storage, wherein the testing determines whether access is to be permitted by a separate instruction but does not perform the access, and wherein the location of storage has a segment table entry associated therewith comprising a first storage key, and wherein the testing comprises:
using a storage key to determine whether access to the location of storage is permitted, wherein the storage key is a second storage key associated with the location of storage or the first storage key in the segment table entry; and
providing a condition code based on the testing, wherein the condition code indicates that access is permitted although translation tables are not updated to remove a copy-on-write protection.
14. The method of claim 13, wherein the condition code specifies one of:
fetching and storing are permitted;
fetching is permitted, but not storing.
15. The method of claim 13, wherein the first storage key comprises at least one of one or more access bits stored in the segment table entry and a fetch bit stored in the segment table entry.
16. The method of claim 13, wherein the using comprises comparing the storage key to an access key specified by a second operand of the test protection machine instruction.
17. The method of claim 13, wherein the segment table entry further includes a dynamic address translation (DAT) protection bit set to indicate that DAT protection applies to an entire segment and to be used to translate the first operand.

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. An apparatus comprising a device that includes:
structure configured to support said device on a weapon;
a range portion that specifies a range to a target;
a sensor portion that provides sensor information representing an orientation of said device;
an electronic control portion responsive to sensor information from said sensor portion and a range from said range portion for calculating how to hit the target with each of first and second munitions that are different and that are respectively fired by first and second weapon types that are different;
a first sight that facilitates weapon orientation in preparation to fire said first munition; and
a second sight that facilitates weapon orientation in preparation to fire said second munition, each said sight providing a display of targeting information generated electronically by said electronic control portion.
2. An apparatus according to claim 1, wherein said electronic control portion repeatedly effects said calculating, using the same range but using respective different sensor information obtained for each calculation from said sensor portion approximately contemporaneously with that calculation.
3. An apparatus according to claim 1, wherein said first munition is a type of munition having a low arc trajectory, and said second munition is a type of munition having a high arc trajectory.
4. An apparatus according to claim 3, wherein said first munition is a bullet and said second munition is a grenade.
5. An apparatus according to claim 1, wherein said range portion includes a laser rangefinder that automatically determines a range to a target.
6. An apparatus according to claim 1, wherein said device has a manually operable portion that permits identification of said first munition from among a plurality of different munitions.
7. An apparatus according to claim 6, wherein said manually operable portion permits identification of said second munition from among a plurality of different munitions.
8. An apparatus according to claim 1, wherein said device has a manually operable portion that permits identification of said first weapon type from among a plurality of different weapon types and that permits identification of said second weapon type from among a plurality of different weapon types.
9. An apparatus according to claim 8, including a weapon having said first and second weapon types as respective portions thereof that are detachably coupled to each other, said structure detachably coupling said first sight to said first weapon type and said second sight to said second weapon type.
10. A method of operating a weapon-mountable device having a range portion that specifies a range to a target, a sensor portion that provides sensor information representing an orientation of said device, and an electronic control portion, comprising:
obtaining from said range portion a range to a target;
reading sensor information from said sensor portion;
calculating, as a function of the range and the sensor information, how to hit the target with each of first and second munitions that are different and that are respectively fired by first and second weapon types that are different;
configuring said device to have a first sight that facilitates weapon orientation in preparation to fire said first munition, and a second sight that facilitates weapon orientation in preparation to fire said second munition; and
causing each said sight to provide a display of respective targeting information generated electronically by said electronic control portion.
11. A method according to claim 10, including repeatedly carrying out said calculating, using the same range but using respective different sensor information obtained for each calculation from said sensor portion approximately contemporaneously with that calculation.
12. A method according to claim 10, including:
selecting said first munition to be a type of munition having a low arc trajectory; and
selecting said second munition to be a type of munition having a high arc trajectory.
13. A method according to claim 10, including configuring said device to have a manually operable portion that permits identification of said first munition from among a plurality of different munitions.
14. A method according to claim 13, including configuring said manually operable portion to permit identification of said second munition from among a plurality of different munitions.
15. A method according to claim 10, further including configuring said device to have a manually operable portion that permits identification of said first weapon type from among a plurality of different weapon types and that permits identification of said second weapon type from among a plurality of different weapon types.
16. An apparatus comprising a device that includes:
support means for supporting said device on a weapon;
range means for specifying a range to a target;
sensor means for providing sensor information that represents an orientation of said device;
electronic control means responsive to sensor information from said sensor means and a range from said range means for calculating how to hit the target with each of first and second munitions that are different;
first sight means for facilitating weapon orientation in preparation to fire said first munition; and
second sight means for facilitating weapon orientation in preparation to fire said second munition, each of said sight means providing a display of respective targeting information generated electronically by said electronic control means.
17. An apparatus according to claim 16, wherein said electronic control means repeatedly effects said calculating, using the same range but using respective different sensor information obtained for each calculation from said sensor means approximately contemporaneously with that calculation.
18. An apparatus according to claim 16, wherein said first munition is a type of munition having a low arc trajectory, and said second munition is a type of munition having a high arc trajectory.
19. An apparatus according to claim 16, wherein said device has manually operable means for permitting identification of said first munition from among a plurality of different munitions.
20. An apparatus according to claim 16, wherein said manually operable means includes means for permitting identification of said second munition from among a plurality of different munitions.
21. An apparatus according to claim 16, wherein said device has manually operable means for permitting identification of said first weapon type from among a plurality of different weapon types and for permitting identification of said second weapon type from among a plurality of different weapon types.