Perfil de RavenscarEl perfil de Ravenscar es un subconjunto del lenguaje de programación Ada especialmente pensado para los sistemas de tiempo real. Impone ciertas restricciones a la parte concurrente del lenguaje para poder realizar análisis temporales y permitir una implementación eficiente del núcleo de ejecución. HistoriaEl perfil fue definido en el 8º IRTAW, celebrado en 1997 en una pequeña localidad del condado de Yorkshire (Reino Unido) llamada Ravenscar. Este es el motivo por el cual el perfil fue bautizado con este nombre, aunque más tarde se creó el siguiente acrónimo: Reliable Ada Verifiable Executive Needed for Scheduling Critical Applications in Real-Time. En las dos siguientes reuniones del IRTAW fue refinado. Actualmente está siendo estandarizado y ampliado por la ISO, y formará parte de la siguiente revisión de Ada, denominada Ada 2005. Objetivos del perfilLos objetivos de este perfil son dos:
Restricciones del perfilUna aplicación realizada en Ada puede hacer uso de este perfil utilizando la siguiente directiva del compilador: pragma Profile (Ravenscar); Que es equivalente a escribir las siguientes directivas de configuración: pragma Task_Dispatching_Policy (FIFO_Within_Priorities); pragma Locking_Policy (Ceiling_Locking); pragma Detect_Blocking; pragma Restrictions ( No_Abort_Statements, No_Dynamic_Attachment, No_Dynamic_Priorities, No_Implicit_Heap_Allocations, No_Local_Protected_Objects, No_Local_Timing_Events, No_Protected_Type_Allocators, No_Relative_Delay, No_Requeue_Statements, No_Select_Statements, No_Specific_Termination_Handlers, No_Task_Allocators, No_Task_Hierarchy, No_Task_Termination, Simple_Barriers, Max_Entry_Queue_Length => 1, Max_Protected_Entries => 1, Max_Task_Entries => 0, No_Dependence => Ada.Asynchronous_Task_Control, No_Dependence => Ada.Calendar, No_Dependence => Ada.Execution_Time.Group_Budget, No_Dependence => Ada.Execution_Time.Timers, No_Dependence => Ada.Task_Attributes);
Véase tambiénReferencias
|
Portal di Ensiklopedia Dunia