Changeset 92c2ae1f in rtems


Ignore:
Timestamp:
05/30/97 21:15:28 (27 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.8, 4.9, 5, master
Children:
17a3c69
Parents:
b64905a
Message:

updated to reflect Ada

Location:
doc/user
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • doc/user/conf.t

    rb64905a r92c2ae1f  
    3838is defined in the following @value{RTEMS-LANGUAGE} @value{RTEMS-STRUCTURE}:
    3939
     40@ifset is-C
    4041@example
    4142@group
     
    5657@end group
    5758@end example
     59@end ifset
     60
     61@ifset is-Ada
     62@example
     63type Configuration_Table is
     64   record
     65       Work_Space_Start           : RTEMS.Address;
     66       Work_Space_Size            : RTEMS.Unsigned32;
     67       Maximum_Extensions         : RTEMS.Unsigned32;
     68       Microseconds_Per_Tick      : RTEMS.Unsigned32;
     69       Ticks_Per_Timeslice        : RTEMS.Unsigned32;
     70       Maximum_Devices            : RTEMS.Unsigned32;
     71       Number_Of_Device_Drivers   : RTEMS.Unsigned32;
     72       Device_Driver_Table        : RTEMS.Driver_Address_Table_Pointer;
     73       User_Extension_Table       : RTEMS.Extensions_Table_Pointer;
     74       User_Multiprocessing_Table : RTEMS.Multiprocessing_Table_Pointer;
     75       RTEMS_API_Configuration    : RTEMS.API_Configuration_Table_Pointer;
     76       POSIX_API_Configuration    :
     77                       RTEMS.POSIX_API_Configuration_Table_Pointer;
     78   end record;
     79
     80type Configuration_Table_Pointer is access all Configuration_Table;
     81@end example
     82@end ifset
    5883
    5984@table @b
     
    129154the following @value{RTEMS-LANGUAGE} @value{RTEMS-STRUCTURE}:
    130155
     156@ifset is-C
    131157@example
    132158@group
     
    145171@end group
    146172@end example
     173@end ifset
     174
     175@ifset is-Ada
     176@example
     177type API_Configuration_Table is
     178   record
     179      Maximum_Tasks                   : RTEMS.Unsigned32;
     180      Maximum_Timers                  : RTEMS.Unsigned32;
     181      Maximum_Semaphores              : RTEMS.Unsigned32;
     182      Maximum_Message_queues          : RTEMS.Unsigned32;
     183      Maximum_Partitions              : RTEMS.Unsigned32;
     184      Maximum_Regions                 : RTEMS.Unsigned32;
     185      Maximum_Ports                   : RTEMS.Unsigned32;
     186      Maximum_Periods                 : RTEMS.Unsigned32;
     187      Number_Of_Initialization_Tasks  : RTEMS.Unsigned32;
     188      User_Initialization_Tasks_Table :
     189                                RTEMS.Initialization_Tasks_Table_Pointer;
     190   end record;
     191
     192type API_Configuration_Table_Pointer is access all API_Configuration_Table;
     193@end example
     194@end ifset
    147195
    148196@table @b
     
    199247the following @value{RTEMS-LANGUAGE} @value{RTEMS-STRUCTURE}:
    200248 
     249@ifset is-C
    201250@example
    202251@group
    203252typedef struct @{
    204   void       *(*entry)(void *);
     253  void       *(*thread_entry)(void *);
    205254@} posix_initialization_threads_table;
    206255 
     
    216265@end group
    217266@end example
     267@end ifset
     268
     269@ifset is-Ada
     270@example
     271   type POSIX_Thread_Entry is access procedure (
     272      Argument : in     RTEMS.Address
     273   );
     274
     275   type POSIX_Initialization_Threads_Table_Entry is
     276   record
     277      Thread_Entry : RTEMS.POSIX_Thread_Entry;
     278   end record;
     279
     280   type POSIX_Initialization_Threads_Table is array
     281       ( RTEMS.Unsigned32 range <> ) of
     282       RTEMS.POSIX_Initialization_Threads_Table_Entry;
     283
     284   type POSIX_Initialization_Threads_Table_Pointer is access all
     285       POSIX_Initialization_Threads_Table;
     286
     287   type POSIX_API_Configuration_Table_Entry is
     288      record
     289         Maximum_Threads                 : Interfaces.C.Int;
     290         Maximum_Mutexes                 : Interfaces.C.Int;
     291         Maximum_Condition_Variables     : Interfaces.C.Int;
     292         Maximum_Keys                    : Interfaces.C.Int;
     293         Maximum_Queued_Signals          : Interfaces.C.Int;
     294         Number_Of_Initialization_Tasks  : Interfaces.C.Int;
     295         User_Initialization_Tasks_Table :
     296            RTEMS.POSIX_Initialization_Threads_Table_Pointer;
     297      end record;
     298
     299   type POSIX_API_Configuration_Table is array ( RTEMS.Unsigned32 range <> ) of
     300      RTEMS.POSIX_API_Configuration_Table_Entry;
     301
     302   type POSIX_API_Configuration_Table_Pointer is access all
     303          RTEMS.POSIX_API_Configuration_Table;
     304@end example
     305@end ifset
    218306 
    219307@table @b
     
    279367structure:
    280368
     369@ifset is-C
    281370@example
    282371typedef struct @{
     
    290379@} rtems_initialization_tasks_table;
    291380@end example
     381@end ifset
     382
     383@ifset is-Ada
     384@example
     385type Initialization_Tasks_Table_Entry is
     386   record
     387      Name             : RTEMS.Name;          -- task name
     388      Stack_Size       : RTEMS.Unsigned32;    -- task stack size
     389      Initial_Priority : RTEMS.Task_priority; -- task priority
     390      Attribute_Set    : RTEMS.Attribute;     -- task attributes
     391      Entry_Point      : RTEMS.Task_Entry;    -- task entry point
     392      Mode_Set         : RTEMS.Mode;          -- task initial mode
     393      Argument         : RTEMS.Unsigned32;    -- task argument
     394   end record;
     395
     396type Initialization_Tasks_Table is array ( RTEMS.Unsigned32 range <> ) of
     397  RTEMS.Initialization_Tasks_Table_Entry;
     398
     399type Initialization_Tasks_Table_Pointer is access all
     400     Initialization_Tasks_Table;
     401@end example
     402@end ifset
    292403
    293404@table @b
     
    317428A typical declaration for an Initialization Task Table might appear as follows:
    318429
     430@ifset is-C
    319431@example
    320432rtems_initialization_tasks_table
     
    334446     FLOATING_POINT,
    335447     Init_2,
    336      INTERRUPT_LEVEL(0)|NO_PREEMPT,
     448     NO_PREEMPT,
    337449     2
    338450
     
    340452@};
    341453@end example
     454@end ifset
     455
     456@ifset is-Ada
     457@example
     458Initialization_Tasks : aliased RTEMS.Initialization_Tasks_Table( 1 .. 2 ) := (
     459   (INIT_1_NAME,
     460    1024,
     461    1,
     462    RTEMS.Default_Attributes,
     463    Init_1'Access,
     464    RTEMS.Default_Modes,
     465    1),
     466   (INIT_2_NAME,
     467    1024,
     468    250,
     469    RTEMS.Floating_Point,
     470    Init_2'Access,
     471    RTEMS.No_Preempt,
     472    2)
     473);
     474@end example
     475@end ifset
    342476
    343477@ifinfo
     
    355489the following @value{RTEMS-LANGUAGE} @value{RTEMS-STRUCTURE}:
    356490
     491@ifset is-C
    357492@example
    358493typedef struct @{
     
    365500@} rtems_driver_address_table;
    366501@end example
     502@end ifset
     503
     504@ifset is-Ada
     505@example
     506type Driver_Address_Table_Entry is
     507   record
     508      Initialization : RTEMS.Device_Driver_Entry;
     509      Open           : RTEMS.Device_Driver_Entry;
     510      Close          : RTEMS.Device_Driver_Entry;
     511      Read           : RTEMS.Device_Driver_Entry;
     512      Write          : RTEMS.Device_Driver_Entry;
     513      Control        : RTEMS.Device_Driver_Entry;
     514   end record;
     515
     516type Driver_Address_Table is array ( RTEMS.Unsigned32 range <> ) of
     517  RTEMS.Driver_Address_Table_Entry;
     518
     519type Driver_Address_Table_Pointer is access all Driver_Address_Table;
     520@end example
     521@end ifset
    367522
    368523@table @b
     
    394549A typical declaration for a Device Driver Table might appear as follows:
    395550
     551@ifset is-C
    396552@example
    397553rtems_driver_address_table Driver_table[2] = @{
     
    404560@};
    405561@end example
     562@end ifset
     563
     564@ifset is-Ada
     565@example
     566@end example
     567@end ifset
    406568
    407569More information regarding the construction and
     
    423585structure:
    424586
     587typedef User_extensions_routine                   rtems_extension;
     588typedef User_extensions_thread_create_extension   rtems_task_create_extension;
     589typedef User_extensions_thread_delete_extension   rtems_task_delete_extension;
     590typedef User_extensions_thread_start_extension    rtems_task_start_extension;
     591typedef User_extensions_thread_restart_extension  rtems_task_restart_extension;
     592typedef User_extensions_thread_switch_extension   rtems_task_switch_extension;
     593typedef User_extensions_thread_begin_extension    rtems_task_begin_extension;
     594typedef User_extensions_thread_exitted_extension  rtems_task_exitted_extension;
     595typedef User_extensions_fatal_extension           rtems_fatal_extension;
     596
     597typedef User_extensions_Table                     rtems_extensions_table;
     598
     599@ifset is-C
    425600@example
    426601typedef struct @{
    427   User_extensions_thread_create_extension      thread_create;
    428   User_extensions_thread_start_extension       thread_start;
    429   User_extensions_thread_restart_extension     thread_restart;
    430   User_extensions_thread_delete_extension      thread_delete;
    431   User_extensions_thread_switch_extension      thread_switch;
    432   User_extensions_thread_post_switch_extension thread_post_switch;
    433   User_extensions_thread_begin_extension       thread_begin;
    434   User_extensions_thread_exitted_extension     thread_exitted;
    435   User_extensions_fatal_error_extension        fatal;
     602  rtems_task_create_extension      thread_create;
     603  rtems_task_start_extension       thread_start;
     604  rtems_task_restart_extension     thread_restart;
     605  rtems_task_delete_extension      thread_delete;
     606  rtems_task_switch_extension      thread_switch;
     607  rtems_task_post_switch_extension thread_post_switch;
     608  rtems_task_begin_extension       thread_begin;
     609  rtems_task_exitted_extension     thread_exitted;
     610  rtems_fatal_extension            fatal;
    436611@} User_extensions_Table;
    437612@end example
     613@end ifset
     614
     615@ifset is-Ada
     616@example
     617type Extensions_Table_Entry is
     618   record
     619      Thread_Create      : RTEMS.Thread_Create_Extension;
     620      Thread_Start       : RTEMS.Thread_Start_Extension;
     621      Thread_Restart     : RTEMS.Thread_Restart_Extension;
     622      Thread_Delete      : RTEMS.Thread_Delete_Extension;
     623      Thread_Switch      : RTEMS.Thread_Switch_Extension;
     624      Thread_Post_Switch : RTEMS.Thread_Post_Switch_Extension;
     625      Thread_Begin       : RTEMS.Thread_Begin_Extension;
     626      Thread_Exitted     : RTEMS.Thread_Exitted_Extension;
     627      Fatal            : RTEMS.Fatal_Error_Extension;
     628   end record;
     629@end example
     630@end ifset
    438631
    439632@table @b
     
    512705FATAL extension might appear as follows:
    513706
     707@ifset is-C
    514708@example
    515709rtems_extensions_table User_extensions = @{
     
    524718@};
    525719@end example
     720@end ifset
     721
     722@ifset is-Ada
     723User_Extensions : RTEMS.Extensions_Table := (
     724   Task_Create_Extension'Access,
     725   null,
     726   null,
     727   Task_Delete_Extension'Access,
     728   Task_Switch_Extension'Access,
     729   null,
     730   null,
     731   Fatal_Extension'Access
     732);
     733@example
     734
     735@end example
     736@end ifset
    526737
    527738More information regarding the user extensions is
     
    546757the following @value{RTEMS-LANGUAGE} @value{RTEMS-STRUCTURE}:
    547758
     759@ifset is-C
    548760@example
    549761typedef struct @{
     
    555767@} rtems_multiprocessing_table;
    556768@end example
     769@end ifset
     770
     771@ifset is-Ada
     772@example
     773type Multiprocessing_Table is
     774   record
     775      Node                   : RTEMS.Unsigned32;
     776      Maximum_Nodes          : RTEMS.Unsigned32;
     777      Maximum_Global_Objects : RTEMS.Unsigned32;
     778      Maximum_Proxies        : RTEMS.Unsigned32;
     779      User_MPCI_Table        : RTEMS.MPCI_Table_Pointer;
     780   end record;
     781
     782type Multiprocessing_Table_Pointer is access all Multiprocessing_Table;
     783@end example
     784@end ifset
    557785
    558786@table @b
     
    604832the following @value{RTEMS-LANGUAGE} @value{RTEMS-STRUCTURE}:
    605833
     834@ifset is-C
    606835@example
    607836typedef struct @{
    608   rtems_unsigned32                default_timeout; /* in ticks */
     837  rtems_unsigned32                 default_timeout; /* in ticks */
    609838  rtems_unsigned32                 maximum_packet_size;
    610839  rtems_mpci_initialization_entry initialization;
     
    615844@} rtems_mpci_table;
    616845@end example
     846@end ifset
     847
     848@ifset is-Ada
     849@example
     850type MPCI_Table is
     851   record
     852      Default_Timeout     : RTEMS.Unsigned32; -- in ticks
     853      Maximum_Packet_Size : RTEMS.Unsigned32;
     854      Initialization      : RTEMS.MPCI_Initialization_Entry;
     855      Get_Packet          : RTEMS.MPCI_Get_Packet_Entry;
     856      Return_Packet       : RTEMS.MPCI_Return_Packet_Entry;
     857      Send                : RTEMS.MPCI_Send_Entry;
     858      Receive             : RTEMS.MPCI_Receive_Entry;
     859   end record;
     860
     861type MPCI_Table_Pointer is access all MPCI_Table;
     862@end example
     863@end ifset
    617864
    618865@table @b
  • doc/user/init.t

    rb64905a r92c2ae1f  
    259259@ifset is-Ada
    260260@example
    261 procedure Initialize_Executive(
     261procedure Initialize_Executive (
    262262  Configuration_Table : in     RTEMS.Configuration_Table_Pointer;
    263   CPU_Table           : in     RTEMS.CPU_Table
     263  CPU_Table           : in     RTEMS.CPU_Table_Pointer
    264264);
    265265@end example
     
    319319@ifset is-Ada
    320320@example
    321 procedure rtems.initialize_executive_early(
     321procedure Initialize_Executive_Early(
    322322  Configuration_Table : in     RTEMS.Configuration_Table_Pointer;
    323323  CPU_Table           : in     RTEMS.Cpu_Table;
Note: See TracChangeset for help on using the changeset viewer.