CVS difference for ai12s/ai12-0323-1.txt

Differences between 1.1 and version 1.2
Log of other versions for file ai12s/ai12-0323-1.txt

--- ai12s/ai12-0323-1.txt	2019/03/08 05:39:31	1.1
+++ ai12s/ai12-0323-1.txt	2019/03/12 00:32:56	1.2
@@ -1,5 +1,7 @@
-!standard D.16(16/5)                                  19-03-07  AI12-0323-1/01
+!standard D.16(16/5)                                  19-03-11  AI12-0323-1/02
 !class Amendment 19-03-07
+!status Amendment 1-2012 19-03-11
+!status ARG Approved 8-0-2  19-03-11
 !status work item 19-03-07
 !status received 19-02-26
 !priority Low
@@ -26,7 +28,9 @@
 
 !wording
 
-Starting a protected action on a protected object statically assigned to a 
+Modify D.16(16/5):
+
+Starting a protected action on a protected object {statically} assigned to a 
 processor should be implemented without busy-waiting.
 
 !discussion
@@ -62,7 +66,47 @@
 action will be in the runtime anyway. However, the model given above shows
 that the runtime need not be involved for starting a protected action for a
 protected subprogram call, so this argument appears to be false. Leaving the
-advice unmodified requires a more expensive implementation than necessary.
+advice unmodified requires a more expensive implementation than necessary
+on some targets.
+
+!corrigendum D.16(14/3)
+!AI-0281-1
+!AI-0321-1
+
+@drepl
+The CPU value determines the processor on which the task will
+activate and execute; the task is said to be assigned to
+that processor. If the CPU value is Not_A_Specific_CPU,
+then the task is not assigned to a processor.
+A task without a CPU aspect specified will activate and execute on the same
+processor as its activating task if the activating task is assigned
+a processor. If the CPU value is not in the range of
+System.Multiprocessors.CPU_Range or is greater than Number_Of_CPUs
+the task is defined to have failed, and it becomes a completed task (see
+9.2).
+@dby
+For a task, the CPU value determines the processor on which the task will
+activate and execute; the task is said to be assigned to
+that processor. If the CPU value is Not_A_Specific_CPU,
+then the task is not assigned to a processor.
+A task without a CPU aspect specified will activate and execute on the same
+processor as its activating task if the activating task is assigned
+a processor. If the CPU value is not in the range of
+System.Multiprocessors.CPU_Range or is greater than Number_Of_CPUs
+the task is defined to have failed, and it becomes a completed task (see
+9.2).
+
+For a protected type, the CPU value determines the processor on which calling tasks
+will execute; the protected object is said to be assigned to that processor. If 
+the CPU value is Not_A_Specific_CPU, then the protected object is not assigned to 
+a processor. A call to a protected object that is assigned to a processor from a
+task that is not assigned a processor or is assigned a different processor 
+raises Program_Error.
+
+@s8<@i<Implementation Advice>>
+
+Starting a protected action on a protected object statically assigned to a 
+processor should be implemented without busy-waiting.
 
 !ASIS
 

Questions? Ask the ACAA Technical Agent