DEENESPTFRRUARHIKOZHNL

AUTOSAR RTE

ModulRte (Runtime Environment)
BSW-Modul-ID2
Standard-Header#include "Rte.h"
SWS-SpezifikationAUTOSAR_SWS_RTE.pdf
ClusterRuntime Environment (RTE)

Guide du moduleGÉNÉRÉ PAR IA

Relie les composants logiciels entre eux ainsi qu’au logiciel de base et coordonne leur exécution.
GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : db6362f39e13 Provenance Questions ouvertes (2)
Ancre causale : R20-11 Valable à partir de R20-11 Synthétisé pour cette version de spécification.
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Relie les composants logiciels entre eux ainsi qu’au logiciel de base et coordonne leur exécution.

Le Runtime Environment (RTE) relie les composants logiciels AUTOSAR entre eux ainsi qu’aux modules du logiciel de base et régule, via le Basic Software Scheduler (SchM), l’ordonnancement déterministe sur la Classic Platform (SWS_RTE p. 100). Le cycle de vie est coordonné via des interfaces standardisées, depuis SchM_Init et Rte_Start jusqu’à Rte_Stop et SchM_Deinit [SWS_Rte_08060], [SWS_Rte_03015]. En plus des modèles émetteur-récepteur et client-serveur, des mécanismes de pointeurs logiciels pour les paramètres de calibration ainsi que des contrôles de protection mémoire aux frontières de partitions assurent un fonctionnement temps réel robuste [SWS_Rte_03914], [SWS_Rte_02752].

Le Runtime Environment (RTE) découple les composants logiciels AUTOSAR du matériel du calculateur et coordonne, conjointement avec le Basic Software Scheduler (SchM), l’exécution de tous les flux applicatifs et du logiciel de base (SWS_RTE p. 100). Le démarrage contrôlé s’effectue par étapes via l’EcuStateManager : SchM_Init initialise d’abord les structures du planificateur, suivi de SchM_Start avant l’appel de BswM_Init, puis de SchM_StartTiming pour autoriser les événements BSW périodiques [SWS_Rte_08060], [SWS_Rte_07273], [SWS_Rte_04548]. Les SW-C applicatifs sont ensuite démarrés via Rte_Start et arrêtés lors de la phase d’arrêt par Rte_Stop avant la désinitialisation via SchM_Deinit [SWS_Rte_03015], [SWS_Rte_01262], [SWS_Rte_04551].

Coordination du démarrage et de l'arrêt entre EcuM, SchM et la RTEEcuMSchMBswMRTEUse Case: BSW-Scheduler HochlaufphaseSchM_Init(ConfigPtr)Interne Datenstrukturen & initial ModeMachines initialisierenSchM_Start()BswM_Init(ConfigPtr)SchM_StartTiming()BswTimingEvents periodisch aktivierenUse Case: RTE ApplikationsstartRte_Start()Applikations-Runnables & ModeTransitions freigebenRTE_E_OKUse Case: Herunterfahren (Shutdown)Rte_Stop()Runnables stoppen, Kommunikation ignorierenRTE_E_OKSchM_Deinit()Rte_Rips_SchM_Deinit() & Ressourcen freigeben

Diagramme de séquence : coordination temporelle du démarrage et de l’arrêt entre EcuM, SchM et RTE. Sources : [SWS_Rte_08060], [SWS_Rte_07273], [SWS_Rte_04548], [SWS_Rte_03015], [SWS_Rte_01262], [SWS_Rte_04551], [SWS_Rte_89019].

La communication couvre les modèles émetteur-récepteur et client-serveur, aussi bien intra- qu’inter-ECU (SWS_RTE p. 286). Les éléments de données non mis en mémoire tampon garantissent des valeurs initiales cohérentes via initValue, tandis que les événements mis en mémoire tampon sont traités via des files d’attente FIFO [SWS_Rte_06009], [SWS_Rte_02521]. Dans les interactions client-serveur, des descripteurs de transaction à deux éléments associent les requêtes asynchrones aux réponses correspondantes [SWS_Rte_02649]. Les changements de mode via Rte_Switch exécutent une séquence déterministe en dix étapes, où les Distributed Shared Mode Queues garantissent l’ordre de traitement strict de plusieurs machines de modes [SWS_Rte_02631], [SWS_Rte_02665], [SWS_Rte_91102].

CalprmPointered cluster_single Single Pointered Method cluster_double Double Pointered Method refTabSingle <RteParameterRefTab> (tableau de pointeurs void en RAM) grpSingle1 ParameterElementGroup 1 (RAM / PIM / Flash) refTabSingle->grpSingle1 grpSingle2 ParameterElementGroup 2 (RAM / PIM / Flash) refTabSingle->grpSingle2 baseRef Base reference (variable pointeur en RAM) refTabRom Calibration reference table (ROM / Flash) baseRef->refTabRom Initial refTabRam Calibration reference table (copie en RAM) baseRef->refTabRam Après commutation grpRom ParameterElementGroup (Flash-Originaldaten) refTabRom->grpRom grpRam ParameterElementGroup (Modifizierte RAM-Kopie) refTabRam->grpRam

Diagramme de contexte : structures d’adressage et d’indirection des méthodes de calibration Single Pointered et Double Pointered. Sources : [SWS_Rte_03913], [SWS_Rte_03914], [SWS_Rte_03947], AUTOSAR_SWS_RTE p. 180, AUTOSAR_SWS_RTE p. 181.

Pour la calibration en ligne, le RTE génère des structures de pointeurs selon le principe Single Pointered ou Double Pointered, ce qui permet de modifier des groupes de paramètres en RAM sans émulation matérielle [SWS_Rte_03913], [SWS_Rte_03914]. Les dépassements de plage erronés ou les délais d’attente dépassés sont signalés au composant appelant via Std_ReturnType, tandis que des vérifications de protection mémoire aux frontières de partitions empêchent les manipulations non autorisées [SWS_Rte_01034], [SWS_Rte_03845], [SWS_Rte_02752].

Rôle et limites système du RTE dans la Classic Platform

Le Runtime Environment (RTE) constitue l’épine dorsale fonctionnelle de l’architecture AUTOSAR Classic en découplant complètement les composants logiciels (SW-C) du matériel informatique sous-jacent ainsi que des modules du Basic Software (BSW) proches du matériel (SWS_RTE p. 100). Le générateur RTE produit pour chaque calculateur une interface sur mesure qui résout toutes les relations de communication – aussi bien localement sur un microcontrôleur (intra-ECU) qu’à l’échelle du réseau via des bus de communication (inter-ECU) – par des appels d’API uniformes tels que Rte_Read, Rte_Write ou Rte_Call [SWS_Rte_01091], [SWS_Rte_01102]. Grâce à la mise à disposition d’un élément BswModuleDescription généré ainsi que des descriptions BswInternalBehavior associées, le RTE s’intègre en tant que partie intégrante dans le schéma de configuration et de paquetage d’AUTOSAR [SWS_Rte_05165], [SWS_Rte_05166].

Les instanciations multiples d’un même composant logiciel ne sont résolues par le RTE que par des Runnable Entities réentrantes avec partage de code ; la duplication de code n’est expressément pas prise en charge [SWS_Rte_03015], [SWS_Rte_02002]. Pour chaque instance, un identifiant d’instance unique est transmis dans le code C ou adressé via la Component Data Structure (CDS), ce qui garantit des exécutions d’instances parallèles dans des contextes de tâches partagés sans corruption mutuelle des données (SWS_RTE p. 126, SWS_RTE p. 804). En complément des SW-C applicatifs, le RTE prend en charge l’ordonnancement cyclique et la gestion des modes de tous les modules BSW via le Basic Software Scheduler (SchM) [SWS_Rte_08060], [SWS_Rte_07273].

Cycle de vie et coordination du démarrage de SchM et du RTE

Le démarrage du système requiert un ordre strictement défini entre le planificateur BSW (SchM) et le RTE orienté application (SWS_RTE p. 459). Avant l’initialisation du SchM, seules les fonctions de verrouillage SchM_Enter et SchM_Exit sont disponibles pour des raisons de sûreté système. L’EcuStateManager appelle d’abord la fonction SchM_Init, ce qui initialise les structures de données internes et les machines de modes, et démarre les BswSchedulableEntities associées à des Background-Events [SWS_Rte_08060], [SWS_Rte_07584]. SchM_Start doit être appelée avant même l’appel de BswM_Init [SWS_Rte_07273], [SWS_Rte_04548]. L’activation des traitements BSW périodiques (BswTimingEvents) est ensuite validée via SchM_StartTiming [SWS_Rte_04548], [SWS_Rte_04551], [SWS_Rte_07574].

Coordination du démarrage et de l'arrêt entre EcuM, SchM et la RTEEcuMSchMBswMRTEUse Case: BSW-Scheduler HochlaufphaseSchM_Init(ConfigPtr)Interne Datenstrukturen & initial ModeMachines initialisierenSchM_Start()BswM_Init(ConfigPtr)SchM_StartTiming()BswTimingEvents periodisch aktivierenUse Case: RTE ApplikationsstartRte_Start()Applikations-Runnables & ModeTransitions freigebenRTE_E_OKUse Case: Herunterfahren (Shutdown)Rte_Stop()Runnables stoppen, Kommunikation ignorierenRTE_E_OKSchM_Deinit()Rte_Rips_SchM_Deinit() & Ressourcen freigeben

Diagramme de séquence : coordination temporelle du démarrage et de l’arrêt entre EcuM, SchM et RTE. Sources : [SWS_Rte_08060], [SWS_Rte_07273], [SWS_Rte_04548], [SWS_Rte_03015], [SWS_Rte_01262], [SWS_Rte_04551], [SWS_Rte_89019].

Ce n’est que lorsque les services de base nécessaires sont opérationnels que l’EcuStateManager active l’exécution des SW-C applicatifs avec Rte_Start et déclenche les transitions de mode pour les Runnables On-Entry non groupées [SWS_Rte_03015], [SWS_Rte_06766]. En cas d’échec de l’allocation des ressources lors de Rte_Start, la fonction renvoie le code d’erreur RTE_E_LIMIT [SWS_Rte_01262]. Lors de l’arrêt du calculateur, Rte_Stop termine d’abord l’exécution applicative et ignore à partir de cet instant les requêtes et données entrantes [SWS_Rte_02538], [SWS_Rte_02535], [SWS_Rte_02536]. Ce n’est qu’après l’arrêt complet de Rte_Stop que SchM_Deinit peut être appelée, libérant toutes les ressources système du planificateur et déclenchant les nettoyages spécifiques aux plug-ins via Rte_Rips_SchM_Deinit [SWS_Rte_04551], [SWS_Rte_07277], [SWS_Rte_89019].

Modèles de communication : émetteur-récepteur et client-serveur

Dans le paradigme émetteur-récepteur, le RTE fait une distinction fondamentale entre la sémantique de données et la sémantique d’événements (SWS_RTE p. 286). Avec la sémantique de données (swImplPolicy != queued), seule la dernière valeur écrite est conservée dans le tampon et consommée de manière explicite au moyen de Rte_Read ou de manière implicite via Rte_IRead [SWS_Rte_01091], [SWS_Rte_06000]. En cas de lecture implicite, le RTE garantit une copie cohérente de la valeur des données sur l’ensemble de la durée d’exécution de la Runnable Entity [SWS_Rte_06001]. Avant la première réception, le RTE fournit la valeur initValue configurée, de sorte qu’aucun état mémoire non initialisé ne soit traité [SWS_Rte_06009], [SWS_Rte_06010].

Communication Sender-Receiver inter-ECU avec DataSemanticsSender-SWCSender-RTECOM-StackEmpfaenger-RTEEmpfaenger-SWCUse Case: InitialisierungsphasePré-remplir le tampon avec initValueRte_Read_p_o(&data)data = initValue (RTE_E_OK)Use Case: Transmission de donnéesRte_Write_p_o(data)Com_SendSignal(signalId, &data)RTE_E_OKSignalempfang via Bus & Rte_COMCbkMise à jour du tampon de signal interneRte_Read_p_o(&data)data = empfangener Wert (RTE_E_OK)

Diagramme de séquence : communication émetteur-récepteur inter-ECU pour signaux non mis en mémoire tampon avec sécurisation par valeur initiale. Sources : [SWS_Rte_01091], [SWS_Rte_06009], [SWS_Rte_01289], AUTOSAR_SWS_RTE p. 148.

En revanche, la sémantique d’événements (swImplPolicy = queued) traite des séquences de données sans perte via des structures de tampons FIFO, qui sont remplies au moyen de Rte_Send et décrémentées par Rte_Receive [SWS_Rte_01072], [SWS_Rte_01092], [SWS_Rte_02521]. Si la limite de tampon définie via RteQueuedReceiverQueueLength est atteinte, le RTE rejette les nouvelles données entrantes et active un indicateur d’erreur correspondant [SWS_Rte_08940], [SWS_Rte_02523]. Pour les gros volumes de données, le RTE utilise des voies de transport spécialisées telles que LdCom ou Large-Data-COM avec verrouillage du tampon de signal [SWS_Rte_01376], [SWS_Rte_01379].

La communication client-serveur prend en charge les appels synchrones (Rte_Call) ainsi que les interactions asynchrones avec interrogation séparée du résultat via Rte_Result [SWS_Rte_01102], [SWS_Rte_01111]. Côté serveur, le RTE met les requêtes entrantes en mémoire tampon dans une file d’attente FIFO, à condition qu’aucun appel direct ne soit configuré, tandis que la réponse est temporairement stockée côté client dans un tampon de longueur 1 [SWS_Rte_02527], [SWS_Rte_02528]. Lors d’appels inter-partitions ou inter-calculateurs, un Transaction Handle bipartite, composé d’un identifiant client et d’un compteur de séquence, assure l’association exacte des paquets de réponse à la requête initiale [SWS_Rte_02649], [SWS_Rte_08711].

Gestion des modes, transitions d’états et Distributed Shared Mode Queues

La gestion des modes permet une commutation coordonnée des états de fonctionnement via des machines de modes dédiées (ModeMachineInstances), qui sont pilotées via Rte_Switch [SWS_Rte_02631]. Chaque transition d’état suit une séquence déterministe de dix étapes individuelles, comprenant notamment l’activation de verrous de mode, l’attente contrôlée de la fin des Runnables concernées ainsi que l’exécution séquentielle des entités OnExit, OnTransition et OnEntry [SWS_Rte_02665]. Ce n’est qu’après l’achèvement complet de toutes les phases que l’événement d’acquittement ModeSwitchedAckEvent est déclenché, dont l’état peut être interrogé via Rte_SwitchAck [SWS_Rte_02679], [SWS_Rte_02725], [SWS_Rte_02758].

ModeTransition s1 1. Activation des Mode Disablings s2 2. Attente de la terminaison des ExecutableEntities concernées s1->s2 s3 3. Exécution des OnExit ExecutableEntities s2->s3 s4 4. Attente de l'achèvement de toutes les entités OnExit s3->s4 s5 5. Exécution des OnTransition ExecutableEntities s4->s5 s6 6. Attente de l'achèvement de toutes les entités OnTransition s5->s6 s7 7. Exécution des OnEntry ExecutableEntities s6->s7 s8 8. Attente de l'achèvement de toutes les entités OnEntry s7->s8 s9 9. Basculement des Mode Disablings s8->s9 s10 10. Déclenchement des ModeSwitchAckEvents s9->s10

Diagramme d’activité : déroulement déterministe en dix étapes d’une transition de mode au sein d’une ModeMachineInstance. Sources : [SWS_Rte_02665], [SWS_Rte_02679], EXP_ModeManagementGuide p. 16.

Afin d’imposer un ordre strict des changements de mode lorsque plusieurs machines de modes sont présentes – par exemple entre l’état d’allumage et l’état du moteur –, le RTE fournit des Distributed Shared Mode Queues (DSMQ) (SWS_RTE p. 442). L’état des opérations d’enfilement et de défilement dans de telles files d’attente est signalé via le type Rte_DsmqStatusType [SWS_Rte_91102]. Pour les transitions de clusters logiciels, Rte_Rips_SwitchNotificationStatusType représente les états d’enfilement et de défilement correspondants [SWS_Rte_91113]. Interprétation : pour le planificateur BSW, la configuration de points de synchronisation avant Rte_Start devrait être privilégiée afin d’établir des états système déterministes avant l’autorisation des tâches cycliques [SWS_Rte_06767]. Question Q-d194460a04c885f3 (ouverte)

Calibration, émulation de données et topologie mémoire

Les paramètres de calibration sont localisés de manière centralisée en mémoire par le RTE, car seul le générateur RTE connaît l’occupation globale de tous les composants et partitions sur le calculateur [SWS_Rte_03961]. Afin de permettre des calibrations en ligne sans matériel d’émulation spécialisé, le RTE prend en charge des méthodes d’émulation logicielle telles que la Single Pointered Method et la Double Pointered Method (SWS_RTE p. 236, SWS_RTE p. 237). Dans la Single Pointered Method, il existe en RAM une table de pointeurs (<RteParameterRefTab>) composée d’entrées void* qui pointent vers ParameterElementGroups [SWS_Rte_03913], [SWS_Rte_03947].

CalprmPointered cluster_single Single Pointered Method cluster_double Double Pointered Method refTabSingle <RteParameterRefTab> (tableau de pointeurs void en RAM) grpSingle1 ParameterElementGroup 1 (RAM / PIM / Flash) refTabSingle->grpSingle1 grpSingle2 ParameterElementGroup 2 (RAM / PIM / Flash) refTabSingle->grpSingle2 baseRef Base reference (variable pointeur en RAM) refTabRom Calibration reference table (ROM / Flash) baseRef->refTabRom Initial refTabRam Calibration reference table (copie en RAM) baseRef->refTabRam Après commutation grpRom ParameterElementGroup (Flash-Originaldaten) refTabRom->grpRom grpRam ParameterElementGroup (Modifizierte RAM-Kopie) refTabRam->grpRam

Diagramme de contexte : structures d’adressage et d’indirection des méthodes de calibration Single Pointered et Double Pointered. Sources : [SWS_Rte_03913], [SWS_Rte_03914], [SWS_Rte_03947], AUTOSAR_SWS_RTE p. 180, AUTOSAR_SWS_RTE p. 181.

La Double Pointered Method utilise quant à elle une indirection à deux niveaux : une table de référence stockée en ROM/Flash pointe vers des groupes de paramètres, tandis qu’un pointeur de base modifiable (Base reference) en RAM pointe initialement vers cette table Flash et peut être redirigé vers une copie modifiée en RAM lors d’une calibration [SWS_Rte_03914]. Les ParameterDataPrototypes sont ici séparés en groupes distincts en fonction de leur swAddrMethod [SWS_Rte_03908]. Le générateur RTE exporte l’ensemble des informations de structure et de pointeurs dans le conteneur McSupportData via McSwEmulationMethodSupport, afin de donner aux outils de calibration (tels qu’INCA ou CANape) un accès précis à l’adressage A2L [SWS_Rte_05118], [SWS_Rte_05137], [SWS_Rte_05138]. Interprétation : pour les calculateurs de sécurité hautement intégrés, la Double Pointered Method devrait être préférée, car la table de pointeurs elle-même reste principalement dans la Flash protégée et n’occupe des tampons RAM que lors d’une calibration active. Question Q-fb532d79c1eb906d (ouverte)

Partitionnement, protection mémoire et communication inter-OS-Application

Dans les architectures multicœurs et à protection mémoire, la RTE interconnecte les composants logiciels par-delà les frontières de partitions (OS-Applications) au moyen de l'Inter-OS-Application Communication (IOC) (SWS_RTE p. 372). La RTE remplace ici les tampons de signaux internes par des tampons IOC proches du matériel et des fonctions de protection générées. Pour l'accès aux sections exclusives (ExclusiveAreas), l'intégrateur sélectionne des paramètres de configuration propres au mécanisme (RteExclusiveAreaImplMechanism), allant du verrouillage d'interruptions jusqu'aux spinlocks OS pour les accès inter-cœurs (SWS_RTE p. 203).

Lorsqu'une partition non testée ou non sécurisée (Non-Trusted) transmet des paramètres de type pointeur à une partition BSW ou SWC de confiance, la RTE effectue obligatoirement des contrôles d'adresse et de plage de mémoire [SWS_Rte_02752], [SWS_Rte_02753]. Le pointeur n'est relayé que si l'intégralité de l'objet mémoire référencé appartient à la partition appelante, ce qui empêche efficacement les violations de zone de protection et l'écrasement non autorisé d'espaces mémoire tiers (SWS_RTE p. 378).

Comportement en cas d'erreur

Le traitement des erreurs de la RTE sépare strictement les erreurs d'infrastructure des erreurs applicatives (SWS_RTE p. 579). Tous les états d'erreur sont immédiatement signalés à l'appelant via le type de retour Std_ReturnType [SWS_Rte_01034]. Parmi les erreurs directes d'infrastructure figurent notamment RTE_E_TIMEOUT (129), RTE_E_LIMIT (130), RTE_E_NO_DATA (131), RTE_E_UNCONNECTED (134), RTE_E_IN_EXCLUSIVE_AREA (135) ainsi que RTE_E_SEG_FAULT (136) (SWS_RTE p. 586).

Contrôle de plage et propagation d'erreur lors de Rte_ReadCOM-StackRTE-EmpfangRTE-PufferApplikations-SWCNeuer Signalwert empfangenEffectuer le DataSemantics range checkaltValeur dans la plage définiePufferwert aktualisieren, Status = RTE_E_OKValeur hors plage (Out of Range)Pufferstatus = RTE_E_OUT_OF_RANGERte_Read_p_o(&data)Retour : RTE_E_OUT_OF_RANGE

Diagramme de séquence : détection et propagation d'erreurs de plage de valeurs via Rte_Read. Sources : [SWS_Rte_01091], [SWS_Rte_01371], [SWS_Rte_03845], AUTOSAR_CP_SWS_RTE p. 409.

Lorsque la validation des données est activée (DataSemantics range check), la RTE vérifie les valeurs de signaux entrantes par rapport à des plages de valeurs définies [SWS_Rte_01371]. Si une valeur reçue est hors limites, l'API de lecture RTE_E_OUT_OF_RANGE retourne [SWS_Rte_03845], [SWS_Rte_03846]. Pour les signaux dotés d'une Invalidation-Policy, en présence de replace, la RTE remplace la valeur par la initValue ou, en présence de keep, conserve la valeur précédente et lève un événement d'erreur [SWS_Rte_05030], [SWS_Rte_05049]. En cas de surveillance de timeout via aliveTimeout, la RTE enregistre l'absence via Rte_COMCbkRxTOut et propage RTE_E_TIMEOUT aux SW-C en attente [SWS_Rte_08061], [SWS_Rte_03763].

Preuves détaillées supplémentaires

La conception technique exacte de la RTE et du scheduler s'appuie sur les exigences clés suivantes du payload :

Ce guide de module a été élaboré par un assistant de curation IA sur la base de la spécification AUTOSAR pour R20-11.

AUTOSAR RTE

The RTE realizes the Virtual Functional Bus (VFB) on a specific ECU, providing communication between Software Components and basic software.

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

fonction Rte_Start [SWS_Rte_03015] 📄 PDF

Std_ReturnType Rte_Start (void);

Rte_Start is intended to allocate and initialize system resources and communication resources used by the RTE.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 7e79d12edbc4 Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction Rte_Start alloue et initialise les ressources système et de communication utilisées par la RTE [SWS_Rte_03015]. L'API est toujours générée [SWS_Rte_01309], possède la signature Std_ReturnType Rte_Start (void) [SWS_Rte_02569] et doit impérativement retourner dans un temps d'exécution fini, sans boucle infinie [SWS_Rte_02585].

La fonction ne doit être appelée sur chaque Core qu'exactement une fois par le EcuStateManager depuis un contexte OS de confiance, après que tous les modules de Basic Software requis par la RTE ont été initialisés [SWS_Rte_CONSTR_09035]. L'appel est exécuté indépendamment sur chaque Core [SWS_Rte_07615] et effectue les activités de démarrage spécifiques aux partitions pour toutes les partitions assignées à ce Core [SWS_Rte_07616].

Au cours de son déroulement, la RTE initialise les variables allouées pour les blocs de RAM en fonction de la stratégie configurée [SWS_Rte_07632]. Après l'initialisation des variables, mais avant l'exécution des Runnables, la RTE appelle les fonctions d'initialisation Rte_Rips_Rte_Start de tous les RTE Implementation Plug-Ins impliqués [SWS_Rte_80052]. Ensuite, la RTE active en une seule fois tous les Runnables déclenchés par InitEvent [SWS_Rte_06761] et amorce la transition vers les modes initiaux [SWS_Rte_06766]. Si l'API Rte_StartTiming n'existe pas, Rte_Start démarre en outre l'activation des Runnables déclenchés par TimingEvent [SWS_Rte_07575] ou BackgroundEvent [SWS_Rte_07178].

Pour la gestion des erreurs, lorsque RteDevErrorDetectUninit est activé, la RTE ou le SchM signale l'erreur RTE_E_UNINIT (0x07) si Rte_Start est appelé avant SchM_Init [SWS_Rte_07683]. Avant l'exécution de Rte_Start, les API d'exécution de la RTE ne doivent pas être appelées, sous peine de provoquer également RTE_E_UNINIT [SWS_Rte_07682] ; Rte_SetMirror peut en revanche déjà être appelé avant Rte_Start [SWS_Rte_07319].

Cette note d'utilisation a été générée automatiquement sur la base de la spécification AUTOSAR.

Guide de l'implémenteur à venir (complexité I2)

fonction Rte_Stop [SWS_Rte_01262] 📄 PDF

Std_ReturnType Rte_Stop (void);

Rte_Stop is used to finalize the RTE on the core it is called. This service releases all system and communication resources allocated by the RTE on that core.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 7279f2fa5c32 Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction Rte_Stop ([SWS_Rte_02570]) est générée dans chaque configuration ([SWS_Rte_01310]) et sert à finaliser la RTE sur le Core exécutant ([SWS_Rte_01262]). À cette occasion, l'ensemble des ressources système et de communication allouées par la RTE sur ce Core sont libérées ([SWS_Rte_01262]). L'appel synchrone retourne avec certitude dans un temps d'exécution fini ([SWS_Rte_02584]).

Dans le système global, Rte_Stop doit être appelé par le EcuStateManager avant que les modules de Basic Software requis par la RTE ne soient arrêtés ([SWS_Rte_CONSTR_09038]). Durant son exécution, la RTE appelle les fonctions d'arrêt Rte_Rips_Rte_Stop de tous les RTE Implementation Plug-Ins impliqués ([SWS_Rte_80053]), qui doivent fournir ces interfaces de cycle de vie ([SWS_Rte_70047]). SchM_Deinit ne doit être exécuté qu'après l'achèvement complet de Rte_Stop ([SWS_Rte_CONSTR_09056]).

Après l'appel de Rte_Stop sur un Core, plus aucune instance de RunnableEntity n'y est activée, démarrée ou libérée par la RTE ([SWS_Rte_02538]). Cela n'affecte en rien Rte_GetMirror, qui reste appelable tant que le système d'exploitation sous-jacent est actif ([SWS_Rte_07350]).

En cas d'erreur, la fonction renvoie RTE_E_LIMIT si une limite interne a été dépassée ou si l'allocation d'une ressource requise échoue ([SWS_Rte_01262]). Si RteDevErrorDetectUninit est activé, la RTE signale l'erreur RTE_E_UNINIT (0x07) lorsque des API non autorisées sont appelées après Rte_Stop ([SWS_Rte_07682]).

Cette note d'utilisation a été générée de manière automatisée sur la base de la spécification AUTOSAR R20-11.

Guide de l'implémenteur à venir (complexité I2)

fonction Rte_StartTiming [SWS_Rte_06753] 📄 PDF

void Rte_StartTiming (void);

Rte_StartTiming API is intended to release the activation of RunnableEntitys triggered by TimingEvents and BackgroundEvents after the last call of a Rte_Init function.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : e0ce018ede17 Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction Rte_StartTiming sert à libérer, après l'achèvement de l'initialisation de la RTE, l'activation de RunnableEntitys déclenchés par des TimingEvents ou des BackgroundEvents ([SWS_Rte_06753], [SWS_Rte_06756]). Elle est implémentée sous la forme d'une fonction sans paramètre et sans valeur de retour ([SWS_Rte_06754], [SWS_Rte_06758]) et doit retourner dans un temps d'exécution fini ([SWS_Rte_06757]).

Concernant le contexte d'appel et l'ordre, l'API est soumise à des conditions aux limites strictes :

  • La fonction ne doit être appelée qu'après l'initialisation complète de la RTE, concrètement après la fin de l'appel de Rte_Start ([SWS_Rte_CONSTR_09061]).
  • Elle est prévue pour être exécutée après le dernier appel d'une fonction Rte_Init ([SWS_Rte_06753]).
  • L'API est générée ou mise à disposition dès qu'au moins une API Rte_Init est générée ([SWS_Rte_06755]).

Si Rte_StartTiming est appelée, elle démarre immédiatement les activations périodiques et basées sur l'arrière-plan ([SWS_Rte_06759], [SWS_Rte_06760]). En revanche, si l'API n'existe pas dans la configuration, c'est l'appel de Rte_Start qui prend en charge à la place la libération des runnables déclenchés par des TimingEvents et des BackgroundEvents ([SWS_Rte_07178], [SWS_Rte_07575]). Aucun code d'erreur ou valeur de retour spécifique n'est défini pour cet appel ([SWS_Rte_06754]).

Ce texte a été généré par une IA sur la base de la spécification AUTOSAR.

Guide de l'implémenteur à venir (complexité I2)

fonction SchM_Init [SWS_Rte_08060] 📄 PDF

void SchM_Init (const SchM_ConfigType* ConfigPtr);

SchM_Init is intended to allocate and initialize system resources used by the Basic Software Scheduler part of the RTE for the core on which it is called.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 33cf0d0b4f4b Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation et sémantique

La fonction SchM_Init alloue et initialise les ressources système utilisées par le Basic Software Scheduler (SchM) de la RTE sur le Core appelant ([SWS_Rte_08060]). L'interface est toujours générée ([SWS_Rte_07271]) et possède la signature void SchM_Init(const SchM_ConfigType* ConfigPtr) ([SWS_Rte_07270]). Elle est exécutée de manière synchrone et doit impérativement retourner dans un temps d'exécution fini, sans entrer dans une boucle infinie ([SWS_Rte_07273]).

Pendant le déroulement de l'initialisation, SchM_Init exécute les étapes suivantes :

  • Elle initie la transition vers le mode initial pour chaque instance de machine de mode appartenant au Basic Software Scheduler ([SWS_Rte_07532]).
  • Elle démarre l'activation d'instances de BswSchedulableEntity déclenchées par des événements BswBackgroundEvent ([SWS_Rte_07584]).
  • Elle appelle les fonctions d'initialisation Rte_Rips_SchM_Init de tous les RTE Implementation Plug-Ins impliqués ([SWS_Rte_80051]).

Contexte d'appel et conditions d'ordonnancement

SchM_Init ne doit être appelée sur chaque Core qu'une seule fois exactement par le EcuStateManager, dès que les modules BSW requis par le Basic Software Scheduler ont été initialisés ([SWS_Rte_CONSTR_09055]). Les API subséquentes telles que Rte_Start ne doivent être appelées qu'après l'achèvement complet de SchM_Init ([SWS_Rte_CONSTR_09036]).

Gestion des erreurs

Si SchM_Init est appelée avec un pointeur NULL comme paramètre, le Basic Software Scheduler signale l'erreur RTE_E_DET_ILLEGAL_VARIANT_CRITERION_VALUE (0x02) ([SWS_Rte_07684]). Si des API du Scheduler (telles que SchM_Switch, SchM_Mode ou SchM_Start) ou Rte_Start sont appelées avant SchM_Init, l'erreur RTE_E_UNINIT (0x07) est signalée lorsque RteDevErrorDetectUninit est activé ([SWS_Rte_07683]).

Cette note d'utilisation a été générée par un système d'IA sur la base de la spécification AUTOSAR.

Guide de l'implémenteur à venir (complexité I2)

fonction SchM_Start [SWS_Rte_07273] 📄 PDF

void SchM_Start (void);

Basic Software Scheduler initialized. Shall be called before BswM_Init().

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 8cf50542ca2a Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation

La fonction SchM_Start sert à la mise en service du Basic Software Scheduler au sein du module RTE et est systématiquement fournie dans le cadre de la génération des interfaces [SWS_Rte_04547]. Elle présente la signature C sans paramètre void SchM_Start(void) [SWS_Rte_04546] et ne renvoie aucune valeur de retour. Pour son exécution, la règle impérative impose que l'appel doive retourner dans un temps d'exécution fini et ne doive en aucun cas entrer dans une boucle infinie [SWS_Rte_04548]. En l'absence de mécanismes de rappel asynchrones, il s'agit vraisemblablement d'un appel d'initialisation synchrone et bloquant. Question Q-b6ad9ed696841d7a (ouverte)

Contexte d'appel et concurrence

Des restrictions strictes s'appliquent au contexte d'appel et à l'interaction avec d'autres composants du système :

  • Appelant et fréquence : la fonction doit être appelée sur chaque cœur de processeur exclusivement par le EcuStateManager et seulement une seule fois [SWS_Rte_CONSTR_09055].
  • Conditions d'ordonnancement : l'appel ne doit avoir lieu qu'après l'initialisation complète de tous les modules de Basic Software requis par la partie Basic Software Scheduler de la RTE [SWS_Rte_CONSTR_09055].
  • Interaction lors du démarrage du système : après l'exécution, le Basic Software Scheduler est opérationnel ; l'appel doit obligatoirement avoir lieu avant l'initialisation du gestionnaire de BSW via BswM_Init() [SWS_Rte_07273].

Gestion des erreurs

Aucun code d'erreur spécifique, valeur de retour ou notification à destination du DET ou de la DEM n'est défini pour cette fonction dans le payload.

Ce texte a été généré par une IA sur la base de la spécification AUTOSAR R20-11.

Guide de l'implémenteur à venir (complexité I2)

fonction SchM_StartTiming [SWS_Rte_04548] 📄 PDF

void SchM_StartTiming (void);

Start periodical events for BSW/SWCs. SchM_Init() has to be called before.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 381c7fe760c2 Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation

La fonction SchM_StartTiming possède la signature sans paramètre void SchM_StartTiming(void) [SWS_Rte_04549] et est systématiquement générée par le générateur RTE [SWS_Rte_04550]. Son appel démarre les événements périodiques pour la BSW et les SWC [SWS_Rte_04548] en initiant l'activation d'instances de BswSchedulableEntity déclenchées par des BswTimingEvents [SWS_Rte_07574]. La fonction doit retourner dans un temps d'exécution fini et ne doit pas exécuter de boucle infinie [SWS_Rte_04551].

Contexte d'appel et restrictions

Avant l'appel de SchM_StartTiming, SchM_Init doit impérativement avoir été appelé [SWS_Rte_04548]. En outre, la restriction obligatoire s'applique selon laquelle SchM_StartTiming ne doit être appelée sur chaque Core qu'exactement une fois par le EcuStateManager, après que tous les modules de logiciel de base requis pour le Basic Software Scheduler ont été initialisés [SWS_Rte_CONSTR_09055].

Gestion des erreurs

Si SchM_StartTiming est appelée avant SchM_Init, le Basic Software Scheduler ou la RTE signale l'erreur RTE_E_UNINIT (0x07), à condition que la détection d'erreurs de développement RteDevErrorDetectUninit soit activée [SWS_Rte_07683].

Ce texte a été généré par une IA et est basé sur les spécifications de la version R20-11.

Guide de l'implémenteur à venir (complexité I2)

fonction SchM_Deinit [SWS_Rte_04551] 📄 PDF

void SchM_Deinit (void);

SchM_Deinit is used to finalize Basic Software Scheduler part of the RTE of the core on which it is called. This service releases all system resources allocated by the Basic Software Scheduler part on that core.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 7e0a6d638ce7 Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation et périmètre fonctionnel

La fonction SchM_Deinit sert à finaliser la partie Basic Software Scheduler de la RTE sur le Core sur lequel elle est appelée [SWS_Rte_04551]. Lors de cette opération, le service libère l'ensemble des ressources système qui ont été allouées par le BSW-Scheduler sur ce Core [SWS_Rte_04551]. La fonction ne possède ni paramètre ni valeur de retour (void SchM_Deinit(void)) [SWS_Rte_07274] et est systématiquement générée par le générateur RTE [SWS_Rte_07275]. Concernant le comportement temporel, la spécification exige que SchM_Deinit retourne dans un temps d'exécution fini [SWS_Rte_07277].

Contexte d'appel et conditions d'ordonnancement

Pour l'appel pendant la phase d'arrêt du calculateur, des règles d'ordonnancement contraignantes s'appliquent :

  • La fonction SchM_Deinit ne doit être utilisée qu'après la finalisation complète de la RTE, c'est-à-dire après l'arrêt de Rte_Stop [SWS_Rte_CONSTR_09056].
  • L'appel doit être effectué par le EcuStateManager avant l'arrêt des couches de base requises pour le fonctionnement du Basic Software Scheduler [SWS_Rte_CONSTR_09057].
  • Après l'appel de SchM_Deinit sur un Core, le scheduler BSW ne doit plus activer ni démarrer d'instances de BswSchedulableEntity sur ce Core [SWS_Rte_07586].

Nettoyage des plug-ins

Dans le cadre de la désinitialisation, la RTE appelle impérativement, au sein de SchM_Deinit, les fonctions Rte_Rips_SchM_Deinit de tous les plug-ins d'implémentation RTE participants afin de finaliser leur nettoyage [SWS_Rte_80054].

Cette note d'utilisation a été créée automatiquement sur la base de la spécification AUTOSAR Classic Release R20-11.

Guide de l'implémenteur à venir (complexité I1)

fonction <name of the Invocation Handler> [SWS_Rte_89015] 📄 PDF

void <name of the Invocation Handler> (void);

Performs invocation of server runnables, hard error runnables, ASCR runnables and triggered runnables via a transformer".

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 6cdd781d14a1 Provenance Questions ouvertes (2)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction de gestion <name of the Invocation Handler> prend en charge dans le module Rte l'appel synchrone de différents types de runnables via un transformeur [SWS_Rte_89015]. Parmi les entités prises en charge figurent des Server-Runnables, des Hard-Error-Runnables, des ASCR-Runnables ainsi que des runnables déclenchés [SWS_Rte_89015].

L'interface ne possède aucun paramètre d'entrée, d'entrée/sortie ou de sortie et ne renvoie aucune valeur (signature void (void)) [SWS_Rte_89015]. L'appel est traité de manière synchrone et est caractérisé par l'ID de service 0xEE [SWS_Rte_89015]. La déclaration est mise à disposition via le fichier d'en-tête Rte_Rips_<PlugIn>.h [SWS_Rte_89015].

Concernant la concurrence, la fonction est déclarée comme réentrante sous condition (Conditional Reentrant) [SWS_Rte_89015]. Cela devrait signifier qu'un appel concurrent n'est autorisé que si des contextes d'exécution différents ou des instances de plug-in distinctes sont présents. Question Q-24aabb36a2be58f4 (ouverte) L'identifiant <name of the Invocation Handler> ainsi que la désignation d'en-tête <PlugIn> constituent des espaces réservés ; le nom réel est vraisemblablement fixé lors de la configuration du plug-in.

Cette note d'utilisation a été générée par une IA à l'aide de la spécification d'AUTOSAR R20-11.

fonction Rte_Rips_SchM_Deinit [SWS_Rte_89019] 📄 PDF

void Rte_Rips_SchM_Deinit (void);

Rte_Rips_SchM_Deinit deinitializes those RTE Implementation Plug-In parts which are relevant for the SchM related operations.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 0110fabfda4a Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction Rte_Rips_SchM_Deinit sert à la désinitialisation des composants d'un RTE Implementation Plug-In qui sont pertinents pour les opérations du Basic Software Scheduler (SchM) [SWS_Rte_89019]. Elle fait partie des interfaces de cycle de vie obligatoires devant être fournies par chaque RTE Implementation Plug-In aux côtés de Rte_Rips_SchM_Init, Rte_Rips_Rte_Start et Rte_Rips_Rte_Stop [SWS_Rte_70047].

Les dispositions suivantes s'appliquent à l'intégration et à l'utilisation :

  • Contexte d'appel et déroulement : L'interface possède la signature void Rte_Rips_SchM_Deinit (void), ne prend aucun paramètre et ne renvoie aucune valeur de retour [SWS_Rte_89019]. Elle est exécutée de manière synchrone [SWS_Rte_89019]. L'appel n'est pas effectué par des composants logiciels, mais est coordonné par la RTE au sein de SchM_Deinit pour tous les plug-ins impliqués [SWS_Rte_80054].
  • Inclusion de fichier et identifiant : La déclaration est disponible via l'en-tête Rte_Rips_<PlugIn>.h ; la fonction possède l'ID de service 0xF3 [SWS_Rte_89019].
  • Concurrence et restrictions : La fonction est spécifiée comme non réentrante (Non Reentrant) [SWS_Rte_89019]. Il devrait en résulter qu'aucune activité SchM concurrente ne doit plus accéder au plug-in pendant l'appel dans SchM_Deinit. Question Q-60aec1abc9e891b2 (ouverte)
  • Gestion des erreurs : La spécification ne prévoit pour Rte_Rips_SchM_Deinit ni codes d'erreur ni valeurs de retour et ne définit aucune notification d'erreur vers DET ou DEM [SWS_Rte_89019].

Cette note d'utilisation a été générée automatiquement sur la base de la spécification AUTOSAR Classic R20-11.

type Rte_Rips_SwitchNotificationStatusType [SWS_Rte_91113] 📄 PDF

Status of the en- and dequeue operation on a mode queue Tags: atp.Status=draft

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 71b0f38ace68 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Le type de données Rte_Rips_SwitchNotificationStatusType ([SWS_Rte_91113]) est basé sur uint8 et est fourni via Rte_Type.h. Il sert à signaler l'état des opérations Enqueue et Dequeue au niveau d'une file d'attente de modes (Mode Queue) dans le contexte des RTE Implementation Plug-Ins.

La plage de valeurs comprend des codes d'état pour les deux sens d'opération ([SWS_Rte_91113]) :

  • RTE_SWITCH_NOTIFICATION_SKIP (0x00) : la notification de changement de mode ne peut pas être défilée.
  • RTE_SWITCH_NOTIFICATION_ENQUEUED_FIRST (0x01) : La notification a été enfilée dans une file d'attente vide.
  • RTE_SWITCH_NOTIFICATION_ENQUEUED_NOT_FIRST (0x02) : La notification a été enfilée dans une file d'attente déjà occupée.
  • RTE_SWITCH_NOTIFICATION_ENQUEUE_FAILED (0x03) : l'enfilage dans une file d'attente non vide a échoué.
  • RTE_SWITCH_NOTIFICATION_DEQUEUED_LAST (0x04) : La dernière notification de changement de mode a été retirée de la file d'attente.
  • RTE_SWITCH_NOTIFICATION_DEQUEUED_NOT_LAST (0x05) : Une notification a été retirée ; d'autres notifications restent dans la file d'attente.

Lors de son utilisation, le type apparaît dans deux interfaces synchrones et réentrantes : la fonction Rte_Rips_<PlugIn>_Switch_<BswSwcI>_<MMI> ([SWS_Rte_91114]) reçoit l'état comme paramètre d'entrée switchNotificationStatus afin d'avertir le plug-in des opérations d'enfilement. En revanche, la fonction Rte_Rips_<PlugIn>_DequeueModeSwitch_<MMI>_<OsTask> ([SWS_Rte_91115]) fournit le type en tant que valeur de retour lorsqu'une notification est retirée de la file d'attente après l'achèvement de la dernière ExecutableEntity On-Entry.

Les erreurs lors de l'enfilement sont signalées fonctionnellement via la valeur d'état RTE_SWITCH_NOTIFICATION_ENQUEUE_FAILED ([SWS_Rte_91113]) ; aucune entrée DET ou DEM distincte n'est spécifiée dans la charge utile. Interprétation : Le texte de spécification « was enqueued from mode queue » pour les constantes de défilement est probablement d'origine rédactionnelle et désigne l'opération de retrait. Question Q-6e9e040dcd341f66 (ouverte) L'élément ainsi que les interfaces associées sont marqués comme ébauche (Draft) ([SWS_Rte_91113]).

Cette note d'utilisation a été créée de manière automatisée et repose exclusivement sur les données de spécification de la version AUTOSAR R20-11.

Guide de l'implémenteur à venir (complexité I1)

type Rte_DsmqStatusType [SWS_Rte_91102] 📄 PDF

Status of the enqueue operation on a distributed shared mode queue

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : cb8991cd989c Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Le type de données Rte_DsmqStatusType est basé sur uint8 et est défini conformément à [SWS_Rte_80085] ainsi qu'à [SWS_Rte_91102] avec ses littéraux dans le fichier d'en-tête Rte_Type.h. Il sert à signaler l'état des opérations Enqueue et Dequeue pour les notifications de changement de mode dans une Distributed Shared Mode Queue (DSMQ) [SWS_Rte_91102].

La plage de valeurs comprend les littéraux suivants [SWS_Rte_91102] :

  • RTE_DSMQ_ENQUEUED_FIRST (0x01) : La notification a été enfilée dans une DSMQ préalablement vide.
  • RTE_DSMQ_ENQUEUED_NOT_FIRST (0x02) : L'enfilement a été effectué dans une DSMQ déjà remplie (non vide).
  • RTE_DSMQ_ENQUEUE_FAILED (0x03) : L'enfilement dans une DSMQ non vide a échoué.
  • RTE_DSMQ_DEQUEUED_LAST (0x04) : la dernière notification de changement de mode a été défilée de la DSMQ.
  • RTE_DSMQ_DEQUEUED_NOT_LAST (0x05) : Une notification a été retirée alors que d'autres notifications restent dans la file.

Pour la gestion des erreurs, le littéral RTE_DSMQ_ENQUEUE_FAILED signale un échec de l'opération d'enfilement lorsque la file d'attente n'est pas vide [SWS_Rte_91102].

Le type est utilisé comme paramètre de transmission dsmqstatus vers des interfaces du RTE Implementation Plug-In (RIPS). La fonction Rte_Rips_<PlugIn>_DsmqSwitch_<BswSwcI>_<MMI> informe le plug-in de manière synchrone de l'enfilement dans une DSMQ [SWS_Rte_91103]. De plus, Rte_Rips_<PlugIn>_DsmqTransitionEnd_<BswSwcI>_<MMI> signale de manière synchrone au RIPS l'achèvement d'une transition de mode dans un DSMQ-Transition-OsTask [SWS_Rte_91106]. Les deux services de rappel sont déclarés comme synchrones et réentrants [SWS_Rte_91103], [SWS_Rte_91106].

Cette note d'utilisation a été générée par une IA sur la base de la spécification AUTOSAR R20-11.

Guide de l'implémenteur à venir (complexité I1)

type RteCalibrationSwAddrMethodRefParentContainerRteComponentType [SWS_Rte_05145] 📄 PDF

Reference to the SwAddrMethod for which software calibration support shall be enabled. Multiplicity 0..* Type Foreign reference to SW-ADDR-METHOD Post-Build Variant Multiplicity false Post-Build Variant Value false Multiplicity Configuration Class Pre-compile time X All Variants Link time – Post-build time – Value Configuration Class Pre-compile time X All Variants Link time – Post-build time – Scope / Dependency scope: local No Included Containers 8.7 Implicit communication configuration Figure 8.22: Configuration of the implicit communication SWS Item [ECUC_Rte_09034] Container Name

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/CP_MOD_Rte
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_Rte@rel:R20-11#d1448586
Content hash
d1448586
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_RTE.pdf#nameddest=SWS_Rte_03015

Initialisation et état

Rte_Rips_SchM_Deinit deinitializes those RTE Implementation Plug-In parts which are relevant for the SchM related operations.

void Rte_Rips_SchM_Deinit (void);
SchM_Deinit fonction

SchM_Deinit is used to finalize Basic Software Scheduler part of the RTE of the core on which it is called. This service releases all system resources allocated by the Basic Software Scheduler part on that core.

void SchM_Deinit (void);

Returns the version information of the Basic Software Scheduler.

void SchM_GetVersionInfo (Std_VersionInfoType* versioninfo);
SchM_Init fonction

SchM_Init is intended to allocate and initialize system resources used by the Basic Software Scheduler part of the RTE for the core on which it is called.

void SchM_Init (const SchM_ConfigType* ConfigPtr);

Services

Rte_Start fonction

Rte_Start is intended to allocate and initialize system resources and communication resources used by the RTE.

Std_ReturnType Rte_Start (void);

Rte_StartTiming API is intended to release the activation of RunnableEntitys triggered by TimingEvents and BackgroundEvents after the last call of a Rte_Init function.

void Rte_StartTiming (void);
Rte_Stop fonction

Rte_Stop is used to finalize the RTE on the core it is called. This service releases all system and communication resources allocated by the RTE on that core.

Std_ReturnType Rte_Stop (void);
SchM_Start fonction

Basic Software Scheduler initialized. Shall be called before BswM_Init().

void SchM_Start (void);

Start periodical events for BSW/SWCs. SchM_Init() has to be called before.

void SchM_StartTiming (void);

Callouts et interfaces attendues

Performs invocation of server runnables, hard error runnables, ASCR runnables and triggered runnables via a transformer".

void <name of the Invocation Handler> (void);

Types

Status of the enqueue operation on a distributed shared mode queue

Status of the en- and dequeue operation on a mode queue Tags: atp.Status=draft

Reference to the SwAddrMethod for which software calibration support shall be enabled. Multiplicity 0..* Type Foreign reference to SW-ADDR-METHOD Post-Build Variant Multiplicity false Post-Build Variant Value false Multiplicity Configuration Class Pre-compile time X All Variants Link time – Post-build time – Value Configuration Class Pre-compile time X All Variants Link time – Post-build time – Scope / Dependency scope: local No Included Containers 8.7 Implicit communication configuration Figure 8.22: Configuration of the implicit communication SWS Item [ECUC_Rte_09034] Container Name