AUTOSAR OS
Real-time operating system managing priority-based preemptive task scheduling, events, alarms, and schedule tables (OSEK/VDX derivative).
Funktionen — Übersicht
ApplicationType GetApplication (void);This service determines the OS - Application (a unique identifier has to be allocated to each application) where the caller...ApplicationType GetCurrentApplication (void);This service determines the OS - Application where the caller of the service is currently executing.ISRType GetISRID (void);This service returns the identifier of the currently executing ISR.StatusType CallTrustedFunction (TrustedFunctionIndexType FunctionIndex, TrustedFunctionParameterRefType FunctionParams);A (trusted or non - trusted) OS - Application uses this service to call a trusted functionAccessType CheckISRMemoryAccess (ISRType ISRID, MemoryStartAddressType Address, MemorySizeType Size);This service checks if a memory region is write/ read/ execute accessible and also returns information if the memory region is...AccessType CheckTaskMemoryAccess (TaskType TaskID, MemoryStartAddressType Address, MemorySizeType Size);This service checks if a memory region is write/ read/ execu te accessible and also returns information if the memory region...ObjectAccessType CheckObjectAccess (ApplicationType ApplID, ObjectTypeType ObjectType, void ...);This service determines if the OS - Applications, given by Appl ID, is allowed to use the IDs of a Task, Resource, Counter,...ApplicationType CheckObjectOwnership (ObjectTypeType ObjectType, void ...);This service determines to which OS - Application a given Task, ISR, Counter, Alarm or Schedule Table belongsStatusType StartScheduleTableRel (ScheduleTableType ScheduleTableID, TickType Offset);This service starts the processing of a schedule table at "Offset" relative to the "Now" value on the underlying counter.StatusType StartScheduleTableAbs (ScheduleTableType ScheduleTableID, TickType Start);This service starts the processing o f a schedule table at an absolute value "Start" on the underlying counter.StatusType StopScheduleTable (ScheduleTableType ScheduleTableID);This service cancels the processing of a schedule table immediately at any point while the schedule table is running.StatusType NextScheduleTable (ScheduleTableType ScheduleTableID_From, ScheduleTableType ScheduleTableID_To);This service switches the processing from one schedule table to another schedule table.StatusType StartScheduleTableSynchron (ScheduleTableType ScheduleTableID);This service starts an explicitly synchronized schedule table synchronously.StatusType SyncScheduleTable (ScheduleTableType ScheduleTableID, TickType Value);Service SyncScheduleTable.StatusType SetScheduletableAsync (ScheduleTableType ScheduleTableID);This service stops synchronization of a schedule table.StatusType GetScheduleTable GetScheduleTableStatusof (ScheduleTableType ScheduleTableID, ScheduleTableStatusRefType ScheduleStatus); ⚠️This service queries the state of a schedule table (also with respect to synchronization).StatusType IncrementCounter (CounterType CounterID);This service increments a software counter.StatusType GetCounterValue (CounterType CounterID, TickRefType Value);This service reads the current count value of a counte r (returning either the hardware timer ticks if counter is driven by...StatusType GetElapsedValue (CounterType CounterID, TickRefType Value, TickRefType ElapsedValue);This service gets the number of ticks between the current tick value and a previously read tick value.StatusType TerminateApplication (ApplicationType Application, RestartType RestartOption);Service TerminateApplication.StatusType AllowAccess (void);This service sets the own state of an OS - Application from AP PLICATION_ RESTARTING to APPLICATION_ ACCESSIBLE.StatusType GetApplicationState (ApplicationType Application, ApplicationStateRefType Value);This service returns the current state of an OS - Application.uint32 GetNumberOfActivated GetNumberActivatedCores (void); ⚠️The function returns the number of cores activated by the Start Core function.CoreIdType GetCore (void);The function returns a unique core identifier.void StartCore (CoreIdType CoreID, StatusType* Status);It is not supported to call this function after Start OS().void StartNonAutosar StartNonCore (CoreIdType CoreID, StatusType* Status); ⚠️The function start s the core specified by the parameter Core ID.StatusType GetSpinlock (SpinlockIdType SpinlockId);Get Spinlock tries to occupy a spin - lock variable.StatusType ReleaseSpinlock (SpinlockIdType SpinlockId);Release Spinlock releases a spinlock variable that was occupied before.StatusType TryToGetSpinlock (SpinlockIdType SpinlockId, TryToGetSpinlockType* Success);Try To Get Spinlock has the same functionality as Get Spinlock with the difference that if the spinlock is already occupied by...void ShutdownAllCores (StatusType Error);After this service the OS on all AUTOSAR cores is shut down.StatusType ControlIdle (CoreIdType CoreID, IdleModeType IdleMode);This API allows the caller to select the idle mode action which is performed during idle time of t he OS (e.StatusType ReadPeripheral (AreaIdType Area, const uint8* Address, uint8* ReadValue);This service returns the content of a given memory location ().StatusType ReadPeripheral16 (AreaIdType Area, const uint16* Address, uint16* ReadValue);This service returns the content of a given memory location ().StatusType ReadPeripheral32 (AreaIdType Area, const uint32* Address, uint32* ReadValue);This service returns the content of a given memory location ().StatusType WritePeripheral (AreaIdType Area, uint8* Address, uint8 WriteValue);This service writes the to a given memory location ().StatusType WritePeripheral16 (AreaIdType Area, uint16* Address, uint16 WriteValue);This service writes the to a given memory location ().StatusType WritePeripheral32 (AreaIdType Area, uint32* Address, uint32 WriteValue);This service writes the to a given memory location ().StatusType ModifyPeripheral (AreaIdType Area, uint8* Address, uint8 Clearmask, uint8 Setmask);This service modifies a given memory location () with the formula: * = ((* & ) | )StatusType ModifyPeripheral16 (AreaIdType Area, uint16* Address, uint16 Clearmask, uint16 Setmask);This service modifies a given memory location () with the formula: * = ((* & ) | )StatusType ModifyPeripheral32 (AreaIdType Area, uint32* Address, uint32 Clearmask, uint32 Setmask);This service modifies a given memory location () with the formula: * = ((* & ) | )StatusType EnableInterruptSource (ISRType ISRID, boolean ClearPending);Service EnableInterruptSource.StatusType DisableInterruptSource (ISRType ISRID);Disables the interrupt source by modifying the interrupt controller registers.StatusType ClearPendingInterrupt (ISRType ISRID);Service ClearPendingInterrupt.void ActivateTaskAsyn (TaskType id);Asynchronous version of the Activate Task() function.void SetEventAsyn (TaskType id, EventMaskType m);Asynchronous version of the Set Event() function.void Ioc (void);This service initializes the data structures of the IOC.void <ReceiverPullCB> (void);This callback function can be configured for the receiver of a communication.ProtectionReturnType ProtectionHook (StatusType Fatalerror);The protection hook is always called if a serious error occurs.
Typen — Übersicht
enum AppModeTypeApp Mode of the core shall be inherited from another core.TotalNumberOfCoresThe total number of coresApplicationTypeThis data type identifies the OS - Application.enum ApplicationStateTypeThis data type identifies the state of an OS - Application.ApplicationStateRefTypeThis data type points to location where a Application State Type can be stored.TrustedFunctionIndexTypeThis data type identifies a trusted function.struct TrustedFunctionParameterRefTypeThis data type points to a structure which holds the arguments for a call to a trusted function.AccessTypeThis type holds information how a specific memory region can be accessed.ObjectAccessTypeThis data type identifies if an OS - Application has access to an object.ObjectTypeThis data type identifies an object.MemoryStartAddressTypeThis data type is a pointer which is able to point to any location in the MCU address space.MemorySizeTypeThis data type holds the size (in bytes) of a memory region.ISRTypeThis data type identifies an interrupt service routine (ISR).ScheduleTableTypeThis data type identifies a schedule table.enum ScheduleTableStatusTypeThis type describes the status of a schedule.ScheduleTableStatusRefTypeThis data type points to a variable of the data type Schedule Table Status Type.enum ProtectionReturnTypeThis data type identifies a value which controls further actions of the OS on return from the protection hook.RestartTypeThis data type defines the use of a Restart Task after terminating an OS - Application.PhysicalTimeTypeThis data type is used for values returned by the conversion macro (see SWS_ Os_00393) OS_ TICKS2_().CoreIdTypeCore Id Type is a scalar that allows identifying a single core.SpinlockIdTypeSpinlock Id Type identifies a spinlock instance and is used by the API functions: Get Spinlock, Release Spinlock and Try To...TryToGetSpinlockTypeThe Try To Get Spinlock Type indicates if the spinlock has been occupied or not.enum IdleModeTypeThis data type identifies the idle mode behavior.AreaIdTypeArea Id Type identifies a peripheral area and is used by the API functions: Read Peripheral X, Write Peripheral X and Modify...TimeInMicrosecondsType-CounterTypeThis data type identifies a counter.typedef TickTypeThis data type represents count values in ticks.enum StatusTypeThis data type represents standard OSEK OS status codes (e.typedef TaskTypeThis data type identifies an AUTOSAR OS task.typedef EventMaskTypeThis data type represents an event mask for extended tasks.typedef AlarmTypeThis data type represents an AUTOSAR OS alarm identifier.
Funktionen & Typen — Detailansicht
फ़ंक्शन GetApplication [SWS_Os_00016] 📄 PDF
ApplicationType GetApplicationID (void);
This service determines the OS - Application (a unique identifier has to be allocated to each application) where the caller originally belongs to (was configured t o).
फ़ंक्शन GetCurrentApplication [SWS_Os_00797] 📄 PDF
ApplicationType GetCurrentApplicationID (void);
This service determines the OS - Application where the caller of the service is currently executing. Note that if the caller is not within a Call Trusted Function() call the value is eq ual to the result of Get Application ID().
फ़ंक्शन GetISRID [SWS_Os_00511] 📄 PDF
ISRType GetISRID (void);
This service returns the identifier of the currently executing ISR.
फ़ंक्शन CallTrustedFunction [SWS_Os_00097] 📄 PDF
StatusType CallTrustedFunction (TrustedFunctionIndexType FunctionIndex, TrustedFunctionParameterRefType FunctionParams);
A (trusted or non - trusted) OS - Application uses this service to call a trusted function
सिस्टम सेवा CallTrustedFunction (सर्विस-ID 0x02) के माध्यम से, एक विश्वसनीय या गैर-विश्वसनीय OS-Application निष्पादन के लिए एक परिभाषित Trusted Function को कॉल कर सकता है [SWS_Os_00097]। इंटरफ़ेस हेडर Os.h के माध्यम से प्रदान किया जाता है [SWS_Os_00097]।
कॉल के लिए दो इनपुट पैरामीटर पास करना आवश्यक है [SWS_Os_00097]:
FunctionIndex(प्रकारTrustedFunctionIndexType): कॉल किए जाने वाले फ़ंक्शन के इंडेक्स को निर्दिष्ट करता है [SWS_Os_00097]।FunctionParams(प्रकारTrustedFunctionParameterRefType): लक्ष्य फ़ंक्शन के पैरामीटरों के लिए एक पॉइंटर पास करता है; यदि किसी तर्क की आवश्यकता नहीं है, तो एक NULL पॉइंटर पास किया जाना अनिवार्य है [SWS_Os_00097]।
समय संबंधी व्यवहार के संबंध में, निष्पादन लक्ष्य रूटीन पर निर्भर करता है: यदि कॉल किया गया फ़ंक्शन तुल्यकालिक है, तो सेवा भी तुल्यकालिक व्यवहार करती है [SWS_Os_00097]। फ़ंक्शन को रीएंट्रेंट रूप में कार्यान्वित किया गया है, लेकिन निष्पादन के दौरान यह ऑपरेटिंग सिस्टम का पुनः शेड्यूलिंग (rescheduling) करा सकता है [SWS_Os_00097]।
रिटर्न मान के रूप में, सेवा प्रकार StatusType का एक स्टेटस मान प्रदान करती है [SWS_Os_00097]:
E_OK: निष्पादन सफल और त्रुटिरहित रहा [SWS_Os_00097]।E_OS_SERVICEID: पास किए गए इंडेक्स से कोई मान्य फ़ंक्शन संबद्ध नहीं है [SWS_Os_00097]।
यह उपयोग नोट AUTOSAR R20-11 के आधार पर स्वचालित रूप से उत्पन्न किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन CheckISRMemoryAccess [SWS_Os_00512] 📄 PDF
AccessType CheckISRMemoryAccess (ISRType ISRID, MemoryStartAddressType Address, MemorySizeType Size);
This service checks if a memory region is write/ read/ execute accessible and also returns information if the memory region is part of the stack space.
फ़ंक्शन CheckISRMemoryAccess OS मॉड्यूल की एक तुल्यकालिक और रीएंट्रेंट सिस्टम सेवा है ([SWS_Os_00512])। यह रनटाइम पर एक विशिष्ट मेमोरी क्षेत्र के लिए एक निर्दिष्ट ISR के मेमोरी एक्सेस अधिकारों की जाँच करने का कार्य करती है।
उपयोग और पैरामीटर
CheckISRMemoryAccess की कॉल तीन इनपुट पैरामीटरों की अपेक्षा करती है ([SWS_Os_00512]):
ISRID: जाँची जाने वाली ISR का संदर्भ (ISRType)।Address: जाँचे जाने वाले मेमोरी क्षेत्र का प्रारंभिक पता (MemoryStartAddressType)।Size: मेमोरी क्षेत्र का आकार (MemorySizeType)।
रिटर्न मान के रूप में, सेवा प्रकार AccessType प्रदान करती है। इस रिटर्न मान में निर्दिष्ट क्षेत्र के एक्सेस अधिकार (रीड, राइट, एक्ज़ीक्यूट) शामिल हैं और यह अतिरिक्त रूप से जानकारी प्रदान करता है कि क्या मेमोरी क्षेत्र स्टैक क्षेत्र का हिस्सा है ([SWS_Os_00512])।
समवर्तीता और एकीकरण
विनिर्देश के अनुसार, फ़ंक्शन में सर्विस-ID 0x03 है और इसे रीएंट्रेंट के रूप में घोषित किया गया है ([SWS_Os_00512])। यह हेडर Os.h के माध्यम से उपलब्ध है ([SWS_Os_00512])। वर्तमान विनिर्देश अंश में विशिष्ट त्रुटि कोड या DET/DEM के लिए स्पष्ट फीडबैक सूचीबद्ध नहीं हैं।
यह उपयोग संबंधी नोट AUTOSAR R20-11 के विनिर्देश डेटा के आधार पर स्वचालित रूप से तैयार किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन CheckTaskMemoryAccess [SWS_Os_00513] 📄 PDF
AccessType CheckTaskMemoryAccess (TaskType TaskID, MemoryStartAddressType Address, MemorySizeType Size);
This service checks if a memory region is write/ read/ execu te accessible and also returns information if the memory region is part of the stack space.
फ़ंक्शन CheckTaskMemoryAccess ऑपरेटिंग सिस्टम की एक सिंक्रोनस सेवा का प्रतिनिधित्व करता है, जो हेडर Os.h के माध्यम से प्रदान की जाती है और इसकी सर्विस ID 0x04 है [SWS_Os_00513]। इसका उपयोग किसी विशिष्ट मेमोरी सेगमेंट के लिए एक विशिष्ट Task के मेमोरी एक्सेस अधिकारों को क्वेरी करने के लिए किया जाता है [SWS_Os_00513]।
पैरामीटर और रिटर्न मान
कॉल किए जाने पर, सेवा तीन इनपुट पैरामीटर स्वीकार करती है [SWS_Os_00513]:
Task ID(प्रकारTaskTypeका): उस Task का संदर्भ जिसके एक्सेस अधिकारों की जाँच की जानी है।Address(प्रकारMemoryStartAddressTypeका): जाँचे जाने वाले मेमोरी क्षेत्र का प्रारंभिक पता।Size(प्रकारMemorySizeTypeका): जाँचे जाने वाले मेमोरी क्षेत्र का आकार।
रिटर्न मान के रूप में, सेवा प्रकार AccessType का एक वेरिएबल लौटाती है [SWS_Os_00513]। इस रिटर्न मान में यह जानकारी होती है कि निर्दिष्ट मेमोरी क्षेत्र Task के लिए राइट, रीड या निष्पादन अधिकारों के साथ सुलभ है या नहीं, और यह अतिरिक्त रूप से इंगित करता है कि क्या यह क्षेत्र स्टैक क्षेत्र का हिस्सा है [SWS_Os_00513]। इस सेवा के लिए अतिरिक्त त्रुटि कोड या DET संदेश निर्दिष्ट नहीं हैं।
समवर्तीता और परस्पर क्रिया
सेवा को पुनःप्रवेशी (reentrant) के रूप में निर्दिष्ट किया गया है और इसलिए इसे समवर्ती निष्पादन संदर्भों में सुरक्षित रूप से उपयोग किया जा सकता है [SWS_Os_00513]। जबकि CheckTaskMemoryAccess रनटाइम पर मेमोरी क्षेत्रों के लिए अनुमतियों को क्वेरी करता है, AUTOSAR मानक ARTI मॉड्यूल विवरणों में इंटरफ़ेस और डेटा संरचनाओं को परिभाषित करता है जिसके माध्यम से डिबगिंग टूल ऑपरेटिंग सिस्टम ऑब्जेक्ट्स की स्थितियों और विशेषताओं को कैप्चर और मूल्यांकन कर सकते हैं [SWS_Os_00829]।
यह पाठ AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन CheckObjectAccess [SWS_Os_00256] 📄 PDF
ObjectAccessType CheckObjectAccess (ApplicationType ApplID, ObjectTypeType ObjectType, void ...);
This service determines if the OS - Applications, given by Appl ID, is allowed to use the IDs of a Task, Resource, Counter, Alarm or Schedule Table in API calls.
उपयोग और सिमेंटिक्स
फ़ंक्शन CheckObjectAccess ([SWS_Os_00256]) सिंक्रोनस रूप से निर्धारित करता है कि क्या किसी विशिष्ट OS-Application के पास API कॉलों में किसी ऑपरेटिंग सिस्टम ऑब्जेक्ट की ID का उपयोग करने का अधिकार है। एप्लिकेशन की पहचान के लिए प्रकार ApplicationType ([SWS_Os_00256]) का इनपुट पैरामीटर ApplID उपयोग किया जाता है। ObjectType (प्रकार ObjectTypeType) के माध्यम से यह परिभाषित किया जाता है कि किस प्रकार के ऑब्जेक्ट की जाँच की जानी है; Task, Resource, Counter, Alarm और Schedule Table ([SWS_Os_00256]) समर्थित हैं। तीसरे पैरामीटर के रूप में जाँचा जाने वाला ऑब्जेक्ट स्वयं परिवर्तनीय पैरामीटर सूची ... ([SWS_Os_00256]) के माध्यम से आता है।
रिटर्न मान के रूप में, फ़ंक्शन प्रकार ObjectAccessType लौटाता है: यदि ऑब्जेक्ट तक एप्लिकेशन की पहुँच की अनुमति है, तो ACCESS लौटाया जाता है, अन्यथा NO_ACCESS ([SWS_Os_00256])। सेवा हेडर Os.h के माध्यम से घोषित की गई है और इसकी सर्विस ID 0x05 ([SWS_Os_00256]) है।
समवर्तीता, त्रुटि प्रबंधन और परस्पर क्रिया
सेवा को पुनःप्रवेशी (reentrant) के रूप में निर्दिष्ट किया गया है और इसलिए इसे समवर्ती निष्पादन संदर्भों में कॉल किया जा सकता है ([SWS_Os_00256])। विनिर्देश में इस फ़ंक्शन के लिए विशिष्ट त्रुटि कोड, त्रुटि स्थितियों के लिए रिटर्न मान या DET या DEM को संदेश प्रदान नहीं किए गए हैं ([SWS_Os_00256])।
व्याख्या: परिवर्तनीय तर्क ... संभवतः कार्यान्वयन में ObjectType से मेल खाने वाले ऑब्जेक्ट का ठोस पहचानकर्ता पास करता है। प्रश्न Q-5cb52ff94bb07826 (खुला) जाँचे गए ऑपरेटिंग सिस्टम ऑब्जेक्ट ARTI डिबगिंग जानकारी में भी परिलक्षित होते हैं, जो ऑपरेटिंग सिस्टम ऑब्जेक्ट्स की विशेषताओं और स्थितियों को कैप्चर और मूल्यांकन करती है ([SWS_Os_00829])।
यह उपयोग नोट विनिर्देश R20-11 के आधार पर स्वचालित रूप से जनरेट किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन CheckObjectOwnership [SWS_Os_00017] 📄 PDF
ApplicationType CheckObjectOwnership (ObjectTypeType ObjectType, void ...);
This service determines to which OS - Application a given Task, ISR, Counter, Alarm or Schedule Table belongs
उपयोग
सिंक्रोनस सिस्टम फ़ंक्शन CheckObjectOwnership का उपयोग यह निर्धारित करने के लिए किया जाता है कि कोई विशिष्ट ऑपरेटिंग सिस्टम ऑब्जेक्ट किस OS-Application से संबंधित है [SWS_Os_00017]। इस सेवा के माध्यम से क्वेरी किए जाने वाले ऑब्जेक्ट्स में Tasks, Interrupt Service Routines (ISRs), Counters, Alarms और Schedule Tables शामिल हैं [SWS_Os_00017]।
फ़ंक्शन हेडर फ़ाइल Os.h के माध्यम से उपलब्ध है और इसकी सर्विस ID 0x06 है [SWS_Os_00017]। उपयोग किए जाने पर, फ़ंक्शन दो इनपुट पैरामीटर स्वीकार करता है:
ObjectType: प्रकारObjectTypeTypeके इनपुट पैरामीटर के रूप में बाद में पास किए जाने वाले ऑपरेटिंग सिस्टम ऑब्जेक्ट के प्रकार की पहचान करता है [SWS_Os_00017]।...: जांचे जाने वाले ठोस ऑब्जेक्ट को सेवा को पास करता है [SWS_Os_00017]।
रिटर्न मान के रूप में, फ़ंक्शन डेटा प्रकार ApplicationType प्रदान करता है [SWS_Os_00017]। इसमें उस OS-Application का पहचानकर्ता होता है जिससे जाँचा गया ऑब्जेक्ट संबद्ध है [SWS_Os_00017]।
त्रुटि प्रबंधन और निष्पादन विशेषताएँ
यदि अनुरोधित ऑब्जेक्ट सिस्टम में मौजूद नहीं है, तो सेवा रिटर्न मान INVALID_OSAPPLICATION लौटाती है [SWS_Os_00017]।
समवर्ती व्यवहार के संबंध में, CheckObjectOwnership को पुनःप्रवेशी (reentrant) के रूप में निर्दिष्ट किया गया है और यह पूरी तरह से सिंक्रोनस रूप से संचालित होता है [SWS_Os_00017]। रिटर्न मान के अलावा इनपुट और आउटपुट पैरामीटर (inout या out) मौजूद नहीं हैं [SWS_Os_00017]।
यह उपयोग नोट AUTOSAR Classic R20-11 के विनिर्देश SWS_Os_00017 पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन StartScheduleTableRel [SWS_Os_00347] 📄 PDF
StatusType StartScheduleTableRel (ScheduleTableType ScheduleTableID, TickType Offset);
This service starts the processing of a schedule table at "Offset" relative to the "Now" value on the underlying counter.
उपयोग और पैरामीटर
सिस्टम सेवा StartScheduleTableRel अंतर्निहित काउंटर के वर्तमान काउंटर मान (“Now”) के सापेक्ष एक Schedule तालिका का प्रसंस्करण प्रारंभ करती है [SWS_Os_00347]। कॉल को तुल्यकालिक रूप से निष्पादित किया जाता है और यह सर्विस-ID 0x07 के साथ इंटरफ़ेस Os.h के माध्यम से उपलब्ध है [SWS_Os_00347]।
ScheduleTableID(इनपुट,ScheduleTableType): प्रारंभ की जाने वाली Schedule तालिका का आइडेंटिफ़ायर [SWS_Os_00347]।Offset(इनपुट,TickType): तालिका का प्रसंस्करण शुरू होने से पहले काउंटर पर काउंटर टिक्स की सापेक्ष संख्या [SWS_Os_00347]।
रिटर्न मान और त्रुटि प्रबंधन
फ़ंक्शन प्रकार StatusType का एक स्थिति कोड लौटाता है [SWS_Os_00347]:
E_OK: Schedule तालिका त्रुटिरहित रूप से प्रारंभ की गई [SWS_Os_00347]।E_OS_STATE: निर्दिष्ट Schedule तालिका पहले ही प्रारंभ की जा चुकी है [SWS_Os_00347]।E_OS_ID(केवलEXTENDEDस्थिति में): निर्दिष्टScheduleTableIDअमान्य है [SWS_Os_00347]।E_OS_VALUE(केवलEXTENDEDस्थिति में): पैरामीटरOffsetमान0के बराबर है या मान(OsCounterMaxAllowedValue - InitialOffset)से अधिक है [SWS_Os_00347]।
समवर्तीता और प्रतिबंध
फ़ंक्शन को रीएंट्रेंट के रूप में निर्दिष्ट किया गया है [SWS_Os_00347]। कोई आउटपुट या इनपुट/आउटपुट पैरामीटर मौजूद नहीं हैं [SWS_Os_00347]।
यह उपयोग संबंधी निर्देश AUTOSAR CP R20-11 विनिर्देश पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन StartScheduleTableAbs [SWS_Os_00358] 📄 PDF
StatusType StartScheduleTableAbs (ScheduleTableType ScheduleTableID, TickType Start);
This service starts the processing o f a schedule table at an absolute value "Start" on the underlying counter.
तुल्यकालिक और रीएंट्रेंट फ़ंक्शन StartScheduleTableAbs अंतर्निहित काउंटर पर दिए गए निरपेक्ष काउंटर मान पर एक शेड्यूल तालिका (Schedule Table) को प्रारंभ करने का कार्य करता है ([SWS_Os_00358])। सेवा हेडर Os.h के माध्यम से उपलब्ध है और इसे सर्विस-ID 0x08 के माध्यम से पहचाना जाता है ([SWS_Os_00358])।
कॉल करने पर दो इनपुट पैरामीटर पास किए जाते हैं ([SWS_Os_00358]):
ScheduleTableID: प्रारंभ की जाने वाली Schedule Table का आइडेंटिफ़ायर।Start: निरपेक्ष काउंटर टिक मान जिस पर Schedule Table प्रारंभ की जाती है।
रिटर्न मान के रूप में, फ़ंक्शन प्रकार StatusType की स्थिति लौटाता है ([SWS_Os_00358]):
E_OK: प्रारंभ प्रक्रिया सफल रही।E_OS_STATE: निर्दिष्ट Schedule Table पहले ही प्रारंभ की जा चुकी थी।E_OS_ID: पास की गईScheduleTableIDअमान्य है (केवलEXTENDEDस्थिति में वापस की जाती है)।E_OS_VALUE:Startका मान अधिकतम अनुमेय काउंटर मानOsCounterMaxAllowedValueसे अधिक है (केवलEXTENDEDस्थिति में लौटाया जाता है)।
परस्पर क्रिया के संबंध में, Schedule Tables जैसे ऑपरेटिंग सिस्टम ऑब्जेक्ट्स की स्थिति और डायनेमिक विशेषताओं का मूल्यांकन और प्रदर्शन ARTI मॉड्यूल विवरणों के माध्यम से कनेक्टेड डिबग उपकरणों द्वारा किया जा सकता है ([SWS_Os_00829])। व्याख्या: कॉल संदर्भ में मुख्य रूप से टास्क स्तर शामिल होने चाहिए, क्योंकि विनिर्देश अंश में कोई स्पष्ट प्रतिबंध नहीं दिया गया है। प्रश्न Q-213de28d0345ccb1 (खुला)
यह पाठ एक AI द्वारा तैयार किया गया था और यह विशेष रूप से रिलीज़ R20-11 के विनिर्देशों पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन StopScheduleTable [SWS_Os_00006] 📄 PDF
StatusType StopScheduleTable (ScheduleTableType ScheduleTableID);
This service cancels the processing of a schedule table immediately at any point while the schedule table is running.
तुल्यकालिक सिस्टम फ़ंक्शन StopScheduleTable ([SWS_Os_00006]) निष्पादन के किसी भी समय एक चल रही Schedule तालिका के निष्पादन को तुरंत निरस्त कर देता है। यह सेवा हेडर Os.h में घोषित है और इसकी सर्विस-ID 0x09 ([SWS_Os_00006]) है। एकमात्र इनपुट पैरामीटर प्रकार ScheduleTableType का ScheduleTableID है, जो रोकी जाने वाली Schedule तालिका को निर्दिष्ट करता है; इनपुट/आउटपुट या केवल आउटपुट पैरामीटर मौजूद नहीं हैं ([SWS_Os_00006])।
तुल्यकालिक कॉल रिटर्न मान के रूप में प्रकार StatusType का एक स्टेटस कोड प्रदान करती है ([SWS_Os_00006]):
E_OK: Schedule तालिका का निष्पादन त्रुटिरहित रूप से रोक दिया गया ([SWS_Os_00006])।E_OS_NOFUNC: निर्दिष्ट Schedule तालिका पहले से ही रोकी गई (stopped) स्थिति में थी ([SWS_Os_00006])।E_OS_ID: पास किया गया आइडेंटिफ़ायरScheduleTableIDअमान्य है। विनिर्देश के अनुसार यह रिटर्न मान केवलEXTENDEDस्थिति में उत्पन्न होता है ([SWS_Os_00006])।
फ़ंक्शन को रीएंट्रेंट (reentrant) के रूप में परिभाषित किया गया है ([SWS_Os_00006])। व्याख्या: घोषित रीएंट्रेंसी को देखते हुए, कई OS संदर्भों से तुल्यकालिक कॉल की अनुमति होनी चाहिए, यद्यपि वर्तमान विनिर्देश अंश में ठोस संदर्भ प्रतिबंध अनुपस्थित हैं। प्रश्न Q-9cb147c4bc7dba7e (खुला) रनटाइम मॉनिटरिंग के लिए, Schedule तालिकाओं जैसे OS ऑब्जेक्ट की स्थिति और डायनेमिक विशेषताओं को ARTI विवरण फ़ाइलों के माध्यम से कनेक्टेड डिबग और विश्लेषण उपकरणों को प्रेषित किया जा सकता है ([SWS_Os_00829])।
नोट: यह स्पष्टीकरण AUTOSAR Classic Release R20-11 के विनिर्देश के आधार पर स्वचालित रूप से तैयार किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन NextScheduleTable [SWS_Os_00191] 📄 PDF
StatusType NextScheduleTable (ScheduleTableType ScheduleTableID_From, ScheduleTableType ScheduleTableID_To);
This service switches the processing from one schedule table to another schedule table.
फ़ंक्शन NextScheduleTable निष्पादन को एक चल रही Schedule तालिका से बाद की तालिका में तुल्यकालिक रूप से स्विच करने का कार्य करता है [SWS_Os_00191]। सेवा को रीएंट्रेंट डिज़ाइन किया गया है और हेडर Os.h के माध्यम से घोषित किया गया है [SWS_Os_00191]।
पैरामीटर और कॉल
कॉल में प्रकार ScheduleTableType के दो इनपुट पैरामीटर पास किए जाते हैं [SWS_Os_00191]:
ScheduleTableID_From: वर्तमान में संसाधित हो रही Schedule तालिका का आइडेंटिफ़ायर [SWS_Os_00191]।ScheduleTableID_To: Schedule तालिका का आइडेंटिफ़ायर, जो समाप्ति बिंदुओं (Expiry Points) का आगामी अनुक्रम प्रदान करता है [SWS_Os_00191]।
रिटर्न मान और त्रुटि प्रबंधन
फ़ंक्शन प्रकार StatusType का एक स्टेटस मान लौटाता है [SWS_Os_00191]:
E_OK: स्विच अनुरोध त्रुटिरहित रूप से जारी किया गया था [SWS_Os_00191]।E_OS_ID: केवल कॉन्फ़िगर की गईEXTENDEDस्थिति में लौटाया जाता है, यदि पास किए गए तालिका पहचानकर्ताओं में से कम से कम एक अमान्य है [SWS_Os_00191]।E_OS_NOFUNC: स्रोत तालिकाScheduleTableID_Fromप्रारंभ की गई स्थिति में नहीं है [SWS_Os_00191]।E_OS_STATE: लक्ष्य तालिकाScheduleTableID_Toपहले से ही सक्रिय रूप से प्रारंभ हो चुकी है या बाद की तालिका के रूप में पहले से ही चिह्नित है [SWS_Os_00191]।
इंटरैक्शन और डायग्नोस्टिक्स
ऑपरेटिंग सिस्टम के अवलोकन और विश्लेषण के लिए, ARTI मॉड्यूल विवरण संबंधित ORTI कंटेनरों का समर्थन करते हैं, जिससे डिबग उपकरण अन्य बातों के अलावा ऑपरेटिंग सिस्टम ऑब्जेक्ट्स की डायनेमिक स्थितियों का मूल्यांकन और प्रदर्शन कर सकते हैं [SWS_Os_00829]।
यह पाठ स्वचालित रूप से तैयार किया गया था। सभी विवरण विशेष रूप से AUTOSAR रिलीज़ R20-11 के विनिर्देशों पर आधारित हैं।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन StartScheduleTableSynchron [SWS_Os_00201] 📄 PDF
StatusType StartScheduleTableSynchron (ScheduleTableType ScheduleTableID);
This service starts an explicitly synchronized schedule table synchronously.
उपयोग
सिस्टम सेवा StartScheduleTableSynchron एक स्पष्ट रूप से सिंक्रोनाइज़ की गई Schedule तालिका को तुल्यकालिक रूप से प्रारंभ करने के लिए कार्य करती है [SWS_Os_00201]। फ़ंक्शन हेडर फ़ाइल Os.h में घोषित है और इसकी सर्विस-ID 0x0b है [SWS_Os_00201]। एकमात्र ट्रांसफ़र पैरामीटर के रूप में, फ़ंक्शन प्रकार ScheduleTableType के इनपुट पैरामीटर ScheduleTableID की अपेक्षा करता है, जो प्रारंभ की जाने वाली तालिका को विशिष्ट रूप से संदर्भित करता है [SWS_Os_00201]। इनपुट-आउटपुट या केवल आउटपुट पैरामीटर मौजूद नहीं हैं [SWS_Os_00201]। प्रसंस्करण तुल्यकालिक रूप से होता है और प्रकार StatusType का एक रिटर्न मान लौटाता है [SWS_Os_00201]।
त्रुटि प्रबंधन
त्रुटिरहित निष्पादन में, फ़ंक्शन कॉल स्टेटस कोड E_OK लौटाता है [SWS_Os_00201]। त्रुटियों के मामले में, निम्नलिखित रिटर्न मान निर्दिष्ट हैं:
E_OS_STATE: निर्दिष्ट Schedule तालिका पहले से ही प्रारंभ की गई स्थिति में है और इसे फिर से तुल्यकालिक रूप से प्रारंभ नहीं किया जा सकता है [SWS_Os_00201]।E_OS_ID: पास किया गयाScheduleTableIDअमान्य है [SWS_Os_00201]। यह त्रुटि जाँच और त्रुटि संदेश विशेष रूप से EXTENDED स्थिति में सक्रिय है [SWS_Os_00201]।
समवर्तीता और प्रतिबंध
फ़ंक्शन को रीएंट्रेंट के रूप में निर्दिष्ट किया गया है [SWS_Os_00201]। चूंकि पहले से सक्रिय तालिका के लिए बार-बार कॉल को E_OS_STATE के साथ अस्वीकार कर दिया जाता है, कॉलर को यह सुनिश्चित करना होगा कि कॉल से पहले लक्ष्य तालिका पहले से चल नहीं रही हो [SWS_Os_00201]।
इंटरैक्शन
ऑपरेटिंग सिस्टम ऑब्जेक्ट्स के स्थिति संक्रमण और डायनेमिक गुणों को परीक्षण और डायग्नोसिस उपकरणों के लिए ARTI मॉड्यूल विवरण फ़ाइलों और ORTI कंटेनरों के माध्यम से ट्रैक किया जा सकता है [SWS_Os_00829]। बाहरी डिबगर्स रनटाइम पर OS ऑब्जेक्ट्स की आंतरिक स्थिति का मूल्यांकन करने के लिए इन विवरणों का उपयोग करते हैं [SWS_Os_00829]।
यह पाठ AUTOSAR R20-11 विनिर्देश के आधार पर एक AI द्वारा जनरेट किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन SyncScheduleTable [SWS_Os_00199] 📄 PDF
StatusType SyncScheduleTable (ScheduleTableType ScheduleTableID, TickType Value);
Service SyncScheduleTable.
तुल्यकालिक और रीएंट्रेंट ऑपरेटिंग सिस्टम सेवा SyncScheduleTable एक Schedule तालिका को एक काउंटर मान पास करने और सिंक्रोनाइज़ेशन प्रक्रिया शुरू करने का कार्य करती है ([SWS_Os_00199])। फ़ंक्शन हेडर फ़ाइल Os.h के माध्यम से प्रदान किया जाता है ([SWS_Os_00199])।
पैरामीटर और रिटर्न मान
फ़ंक्शन दो इनपुट पैरामीटर की अपेक्षा करता है ([SWS_Os_00199]):
Schedule Table ID: सिंक्रोनाइज़ की जाने वाली Schedule तालिका का आइडेंटिफ़ायर, प्रकारScheduleTableTypeका ([SWS_Os_00199])।Value: सिंक्रोनाइज़ेशन काउंटर की वर्तमान काउंटर रीडिंग, प्रकारTickTypeकी ([SWS_Os_00199])।
प्रकार StatusType का रिटर्न मान E_OK के साथ त्रुटिरहित निष्पादन का संकेत देता है ([SWS_Os_00199])।
त्रुटि प्रबंधन और सीमा शर्तें
यदि तालिका कॉल के समय SCHEDULETABLE_STOPPED स्थिति में है, तो त्रुटि E_OS_STATE लौटाई जाती है ([SWS_Os_00199])। यदि ऑपरेटिंग सिस्टम EXTENDED स्थिति में कॉन्फ़िगर किया गया है, तो अतिरिक्त जाँच लागू होती हैं ([SWS_Os_00199]):
E_OS_ID: निर्दिष्ट तालिका ID अमान्य है या तालिका को सिंक्रोनाइज़ नहीं किया जा सकता क्योंकिOs Schedule Tbl Sync Strategyअकॉन्फ़िगर है याIMPLICITपर सेट है ([SWS_Os_00199])।E_OS_VALUE: पास किया गया काउंटर मानValueअनुमेय सीमा से बाहर है ([SWS_Os_00199])।
इंटरैक्शन और डायग्नोस्टिक्स
Schedule तालिकाओं जैसे ऑपरेटिंग सिस्टम ऑब्जेक्ट्स की स्थितियों और डायनेमिक विशेषताओं का ARTI मॉड्यूल विवरणों और ORTI कंटेनरों के माध्यम से कनेक्टेड डिबग और डायग्नोसिस उपकरणों द्वारा मूल्यांकन किया जा सकता है ([SWS_Os_00829])।
यह पाठ AUTOSAR R20-11 पर आधारित एक AI द्वारा जनरेट किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन SetScheduletableAsync [SWS_Os_00422] 📄 PDF
StatusType SetScheduletableAsync (ScheduleTableType ScheduleTableID);
This service stops synchronization of a schedule table.
फ़ंक्शन GetScheduleTableStatusof [SWS_Os_00227] 📄 PDF
StatusType GetScheduleTableStatus (ScheduleTableType ScheduleTableID, ScheduleTableStatusRefType ScheduleStatus);
This service queries the state of a schedule table (also with respect to synchronization).
फ़ंक्शन IncrementCounter [SWS_Os_00399] 📄 PDF
StatusType IncrementCounter (CounterType CounterID);
This service increments a software counter.
उपयोग
सिंक्रोनस ऑपरेटिंग सिस्टम फ़ंक्शन IncrementCounter एक सॉफ़्टवेयर काउंटर को स्पष्ट रूप से आगे बढ़ाने का काम करता है [SWS_Os_00399]। यह प्रकार CounterType के पहचानकर्ता CounterID को एक इनपुट पैरामीटर के रूप में अपेक्षित करता है, किसी अन्य पैरामीटर को संशोधित नहीं करता है और हेडर Os.h के माध्यम से उपलब्ध है [SWS_Os_00399]। यह ध्यान दिया जाना चाहिए कि कॉल ऑपरेटिंग सिस्टम के तत्काल पुनर्निर्धारण (rescheduling) का कारण बन सकता है [SWS_Os_00399]।
त्रुटि प्रबंधन
प्रकार StatusType का रिटर्न मान ऑपरेशन की सफलता के बारे में जानकारी प्रदान करता है: नियमित संचालन के मामले में, E_OK त्रुटि-मुक्त निष्पादन की रिपोर्ट करता है [SWS_Os_00399]। सक्रिय विस्तारित स्थिति जाँच (EXTENDED स्थिति) के साथ, यदि कोई अमान्य काउंटर ID निर्दिष्ट की गई थी या यदि संदर्भित काउंटर हार्डवेयर में कार्यान्वित है और इसलिए सॉफ़्टवेयर द्वारा इनक्रीमेंट नहीं किया जा सकता है, तो सेवा E_OS_ID लौटाती है [SWS_Os_00399]।
समवर्तीता और निदान
फ़ंक्शन को पुनःप्रवेशी (reentrant) डिज़ाइन किया गया है और इस प्रकार इसे समवर्ती रूप से कॉल किया जा सकता है [SWS_Os_00399]। एक संभावित पुनर्निर्धारण (rescheduling) व्याख्या: तब हो सकता है जब काउंटर को आगे बढ़ाना अलार्म की समाप्ति या Task सक्रियण जैसी आश्रित कार्रवाइयों को ट्रिगर करता है। प्रश्न Q-9004b5ced9b96230 (खुला) काउंटरों और उनकी गतिशील स्थिति जैसे ऑपरेटिंग सिस्टम ऑब्जेक्ट्स के अवलोकन के लिए, ARTI मॉड्यूल विवरण रनटाइम मॉनिटरिंग में कनेक्टेड विश्लेषण टूल्स का समर्थन करते हैं [SWS_Os_00829]।
यह उपयोग नोट स्वचालित रूप से उत्पन्न हुआ था और AUTOSAR रिलीज़ R20-11 के विनिर्देशों पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन GetCounterValue [SWS_Os_00383] 📄 PDF
StatusType GetCounterValue (CounterType CounterID, TickRefType Value);
This service reads the current count value of a counte r (returning either the hardware timer ticks if counter is driven by hardware or the software ticks when user drives counter).
फ़ंक्शन GetElapsedValue [SWS_Os_00392] 📄 PDF
StatusType GetElapsedValue (CounterType CounterID, TickRefType Value, TickRefType ElapsedValue);
This service gets the number of ticks between the current tick value and a previously read tick value.
फ़ंक्शन TerminateApplication [SWS_Os_00258] 📄 PDF
StatusType TerminateApplication (ApplicationType Application, RestartType RestartOption);
Service TerminateApplication.
तुल्यकालिक और रीएंट्रेंट फ़ंक्शन TerminateApplication एक OS-Application को समाप्त करने के लिए कार्य करता है और हेडर फ़ाइल Os.h के माध्यम से उपलब्ध है [SWS_Os_00258]। किसी टास्क, श्रेणी-2 ISR और एप्लिकेशन-विशिष्ट एरर हुक के संदर्भ से कॉल की अनुमति है [SWS_Os_00258]।
इनपुट पैरामीटर के रूप में, लक्ष्य एप्लिकेशन का आइडेंटिफ़ायर (Application) और पुनरारंभ व्यवहार (Restart Option) पास किए जाते हैं [SWS_Os_00258]:
- यदि कॉलर स्वयं
Applicationमें निर्दिष्ट एप्लिकेशन से संबंधित है, तो निष्पादन स्वयं की समाप्ति (self-termination) की ओर ले जाता है [SWS_Os_00258]। Restart Optionके माध्यम से यह निर्धारित किया जाता है कि क्या OS-Application को बाद में पुनः प्रारंभ किया जाना चाहिए (RESTART) या नहीं (NO_RESTART) [SWS_Os_00258]।
फ़ंक्शन प्रकार StatusType का एक स्टेटस मान लौटाता है [SWS_Os_00258]:
E_OKत्रुटिरहित समाप्ति का संकेत देता है [SWS_Os_00258]।E_OS_STATEइंगित करता है किApplicationकी वर्तमान स्थिति समाप्त करने की अनुमति नहीं देती है [SWS_Os_00258]।- EXTENDED स्थिति में अतिरिक्त त्रुटि जाँचें की जाती हैं: एक अमान्य एप्लिकेशन ID के मामले में
E_OS_ID,Restart Optionके लिए एक अमान्य पैरामीटर मान परE_OS_VALUE, और यदि कॉलर के पासApplicationको समाप्त करने की अनुमति नहीं है तोE_OS_ACCESS[SWS_Os_00258]।
यह उपयोग संबंधी नोट विनिर्देश SWS_Os_00258 के आधार पर स्वचालित रूप से तैयार किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन AllowAccess [SWS_Os_00501] 📄 PDF
StatusType AllowAccess (void);
This service sets the own state of an OS - Application from AP PLICATION_ RESTARTING to APPLICATION_ ACCESSIBLE.
उपयोग
सिंक्रोनस सिस्टम सेवा AllowAccess (सर्विस ID 0x13) का उपयोग अपनी स्वयं की OS-Application की स्थिति को APPLICATION_RESTARTING से APPLICATION_ACCESSIBLE पर सेट करने के लिए किया जाता है ([SWS_Os_00501])। फ़ंक्शन हेडर फ़ाइल Os.h के माध्यम से उपलब्ध है, किसी इनपुट पैरामीटर की अपेक्षा नहीं करता है और प्रकार StatusType का एक स्थिति मान लौटाता है ([SWS_Os_00501])। स्थिति परिवर्तन के सफल निष्पादन पर, कॉल रिटर्न मान E_OK लौटाता है ([SWS_Os_00501])।
त्रुटि हैंडलिंग और समवर्तीता
यदि कॉल करने वाली OS-Application स्थिति APPLICATION_RESTARTING में नहीं है, तो निष्पादन विफल हो जाता है और फ़ंक्शन त्रुटि मान E_OS_STATE लौटाता है ([SWS_Os_00501])। इस सेवा के लिए विनिर्देश में विशिष्ट DET या DEM संदेश परिभाषित नहीं हैं। समवर्ती व्यवहार के संबंध में, फ़ंक्शन को पुनःप्रवेशी (reentrant) के रूप में वर्गीकृत किया गया है और इसलिए इसे समानांतर प्रक्रियाओं में सुरक्षित रूप से निष्पादित किया जा सकता है ([SWS_Os_00501])।
इंटरैक्शन और डायग्नोस्टिक्स
व्याख्या: कॉल आम तौर पर एप्लिकेशन के स्वयं के पुनरारंभ चरण के अंत में होना चाहिए, जैसे ही सभी तैयारियाँ पूरी हो जाती हैं और अन्य अनुप्रयोगों को फिर से संसाधनों तक पहुँचने की अनुमति दी जाती है। प्रश्न Q-f43a3f702d5d2428 (खुला) ऑपरेटिंग सिस्टम और संबंधित OS ऑब्जेक्ट्स की गतिशील स्थितियों का मूल्यांकन और विज़ुअलाइज़ेशन मानकीकृत ARTI विवरण फ़ाइलों और संबंधित डिबग टूल के माध्यम से सिस्टम डायग्नोस्टिक्स के हिस्से के रूप में किया जा सकता है ([SWS_Os_00829])।
यह पाठ AI द्वारा बनाया गया था और विनिर्देश स्थिति R20-11 पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन GetApplicationState [SWS_Os_00499] 📄 PDF
StatusType GetApplicationState (ApplicationType Application, ApplicationStateRefType Value);
This service returns the current state of an OS - Application.
फ़ंक्शन GetNumberActivatedCores [SWS_Os_00672] 📄 PDF
uint32 GetNumberOfActivatedCores (void);
The function returns the number of cores activated by the Start Core function. This function might be a macro. AUTOSAR CP R20 - o f Document ID : AUTOSAR_SWS_OS
फ़ंक्शन GetCore [SWS_Os_00674] 📄 PDF
CoreIdType GetCoreID (void);
The function returns a unique core identifier.
फ़ंक्शन StartCore [SWS_Os_00676] 📄 PDF
void StartCore (CoreIdType CoreID, StatusType* Status);
It is not supported to call this function after Start OS(). The function starts the core specified by the parameter Core ID. The OUT parameter allows the caller to check whether the operation was successful or no t. If a core is started by means of this function Start OS shall be called on the core.
तुल्यकालिक फ़ंक्शन StartCore पैरामीटर Core ID के माध्यम से निर्दिष्ट प्रोसेसर कोर को प्रारंभ करता है [SWS_Os_00676]। फ़ंक्शन का कोई प्रत्यक्ष रिटर्न मान नहीं होता है, बल्कि यह निष्पादन का परिणाम OUT पैरामीटर Status के माध्यम से कॉलर को पास करता है [SWS_Os_00676]। यदि इस फ़ंक्शन का उपयोग करके कोई कोर प्रारंभ किया गया है, तो संबंधित कोर पर बाद में Start OS को कॉल किया जाना चाहिए [SWS_Os_00676]।
कॉल संदर्भ और समवर्तीता के लिए निश्चित प्रतिबंध लागू होते हैं: StartCore को गैर-रीएंट्रेंट (Non Reentrant) के रूप में निर्दिष्ट किया गया है [SWS_Os_00676]। Start OS() के माध्यम से ऑपरेटिंग सिस्टम प्रारंभ करने के बाद कॉल समर्थित नहीं है [SWS_Os_00676]। सेवा तुल्यकालिक रूप से कार्यान्वित की गई है और सर्विस-ID 0x17 के साथ हेडर फ़ाइल Os.h के माध्यम से प्रदान की जाती है [SWS_Os_00676]।
त्रुटि प्रबंधन पैरामीटर Status के माध्यम से होता है, जो स्थिति कॉन्फ़िगरेशन के आधार पर निम्नलिखित मान ले सकता है [SWS_Os_00676]:
- मानक स्थिति में,
E_OKत्रुटिरहित निष्पादन को इंगित करता है [SWS_Os_00676]। - विस्तारित स्थिति (extended status) में,
E_OKएक सफल प्रारंभ की भी पुष्टि करता है [SWS_Os_00676]। E_OS_IDरिपोर्ट करता है कि पास किया गयाCore IDअमान्य है [SWS_Os_00676]।E_OS_ACCESSऑपरेटिंग सिस्टम के प्रारंभ होने के बाद एक अमान्य कॉल का संकेत देता है [SWS_Os_00676]।E_OS_STATEइंगित करता है कि अनुरोधित प्रोसेसर कोर पहले से ही सक्रिय है [SWS_Os_00676]।
यह उपयोग संबंधी नोट एक AI द्वारा तैयार किया गया था और यह विशेष रूप से रिलीज़ R20-11 से AUTOSAR Classic ऑपरेटिंग सिस्टम के विनिर्देश पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन StartNonCore [SWS_Os_00682] 📄 PDF
void StartNonAutosarCore (CoreIdType CoreID, StatusType* Status);
The function start s the core specified by the parameter Core ID. It is allowed to call this function after Start OS(). The OUT parameter allows the caller to check whether the operation was successful or not. It is not allowed to call Start OS on cores activated by Start No n Autosar Core. Otherwise the behaviour is unspecified.
उपयोग और कॉल संदर्भ
सिंक्रोनस और गैर-पुनःप्रवेशी (non-reentrant) फ़ंक्शन StartNonCore पैरामीटर CoreID के माध्यम से निर्दिष्ट प्रोसेसर कोर को प्रारंभ करता है [SWS_Os_00682]। इसे StartOS() के माध्यम से ऑपरेटिंग सिस्टम के स्टार्टअप के बाद कॉल किया जा सकता है और यह हेडर फ़ाइल Os.h के माध्यम से उपलब्ध है [SWS_Os_00682]। आउटपुट पैरामीटर Status के माध्यम से, कॉलर यह जांच सकता है कि स्टार्टअप प्रक्रिया सफल रही या नहीं [SWS_Os_00682]।
त्रुटि प्रबंधन और स्थिति मान
फ़ंक्शन का कोई सीधा रिटर्न मान नहीं है, लेकिन पॉइंटर पैरामीटर Status के माध्यम से निष्पादन के परिणाम की रिपोर्ट करता है [SWS_Os_00682]:
E_OK: ऑपरेशन सफलतापूर्वक और बिना किसी त्रुटि के निष्पादित किया गया था [SWS_Os_00682]।E_OS_ID: निर्दिष्टCoreIDअमान्य है (मानक स्थिति में) [SWS_Os_00682]।E_OS_STATE: निर्दिष्ट प्रोसेसर कोर पहले से ही सक्रिय है (मानक स्थिति में) [SWS_Os_00682]।
प्रतिबंध और अनुक्रम की शर्तें
एक गैर-पुनःप्रवेशी (non-reentrant) इंटरफ़ेस के रूप में, StartNonCore को समवर्ती रूप से निष्पादित नहीं किया जाना चाहिए [SWS_Os_00682]। इसके अलावा, एक सख्त आवश्यकता है कि इस फ़ंक्शन के माध्यम से सक्रिय किए गए प्रोसेसर कोर पर किसी भी स्थिति में StartOS कॉल नहीं किया जाना चाहिए; अन्यथा सिस्टम व्यवहार अनिर्दिष्ट (unspecified) है [SWS_Os_00682]।
यह उपयोग नोट AUTOSAR Classic R20-11 के विनिर्देश के आधार पर स्वचालित रूप से जनरेट किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन GetSpinlock [SWS_Os_00686] 📄 PDF
StatusType GetSpinlock (SpinlockIdType SpinlockId);
Get Spinlock tries to occupy a spin - lock variable. If the function returns, either the lock is successfully taken or an error has occurred. The spinlock mechanism is an active polling mechanism. The function does not cause a de - scheduling.
सिंक्रोनस और रीएंट्रेंट ऑपरेटिंग सिस्टम फ़ंक्शन GetSpinlock ([SWS_Os_00686]) पासिंग पैरामीटर SpinlockId (प्रकार SpinlockIdType) के माध्यम से एक Spinlock वेरिएबल को अधिग्रहित करने का कार्य करता है। निष्पादन के दौरान, फ़ंक्शन एक सक्रिय पोलिंग तंत्र ("busy waiting") का उपयोग करता है, जिसमें कॉल करने वाले Task का डी-शेड्यूलिंग ट्रिगर नहीं होता है ([SWS_Os_00686])।
फ़ंक्शन केवल तभी लौटता है जब लॉक सफलतापूर्वक अधिग्रहित कर लिया गया हो या कोई त्रुटि उत्पन्न हुई हो। रिटर्न मान के रूप में GetSpinlock, StatusType ([SWS_Os_00686]) प्रदान करता है:
E_OK: लॉक त्रुटिरहित अधिग्रहित किया गया था (Standard और Extended स्थिति में)।E_OS_ID: पास किया गयाSpinlockIdअमान्य है (केवल Extended स्थिति में)।E_OS_INTERFERENCE_DEADLOCK: एक Task Spinlock को अधिग्रहित करने का प्रयास करता है, जबकि यह उसी Core पर किसी Task द्वारा पहले से ही अधिग्रहित है (केवल Extended स्थिति में)।E_OS_NESTING_DEADLOCK: एक Task Spinlock का अनुरोध करने का प्रयास करता है, जबकि उसी Core का एक Task पहले से ही दूसरा Spinlock रखता है, जिससे Deadlock हो सकता है (केवल Extended स्थिति में)।E_OS_ACCESS: निर्दिष्ट Spinlock तक पहुँचा नहीं जा सकता (केवल Extended स्थिति में)।
सिस्टम निगरानी और त्रुटि विश्लेषण के संदर्भ में, ऑपरेटिंग सिस्टम OS ऑब्जेक्ट्स के बारे में गतिशील स्थिति जानकारी प्रदान करता है, जिसे [SWS_Os_00829] के अनुसार डीबग टूल्स के लिए ARTI और ORTI कंटेनरों के माध्यम से मूल्यांकित किया जा सकता है; संभवतः इसके माध्यम से Spinlocks पर रुकावट की स्थितियों को भी समझा जा सकता है। प्रश्न Q-bac194d4132f6e88 (खुला)
यह पाठ AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन ReleaseSpinlock [SWS_Os_00695] 📄 PDF
StatusType ReleaseSpinlock (SpinlockIdType SpinlockId);
Release Spinlock releases a spinlock variable that was occupied before. Before terminating a TASK all spinlock variables that have been occupied with Get Spinlock() shall be released. Before calling Wait EVENT all Spinlocks shall be released.
सिंक्रोनस और रीएंट्रेंट फ़ंक्शन ReleaseSpinlock पहले से अधिग्रहित Spinlock वेरिएबल को मुक्त करता है ([SWS_Os_00695])। प्रकार SpinlockIdType के पासिंग पैरामीटर SpinlockId के माध्यम से मुक्त किए जाने वाले Spinlock इंस्टेंस को निर्दिष्ट किया जाता है ([SWS_Os_00695])।
क्रम की शर्तें और सीमाएं
कॉल के लिए सख्त समय और संरचनात्मक आवश्यकताएँ लागू होती हैं ([SWS_Os_00695]):
- किसी Task को समाप्त करने से पहले,
GetSpinlock()के माध्यम से पहले अधिग्रहित किए गए सभी Spinlock वेरिएबल्स को पुनः मुक्त किया जाना चाहिए ([SWS_Os_00695])। WaitEventको कॉल करने से पहले, बिना किसी अपवाद के सभी धारित Spinlocks को मुक्त किया जाना चाहिए ([SWS_Os_00695])।- मुक्ति सही नेस्टिंग क्रम में होनी चाहिए; अभी भी अधिग्रहित उच्च-स्तरीय Spinlocks या संसाधनों के मामले में मुक्ति का प्रयास विफल हो जाता है ([SWS_Os_00695])।
रिटर्न मान और त्रुटि प्रबंधन
सफलता की स्थिति में, सर्विस स्टैंडर्ड और एक्सटेंडेड दोनों स्थितियों में E_OK लौटाती है ([SWS_Os_00695])। एक्सटेंडेड स्थिति (Extended Status) में विशिष्ट त्रुटि कोड परिभाषित होते हैं ([SWS_Os_00695]):
E_OS_ID: पास किया गयाSpinlockIdअमान्य है ([SWS_Os_00695])।E_OS_STATE: Spinlock कॉल करने वाले Task द्वारा अधिग्रहित नहीं है ([SWS_Os_00695])।E_OS_ACCESS: Spinlock तक पहुँचा नहीं जा सकता ([SWS_Os_00695])।E_OS_NOFUNC: Spinlock को मुक्त करने का प्रयास, जबकि पहले किसी अन्य Spinlock या संसाधन को मुक्त किया जाना शेष है ([SWS_Os_00695])।
फ़ंक्शन हेडर Os.h के माध्यम से उपलब्ध है ([SWS_Os_00695])। ARTI विवरण फ़ाइलें ऑपरेटिंग सिस्टम ऑब्जेक्ट्स के गतिशील स्थिति और प्रदर्शन मूल्यांकन के लिए ORTI कंटेनरों का समर्थन करती हैं ([SWS_Os_00829])।
यह पाठ एक AI द्वारा तैयार किया गया था और autodocs द्वारा क्यूरेट किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन TryToGetSpinlock [SWS_Os_00703] 📄 PDF
StatusType TryToGetSpinlock (SpinlockIdType SpinlockId, TryToGetSpinlockType* Success);
Try To Get Spinlock has the same functionality as Get Spinlock with the difference that if the spinlock is already occupied by a TASK on a d ifferent core the function sets the OUT parameter "Success" and returns with E_ OK.
सिंक्रोनस और रीएंट्रेंट ऑपरेटिंग सिस्टम फ़ंक्शन TryToGetSpinlock हेडर Os.h के माध्यम से Spinlock इंस्टेंस को गैर-अवरोधक रूप से अधिग्रहित करने का कार्य करता है [SWS_Os_00703]। यह GetSpinlock के समान मूलभूत कार्यक्षमता का निर्वहन करता है, लेकिन यदि अनुरोधित Spinlock किसी अन्य Core पर TASK द्वारा पहले से ही अधिग्रहित है, तो यह सक्रिय रूप से प्रतीक्षा नहीं करता है [SWS_Os_00703]।
पैरामीटर और रिटर्न मान
SpinlockId(इनपुट): उस विशिष्ट Spinlock इंस्टेंस को संदर्भित करता है जिसे लॉक किया जाना है [SWS_Os_00703]।Success(आउटपुट): प्रकारTryToGetSpinlockType*के माध्यम से इंगित करता है कि लॉक अधिग्रहित किया जा सका या नहीं [SWS_Os_00703]। यदि लॉक किसी अन्य Core पर व्यस्त है, तो फ़ंक्शन इस पैरामीटर को तदनुसार सेट करता है औरE_OKके साथ वापस लौटता है [SWS_Os_00703]।- रिटर्न मान: स्टैंडर्ड और Extended स्थिति में
E_OKलौटाता है, यदि कोई त्रुटि मौजूद नहीं है [SWS_Os_00703]।
त्रुटि प्रबंधन और सीमा शर्तें
Extended स्थिति में, ऑपरेटिंग सिस्टम अमान्य कॉल्स के साथ-साथ Deadlock परिदृश्यों की जाँच करता है [SWS_Os_00703]:
E_OS_ID: पास की गईSpinlockIdअमान्य है [SWS_Os_00703]।E_OS_ACCESS: Spinlock तक पहुँचा नहीं जा सकता [SWS_Os_00703]।E_OS_INTERFERENCE_DEADLOCK: एक TASK लॉक को अधिग्रहित करने का प्रयास करता है, जबकि वही लॉक उसी Core पर किसी TASK द्वारा पहले से ही धारित है [SWS_Os_00703]।E_OS_NESTING_DEADLOCK: एक TASK एक Spinlock को अधिग्रहित करने का प्रयास करता है, जबकि वह पहले से ही दूसरा Spinlock रखता है, जिससे Deadlock हो सकता है [SWS_Os_00703]।
यह उपयोग नोट AUTOSAR R20-11 विनिर्देश के आधार पर एक AI सिस्टम द्वारा स्वचालित रूप से जनरेट किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन ShutdownAllCores [SWS_Os_00713] 📄 PDF
void ShutdownAllCores (StatusType Error);
After this service the OS on all AUTOSAR cores is shut down. Allowed at TASK level and ISR level and also internally by the OS. The function will never return. The function will force other cores into a shutdown.
सर्विस ID 0x1c वाला सिंक्रोनस सिस्टम फ़ंक्शन ShutdownAllCores सभी मौजूदा प्रोसेसर कोर में AUTOSAR ऑपरेटिंग सिस्टम के नियंत्रित और पूर्ण शटडाउन का काम करता है ([SWS_Os_00713])। जैसे ही सेवा को कॉल किया जाता है, फ़ंक्शन अन्य सभी कोर पर शटडाउन को बाध्य करता है, जिससे ऑपरेटिंग सिस्टम सभी AUTOSAR कोर पर शट डाउन हो जाता है ([SWS_Os_00713])।
कॉल संदर्भ और समवर्तीता
फ़ंक्शन हेडर Os.h में घोषित किया गया है और पुनःप्रवेशी (reentrant) के रूप में निर्दिष्ट है ([SWS_Os_00713])। ShutdownAllCores का कॉल Task स्तर (TASK level) और इंटरप्ट स्तर (ISR level) दोनों पर बिना किसी प्रतिबंध के अनुमत है ([SWS_Os_00713])। इसके अलावा, सेवा को AUTOSAR OS द्वारा आंतरिक रूप से ऑपरेटिंग सिस्टम के भीतर सीधे भी निष्पादित किया जा सकता है ([SWS_Os_00713])।
पैरामीटर और नियंत्रण प्रवाह
इंटरफ़ेस एकमात्र इनपुट पैरामीटर के रूप में प्रकार StatusType के Error की अपेक्षा करता है ([SWS_Os_00713])। इस पैरामीटर के लिए, AUTOSAR ऑपरेटिंग सिस्टम द्वारा समर्थित एक मान्य त्रुटि कोड पास किया जाना अनिवार्य है ([SWS_Os_00713])। कोई आउटपुट या इनपुट/आउटपुट पैरामीटर मौजूद नहीं हैं ([SWS_Os_00713])। चूंकि सिस्टम-व्यापी शटडाउन को ट्रिगर करने के बाद फ़ंक्शन कभी भी कॉलर के पास वापस नहीं लौटता है, इसलिए इसका कोई रिटर्न मान नहीं होता है (void) ([SWS_Os_00713])।
यह उपयोग संबंधी निर्देश AUTOSAR R20-11 के विनिर्देश के आधार पर स्वचालित रूप से जनरेट किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन ControlIdle [SWS_Os_00769] 📄 PDF
StatusType ControlIdle (CoreIdType CoreID, IdleModeType IdleMode);
This API allows the caller to select the idle mode action which is performed during idle time of t he OS (e.g. if no Task/ ISR is active). It can be used to implement energy savings. The real idle modes are hardware dependent and not standardized. The default idle mode on each core is IDLE_ NO_ HALT.
सिंक्रोनस फ़ंक्शन ControlIdle कॉलर को उस क्रिया को परिभाषित करने में सक्षम बनाता है जो ऑपरेटिंग सिस्टम के निष्क्रिय समय के दौरान निष्पादित की जाती है (जब न तो कोई Task और न ही कोई ISR सक्रिय हो) [SWS_Os_00769]। यह मुख्य रूप से ऊर्जा बचत उपायों के कार्यान्वयन के लिए कार्य करता है। वास्तविक निष्क्रिय मोड हार्डवेयर पर निर्भर हैं और मानकीकृत नहीं हैं; प्रत्येक प्रोसेसर कोर पर डिफ़ॉल्ट मोड IDLE_NO_HALT है [SWS_Os_00769]। इंटरफ़ेस हेडर फ़ाइल Os.h के माध्यम से प्रदान किया जाता है [SWS_Os_00769]।
फ़ंक्शन दो इनपुट पैरामीटर की अपेक्षा करता है:
CoreID(प्रकारCoreIdTypeका): उस प्रोसेसर कोर का चयन करता है जिसका निष्क्रिय मोड सेट किया जाना है [SWS_Os_00769]।IdleMode(प्रकारIdleModeTypeका): उस मोड को निर्धारित करता है जिसे निष्क्रिय समय में निष्पादित किया जाना चाहिए [SWS_Os_00769]।
यदि मान्य पैरामीटर पास किए गए थे और कोई त्रुटि उत्पन्न नहीं हुई, तो फ़ंक्शन E_OK लौटाता है [SWS_Os_00769], [SWS_Os_00770]। यदि निर्दिष्ट CoreID या IdleMode अमान्य है - उदाहरण के लिए क्योंकि संदर्भित कोर मौजूद नहीं है या मोड अज्ञात है - तो कॉल EXTENDED-स्थिति में त्रुटि कोड E_OS_ID लौटाता है [SWS_Os_00769], [SWS_Os_00771]। सिंगल-Core सिस्टम पर पैरामीटर CoreID की जाँच छोड़ दी जाती है [SWS_Os_00771]।
समवर्तीता (concurrency) के संबंध में, फ़ंक्शन को नॉन-रीएंट्रेंट (Non Reentrant) के रूप में निर्दिष्ट किया गया है [SWS_Os_00769]। व्याख्या: इसलिए कॉलर्स को यह सुनिश्चित करना होगा कि ControlIdle के कॉल्स विभिन्न निष्पादन संदर्भों से एक ही समय में या असंबद्ध रूप से न हों। प्रश्न Q-7f239cb54752e826 (खुला)
यह उपयोग नोट AUTOSAR Classic R20-11 विनिर्देश के आधार पर एक AI द्वारा उत्पन्न किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन ReadPeripheral [SWS_Os_91013] 📄 PDF
StatusType ReadPeripheral8 (AreaIdType Area, const uint8* Address, uint8* ReadValue);
This service returns the content of a given memory location (
).उपयोग
फ़ंक्शन ReadPeripheral (घोषणा में ReadPeripheral8 के रूप में सूचीबद्ध) एक परिभाषित हार्डवेयर पेरिफेरल क्षेत्र [SWS_Os_91013] के भीतर एक मेमोरी पते को सिंक्रोनस रूप से पढ़ने का कार्य करता है। इंटरफ़ेस हेडर फ़ाइल Os.h के माध्यम से उपलब्ध है [SWS_Os_91013]। इनपुट पैरामीटर के रूप में, सेवा प्रकार AreaIdType के क्षेत्र संदर्भ Area और const uint8 के पॉइंटर के रूप में गंतव्य पते Address की अपेक्षा करती है [SWS_Os_91013]। मेमोरी स्थान की पढ़ी गई सामग्री आउटपुट पैरामीटर ReadValue के माध्यम से प्रदान की जाती है [SWS_Os_91013]।
त्रुटि प्रबंधन
सेवा प्रकार StatusType का एक स्थिति कोड लौटाती है, जहां E_OK त्रुटि-मुक्त निष्पादन को इंगित करता है [SWS_Os_91013]। सक्रिय विस्तारित स्थिति जांच (EXTENDED status) के साथ, दोषपूर्ण कॉल को विशिष्ट त्रुटि मानों के आधार पर विभेदित किया जाता है [SWS_Os_91013]:
E_OS_ID: पास किया गया क्षेत्र पहचानकर्ताAreaवैध श्रेणी से बाहर है [SWS_Os_91013]।E_OS_VALUE: निर्दिष्ट मेमोरी पताAddressनिर्दिष्ट पेरिफेरल क्षेत्र से संबंधित नहीं है [SWS_Os_91013]।E_OS_CALLEVEL: कॉल एक अमान्य संदर्भ से किया गया था [SWS_Os_91013]।E_OS_ACCESS: कॉलिंग टास्क या ISR के पास संभवतः क्षेत्र तक पहुँचने के लिए आवश्यक अनुमति नहीं है (व्याख्या) [SWS_Os_91013]। प्रश्न Q-19e2c22110352ebb (खुला)
समवर्तीता और प्रतिबंध
API सेवा की सेवा ID 0x28 है, यह सिंक्रोनस रूप से काम करती है और इसे रीएंट्रेंट बनाया गया है [SWS_Os_91013]। कॉल केवल अनुमत टास्क या ISR संदर्भों से ही अनुमत हैं; अमान्य कॉल को विस्तारित स्थिति में E_OS_CALLEVEL के साथ अस्वीकार कर दिया जाता है [SWS_Os_91013]।
यह पाठ AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन ReadPeripheral16 [SWS_Os_91015] 📄 PDF
StatusType ReadPeripheral16 (AreaIdType Area, const uint16* Address, uint16* ReadValue);
This service returns the content of a given memory location (
).सिंक्रोनस और रीएंट्रेंट ऑपरेटिंग सिस्टम फ़ंक्शन ReadPeripheral16 किसी परिभाषित पेरिफेरल क्षेत्र के भीतर एक निर्दिष्ट मेमोरी पते के 16-बिट मान को पढ़ने का कार्य करता है [SWS_Os_91015]। सिस्टम सेवा को सर्विस ID 0x29 के तहत परिभाषित किया गया है और यह हेडर फ़ाइल Os.h के माध्यम से उपलब्ध है [SWS_Os_91015]।
उपयोग और पैरामीटर
हार्डवेयर पेरिफेरल क्षेत्र का संदर्भ (प्रकार AreaIdType का Area) और मेमोरी में गंतव्य पता (प्रकार const uint16* का Address) सेवा को इनपुट पैरामीटर के रूप में पास किए जाते हैं [SWS_Os_91015]। पॉइंटर प्रकार uint16* के आउटपुट पैरामीटर Read Value के माध्यम से, मेमोरी पते पर निर्धारित 16-बिट सामग्री प्रदान की जाती है [SWS_Os_91015]। त्रुटि-मुक्त निष्पादन पर, फ़ंक्शन प्रकार StatusType का रिटर्न मान E_OK लौटाता है [SWS_Os_91015]।
त्रुटि प्रबंधन और एक्सेस प्रतिबंध
विस्तारित स्थिति (EXTENDED status) में, ऑपरेटिंग सिस्टम कॉल की वैधता की जांच करता है और विशिष्ट स्थिति कोड [SWS_Os_91015] के माध्यम से त्रुटियों की रिपोर्ट करता है:
E_OS_ID: पास किया गया क्षेत्र पहचानकर्ताAreaवैध श्रेणी से बाहर है [SWS_Os_91015]।E_OS_VALUE: निर्दिष्ट मेमोरी पताAddressनिर्दिष्ट पेरिफेरल क्षेत्रAreaसे संबंधित नहीं है [SWS_Os_91015]।E_OS_CALLEVEL: कॉल API फ़ंक्शन के लिए अमान्य संदर्भ में किया गया था [SWS_Os_91015]।E_OS_ACCESS: कॉलिंग टास्क या इंटरप्ट सर्विस रूटीन (ISR) निर्दिष्ट क्षेत्र तक पहुँचने के लिए अधिकृत नहीं है [SWS_Os_91015]।
यह उपयोग नोट स्वचालित रूप से बनाया गया था और विशेष रूप से AUTOSAR Classic R20-11 विनिर्देश की आवश्यकताओं पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन ReadPeripheral32 [SWS_Os_91014] 📄 PDF
StatusType ReadPeripheral32 (AreaIdType Area, const uint32* Address, uint32* ReadValue);
This service returns the content of a given memory location (
).उपयोग
सिंक्रोनस और रीएंट्रेंट फ़ंक्शन ReadPeripheral32 निर्दिष्ट मेमोरी पते की सामग्री को पढ़ता है ([SWS_Os_91014])। कॉलर पैरामीटर Area के माध्यम से हार्डवेयर पेरिफेरल क्षेत्र का संदर्भ और Address के माध्यम से वांछित मेमोरी पता पास करता है ([SWS_Os_91014])। इस पते पर पढ़ा गया 32-बिट मान आउटपुट पैरामीटर ReadValue के माध्यम से सिंक्रोनस रूप से प्रदान किया जाता है ([SWS_Os_91014])। इंटरफ़ेस हेडर Os.h के माध्यम से उपलब्ध कराया जाता है ([SWS_Os_91014])।
त्रुटि प्रबंधन
सेवा प्रकार StatusType का एक स्थिति मान लौटाती है। त्रुटि-मुक्त निष्पादन पर, यह E_OK लौटाती है ([SWS_Os_91014])। यदि विस्तारित स्थिति कॉन्फ़िगर की गई है (EXTENDED status), तो निम्नलिखित एरर कोड लौटाए जाते हैं ([SWS_Os_91014]):
E_OS_ID: पास किया गया क्षेत्र पहचानकर्ताAreaअनुमत श्रेणी से बाहर है ([SWS_Os_91014])।E_OS_VALUE: निर्दिष्ट पताAddressनिर्दिष्ट क्षेत्रAreaसे संबंधित नहीं है ([SWS_Os_91014])।E_OS_CALLEVEL: फ़ंक्शन को एक अमान्य कॉल संदर्भ में कॉल किया गया था ([SWS_Os_91014])।E_OS_ACCESS: कॉलिंग टास्क या कॉलिंग ISR के पास आवश्यक एक्सेस अनुमति नहीं है; व्याख्या के अनुसार, यह संभवतः पेरिफेरल क्षेत्र को संदर्भित करता है ([SWS_Os_91014])। प्रश्न Q-e5893b29acc5133a (खुला)
समवर्तीता और प्रतिबंध
ReadPeripheral32 को रीएंट्रेंट के रूप में निर्दिष्ट किया गया है और इसे कई नियंत्रण प्रवाहों द्वारा समानांतर में कॉल किया जा सकता है ([SWS_Os_91014])। चूंकि सेवा सिंक्रोनस रूप से कार्य करती है, इसलिए कॉल केवल पढ़ने की प्रक्रिया पूरी होने के बाद ही वापस लौटता है ([SWS_Os_91014])। कॉलर्स को वैध मेमोरी पॉइंटर्स पास करने होंगे और यह सुनिश्चित करना होगा कि कॉल OS-API के लिए अनुमत संदर्भ से किया गया है ([SWS_Os_91014])।
यह पाठ एक AI द्वारा तैयार किया गया था और यह विशेष रूप से रिलीज़ R20-11 के विनिर्देशों पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन WritePeripheral [SWS_Os_91010] 📄 PDF
StatusType WritePeripheral8 (AreaIdType Area, uint8* Address, uint8 WriteValue);
This service writes the
उपयोग
फ़ंक्शन WritePeripheral (विनिर्देश में Write Peripheral8 के रूप में भी संदर्भित) किसी पेरिफेरल क्षेत्र के निर्दिष्ट मेमोरी पते पर एक मान लिखने के लिए ऑपरेटिंग सिस्टम की एक सिंक्रोनस और रीएंट्रेंट सेवा है [SWS_Os_91010]। घोषणा हेडर फ़ाइल Os.h के माध्यम से प्रदान की जाती है [SWS_Os_91010]। कॉल पैरामीटर के रूप में हार्डवेयर पेरिफेरल क्षेत्र के संदर्भ (प्रकार AreaIdType का Area), मेमोरी पता (प्रकार uint8* का Address), और लिखे जाने वाले मान (प्रकार uint8 का Write Value) की अपेक्षा करता है [SWS_Os_91010]। व्याख्या: हालांकि विनिर्देश पाठ में Write Value को आउटपुट पैरामीटर के अंतर्गत तालिका में सूचीबद्ध किया गया है, हस्ताक्षर में मान पास करने और विवरण के आधार पर यह संभवतः लिखा जाने वाला इनपुट मान है। प्रश्न Q-619c69ba7a85ed92 (खुला)
त्रुटि प्रबंधन
फ़ंक्शन प्रकार StatusType की स्थिति लौटाता है [SWS_Os_91010]:
E_OK: लिखने की प्रक्रिया बिना किसी त्रुटि के निष्पादित की गई [SWS_Os_91010]।E_OS_ID: पास की गई क्षेत्र ID वैध श्रेणी से बाहर है (विस्तारित स्थिति में) [SWS_Os_91010]।E_OS_VALUE: गंतव्य पता निर्दिष्ट क्षेत्र से संबंधित नहीं है (विस्तारित स्थिति में) [SWS_Os_91010]।E_OS_CALLEVEL: API फ़ंक्शन का अमान्य कॉल संदर्भ (विस्तारित स्थिति में) [SWS_Os_91010]।E_OS_ACCESS: कॉलिंग टास्क या ISR के पास क्षेत्र के लिए एक्सेस अनुमति नहीं है [SWS_Os_91010]।
समवर्तीता और प्रतिबंध
कॉल सिंक्रोनस रूप से संसाधित होता है और रीएंट्रेंट है [SWS_Os_91010]। कॉलर्स को यह सुनिश्चित करना चाहिए कि निष्पादित करने वाला टास्क या ISR एक वैध संदर्भ से कार्य करता है और उसके पास संबोधित पेरिफेरल क्षेत्र के लिए आवश्यक एक्सेस अधिकार हैं [SWS_Os_91010]।
यह पाठ स्वचालित रूप से उत्पन्न किया गया था। सभी विवरण संदर्भित AUTOSAR विनिर्देशों पर आधारित हैं।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन WritePeripheral16 [SWS_Os_91012] 📄 PDF
StatusType WritePeripheral16 (AreaIdType Area, uint16* Address, uint16 WriteValue);
This service writes the
सिंक्रोनस और रीएंट्रेंट ऑपरेटिंग सिस्टम फ़ंक्शन WritePeripheral16 ([SWS_Os_91012]) किसी पेरिफेरल क्षेत्र के मेमोरी पते पर 16-बिट मान लिखने का कार्य करता है। सेवा हेडर Os.h के माध्यम से प्रदान की जाती है और इसकी सेवा ID 0x2c है।
उपयोग और पैरामीटर
WritePeripheral16 को कॉल करते समय, कॉलर लक्षित हार्डवेयर क्षेत्र की पहचान (प्रकार AreaIdType का Area), गंतव्य पता (प्रकार uint16* का Address), और [SWS_Os_91012] के अनुसार लिखा जाने वाला मान (प्रकार uint16 का Write Value, जो तालिका में आउट-पैरामीटर के रूप में दिखाए जाने के बावजूद हस्ताक्षर में संभवतः मान पास करने के रूप में कार्य करता है) पास करता है। प्रश्न Q-2edc50ae2e7fd0b0 (खुला) सेवा सिंक्रोनस रूप से निष्पादित होती है और प्रकार StatusType का एक स्थिति मान लौटाती है।
त्रुटि प्रबंधन
सफलता के मामले में फ़ंक्शन E_OK लौटाता है। स्थिति EXTENDED के अंतर्गत निम्नलिखित एरर कोड निर्दिष्ट हैं ([SWS_Os_91012]):
E_OS_ID: पास किया गया क्षेत्र पहचानकर्ता (Area) वैध श्रेणी से बाहर है।E_OS_VALUE: गंतव्य पता (Address) निर्दिष्ट पेरिफेरल क्षेत्र से संबंधित नहीं है।E_OS_CALLEVEL: फ़ंक्शन को अमान्य संदर्भ से कॉल किया गया था।E_OS_ACCESS: कॉलिंग टास्क या ISR के पास संभवतः निर्दिष्ट क्षेत्र तक पहुँचने की अनुमति नहीं है। प्रश्न (खुला)
सीमाएं और परस्पर क्रिया
फ़ंक्शन रीएंट्रेंट है ([SWS_Os_91012]), लेकिन E_OS_CALLEVEL जैसी त्रुटि स्थितियों से बचने के लिए इसे अनुमत कॉल संदर्भ (टास्क या ISR) के अनुपालन की आवश्यकता होती है। ऑपरेटिंग सिस्टम ऑब्जेक्ट्स की निगरानी और विश्लेषण के लिए, AUTOSAR ARTI विवरण फ़ाइलें प्रदान करता है ([SWS_Os_00829])।
यह उपयोग नोट स्वचालित रूप से जनरेट किया गया था और पूरी तरह से AUTOSAR रिलीज़ R20-11 के विनिर्देश डेटा पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन WritePeripheral32 [SWS_Os_91011] 📄 PDF
StatusType WritePeripheral32 (AreaIdType Area, uint32* Address, uint32 WriteValue);
This service writes the
मॉड्यूल Os का सिंक्रोनस और रीएंट्रेंट फ़ंक्शन WritePeripheral32 किसी पेरिफेरल क्षेत्र के निर्दिष्ट मेमोरी पते पर 32-बिट मान लिखने का कार्य करता है [SWS_Os_91011]। यह सेवा हेडर Os.h के माध्यम से उपलब्ध है और इसकी सेवा ID 0x2d है [SWS_Os_91011]।
पैरामीटर और कॉल
राइट एक्सेस के निष्पादन के लिए फ़ंक्शन को तीन इनपुट पैरामीटरों की आवश्यकता होती है [SWS_Os_91011]:
Area(AreaIdType): लक्षित हार्डवेयर पेरिफेरल क्षेत्र का संदर्भ [SWS_Os_91011]।Address(uint32*): मेमोरी पता जिस पर मान लिखा जाना है [SWS_Os_91011]।Write Value(uint32): ठोस 32-बिट मान जो गंतव्य पते पर स्थानांतरित किया जाता है [SWS_Os_91011]।
रिटर्न मान और त्रुटि प्रबंधन
कॉल प्रकार StatusType का एक स्थिति मान लौटाता है [SWS_Os_91011]। सफलता के मामले में, E_OK की रिपोर्ट की जाती है [SWS_Os_91011]। सक्रिय EXTENDED स्थिति के साथ, E_OS_ID एक अमान्य क्षेत्र ID को, E_OS_VALUE एक ऐसे पते को जो क्षेत्र से संबंधित नहीं है, और E_OS_CALLEVEL एक अमान्य कॉल संदर्भ को संकेत करता है [SWS_Os_91011]। यदि कॉलिंग टास्क या ISR के पास क्षेत्र के लिए एक्सेस अनुमति नहीं है, तो E_OS_ACCESS लौटाया जाता है [SWS_Os_91011]।
संगामिति
चूंकि WritePeripheral32 रीएंट्रेंट है, इसलिए सेवा का उपयोग समवर्ती निष्पादन संदर्भों में किया जा सकता है, बशर्ते संबंधित कॉलर के पास रनटाइम पर आवश्यक एक्सेस अनुमति हो [SWS_Os_91011]।
यह उपयोग नोट AUTOSAR Classic R20-11 विनिर्देश के आधार पर स्वचालित रूप से तैयार किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन ModifyPeripheral [SWS_Os_91016] 📄 PDF
StatusType ModifyPeripheral8 (AreaIdType Area, uint8* Address, uint8 Clearmask, uint8 Setmask);
This service modifies a given memory location (
उपयोग और सिमेंटिक्स
सिंक्रोनस और रीएंट्रेंट ऑपरेटिंग सिस्टम फ़ंक्शन ModifyPeripheral8 ([SWS_Os_91016]) निर्दिष्ट मेमोरी पते Address पर एक बाइट को संशोधित करता है। इसके तहत, मौजूदा मेमोरी सामग्री को फ़ॉर्मूला *Address = ((*Address & Clearmask) | Setmask) के अनुसार मास्क Clearmask के माध्यम से बिटवाइज़ AND और मास्क Setmask के माध्यम से बिटवाइज़ OR द्वारा अपडेट किया जाता है ([SWS_Os_91016])। इनपुट पैरामीटर के रूप में, फ़ंक्शन पेरिफेरल क्षेत्र संदर्भ Area (प्रकार AreaIdType), गंतव्य पता Address (प्रकार uint8*), और प्रकार uint8 के दो मास्क मानों की अपेक्षा करता है। फ़ंक्शन हेडर फ़ाइल Os.h के माध्यम से प्रदान किया जाता है और इसकी सेवा ID 0x2e है ([SWS_Os_91016])।
त्रुटि प्रबंधन और रिटर्न मान
प्रकार StatusType का रिटर्न मान E_OK ([SWS_Os_91016]) के साथ ऑपरेशन की सफलता का संकेत देता है। सक्रिय Extended स्थिति के साथ, विशिष्ट त्रुटि स्थितियां उत्पन्न हो सकती हैं:
E_OS_ID: पास किया गया क्षेत्र पहचानकर्ताAreaअनुमत श्रेणी से बाहर है ([SWS_Os_91016])।E_OS_VALUE: गंतव्य पताAddressनिर्दिष्ट क्षेत्रAreaसे संबंधित नहीं है ([SWS_Os_91016])।E_OS_CALLEVEL: सेवा को अमान्य कॉल संदर्भ में कॉल किया गया था ([SWS_Os_91016])।E_OS_ACCESS: कॉलिंग टास्क या ISR के पास लक्षित क्षेत्र के लिए एक्सेस अनुमति नहीं है ([SWS_Os_91016])।
कन्करेंसी और कॉल स्थितियाँ
चूंकि ModifyPeripheral8 को रीएंट्रेंट के रूप में निर्दिष्ट किया गया है, इसलिए कॉल समानांतर प्रक्रियाओं में सुरक्षित रूप से किया जा सकता है ([SWS_Os_91016])। त्रुटि स्थितियों से बचने के लिए कॉलर्स को यह सुनिश्चित करना होगा कि Area और Address दोनों के लिए संदर्भ और एक्सेस अधिकार वैध हैं ([SWS_Os_91016])।
यह पाठ AUTOSAR CP R20-11 विनिर्देश के आधार पर एक AI द्वारा तैयार किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन ModifyPeripheral16 [SWS_Os_91018] 📄 PDF
StatusType ModifyPeripheral16 (AreaIdType Area, uint16* Address, uint16 Clearmask, uint16 Setmask);
This service modifies a given memory location (
सिंक्रोनस और रीएंट्रेंट फ़ंक्शन ModifyPeripheral16 गणना फ़ॉर्मूला *Address = ((*Address & Clearmask) | Setmask) [SWS_Os_91018] के अनुसार एक परिभाषित पेरिफेरल क्षेत्र के भीतर 16-बिट मेमोरी स्थान को संशोधित करता है। पैरामीटर के रूप में, पेरिफेरल क्षेत्र संदर्भ Area (प्रकार AreaIdType), गंतव्य पता Address (प्रकार uint16*), साथ ही बिटवाइज़ AND के लिए बिटमास्क Clearmask और बिटवाइज़ OR के लिए Setmask पास किए जाते हैं [SWS_Os_91018]। घोषणा हेडर Os.h के माध्यम से उपलब्ध है [SWS_Os_91018]।
नियमित सफलता के मामले में, सेवा रिटर्न मान E_OK प्रदान करती है [SWS_Os_91018]। सक्रिय विस्तारित स्थिति जांच (EXTENDED status) के साथ, विशिष्ट एरर कोड के आधार पर त्रुटिपूर्ण कॉल की पहचान की जाती है और उन्हें अस्वीकार कर दिया जाता है [SWS_Os_91018]:
E_OS_ID: पास किया गया क्षेत्र पहचानकर्ताAreaवैध मान श्रेणी [SWS_Os_91018] से बाहर है।E_OS_VALUE: पास किया गया मेमोरी पताAddressनिर्दिष्ट क्षेत्रAreaसे संबंधित नहीं है [SWS_Os_91018]।E_OS_CALLEVEL: सेवा को अमान्य संदर्भ से कॉल किया गया था [SWS_Os_91018]।E_OS_ACCESS: कॉलिंग टास्क या कॉलिंग ISR के पास निर्दिष्ट क्षेत्र [SWS_Os_91018] के लिए कोई एक्सेस अनुमति नहीं है।
एक्सेस उल्लंघनों से बचने के लिए कॉलर्स को निष्पादन से पहले यह सुनिश्चित करना होगा कि संदर्भित क्षेत्र के लिए संदर्भ और अनुमतियां दोनों मौजूद हैं [SWS_Os_91018]।
यह पाठ AUTOSAR CP R20-11 विनिर्देश के आधार पर एक AI द्वारा तैयार किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन ModifyPeripheral32 [SWS_Os_91017] 📄 PDF
StatusType ModifyPeripheral32 (AreaIdType Area, uint32* Address, uint32 Clearmask, uint32 Setmask);
This service modifies a given memory location (
सिंक्रोनस और रीएंट्रेंट ऑपरेटिंग सिस्टम फ़ंक्शन ModifyPeripheral32, [SWS_Os_91017] के अनुसार 32-बिट मेमोरी पते के लक्षित बिटवाइज़ हेरफेर का कार्य करता है। इंटरफ़ेस Os.h के माध्यम से प्रदान किया गया फ़ंक्शन गंतव्य पते Address पर निश्चित गणना फ़ॉर्मूला *Address = ((*Address & Clearmask) | Setmask) लागू करता है। इसके तहत, बिट्स को पहले बिटमास्क Clearmask के माध्यम से AND ऑपरेशन द्वारा रीसेट किया जाता है और फिर Setmask के माध्यम से OR ऑपरेशन द्वारा सेट किया जाता है।
इनपुट पैरामीटर के रूप में, सेवा पेरिफेरल क्षेत्र संदर्भ Area, पता पॉइंटर Address और दो 32-बिट मास्क [SWS_Os_91017] की अपेक्षा करती है। त्रुटि-मुक्त निष्पादन पर, स्थिति कोड E_OK वापस किया जाता है। विस्तारित स्थिति (EXTENDED status) में, फ़ंक्शन संभाव्यता जांच करता है और निम्नलिखित एरर कोड की रिपोर्ट करता है:
E_OS_ID: पास किया गयाAreaस्वीकार्य मान श्रेणी [SWS_Os_91017] से बाहर है।E_OS_VALUE: गंतव्य पता निर्दिष्ट पेरिफेरल क्षेत्र [SWS_Os_91017] से संबंधित नहीं है।E_OS_CALLEVEL: फ़ंक्शन को किसी अनधिकृत संदर्भ से कॉल किया गया था [SWS_Os_91017]।E_OS_ACCESS: कॉलिंग टास्क या ISR के पास एक्सेस के लिए कोई अनुमति नहीं है [SWS_Os_91017] (व्याख्या: पेरिफेरल क्षेत्र के लिए एक्सेस अनुमति का अभाव)। प्रश्न Q-b4d959765dc59c72 (खुला)
रीएंट्रेंसी के कारण समवर्ती कॉल की अनुमति है, बशर्ते कॉल संदर्भ बनाए रखा जाए [SWS_Os_91017]। संपूर्ण सिस्टम में, यह सीधा रजिस्टर संशोधन गतिशील डेटा निर्धारण के गणना फ़ार्मुलों से भिन्न होता है, जिनका मूल्यांकन उदाहरण के लिए [SWS_Os_00829] के अनुसार ARTI डिबग जानकारी के भाग के रूप में किया जाता है।
यह पाठ AUTOSAR CP R20-11 विनिर्देश के आधार पर एक AI द्वारा तैयार किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन EnableInterruptSource [SWS_Os_91020] 📄 PDF
StatusType EnableInterruptSource (ISRType ISRID, boolean ClearPending);
Service EnableInterruptSource.
सिंक्रोनस और रीएंट्रेंट सिस्टम फ़ंक्शन EnableInterruptSource इंटरप्ट कंट्रोलर के रजिस्टरों को संशोधित करके एक इंटरप्ट स्रोत को सक्रिय करता है [SWS_Os_91020], [SWS_Os_00811]। ऑपरेटिंग सिस्टम प्रत्येक कॉन्फ़िगर किए गए श्रेणी 2 इंटरप्ट स्रोत के लिए यह सेवा प्रदान करता है [SWS_Os_00808]।
पैरामीटर और कॉल
पैरामीटर ISRID के माध्यम से श्रेणी 2 ISR का पहचानकर्ता पास किया जाता है [SWS_Os_91020]। बूलियन पैरामीटर ClearPending यह निर्धारित करता है कि सक्रियण के दौरान लंबित इंटरप्ट फ़्लैग को साफ़ किया जाना चाहिए (TRUE) या अपरिवर्तित रहना चाहिए (FALSE) [SWS_Os_91020], [SWS_Os_00811]। फ़ंक्शन हेडर फ़ाइल Os.h के माध्यम से उपलब्ध है [SWS_Os_91020]।
त्रुटि प्रबंधन और रिटर्न मान
यदि कोई त्रुटि नहीं पाई जाती है, तो कॉल E_OK लौटाता है [SWS_Os_91020], [SWS_Os_00810]। यदि ऑपरेटिंग सिस्टम किसी त्रुटि का पता लगाता है, तो यह प्रकार StatusType का संबंधित स्थिति कोड लौटाता है और ErrorHook() को कॉल करता है [SWS_Os_00810]। निम्नलिखित त्रुटि स्थितियाँ परिभाषित हैं:
E_OS_ID: पैरामीटरISRIDश्रेणी 2 ISR का मान्य पहचानकर्ता नहीं है (स्थितिEXTENDEDमें) [SWS_Os_91020]।E_OS_CALLEVEL: फ़ंक्शन को किसी अमान्य कॉल संदर्भ से कॉल किया गया था (स्थितिEXTENDEDमें) [SWS_Os_91020]।E_OS_ACCESS: कॉल करने वाला एप्लिकेशन Service Protection के अंतर्गत निर्दिष्टISRIDका स्वामी नहीं है [SWS_Os_91020]।
इंटरैक्शन
यह फ़ंक्शन DisableInterruptSource और ClearPendingInterrupt के साथ मिलकर ऑपरेटिंग सिस्टम में अलग-अलग श्रेणी 2 इंटरप्ट स्रोतों (OsIsrCategory == CATEGORY_2) के लक्षित नियंत्रण के लिए API-त्रयी बनाता है [SWS_Os_00808], [SWS_Os_00810]।
यह पाठ Release R20-11 के विनिर्देशों के आधार पर स्वचालित रूप से जनरेट किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन DisableInterruptSource [SWS_Os_91019] 📄 PDF
StatusType DisableInterruptSource (ISRType ISRID);
Disables the interrupt source by modifying the interrupt controller registers.
उपयोग
सिंक्रोनस और रीएंट्रेंट फ़ंक्शन DisableInterruptSource इंटरप्ट कंट्रोलर के रजिस्टरों के माध्यम से सीधे एक विशिष्ट इंटरप्ट स्रोत को निष्क्रिय करता है [SWS_Os_91019], [SWS_Os_00812]। यह हेडर फ़ाइल Os.h के माध्यम से उपलब्ध है और श्रेणी 2 (OsIsrCategory == CATEGORY_2) के प्रत्येक इंटरप्ट स्रोत के लिए प्रदान किया जाता है [SWS_Os_91019], [SWS_Os_00808]। संबंधित ISR (ISRID) का पहचानकर्ता पैरामीटर के रूप में पास किया जाता है। सफल निष्पादन पर, सेवा E_OK लौटाती है [SWS_Os_91019], [SWS_Os_00810]।
त्रुटि प्रबंधन
यदि ऑपरेटिंग सिस्टम निष्पादन के दौरान किसी त्रुटि का पता लगाता है, तो संबंधित StatusType लौटाया जाता है और ErrorHook() को कॉल किया जाता है [SWS_Os_00810]। संभावित त्रुटि कोड हैं:
E_OS_ID: पास किया गयाISRIDश्रेणी 2 ISR का मान्य पहचानकर्ता नहीं है (EXTENDED स्थिति में) [SWS_Os_91019]।E_OS_CALLEVEL: API फ़ंक्शन का अमान्य कॉल संदर्भ (EXTENDED स्थिति में) [SWS_Os_91019]।E_OS_ACCESS: कॉल करने वाली OS-Application निर्दिष्ट ISR की स्वामी नहीं है (Service Protection) [SWS_Os_91019]।E_OS_NOFUNC: अनुरोधित इंटरप्ट स्रोत पहले से ही निष्क्रिय है (नेस्टेड कॉल्स के मामले में EXTENDED स्थिति में) [SWS_Os_00809]।
पारस्परिक क्रिया और सीमा शर्तें
यह फ़ंक्शन EnableInterruptSource और ClearPendingInterrupt के साथ मिलकर श्रेणी 2 इंटरप्ट स्रोतों को नियंत्रित करने के लिए API-त्रयी बनाता है [SWS_Os_00808]। समवर्ती या बार-बार होने वाले कॉल्स को एक्सटेंडेड स्थिति में E_OS_NOFUNC लौटाकर सुरक्षित किया जाता है, जिससे निरर्थक निष्क्रियताएँ नियंत्रणीय रहती हैं [SWS_Os_00809]। Service Protection के कारण रनटाइम त्रुटियों को रोकने के लिए कॉलर्स के पास उपयुक्त एक्सेस अधिकार भी होने चाहिए [SWS_Os_91019]।
यह उपयोग नोट AUTOSAR विनिर्देश के आधार पर स्वचालित रूप से जनरेट किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन ClearPendingInterrupt [SWS_Os_91021] 📄 PDF
StatusType ClearPendingInterrupt (ISRType ISRID);
Service ClearPendingInterrupt.
उपयोग और कॉल संदर्भ
फ़ंक्शन ClearPendingInterrupt श्रेणी 2 के स्रोतों के लिए लंबित इंटरप्ट को रीसेट करने का कार्य करता है [SWS_Os_00808]। यह एकमात्र इनपुट पैरामीटर के रूप में श्रेणी 2 ISR के पहचानकर्ता ISRID को स्वीकार करता है और इंटरप्ट कंट्रोलर के संबंधित रजिस्टरों को सीधे संशोधित करता है [SWS_Os_91021], [SWS_Os_00813]। कॉल को सिंक्रोनस रूप से संसाधित किया जाता है और यह हेडर फ़ाइल Os.h के माध्यम से उपलब्ध है [SWS_Os_91021]।
त्रुटि प्रबंधन और रिटर्न मान
त्रुटिरहित स्थिति में स्थिति कोड E_OK लौटाया जाता है [SWS_Os_91021]। यदि ऑपरेटिंग सिस्टम निष्पादन के दौरान किसी त्रुटि का पता लगाता है, तो सेवा प्रकार StatusType का संबंधित त्रुटि कोड लौटाती है और अनिवार्य रूप से ErrorHook() को कॉल करती है [SWS_Os_00810]। इंटरफ़ेस के लिए निम्नलिखित त्रुटि स्थितियाँ निर्दिष्ट हैं [SWS_Os_91021]:
E_OS_ID: पास किया गया पैरामीटरISRIDश्रेणी 2 ISR का मान्य पहचानकर्ता नहीं है (स्थितिEXTENDEDमें लौटाया जाता है) [SWS_Os_91021]।E_OS_CALLEVEL: फ़ंक्शन को किसी अमान्य कॉल संदर्भ से कॉल किया गया था (स्थितिEXTENDEDमें लौटाया जाता है) [SWS_Os_91021]।E_OS_ACCESS: Service Protection के संदर्भ में कॉल करने वाला एप्लिकेशन पास की गई ISR के स्वामी के रूप में अधिकृत नहीं है [SWS_Os_91021]।
ऑपरेटिंग सिस्टम में समवर्तीता और परस्पर क्रिया
इंटरफ़ेस को रीएंट्रेंट के रूप में परिभाषित किया गया है और इस प्रकार इसे समवर्ती रूप से सुरक्षित रूप से कॉल किया जा सकता है [SWS_Os_91021]। ऑपरेटिंग सिस्टम नियंत्रण API के एक अभिन्न अंग के रूप में प्रत्येक श्रेणी 2 इंटरप्ट स्रोत (OsIsrCategory == CATEGORY_2) के लिए ClearPendingInterrupt प्रदान करता है, जिसमें DisableInterruptSource और EnableInterruptSource भी शामिल हैं [SWS_Os_00808]।
यह पाठ AUTOSAR विनिर्देश के आधार पर एक AI द्वारा तैयार किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
फ़ंक्शन ActivateTaskAsyn [SWS_Os_91022] 📄 PDF
void ActivateTaskAsyn (TaskType id);
Asynchronous version of the Activate Task() function. Intended to be used for cross core task activation. Possible errors are not returned to the caller, but may be reported via error hooks.
फ़ंक्शन ActivateTaskAsyn (सर्विस ID 0x33) Task सक्रियण के लिए एसिंक्रोनस संस्करण का प्रतिनिधित्व करता है और हेडर फ़ाइल Os.h के माध्यम से प्रदान किया जाता है ([SWS_Os_91022])। यह मुख्य रूप से मल्टीकोर सिस्टम में क्रॉस-कोर Task सक्रियण के लिए अभिप्रेत है ([SWS_Os_91022])।
एकमात्र इनपुट पैरामीटर के रूप में प्रकार TaskType का id पास किया जाता है, जो सक्रिय किए जाने वाले Task को निर्दिष्ट करता है ([SWS_Os_91022])। इंटरफ़ेस का कोई रिटर्न मान नहीं है (void) और यह न तो इनपुट/आउटपुट और न ही शुद्ध आउटपुट पैरामीटर परिभाषित करता है ([SWS_Os_91022])।
सक्रियण के दौरान संभावित त्रुटियों की सूचना कॉलर को वापस नहीं दी जाती है ([SWS_Os_91022], [SWS_Os_00816])। इसके बजाय, होने वाली त्रुटियों की सूचना केवल वैश्विक Error-Hook के माध्यम से दी जाती है, बशर्ते कि ऐसा कोई कॉन्फ़िगर किया गया हो ([SWS_Os_00816])।
समवर्तीता के संबंध में, फ़ंक्शन पुनःप्रवेशी (reentrant) है और पूरी तरह से एसिंक्रोनस रूप से संचालित होता है ([SWS_Os_91022]), जिससे कॉलिंग संदर्भ निष्पादन पर अवरुद्ध नहीं होता है। ऑपरेटिंग सिस्टम [SWS_Os_00816] के अनुसार इस इंटरफ़ेस को प्रदान करने के लिए बाध्य है।
यह उपयोग निर्देश AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन SetEventAsyn [SWS_Os_91023] 📄 PDF
void SetEventAsyn (TaskType id, EventMaskType m);
Asynchronous version of the Set Event() function. Intended to be used for cross core event setting. Possible errors are not returned to the caller, but may be reported via error hooks.
फ़ंक्शन Ioc [SWS_Os_91026] 📄 PDF
void IocInit (void);
This service initializes the data structures of the IOC. Tags: atp.Status=draft
उपयोग और कार्यप्रणाली
फ़ंक्शन Ioc Init (रिलीज़ R20-11 में ड्राफ्ट के रूप में चिह्नित) Inter-OS-Application Communication (IOC) [SWS_Os_91026] की आंतरिक डेटा संरचनाओं को इनिशियलाइज़ करता है। कॉल सिंक्रोनस रूप से होता है, कोई इनपुट पैरामीटर स्वीकार नहीं करता है और इसका कोई रिटर्न मान नहीं होता है [SWS_Os_91026]। यदि ऑपरेटिंग सिस्टम जनरेटर को "IOC mode" में निष्पादित किया जाता है, तो यह केवल स्रोत फ़ाइल Ioc.c में IOC कोड उत्पन्न करता है और संबंधित इंटरफेस को हेडर फ़ाइल Ioc.h [SWS_Os_00834] में घोषित करता है, जिसके माध्यम से Ioc Init भी प्रदान किया जाता है [SWS_Os_91026]।
त्रुटि हैंडलिंग और समवर्तीता
Ioc Init के लिए विनिर्देश में न तो विशिष्ट त्रुटि रिटर्न मान प्रदान किए गए हैं और न ही DET या DEM को एरर संदेश [SWS_Os_91026]। सेवा को स्पष्ट रूप से गैर-रीएंट्रेंट (Non Reentrant) के रूप में परिभाषित किया गया है [SWS_Os_91026]। व्याख्या: रीएंट्रेंसी की कमी और इनिशियलाइज़ेशन कार्य के कारण, समवर्ती संचार एक्सेस होने से पहले, सिस्टम स्टार्टअप चरण के दौरान इस सेवा को क्रमिक रूप से कॉल किए जाने की आवश्यकता होगी। प्रश्न Q-47f99a4725b57c89 (खुला)
IOC संचार फ़ंक्शनों के साथ इंटरैक्शन
डेटा संरचनाओं का उचित इनिशियलाइज़ेशन जनरेट किए गए IOC संचार इंटरफेस के उपयोग के लिए पूर्वापेक्षा बनाता है:
- भेजना और लिखना: प्रेषक एकल-मान सेवाओं जैसे
Ioc Send[SWS_Os_00718] औरIoc Write[SWS_Os_91003] या समूह फ़ंक्शनों जैसेIoc Send Group[SWS_Os_00728] औरIoc Write Group[SWS_Os_91004] के माध्यम से अतुल्यकालिक (asynchronous) रूप से डेटा स्थानांतरित करते हैं। - प्राप्त करना और पढ़ना: प्राप्तकर्ता
Ioc Receive[SWS_Os_00738],Ioc Read[SWS_Os_91005] या संबंधित समूह सेवाओं [SWS_Os_00746] [SWS_Os_91006] के माध्यम से सिंक्रोनस रूप से डेटा प्राप्त करते हैं। - कतार प्रबंधन और अधिसूचना: कॉन्फ़िगर किए गए बफ़र किए गए संचार के मामले में, एक आंतरिक कतार की सामग्री को
Ioc Empty Queueके साथ सिंक्रोनस रूप से खाली किया जा सकता है [SWS_Os_00754]। इसके अतिरिक्त, डेटा प्राप्त होने पर, एक कॉन्फ़िगर किया गया रिसीवर कॉलबैक<Receiver Pull CB>लक्ष्य कोर पर निष्पादित किया जा सकता है [SWS_Os_00757]।
यह पाठ एक AI द्वारा तैयार किया गया था और यह विशेष रूप से रिलीज़ R20-11 के विनिर्देशों पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन <ReceiverPullCB> [SWS_Os_00757] 📄 PDF
void <ReceiverPullCB> (void);
This callback function can be configured for the receiver of a communication. If configured, IOC calls this callback on the receiving core for each data reception.
कॉलबैक फ़ंक्शन <Receiver Pull CB> को वैकल्पिक रूप से संचार के प्राप्तकर्ता के लिए कॉन्फ़िगर किया जा सकता है और हेडर Os.h के माध्यम से घोषित किया जाता है [SWS_Os_00757]। यदि यह कॉलबैक सेटअप किया गया है, तो IOC (Inter-OS-Application Communicator) प्रत्येक डेटा रिसेप्शन पर प्राप्तकर्ता Core पर फ़ंक्शन को सिंक्रोनस रूप से कॉल करता है [SWS_Os_00757]। कॉलबैक फ़ंक्शन का विशिष्ट पहचानकर्ता प्राप्तकर्ता पक्ष पर कॉन्फ़िगरेशन विशेषता OsIocReceiverPullCB के माध्यम से निर्धारित किया जाता है [SWS_Os_00757]।
कॉल और इंटरफ़ेस विशेषताओं के लिए निम्नलिखित आवश्यकताएँ लागू होती हैं:
- हस्ताक्षर और पैरामीटर: फ़ंक्शन का प्रोटोटाइप
void <Receiver Pull CB> ( void )है; यह कोई पैरामीटर स्वीकार नहीं करता है (न तो इनपुट, थ्रूपुट और न ही आउटपुट पैरामीटर) और कोई रिटर्न मान नहीं देता है [SWS_Os_00757]। - सिंक्रोनिटी और रीएंट्रेंसी: IOC द्वारा कॉल सिंक्रोनस सिमेंटिक्स के साथ सीधे प्राप्तकर्ता Core पर निष्पादित की जाती है [SWS_Os_00757]। इसके अतिरिक्त, कॉलबैक फ़ंक्शन को रीएंट्रेंट के रूप में निर्दिष्ट किया गया है [SWS_Os_00757]।
- त्रुटि प्रबंधन: विनिर्देश इस फ़ंक्शन के लिए न तो रिटर्न मान और न ही विशिष्ट त्रुटि कोड या त्रुटि सूचनाएँ प्रदान करता है [SWS_Os_00757]।
चूंकि हस्ताक्षर कोई पेलोड डेटा पास नहीं करता है, इसलिए यह कॉल मुख्य रूप से प्राप्तकर्ता को नए डेटा के आगमन के बारे में सूचित करने और पेलोड के बाद के पुनर्प्राप्ति को ट्रिगर करने के लिए एक अधिसूचना सिग्नल के रूप में कार्य करने की संभावना है। प्रश्न Q-2365bb46ad77a476 (खुला) डेवलपर्स को ध्यान देना चाहिए कि निष्पादन प्राप्तकर्ता Core पर सिंक्रोनस रूप से होता है [SWS_Os_00757]।
यह पाठ एक AI द्वारा तैयार किया गया था और AUTOSAR CP R20-11 विनिर्देश पर आधारित है।
फ़ंक्शन ProtectionHook [SWS_Os_00538] 📄 PDF
ProtectionReturnType ProtectionHook (StatusType Fatalerror);
The protection hook is always called if a serious error occurs. E.g. exceeding the worst case execution time or violating against the memory protection.
फ़ंक्शन ProtectionHook ऑपरेटिंग सिस्टम के केंद्रीय कॉलबैक के रूप में कार्य करता है और जब भी कोई गंभीर त्रुटि होती है तो इसे तुल्यकालिक रूप से कॉल किया जाता है [SWS_Os_00538]। विशिष्ट त्रुटि परिदृश्यों के रूप में, विनिर्देश स्पष्ट रूप से सबसे खराब स्थिति निष्पादन समय (Worst Case Execution Time) से अधिक होने और मेमोरी सुरक्षा उल्लंघनों का उल्लेख करता है [SWS_Os_00538]। इंटरफ़ेस की घोषणा हेडर Os_Externals.h के माध्यम से प्रदान की जाती है [SWS_Os_00538]।
एक इनपुट पैरामीटर के रूप में, रूटीन प्रकार StatusType के Fatalerror को स्वीकार करता है, जो हुक कॉल का ट्रिगरिंग कारण पास करता है [SWS_Os_00538]। हस्ताक्षर में अतिरिक्त इनपुट/आउटपुट पैरामीटर या केवल आउटपुट पैरामीटर परिभाषित नहीं हैं [SWS_Os_00538]।
प्रकार ProtectionReturnType के रिटर्न मान के माध्यम से, ProtectionHook बाध्यकारी रूप से निर्धारित करता है कि हुक के निष्पादन के बाद ऑपरेटिंग सिस्टम को आगे के त्रुटि प्रबंधन के लिए कौन सी कार्रवाई शुरू करनी चाहिए [SWS_Os_00538]। निम्नलिखित कार्रवाइयां रिटर्न मानों के रूप में उपलब्ध हैं [SWS_Os_00538]:
PRO_IGNORE[SWS_Os_00538]PRO_TERMINATETASKISR[SWS_Os_00538]PRO_TERMINATEAPPL[SWS_Os_00538]PRO_TERMINATEAPPL_RESTART[SWS_Os_00538]PRO_SHUTDOWN[SWS_Os_00538]
समवर्तीता और निष्पादन व्यवहार के संबंध में, ProtectionHook को रीएंट्रेंट और तुल्यकालिक के रूप में निर्दिष्ट किया गया है [SWS_Os_00538]। गंभीर त्रुटि होने पर कॉल तुरंत होती है, जिसके बाद ऑपरेटिंग सिस्टम परिभाषित कार्रवाई निष्पादित करता है [SWS_Os_00538]।
यह पाठ विनिर्देश के आधार पर एक AI द्वारा तैयार किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
टाइप AppModeType [SWS_Os_91007] 📄 PDF
App Mode of the core shall be inherited from another core.
गणना प्रकार AppModeType हेडर फ़ाइल Os.h में परिभाषित है और ऑपरेटिंग सिस्टम [SWS_Os_91007] में एप्लिकेशन मोड निर्धारित करने का कार्य करता है। मल्टी-कोर सिस्टम में, यह प्रकार किसी प्रोसेसर कोर के एप्लिकेशन मोड को दूसरे Core से इनहेरिट करने में सक्षम बनाता है [SWS_Os_91007]।
मान श्रेणी के लिए मान DONOTCARE निर्दिष्ट है [SWS_Os_91007]। व्याख्या: यह मान संभवतः किसी Core को स्पष्ट रूप से इस प्रकार कॉन्फ़िगर करने के लिए कार्य करता है कि वह कोई स्वतंत्र मोड शुरू न करे, बल्कि उच्च-स्तरीय Core के व्यवहार को अपनाए। प्रश्न Q-2b7d9f1c8e5f1a3f (खुला) इस प्रकार के लिए स्वयं कोई विशिष्ट एरर कोड या रिटर्न मान परिभाषित नहीं हैं।
डायग्नोस्टिक्स और सिस्टम स्थिति के संबंध में, विश्लेषण उपकरणों के साथ इंटरैक्शन प्रासंगिक है। [SWS_Os_00829] के अनुसार, ARTI मॉड्यूल विवरण फ़ाइल को सभी ORTI कंटेनरों का समर्थन करना चाहिए ताकि कनेक्टेड डिबग टूल ऑपरेटिंग सिस्टम और उसके ऑब्जेक्ट्स के बारे में जानकारी का मूल्यांकन और प्रदर्शन कर सकें। ARTI डिबग जानकारी गतिशील विशेषताएं प्रदान करती है जिन्हें फ़ार्मुलों के माध्यम से हल किया जाता है [SWS_Os_00829]। व्याख्या: एप्लिकेशन मोड की स्थिति संभवतः संबंधित ARTI ऑब्जेक्ट विशेषताओं के माध्यम से टूल स्तर पर मैप और रीड की जाती है। प्रश्न Q-410d011cbcf1b158 (खुला)
यह उपयोग नोट विनिर्देश आवश्यकताओं के आधार पर स्वचालित रूप से उत्पन्न किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
टाइप TotalNumberOfCores [SWS_Os_91002] 📄 PDF
The total number of cores
टाइप ApplicationType [SWS_Os_00772] 📄 PDF
This data type identifies the OS - Application.
टाइप ApplicationStateType [SWS_Os_00773] 📄 PDF
This data type identifies the state of an OS - Application. AUTOSAR CP R20 - o f Document ID : AUTOSAR_SWS_OS
Classic AUTOSAR ऑपरेटिंग सिस्टम में डेटा प्रकार ApplicationStateType किसी OS-Application की स्थिति की विशिष्ट पहचान के लिए कार्य करता है [SWS_Os_00773]। इसे एक स्केलर बेस प्रकार के रूप में निर्दिष्ट किया गया है और हेडर फ़ाइल Os.h के माध्यम से प्रदान किया जाता है [SWS_Os_00773]।
ApplicationStateType की अनुमेय मान सीमा में एक OS-Application के लिए तीन असतत स्थितियाँ शामिल हैं [SWS_Os_00773]:
APPLICATION_ACCESSIBLE: इंगित करता है कि OS-Application संचालन के लिए तैयार है और इसके संसाधनों तक पहुँचा जा सकता है [SWS_Os_00773]।APPLICATION_RESTARTING: संकेत देता है कि OS-Application वर्तमान में पुनरारंभ चरण (restart phase) में है [SWS_Os_00773]।APPLICATION_TERMINATED: दर्शाता है कि OS-Application समाप्त कर दी गई है और कोई और कार्रवाई नहीं करती है [SWS_Os_00773]।
उपयोग और अन्य घटकों के साथ परस्पर क्रिया के संदर्भ में, प्रकार संभवतः स्थिति निगरानी के लिए संबंधित OS सिस्टम सेवाओं में रिटर्न मान या आउटपुट पैरामीटर के रूप में कार्य करता है, ताकि कॉलर्स को किसी एप्लिकेशन की वर्तमान जीवनचक्र स्थिति से अवगत कराया जा सके। प्रश्न Q-9a4f2254f4013853 (खुला) चूंकि यह एक प्राथमिक प्रकार परिभाषा है, मानक इसके लिए कोई स्वतंत्र त्रुटि कोड, DET या DEM संदेश निर्दिष्ट नहीं करता है और कॉल संदर्भ या रीएंट्रेंसी के संबंध में कोई अलग प्रतिबंध नहीं लगाता है [SWS_Os_00773]।
यह पाठ एक AI द्वारा तैयार किया गया था और AUTOSAR R20-11 विनिर्देश डेटा पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
टाइप ApplicationStateRefType [SWS_Os_00774] 📄 PDF
This data type points to location where a Application State Type can be stored.
डेटा प्रकार ApplicationStateRefType AUTOSAR Classic प्लेटफॉर्म में ऑपरेटिंग सिस्टम (मॉड्यूल Os) का एक घटक है और हेडर फ़ाइल Os.h के माध्यम से उपलब्ध कराया जाता है [SWS_Os_00774]। यह प्रकार एक पॉइंटर से व्युत्पन्न है और सीधे एक मेमोरी स्थान को संदर्भित करता है जहां OS एप्लिकेशन की स्थिति (Application State) संग्रहीत की जा सकती है [SWS_Os_00774]।
व्यावहारिक उपयोग के संबंध में, यह पॉइंटर प्रकार एप्लिकेशन स्थितियों को संदर्भित करने का कार्य करता है: व्याख्या: एक पॉइंटर प्रकार के रूप में, ApplicationStateRefType के मुख्य रूप से ऑपरेटिंग सिस्टम के क्वेरी फ़ंक्शनों में संदर्भ या आउटपुट पैरामीटर के रूप में उपयोग किए जाने की संभावना है, जिसके माध्यम से किसी OS एप्लिकेशन की स्थिति कॉलर को प्रेषित की जाती है। प्रश्न Q-948bb914d3672a38 (खुला) रनटाइम पर गलत पॉइंटर एक्सेस से बचने के लिए कॉलर्स को यह सुनिश्चित करना चाहिए कि पैरामीटर पास करने से पहले लक्षित स्थिति के लिए एक वैध, लिखने योग्य मेमोरी क्षेत्र आरक्षित हो।
इस आधार प्रकार के लिए विनिर्देश में विशिष्ट त्रुटि प्रबंधन तंत्र, DET या DEM के लिए एरर कोड, और रीएंट्रेंसी व संगामिति के लिए अलग आवश्यकताएं विशेष रूप से निर्दिष्ट नहीं हैं [SWS_Os_00774]। अनुमत कॉल संदर्भ या अनुपालन किए जाने वाले सिंक्रोनाइज़ेशन दायित्वों के संबंध में कोई भी प्रतिबंध केवल उन ऑपरेटिंग सिस्टम इंटरफेस से उत्पन्न होता है जो अपने फ़ंक्शन हस्ताक्षरों में इस प्रकार का उपयोग करते हैं।
यह पाठ विनिर्देश के आधार पर एक AI द्वारा जनरेट किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
टाइप TrustedFunctionIndexType [SWS_Os_00775] 📄 PDF
This data type identifies a trusted function.
टाइप TrustedFunctionParameterRefType [SWS_Os_00776] 📄 PDF
This data type points to a structure which holds the arguments for a call to a trusted function.
टाइप AccessType [SWS_Os_00777] 📄 PDF
This type holds information how a specific memory region can be accessed.
टाइप ObjectAccessType [SWS_Os_00778] 📄 PDF
This data type identifies if an OS - Application has access to an object.
टाइप ObjectType [SWS_Os_00779] 📄 PDF
This data type identifies an object.
टाइप MemoryStartAddressType [SWS_Os_00780] 📄 PDF
This data type is a pointer which is able to point to any location in the MCU address space.
टाइप MemorySizeType [SWS_Os_00781] 📄 PDF
This data type holds the size (in bytes) of a memory region.
टाइप ISRType [SWS_Os_00782] 📄 PDF
This data type identifies an interrupt service routine (ISR).
टाइप ScheduleTableType [SWS_Os_00783] 📄 PDF
This data type identifies a schedule table.
टाइप ScheduleTableStatusType [SWS_Os_00784] 📄 PDF
This type describes the status of a schedule. The status can be one of the following: o The schedule table is not started (SCHEDULETABLE_ STOPPED) o The schedule table will be started after the end of currently running schedule table (sched ule table was used in Next Schedule Table() service) (SCHEDULETABLE_ NEXT) o The schedule table uses explicit synchronization, has been started and is waiting for the global time. (SCHEDULETABLE_ WAITING) o The schedule table is running, but is currently n ot synchronous to a global time source (SCHEDULETABLE_ RUNNING) o The schedule table is running and is synchronous to a global time source (SCHEDULETABLE_ RUNNING_ AND_ SYNCHRONOUS)
प्रकार ScheduleTableStatusType [SWS_Os_00784] के अनुसार AUTOSAR ऑपरेटिंग सिस्टम में एक Schedule Table के वर्तमान निष्पादन और सिंक्रोनाइज़ेशन स्थिति का प्रतिनिधित्व करता है। यह हेडर फ़ाइल Os.h के माध्यम से प्रदान किया जाता है और एक कार्यान्वयन-विशिष्ट मान सीमा पर आधारित है।
निम्नलिखित स्थिति मान निर्दिष्ट हैं:
SCHEDULETABLE_STOPPED: Schedule Table प्रारंभ नहीं की गई है।SCHEDULETABLE_NEXT: Schedule Table वर्तमान में सक्रिय Schedule Table की समाप्ति के बाद प्रारंभ होती है (व्याख्या: यह सेवाNextScheduleTable()को पास किए जाने के बाद होता है)। प्रश्न Q-8cbcfc83969eea23 (खुला)SCHEDULETABLE_WAITING: Schedule Table स्पष्ट सिंक्रोनाइज़ेशन का उपयोग करती है, पहले ही प्रारंभ हो चुकी है और वैश्विक समय के साथ मिलान की प्रतीक्षा कर रही है।SCHEDULETABLE_RUNNING: Schedule Table निष्पादित हो रही है, लेकिन वर्तमान में किसी वैश्विक समय स्रोत के साथ सिंक्रनाइज़ नहीं है।SCHEDULETABLE_RUNNING_AND_SYNCHRONOUS: Schedule Table चल रही है और वैश्विक समय स्रोत के साथ सिंक्रनाइज़ है।
एक शुद्ध स्थिति डेटा प्रकार के रूप में, ScheduleTableStatusType अपनी स्वयं की कोई रनटाइम त्रुटियाँ या DET/DEM संदेश परिभाषित नहीं करता है। विश्लेषण उपकरणों के संयोजन में, प्रकार [SWS_Os_00829] के अनुसार गतिशील ऑपरेटिंग सिस्टम ऑब्जेक्ट्स के ARTI-समर्थित मूल्यांकन और प्रदर्शन के लिए कार्य करता है, जिससे सिस्टम में स्थिति और सिंक्रोनाइज़ेशन विचलन को पारदर्शी रूप से कैप्चर किया जा सकता है।
यह पाठ एक AI द्वारा बनाया गया था और AUTOSAR R20-11 के विनिर्देश पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
टाइप ScheduleTableStatusRefType [SWS_Os_00785] 📄 PDF
This data type points to a variable of the data type Schedule Table Status Type.
उपयोग और परिभाषा
डेटा प्रकार ScheduleTableStatusRefType, [SWS_Os_00785] के अनुसार डेटा प्रकार Schedule Table Status Type के एक वेरिएबल के पॉइंटर प्रकार के रूप में परिभाषित है। यह प्रकार हेडर Os.h के माध्यम से प्रदान किया जाता है और AUTOSAR ऑपरेटिंग सिस्टम में एक निष्पादन ट्रैकिंग तालिका (Schedule Table) [SWS_Os_00785] की स्थिति के लिए संदर्भ प्रकार के रूप में कार्य करता है।
उपयोग और सीमांत स्थितियां
विशिष्ट ऑपरेटिंग सिस्टम कॉल में, इस पॉइंटर प्रकार के एक आउटपुट पैरामीटर के रूप में कार्य करने की संभावना है जिसके माध्यम से एक OS सिस्टम फ़ंक्शन संदर्भित Schedule Table की वर्तमान स्थिति को कॉलर को रिपोर्ट करता है। प्रश्न Q-53364f3a9953dae3 (खुला) चूंकि विनिर्देश केवल प्रकार परिभाषा को निर्धारित करता है, इसलिए कॉलिंग घटकों को इसका उपयोग करते समय निम्नलिखित बातों का ध्यान रखना चाहिए:
- मेमोरी प्रावधान: इस प्रकार के संदर्भ को पास करने से पहले, कॉलर को यह सुनिश्चित करना चाहिए कि पॉइंटर एक वैध और लिखने योग्य मेमोरी क्षेत्र को संदर्भित करता है, जो संपूर्ण कॉल के दौरान वैध रहता है।
- वैधता और शून्य पॉइंटर (Null pointer): एक शून्य पॉइंटर (
NULL) पास करने पर, ऑपरेटिंग सिस्टम कॉन्फ़िगरेशन (मानक या विस्तारित स्थिति) के आधार पर कॉल की गई OS सेवाओं से संबंधित एरर फ़ीडबैक प्राप्त होने की संभावना है। प्रश्न Q-63d77f8c7857e6c4 (खुला) - मेमोरी सुरक्षा: सुरक्षा-महत्वपूर्ण मल्टी-कोर या मेमोरी-सुरक्षित OS परिवेशों में, संदर्भित मेमोरी क्षेत्र कॉलिंग टास्क या OS इंस्टेंस के लिए सुलभ होना चाहिए।
चूंकि [SWS_Os_00785] आधार प्रकार के लिए आगे के रनटाइम गुणों या विशिष्ट एरर कोड को निर्दिष्ट नहीं करता है, इसलिए रीएंट्रेंसी और कॉल संदर्भ संबंधित OS सेवाओं से प्राप्त होते हैं जो इस पॉइंटर प्रकार को पैरामीटर के रूप में उपयोग करती हैं।
यह उपयोग नोट स्वचालित रूप से बनाया गया था और विशेष रूप से रिलीज़ R20-11 के विनिर्देश डेटा पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
टाइप ProtectionReturnType [SWS_Os_00787] 📄 PDF
This data type identifies a value which controls further actions of the OS on return from the protection hook.
टाइप RestartType [SWS_Os_00788] 📄 PDF
This data type defines the use of a Restart Task after terminating an OS - Application.
टाइप PhysicalTimeType [SWS_Os_00789] 📄 PDF
This data type is used for values returned by the conversion macro (see SWS_ Os_00393) OS_ TICKS2
टाइप CoreIdType [SWS_Os_00790] 📄 PDF
Core Id Type is a scalar that allows identifying a single core. The Core Id Type shall represent t he logical Core ID
टाइप SpinlockIdType [SWS_Os_00791] 📄 PDF
Spinlock Id Type identifies a spinlock instance and is used by the API functions: Get Spinlock, Release Spinlock and Try To Get Spinlock.
टाइप TryToGetSpinlockType [SWS_Os_00792] 📄 PDF
The Try To Get Spinlock Type indicates if the spinlock has been occupied or not.
उपयोग और मान श्रेणी
गणना प्रकार TryToGetSpinlockType हेडर फ़ाइल Os.h के माध्यम से प्रदान किया जाता है और यह एक स्थिति संकेतक के रूप में कार्य करता है कि क्या कॉलर द्वारा स्पिनलॉक को सफलतापूर्वक प्राप्त किया जा सका या नहीं [SWS_Os_00792]। यह ऑपरेटिंग सिस्टम में संबंधित अधिग्रहण संचालन के परिणाम को परिभाषित करता है [SWS_Os_00792]।
मान सीमा में ठीक दो निर्दिष्ट लिटरल्स शामिल हैं [SWS_Os_00792]:
TRYTOGETSPINLOCK_SUCCESS: संकेत देता है कि स्पिनलॉक सफलतापूर्वक प्राप्त किया जा सका [SWS_Os_00792]।TRYTOGETSPINLOCK_NOSUCCESS: इंगित करता है कि स्पिनलॉक प्राप्त नहीं किया जा सका [SWS_Os_00792]।
कॉनकरेंसी और सिस्टम संदर्भ
यह प्रकार मल्टी-कोर सिस्टम में सिंक्रोनाइज़ेशन के लिए उपयोग किया जाता है। व्याख्या: कॉलर को रिटर्न मान का सिंक्रोनस रूप से मूल्यांकन करना चाहिए ताकि तुरंत यह निर्धारित किया जा सके कि संरक्षित महत्वपूर्ण खंड (critical section) में प्रवेश किया जा सकता है या TRYTOGETSPINLOCK_NOSUCCESS के मामले में बिना अवरुद्ध प्रतीक्षा के एक वैकल्पिक प्रोग्राम शाखा चुनी जानी चाहिए [SWS_Os_00792]। प्रश्न Q-a04e72802dc41325 (खुला) इस प्रकार के लिए अपने स्वयं के कोई त्रुटि कोड या DET या DEM के माध्यम से त्रुटि संदेश निर्दिष्ट नहीं हैं [SWS_Os_00792]।
निदान उपकरणों के साथ परस्पर क्रिया
टूल एकीकरण के हिस्से के रूप में, ARTI मॉड्यूल विवरण फ़ाइल ऑपरेटिंग सिस्टम, उसकी स्थितियों और ऑपरेटिंग सिस्टम ऑब्जेक्ट्स के बारे में जानकारी प्रदर्शित करने और गतिशील मान निर्धारित करने के लिए सभी ORTI कंटेनरों का समर्थन करती है [SWS_Os_00829]। व्याख्या: ऐसे इंटरफ़ेस के माध्यम से डिबगिंग और ट्रेसिंग टूल के लिए स्पिनलॉक और उनकी स्थिति भी दृश्यमान होनी चाहिए [SWS_Os_00829]। प्रश्न Q-a488e055eb7d402e (खुला)
यह पाठ AI द्वारा उत्पन्न किया गया था और रिलीज़ R20-11 के AUTOSAR विनिर्देशों पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
टाइप IdleModeType [SWS_Os_00793] 📄 PDF
This data type identifies the idle mode behavior.
उपयोग और मान श्रेणी
अदिश (scalar) डेटा प्रकार IdleModeType हेडर Os.h के माध्यम से प्रदान किया जाता है और इसका उपयोग आइडल मोड में प्रोसेसर कोर के व्यवहार को निर्दिष्ट करने के लिए किया जाता है [SWS_Os_00793]। परिभाषित मान सीमा में मोड IDLE_NO_HALT निर्दिष्ट है, जिसके चयन पर प्रोसेसर कोर आइडल समय के दौरान कोई विशेष कार्रवाई नहीं करता है [SWS_Os_00793]।
व्याख्या: चूँकि IdleModeType एक अदिश आधार प्रकार से लिया गया है, इसलिए ऑपरेटिंग सिस्टम संदर्भ में इसे कोर आइडल व्यवहार के नियंत्रण सेवाओं के लिए एक कॉन्फ़िगरेशन मान या कॉल पैरामीटर के रूप में काम करना चाहिए। प्रश्न Q-911a39efb537f1bc (खुला) व्याख्या: मानक मान IDLE_NO_HALT के अलावा, ठोस ऑपरेटिंग सिस्टम कार्यान्वयन या माइक्रोकंट्रोलर आर्किटेक्चर संभावित रूप से अतिरिक्त हॉल्ट या पावर-सेविंग मोड प्रदान कर सकते हैं, भले ही विनिर्देश उद्धरण केवल विशिष्ट कार्रवाइयों की अनुपस्थिति का उल्लेख करता हो। प्रश्न Q-b6688f74cacbab45 (खुला)
प्रतिबंध और त्रुटि प्रबंधन
वर्तमान विनिर्देश दायरे में IdleModeType के लिए कोई विशिष्ट त्रुटि कोड, DET या DEM संदेश और पुनःप्रवेश या कॉल संदर्भों पर कोई आवश्यकताएं नहीं दिखाई गई हैं [SWS_Os_00793]। इसलिए कोई भी कार्यात्मक प्रतिबंध या पूर्व-शर्तें विशेष रूप से उच्च-स्तरीय ऑपरेटिंग सिस्टम इंटरफेस से उत्पन्न होती हैं जो इस प्रकार को संसाधित करते हैं।
यह पाठ विनिर्देश SWS_Os_00793 के आधार पर एक AI द्वारा उत्पन्न किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
टाइप AreaIdType [SWS_Os_91000] 📄 PDF
Area Id Type identifies a peripheral area and is used by the API functions: Read Peripheral X, Write Peripheral X and Modify Peripheral X AUTOSAR CP R20 - o f Document ID : AUTOSAR_SWS_OS
टाइप TimeInMicrosecondsType [SWS_Os_00794] 📄 PDF
-
टाइप CounterType [SWS_Os_00786] 📄 PDF
This data type identifies a counter.
टाइप TickType [SWS_Os_00001] 📄 PDF
typedef uint32 TickType;
This data type represents count values in ticks.
टाइप StatusType [SWS_Os_00002] 📄 PDF
typedef uint8 StatusType;
This data type represents standard OSEK OS status codes (e.g. E_OK, E_OS_ACCESS).
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)
टाइप TaskType [SWS_Os_00003] 📄 PDF
typedef uint8 TaskType;
This data type identifies an AUTOSAR OS task.
टाइप EventMaskType [SWS_Os_00004] 📄 PDF
typedef uint32 EventMaskType;
This data type represents an event mask for extended tasks.
टाइप AlarmType [SWS_Os_00005] 📄 PDF
typedef uint8 AlarmType;
This data type represents an AUTOSAR OS alarm identifier.
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/CP_MOD_Os- Status
- unspecified
- Version
AUTOSAR/AP/record/CP_MOD_Os@rel:R20-11#e8adf072- Content hash
e8adf072- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_OS.pdf#nameddest=SWS_Os_00016
gemini-3.8-flash-low· 2026-10-13 · जर्मन मूल