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
função 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).
funçã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().
função GetISRID [SWS_Os_00511] 📄 PDF
ISRType GetISRID (void);
This service returns the identifier of the currently executing ISR.
função 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
Através do serviço de sistema CallTrustedFunction (service ID 0x02), uma OS-Application confiável ou não confiável pode chamar uma Trusted Function definida para execução [SWS_Os_00097]. A interface é disponibilizada através do cabeçalho Os.h [SWS_Os_00097].
A chamada requer a passagem de dois parâmetros de entrada [SWS_Os_00097]:
FunctionIndex(tipoTrustedFunctionIndexType): Designa o índice da função a ser chamada [SWS_Os_00097].FunctionParams(tipoTrustedFunctionParameterRefType): Passa um ponteiro para os parâmetros da função de destino; se nenhum argumento for necessário, deve ser obrigatoriamente passado um ponteiro NULL [SWS_Os_00097].
Em relação ao comportamento temporal, a execução orienta-se pela rotina de destino: se a função chamada for síncrona, o serviço também se comportará de forma síncrona [SWS_Os_00097]. A função está implementada como reentrante, mas pode provocar um reagendamento (rescheduling) do sistema operacional durante a execução [SWS_Os_00097].
Como valor de retorno, o serviço fornece um valor de status do tipo StatusType [SWS_Os_00097]:
E_OK: A execução foi bem-sucedida e livre de erros [SWS_Os_00097].E_OS_SERVICEID: Nenhuma função válida está atribuída ao índice passado [SWS_Os_00097].
Esta nota de uso foi gerada automaticamente com base no AUTOSAR R20-11.
Guia do implementador em breve (complexidade I2)
função 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.
A função CheckISRMemoryAccess é um serviço de sistema síncrono e reentrante do módulo OS ([SWS_Os_00512]). Ela serve para verificar em tempo de execução os direitos de acesso à memória de uma ISR especificada para uma determinada região de memória.
Utilização e parâmetros
A chamada de CheckISRMemoryAccess espera três parâmetros de entrada ([SWS_Os_00512]):
ISRID: Referência à ISR a ser verificada (ISRType).Address: Endereço inicial da região de memória a ser examinada (MemoryStartAddressType).Size: Tamanho da região de memória (MemorySizeType).
Como valor de retorno, o serviço fornece o tipo AccessType. Este valor de retorno contém as permissões de acesso (leitura, escrita, execução) à região especificada e informa adicionalmente se a região de memória faz parte da área da stack ([SWS_Os_00512]).
Simultaneidade e integração
De acordo com a especificação, a função possui o Service-ID 0x03 e é declarada como reentrante ([SWS_Os_00512]). Ela está disponível através do cabeçalho Os.h ([SWS_Os_00512]). Códigos de erro específicos ou respostas explícitas a DET/DEM não são listados no presente extrato da especificação.
Esta nota de uso foi gerada automaticamente com base nos dados de especificação do AUTOSAR R20-11.
Guia do implementador em breve (complexidade I2)
função 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.
A função CheckTaskMemoryAccess representa um serviço síncrono do sistema operacional, disponibilizado através do cabeçalho Os.h e possuindo o ID de serviço 0x04 [SWS_Os_00513]. Ela serve para consultar as permissões de acesso à memória de uma tarefa específica para um determinado segmento de memória [SWS_Os_00513].
Parâmetros e valores de retorno
Ao ser chamado, o serviço aceita três parâmetros de entrada [SWS_Os_00513]:
Task ID(do tipoTaskType): referência à tarefa cujas permissões de acesso devem ser verificadas.Address(do tipoMemoryStartAddressType): o endereço inicial da região de memória a ser verificada.Size(do tipoMemorySizeType): o tamanho da região de memória a ser verificada.
Como valor de retorno, o serviço fornece uma variável do tipo AccessType [SWS_Os_00513]. Esse valor de retorno contém a informação se a região de memória especificada é acessível para a tarefa com permissões de gravação, leitura ou execução, e indica adicionalmente se a região faz parte da área de pilha [SWS_Os_00513]. Códigos de erro adicionais ou mensagens DET não são especificados para este serviço.
Concorrência e interação
O serviço é especificado como reentrante e pode, portanto, ser utilizado com segurança em contextos de execução concorrentes [SWS_Os_00513]. Enquanto o CheckTaskMemoryAccess consulta as permissões para regiões de memória em tempo de execução, o padrão AUTOSAR define, em descrições de módulos ARTI, interfaces e estruturas de dados por meio das quais ferramentas de depuração podem capturar e avaliar estados e atributos de objetos do sistema operacional [SWS_Os_00829].
Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I2)
função 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.
Utilização e semântica
A função CheckObjectAccess ([SWS_Os_00256]) determina de forma síncrona se uma determinada OS-Application possui permissão para usar o ID de um objeto do sistema operacional em chamadas de API. Para a identificação da aplicação é utilizado o parâmetro de entrada ApplID do tipo ApplicationType ([SWS_Os_00256]). Através de ObjectType (tipo ObjectTypeType) define-se qual tipo de objeto deve ser verificado; são suportados Task, Resource, Counter, Alarm e Schedule Table ([SWS_Os_00256]). Como terceiro parâmetro, segue o próprio objeto a ser examinado por meio da lista variável de parâmetros ... ([SWS_Os_00256]).
Como valor de retorno, a função fornece o tipo ObjectAccessType: se o acesso da aplicação ao objeto for permitido, é retornado ACCESS, caso contrário NO_ACCESS ([SWS_Os_00256]). O serviço é declarado através do cabeçalho Os.h e possui o ID de serviço 0x05 ([SWS_Os_00256]).
Concorrência, tratamento de erros e interação
O serviço é especificado como reentrante e pode, portanto, ser chamado em contextos de execução concorrentes ([SWS_Os_00256]). Códigos de erro específicos, valores de retorno para estados de erro ou notificações para o DET ou DEM não estão previstos na especificação para esta função ([SWS_Os_00256]).
Interpretação: o argumento variável ... provavelmente passa, na implementação, o identificador concreto do objeto de forma compatível com ObjectType. Pergunta Q-5cb52ff94bb07826 (aberta) Os objetos do sistema operacional verificados também se refletem nas informações de depuração ARTI, que registram e avaliam atributos e estados de objetos do sistema operacional ([SWS_Os_00829]).
Esta nota de uso foi gerada automaticamente com base na especificação R20-11.
Guia do implementador em breve (complexidade I1)
função 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
usar
A função síncrona do sistema CheckObjectOwnership serve para determinar a qual OS-Application pertence um determinado objeto do sistema operacional [SWS_Os_00017]. Entre os objetos que podem ser consultados por meio deste serviço estão Tasks, Interrupt Service Routines (ISRs), contadores, alarmes e Schedule Tables [SWS_Os_00017].
A função está disponível através do arquivo de cabeçalho Os.h e possui o ID de serviço 0x06 [SWS_Os_00017]. Ao ser utilizada, a função recebe dois parâmetros de entrada:
ObjectType: Como parâmetro de entrada do tipoObjectTypeType, identifica o tipo do objeto do sistema operacional passado em seguida [SWS_Os_00017]....: Passa o objeto concreto a ser examinado para o serviço [SWS_Os_00017].
Como valor de retorno, a função fornece o tipo de dados ApplicationType [SWS_Os_00017]. Este contém o identificador da OS-Application à qual o objeto verificado está atribuído [SWS_Os_00017].
Tratamento de erros e propriedades de execução
Caso o objeto consultado não exista no sistema, o serviço retorna o valor de retorno INVALID_OSAPPLICATION [SWS_Os_00017].
Quanto ao comportamento de concorrência, o CheckObjectOwnership é especificado como reentrante e opera de forma totalmente síncrona [SWS_Os_00017]. Não existem parâmetros de entrada e saída (inout ou out) além do valor de retorno [SWS_Os_00017].
Esta nota de uso baseia-se na especificação SWS_Os_00017 do AUTOSAR Classic R20-11.
Guia do implementador em breve (complexidade I1)
função 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.
Utilização e parâmetros
O serviço de sistema StartScheduleTableRel inicia o processamento de uma schedule table relativamente ao valor atual do contador («Now») do contador subjacente [SWS_Os_00347]. A chamada é executada de forma síncrona e está disponível através da interface Os.h com o service ID 0x07 [SWS_Os_00347].
ScheduleTableID(entrada,ScheduleTableType): Identificador da schedule table a ser iniciada [SWS_Os_00347].Offset(entrada,TickType): Número relativo de pulsos de contagem no contador antes que o processamento da tabela comece [SWS_Os_00347].
Valores de retorno e tratamento de erros
A função retorna um código de status do tipo StatusType [SWS_Os_00347]:
E_OK: A schedule table foi iniciada sem erros [SWS_Os_00347].E_OS_STATE: A schedule table indicada já foi iniciada [SWS_Os_00347].E_OS_ID(apenas no statusEXTENDED): OScheduleTableIDindicado é inválido [SWS_Os_00347].E_OS_VALUE(apenas no statusEXTENDED): O parâmetroOffseté igual a0ou excede o valor(OsCounterMaxAllowedValue - InitialOffset)[SWS_Os_00347].
Simultaneidade e restrições
A função é especificada como reentrante [SWS_Os_00347]. Não existem parâmetros de saída ou de entrada/saída [SWS_Os_00347].
Esta nota de uso baseia-se na especificação AUTOSAR CP R20-11.
Guia do implementador em breve (complexidade I2)
função 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.
A função síncrona e reentrante StartScheduleTableAbs serve para iniciar uma tabela de escalonamento (Schedule Table) em uma contagem absoluta predefinida no contador subjacente ([SWS_Os_00358]). O serviço está disponível através do cabeçalho Os.h e é identificado pelo Service-ID 0x08 ([SWS_Os_00358]).
Na chamada, são passados dois parâmetros de entrada ([SWS_Os_00358]):
ScheduleTableID: Identificador da Schedule Table a ser iniciada.Start: Valor absoluto de ticks do contador no qual a Schedule Table é iniciada.
Como valor de retorno, a função fornece o status do tipo StatusType ([SWS_Os_00358]):
E_OK: O processo de inicialização foi bem-sucedido.E_OS_STATE: A Schedule Table especificada já foi iniciada anteriormente.E_OS_ID: OScheduleTableIDpassado é inválido (retornado apenas no statusEXTENDED).E_OS_VALUE: O valor deStartexcede o valor máximo permitido do contadorOsCounterMaxAllowedValue(retornado apenas no statusEXTENDED).
Em relação à interação mútua, o estado e os atributos dinâmicos de objetos do sistema operacional, como Schedule Tables, podem ser avaliados e exibidos por ferramentas de depuração conectadas por meio de descrições de módulo ARTI ([SWS_Os_00829]). Interpretação: O contexto de chamada deve abranger principalmente níveis de tarefa, uma vez que nenhuma restrição explícita é fornecida no extrato da especificação. Pergunta Q-213de28d0345ccb1 (aberta)
Este texto foi gerado por uma IA e baseia-se exclusivamente nas especificações da release R20-11.
Guia do implementador em breve (complexidade I2)
função 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.
A função de sistema síncrona StopScheduleTable ([SWS_Os_00006]) cancela a execução de uma schedule table em andamento imediatamente a qualquer momento do processamento. O serviço está declarado no cabeçalho Os.h e possui o service ID 0x09 ([SWS_Os_00006]). Como único parâmetro de entrada atua ScheduleTableID do tipo ScheduleTableType, o qual especifica a schedule table a ser parada; não existem parâmetros de entrada/saída ou puramente de saída ([SWS_Os_00006]).
A chamada síncrona fornece como valor de retorno um código de status do tipo StatusType ([SWS_Os_00006]):
E_OK: O processamento da schedule table foi parado sem erros ([SWS_Os_00006]).E_OS_NOFUNC: A schedule table indicada já se encontrava no estado parado ([SWS_Os_00006]).E_OS_ID: O identificadorScheduleTableIDpassado é inválido. Este valor de retorno só é gerado, segundo a especificação, no statusEXTENDED([SWS_Os_00006]).
A função é definida como reentrante ([SWS_Os_00006]). Interpretação: Diante da reentrância declarada, a chamada síncrona a partir de múltiplos contextos de OS deve ser permitida, embora restrições de contexto concretas estejam ausentes no presente extrato de especificação. Para o monitoramento em tempo de execução, o estado e os atributos dinâmicos de objetos do OS, como schedule tables, podem ser transmitidos através de arquivos de descrição ARTI para ferramentas de depuração e análise conectadas ([SWS_Os_00829]). Pergunta Q-9cb147c4bc7dba7e (aberta)
Nota: Esta explicação foi gerada automaticamente com base na especificação do AUTOSAR Classic Release R20-11.
Guia do implementador em breve (complexidade I2)
função 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.
A função NextScheduleTable serve para a comutação síncrona do processamento de uma schedule table em andamento para uma schedule table seguinte [SWS_Os_00191]. O serviço é concebido como reentrante e declarado através do cabeçalho Os.h [SWS_Os_00191].
Parâmetros e chamada
À chamada são passados dois parâmetros de entrada do tipo ScheduleTableType [SWS_Os_00191]:
ScheduleTableID_From: Identificador da schedule table atualmente processada [SWS_Os_00191].ScheduleTableID_To: Identificador da schedule table que fornece a sequência subsequente de pontos de expiração (Expiry Points) [SWS_Os_00191].
Valores de retorno e tratamento de erros
A função retorna um valor de status do tipo StatusType [SWS_Os_00191]:
E_OK: A solicitação de troca foi emitida sem erros [SWS_Os_00191].E_OS_ID: Retornado exclusivamente com o statusEXTENDEDconfigurado, caso pelo menos um dos identificadores de tabela passados seja inválido [SWS_Os_00191].E_OS_NOFUNC: A tabela de origemScheduleTableID_Fromnão se encontra no estado iniciado [SWS_Os_00191].E_OS_STATE: A tabela de destinoScheduleTableID_Tojá foi iniciada ativamente ou já está agendada como tabela seguinte [SWS_Os_00191].
Interação e diagnóstico
Para observação e análise do sistema operacional, descrições de módulo ARTI suportam contêineres ORTI correspondentes, com os quais ferramentas de depuração podem, entre outras coisas, avaliar e apresentar estados dinâmicos de objetos do sistema operacional [SWS_Os_00829].
Este texto foi gerado automaticamente. Todas as informações baseiam-se exclusivamente nas especificações do release AUTOSAR R20-11.
Guia do implementador em breve (complexidade I2)
função StartScheduleTableSynchron [SWS_Os_00201] 📄 PDF
StatusType StartScheduleTableSynchron (ScheduleTableType ScheduleTableID);
This service starts an explicitly synchronized schedule table synchronously.
usar
O serviço de sistema StartScheduleTableSynchron serve para iniciar de forma síncrona uma schedule table explicitamente sincronizada [SWS_Os_00201]. A função está declarada no arquivo de cabeçalho Os.h e possui o service ID 0x0b [SWS_Os_00201]. Como único parâmetro de passagem, a função espera o parâmetro de entrada ScheduleTableID do tipo ScheduleTableType, que referencia univocamente a tabela a ser iniciada [SWS_Os_00201]. Parâmetros de entrada/saída ou puramente de saída não estão presentes [SWS_Os_00201]. O processamento ocorre de forma síncrona e retorna um valor de retorno do tipo StatusType [SWS_Os_00201].
Tratamento de erros
Em caso de fluxo sem erros, a chamada de função retorna o código de status E_OK [SWS_Os_00201]. Em caso de erros, os seguintes valores de retorno são especificados:
E_OS_STATE: A schedule table indicada já se encontra no estado iniciado e não pode ser iniciada novamente de forma síncrona [SWS_Os_00201].E_OS_ID: OScheduleTableIDpassado é inválido [SWS_Os_00201]. Esta verificação de erro e notificação de erro está ativa exclusivamente no status EXTENDED [SWS_Os_00201].
Simultaneidade e restrições
A função é especificada como reentrante [SWS_Os_00201]. Como a chamada repetida para uma tabela já ativa é rejeitada com E_OS_STATE, o chamador deve assegurar que a tabela de destino já não esteja em execução antes da chamada [SWS_Os_00201].
Interação
Transições de estado e propriedades dinâmicas de objetos do sistema operacional podem ser acompanhadas para ferramentas de teste e diagnóstico através de arquivos de descrição de módulo ARTI e contêineres ORTI [SWS_Os_00829]. Depuradores externos utilizam essas descrições para avaliar o status interno dos objetos de OS em tempo de execução [SWS_Os_00829].
Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I2)
função SyncScheduleTable [SWS_Os_00199] 📄 PDF
StatusType SyncScheduleTable (ScheduleTableType ScheduleTableID, TickType Value);
Service SyncScheduleTable.
O serviço de sistema operacional síncrono e reentrante SyncScheduleTable serve para passar um valor de contador a uma schedule table e iniciar o processo de sincronização ([SWS_Os_00199]). A função é disponibilizada através do arquivo de cabeçalho Os.h ([SWS_Os_00199]).
Parâmetros e valores de retorno
A função espera dois parâmetros de entrada ([SWS_Os_00199]):
Schedule Table ID: Identificador da schedule table a ser sincronizada do tipoScheduleTableType([SWS_Os_00199]).Value: Valor de contagem atual do contador de sincronização do tipoTickType([SWS_Os_00199]).
O valor de retorno do tipo StatusType sinaliza com E_OK a execução sem erros ([SWS_Os_00199]).
Tratamento de erros e condições de contorno
Se a tabela estiver no estado SCHEDULETABLE_STOPPED no momento da chamada, é retornado o erro E_OS_STATE ([SWS_Os_00199]). Se o sistema operacional estiver configurado no status EXTENDED, verificações adicionais entram em vigor ([SWS_Os_00199]):
E_OS_ID: O ID de tabela indicado é inválido ou a tabela não pode ser sincronizada porqueOs Schedule Tbl Sync Strategynão está configurado ou está definido comoIMPLICIT([SWS_Os_00199]).E_OS_VALUE: O valor de contadorValuepassado está fora da faixa permitida ([SWS_Os_00199]).
Interação e diagnóstico
Estados e atributos dinâmicos de objetos do sistema operacional, como schedule tables, podem ser avaliados por ferramentas de depuração e diagnóstico conectadas através de descrições de módulo ARTI e contêineres ORTI ([SWS_Os_00829]).
Este texto foi gerado por uma IA com base no AUTOSAR R20-11.
Guia do implementador em breve (complexidade I2)
função SetScheduletableAsync [SWS_Os_00422] 📄 PDF
StatusType SetScheduletableAsync (ScheduleTableType ScheduleTableID);
This service stops synchronization of a schedule table.
função 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).
função IncrementCounter [SWS_Os_00399] 📄 PDF
StatusType IncrementCounter (CounterType CounterID);
This service increments a software counter.
usar
A função síncrona de sistema operacional IncrementCounter destina-se ao avanço explícito de um contador de software [SWS_Os_00399]. Ela espera como parâmetro de entrada o identificador CounterID do tipo CounterType, não modifica outros parâmetros e está disponível através do cabeçalho Os.h [SWS_Os_00399]. Deve-se observar que a chamada pode causar um reagendamento imediato do sistema operacional [SWS_Os_00399].
Tratamento de erros
O valor de retorno do tipo StatusType fornece informações sobre o sucesso da operação: em operação regular, E_OK reporta a execução sem erros [SWS_Os_00399]. Com a verificação de status estendida ativada (status EXTENDED), o serviço retorna E_OS_ID se um ID de contador inválido tiver sido especificado ou se o contador referenciado estiver implementado em hardware e, consequentemente, não puder ser incrementado via software [SWS_Os_00399].
Concorrência e diagnóstico
A função foi projetada como reentrante e pode, portanto, ser chamada concorrentemente [SWS_Os_00399]. Um possível reagendamento provavelmente ocorre, interpretação: se o avanço do contador acionar ações dependentes, tais como expirações de alarme ou ativações de tarefas. Pergunta Q-9004b5ced9b96230 (aberta) Para a observação de objetos do sistema operacional, como contadores, bem como de seu estado dinâmico, as descrições de módulos ARTI auxiliam ferramentas de análise conectadas no monitoramento em tempo de execução [SWS_Os_00829].
Esta nota de uso foi gerada automaticamente e baseia-se nas especificações do release R20-11 do AUTOSAR.
Guia do implementador em breve (complexidade I2)
função 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).
função 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.
função TerminateApplication [SWS_Os_00258] 📄 PDF
StatusType TerminateApplication (ApplicationType Application, RestartType RestartOption);
Service TerminateApplication.
A função síncrona e reentrante TerminateApplication serve para finalizar uma OS-Application e está disponível através do arquivo de cabeçalho Os.h [SWS_Os_00258]. A chamada é permitida a partir do contexto de uma tarefa, de uma ISR de categoria 2 bem como de um error hook específico da aplicação [SWS_Os_00258].
Como parâmetros de entrada, são passados o identificador da aplicação de destino (Application) e o comportamento de reinício (Restart Option) [SWS_Os_00258]:
- Se o próprio chamador pertencer à aplicação indicada em
Application, a execução leva a uma autoterminação [SWS_Os_00258]. - Através de
Restart Option, define-se se a OS-Application deve ser reiniciada em seguida (RESTART) ou não (NO_RESTART) [SWS_Os_00258].
A função retorna um valor de status do tipo StatusType [SWS_Os_00258]:
E_OKsinaliza uma finalização sem erros [SWS_Os_00258].E_OS_STATEindica que o estado atual deApplicationnão permite a finalização [SWS_Os_00258].- No status EXTENDED, são realizadas verificações de erro adicionais:
E_OS_IDem caso de um ID de aplicação inválido,E_OS_VALUEem caso de um valor de parâmetro inválido paraRestart Option, bem comoE_OS_ACCESScaso falte ao chamador a permissão para finalizarApplication[SWS_Os_00258].
Esta nota de uso foi gerada automaticamente com base na especificação SWS_Os_00258.
Guia do implementador em breve (complexidade I2)
função 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.
usar
O serviço síncrono de sistema AllowAccess (ID de serviço 0x13) serve para definir o estado da própria OS-Application de APPLICATION_RESTARTING para APPLICATION_ACCESSIBLE ([SWS_Os_00501]). A função está disponível por meio do arquivo de cabeçalho Os.h, não espera parâmetros de entrada e retorna um valor de status do tipo StatusType ([SWS_Os_00501]). Em caso de execução bem-sucedida da alteração de estado, a chamada retorna o valor de retorno E_OK ([SWS_Os_00501]).
Tratamento de erros e simultaneidade
Caso a OS-Application chamadora não esteja no estado APPLICATION_RESTARTING, a execução falha e a função retorna o valor de erro E_OS_STATE ([SWS_Os_00501]). Mensagens específicas de DET ou DEM não estão definidas na especificação para este serviço. Em relação ao comportamento de concorrência, a função é classificada como reentrante e pode, portanto, ser executada com segurança em fluxos paralelos ([SWS_Os_00501]).
Interação e diagnóstico
Interpretação: a chamada provavelmente ocorre de forma típica no final de uma fase de reinício própria da aplicação, assim que todos os preparativos tiverem sido concluídos e outras aplicações puderem acessar novamente os recursos. Pergunta Q-f43a3f702d5d2428 (aberta) Os estados dinâmicos do sistema operacional e dos objetos de OS associados podem ser avaliados e visualizados no âmbito do diagnóstico do sistema através de arquivos de descrição ARTI padronizados e ferramentas de depuração correspondentes ([SWS_Os_00829]).
Este texto foi criado por uma IA e baseia-se no estado de especificação R20-11.
Guia do implementador em breve (complexidade I1)
função GetApplicationState [SWS_Os_00499] 📄 PDF
StatusType GetApplicationState (ApplicationType Application, ApplicationStateRefType Value);
This service returns the current state of an OS - Application.
função 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
função GetCore [SWS_Os_00674] 📄 PDF
CoreIdType GetCoreID (void);
The function returns a unique core identifier.
função 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.
A função síncrona StartCore inicia o núcleo de processador especificado por meio do parâmetro Core ID [SWS_Os_00676]. A função não possui valor de retorno direto, mas passa o resultado da execução ao chamador por meio do parâmetro OUT Status [SWS_Os_00676]. Se um núcleo tiver sido iniciado por meio desta função, Start OS deverá ser chamado em seguida no núcleo em questão [SWS_Os_00676].
Aplicam-se restrições estritas para o contexto de chamada e a concorrência: StartCore é especificado como não reentrante (Non Reentrant) [SWS_Os_00676]. Não há suporte para uma chamada após a inicialização do sistema operacional por meio de Start OS() [SWS_Os_00676]. O serviço é implementado de forma síncrona e é disponibilizado através do arquivo de cabeçalho Os.h com o Service-ID 0x17 [SWS_Os_00676].
O tratamento de erros ocorre por meio do parâmetro Status, que pode assumir os seguintes valores, dependendo da configuração de status [SWS_Os_00676]:
- No status padrão (Standard Status),
E_OKindica uma execução livre de erros [SWS_Os_00676]. - No status estendido (extended status),
E_OKtambém confirma uma inicialização bem-sucedida [SWS_Os_00676]. E_OS_IDrelata que oCore IDpassado é inválido [SWS_Os_00676].E_OS_ACCESSsinaliza uma chamada inadmissível após a inicialização do sistema operacional [SWS_Os_00676].E_OS_STATEindica que o núcleo de processador solicitado já está ativado [SWS_Os_00676].
Esta nota de uso foi gerada por uma IA e baseia-se exclusivamente na especificação do sistema operacional AUTOSAR Classic da release R20-11.
Guia do implementador em breve (complexidade I2)
função 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.
Utilização e contexto de chamada
A função síncrona e não reentrante StartNonCore inicializa o núcleo de processador especificado através do parâmetro CoreID [SWS_Os_00682]. Ela pode ser chamada após o início do sistema operacional via StartOS() e está disponível através do arquivo de cabeçalho Os.h [SWS_Os_00682]. Através do parâmetro de saída Status, o chamador pode verificar se o processo de inicialização foi bem-sucedido [SWS_Os_00682].
Tratamento de erros e valores de status
A função não possui um valor de retorno direto, mas reporta o resultado da execução através do parâmetro de ponteiro Status [SWS_Os_00682]:
E_OK: A operação foi executada com sucesso e sem erros [SWS_Os_00682].E_OS_ID: OCoreIDespecificado é inválido (no status padrão) [SWS_Os_00682].E_OS_STATE: O núcleo de processador especificado já está ativado (no status padrão) [SWS_Os_00682].
Restrições e condições de sequência
Como interface não reentrante, StartNonCore não pode ser executada concorrentemente [SWS_Os_00682]. Além disso, aplica-se a exigência estrita de que StartOS não deve, sob hipótese alguma, ser chamado em núcleos de processador ativados por meio desta função; caso contrário, o comportamento do sistema é não especificado [SWS_Os_00682].
Esta nota de uso foi gerada de forma automatizada com base na especificação do AUTOSAR Classic R20-11.
Guia do implementador em breve (complexidade I1)
função 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.
A função de sistema operacional síncrona e reentrante GetSpinlock ([SWS_Os_00686]) serve para a ocupação de uma variável de spinlock por meio do parâmetro de transferência SpinlockId (tipo SpinlockIdType). Durante a execução, a função utiliza um mecanismo de polling ativo («busy waiting»), sem que seja disparado um desescalonamento da tarefa chamadora ([SWS_Os_00686]).
A função só retorna quando o bloqueio for adquirido com sucesso ou tiver ocorrido um erro. Como valor de retorno, GetSpinlock fornece o StatusType ([SWS_Os_00686]):
E_OK: O bloqueio foi ocupado sem erros (no status Standard e Extended).E_OS_ID: OSpinlockIdfornecido é inválido (apenas no status Extended).E_OS_INTERFERENCE_DEADLOCK: Uma tarefa tenta ocupar o spinlock enquanto ele já está ocupado por uma tarefa no mesmo Core (apenas no status Extended).E_OS_NESTING_DEADLOCK: Uma tarefa tenta solicitar o spinlock enquanto uma tarefa do mesmo Core já retém outro spinlock, o que poderia causar um deadlock (apenas no status Extended).E_OS_ACCESS: O spinlock especificado não pode ser acessado (apenas no status Extended).
No âmbito do monitoramento do sistema e da análise de erros, o sistema operacional fornece informações dinâmicas de estado sobre objetos do OS, as quais, de acordo com [SWS_Os_00829], podem ser avaliadas por ferramentas de depuração através de contêineres ARTI e ORTI; presumivelmente, situações de bloqueio em spinlocks também podem ser rastreadas por esse meio. Pergunta Q-bac194d4132f6e88 (aberta)
Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I2)
função 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.
A função síncrona e reentrante ReleaseSpinlock libera uma variável de spinlock previamente ocupada ([SWS_Os_00695]). A instância de spinlock a ser liberada é especificada através do parâmetro de transferência SpinlockId do tipo SpinlockIdType ([SWS_Os_00695]).
Condições de ordenação e restrições
Aplicam-se diretrizes temporais e estruturais estritas para a chamada ([SWS_Os_00695]):
- Antes de encerrar uma tarefa, todas as variáveis de spinlock previamente ocupadas por meio de
GetSpinlock()devem ser liberadas novamente ([SWS_Os_00695]). - Antes da chamada de
WaitEvent, todos os spinlocks retidos devem ser liberados sem exceção ([SWS_Os_00695]). - A liberação deve ocorrer na ordem correta de aninhamento; uma tentativa de liberação com spinlocks de nível superior ou recursos ainda ocupados falha ([SWS_Os_00695]).
Valores de retorno e tratamento de erros
Em caso de sucesso, o serviço retorna E_OK tanto no status padrão quanto no estendido ([SWS_Os_00695]). No status estendido (Extended Status), códigos de erro específicos são definidos ([SWS_Os_00695]):
E_OS_ID: ASpinlockIdpassada é inválida ([SWS_Os_00695]).E_OS_STATE: O spinlock não está ocupado pela tarefa chamadora ([SWS_Os_00695]).E_OS_ACCESS: O spinlock não pode ser acessado ([SWS_Os_00695]).E_OS_NOFUNC: Tentativa de liberar o spinlock enquanto outro spinlock ou recurso ainda precisa ser liberado previamente ([SWS_Os_00695]).
A função está disponível através do cabeçalho Os.h ([SWS_Os_00695]). Arquivos de descrição ARTI suportam contêineres ORTI para a avaliação dinâmica de estado e desempenho de objetos do sistema operacional ([SWS_Os_00829]).
Este texto foi criado por uma IA e curado pelo autodocs.
Guia do implementador em breve (complexidade I2)
função 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.
A função de sistema operacional síncrona e reentrante TryToGetSpinlock serve para a ocupação não bloqueante de uma instância de spinlock através do cabeçalho Os.h [SWS_Os_00703]. Ela assume a mesma funcionalidade básica que GetSpinlock, mas não espera ativamente se o spinlock solicitado já estiver ocupado por uma TASK em outro Core [SWS_Os_00703].
Parâmetros e valores de retorno
SpinlockId(entrada): Referencia a instância concreta de spinlock que deve ser bloqueada [SWS_Os_00703].Success(saída): Indica através do tipoTryToGetSpinlockType*se o lock pôde ser ocupado ou não [SWS_Os_00703]. Se o bloqueio estiver ocupado em outro Core, a função define este parâmetro adequadamente e retorna comE_OK[SWS_Os_00703].- Valor de retorno: Fornece
E_OKno status Standard e Extended se não houver erro [SWS_Os_00703].
Tratamento de erros e condições de contorno
No status Extended, o sistema operacional verifica chamadas inválidas, bem como cenários de deadlock [SWS_Os_00703]:
E_OS_ID: OSpinlockIdpassado é inválido [SWS_Os_00703].E_OS_ACCESS: O spinlock não pode ser acessado [SWS_Os_00703].E_OS_INTERFERENCE_DEADLOCK: Uma TASK tenta ocupar o bloqueio enquanto o mesmo bloqueio já é retido por uma TASK no mesmo Core [SWS_Os_00703].E_OS_NESTING_DEADLOCK: Uma TASK tenta ocupar um spinlock enquanto já retém outro spinlock, o que poderia levar a um deadlock [SWS_Os_00703].
Esta nota de uso foi gerada automaticamente por um sistema de IA com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I2)
função 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.
A função síncrona de sistema ShutdownAllCores com o ID de serviço 0x1c serve para o desligamento controlado e completo do sistema operacional AUTOSAR em todos os núcleos de processador existentes ([SWS_Os_00713]). Assim que o serviço é chamado, a função força um shutdown em todos os outros Cores, de modo que o sistema operacional seja desligado em todos os núcleos AUTOSAR ([SWS_Os_00713]).
Contexto de chamada e concorrência
A função está declarada no cabeçalho Os.h e é especificada como reentrante ([SWS_Os_00713]). A chamada de ShutdownAllCores é irrestritamente permitida tanto no nível de tarefa (TASK level) quanto no nível de interrupção (ISR level) ([SWS_Os_00713]). Além disso, o serviço também pode ser executado internamente ao sistema operacional diretamente pelo AUTOSAR OS ([SWS_Os_00713]).
Parâmetros e fluxo de controle
A interface espera como único parâmetro de entrada Error do tipo StatusType ([SWS_Os_00713]). Para este parâmetro, deve obrigatoriamente ser passado um código de erro válido, suportado pelo sistema operacional AUTOSAR ([SWS_Os_00713]). Não existem parâmetros de saída ou de entrada/saída ([SWS_Os_00713]). Como a função nunca retorna ao chamador após disparar o shutdown em todo o sistema, ela não possui valor de retorno (void) ([SWS_Os_00713]).
Esta nota de utilização foi gerada automaticamente com base na especificação de AUTOSAR R20-11.
Guia do implementador em breve (complexidade I2)
função 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.
A função síncrona ControlIdle permite que o chamador defina a ação que é executada durante o tempo ocioso do sistema operacional (quando nem uma tarefa nem uma ISR está ativa) [SWS_Os_00769]. Isso serve primariamente para a implementação de medidas de economia de energia. Os modos ociosos reais são dependentes de hardware e não padronizados; o modo padrão em cada núcleo de processador é IDLE_NO_HALT [SWS_Os_00769]. A interface é disponibilizada através do arquivo de cabeçalho Os.h [SWS_Os_00769].
A função espera dois parâmetros de entrada:
CoreID(do tipoCoreIdType): Seleciona o núcleo de processador cujo modo ocioso deve ser definido [SWS_Os_00769].IdleMode(do tipoIdleModeType): Determina o modo que deve ser executado no tempo ocioso [SWS_Os_00769].
Se parâmetros válidos foram transmitidos e nenhum erro ocorreu, a função retorna E_OK [SWS_Os_00769], [SWS_Os_00770]. Se o CoreID ou IdleMode especificado for inválido – por exemplo, porque o núcleo referenciado não existe ou o modo é desconhecido –, a chamada no status EXTENDED retorna o código de erro E_OS_ID [SWS_Os_00769], [SWS_Os_00771]. Em sistemas de núcleo único (single-core), a verificação do parâmetro CoreID é omitida [SWS_Os_00771].
Em relação à concorrência, a função é especificada como não reentrante (Non Reentrant) [SWS_Os_00769]. Interpretação: Os chamadores devem, portanto, assegurar que as chamadas de ControlIdle não ocorram simultaneamente ou de forma não coordenada a partir de diferentes contextos de execução. Pergunta Q-7f239cb54752e826 (aberta)
Esta nota de utilização foi gerada por uma IA com base na especificação AUTOSAR Classic R20-11.
Guia do implementador em breve (complexidade I1)
função ReadPeripheral [SWS_Os_91013] 📄 PDF
StatusType ReadPeripheral8 (AreaIdType Area, const uint8* Address, uint8* ReadValue);
This service returns the content of a given memory location (
).usar
A função ReadPeripheral (constando na declaração como ReadPeripheral8) serve para a leitura síncrona de um endereço de memória dentro de uma área de periféricos de hardware definida [SWS_Os_91013]. A interface está disponível através do arquivo de cabeçalho Os.h [SWS_Os_91013]. Como parâmetros de entrada, o serviço espera a referência de área Area do tipo AreaIdType bem como o endereço de destino Address como ponteiro para const uint8 [SWS_Os_91013]. O conteúdo lido da posição de memória é disponibilizado através do parâmetro de saída ReadValue [SWS_Os_91013].
Tratamento de erros
O serviço retorna um código de status do tipo StatusType, em que E_OK indica a execução sem erros [SWS_Os_91013]. Com a verificação de status estendido ativada (EXTENDED status), chamadas errôneas são diferenciadas com base em valores de erro específicos [SWS_Os_91013]:
E_OS_ID: O identificador de área passadoAreaestá fora da faixa válida [SWS_Os_91013].E_OS_VALUE: O endereço de memória indicadoAddressnão pertence à área de periféricos indicada [SWS_Os_91013].E_OS_CALLEVEL: A chamada ocorreu a partir de um contexto inadmissível [SWS_Os_91013].E_OS_ACCESS: A tarefa chamadora ou ISR não deve dispor da permissão necessária para o acesso à área (interpretação) [SWS_Os_91013]. Pergunta Q-19e2c22110352ebb (aberta)
Simultaneidade e restrições
O serviço de API possui o ID de serviço 0x28, opera de forma síncrona e foi concebido como reentrante [SWS_Os_91013]. As chamadas são permitidas apenas a partir de contextos admissíveis de tarefa ou ISR; chamadas inadmissíveis são rejeitadas no status estendido com E_OS_CALLEVEL [SWS_Os_91013].
Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I1)
função ReadPeripheral16 [SWS_Os_91015] 📄 PDF
StatusType ReadPeripheral16 (AreaIdType Area, const uint16* Address, uint16* ReadValue);
This service returns the content of a given memory location (
).A função síncrona e reentrante do sistema operacional ReadPeripheral16 serve para ler o valor de 16 bits de um endereço de memória especificado dentro de uma área de periféricos definida [SWS_Os_91015]. O serviço do sistema é definido sob o ID de serviço 0x29 e está disponível através do arquivo de cabeçalho Os.h [SWS_Os_91015].
Utilização e parâmetros
Ao serviço são passados como parâmetros de entrada a referência à área de periféricos de hardware (Area do tipo AreaIdType) bem como o endereço de destino na memória (Address do tipo const uint16*) [SWS_Os_91015]. Através do parâmetro de saída Read Value do tipo de ponteiro uint16*, é disponibilizado o conteúdo de 16 bits determinado no endereço de memória [SWS_Os_91015]. Em caso de execução sem erros, a função retorna o valor de retorno E_OK do tipo StatusType [SWS_Os_91015].
Tratamento de erros e restrições de acesso
No status estendido (EXTENDED status), o sistema operacional verifica a validade da chamada e reporta erros através de códigos de status específicos [SWS_Os_91015]:
E_OS_ID: O identificador de área passadoAreaestá fora da faixa válida [SWS_Os_91015].E_OS_VALUE: O endereço de memória indicadoAddressnão pertence à área de periféricos especificadaArea[SWS_Os_91015].E_OS_CALLEVEL: A chamada ocorreu em um contexto inadmissível para a função de API [SWS_Os_91015].E_OS_ACCESS: A tarefa chamadora ou a rotina de serviço de interrupção (ISR) não está autorizada a acessar a área indicada [SWS_Os_91015].
Esta nota de uso foi gerada automaticamente e baseia-se exclusivamente nas diretrizes da especificação AUTOSAR Classic R20-11.
Guia do implementador em breve (complexidade I1)
função ReadPeripheral32 [SWS_Os_91014] 📄 PDF
StatusType ReadPeripheral32 (AreaIdType Area, const uint32* Address, uint32* ReadValue);
This service returns the content of a given memory location (
).usar
A função síncrona e reentrante ReadPeripheral32 lê o conteúdo de um endereço de memória especificado ([SWS_Os_91014]). O chamador passa a referência para a área de periféricos de hardware através do parâmetro Area e o endereço de memória desejado através de Address ([SWS_Os_91014]). O valor de 32 bits lido neste endereço é disponibilizado de forma síncrona através do parâmetro de saída ReadValue ([SWS_Os_91014]). A interface é disponibilizada através do cabeçalho Os.h ([SWS_Os_91014]).
Tratamento de erros
O serviço retorna um valor de status do tipo StatusType. Em caso de execução sem erros, ele fornece E_OK ([SWS_Os_91014]). Se o status estendido estiver configurado (EXTENDED status), são retornados os seguintes códigos de erro ([SWS_Os_91014]):
E_OS_ID: O identificador de área passadoAreaestá fora da faixa permitida ([SWS_Os_91014]).E_OS_VALUE: O endereço indicadoAddressnão pertence à área indicadaArea([SWS_Os_91014]).E_OS_CALLEVEL: A função foi chamada em um contexto de chamada inadmissível ([SWS_Os_91014]).E_OS_ACCESS: A tarefa chamadora ou a ISR chamadora não dispõe da permissão de acesso necessária; segundo interpretação, isso deve referir-se à área de periféricos ([SWS_Os_91014]). Pergunta Q-e5893b29acc5133a (aberta)
Simultaneidade e restrições
ReadPeripheral32 está especificada como reentrante e pode ser chamada em paralelo por múltiplos fluxos de controle ([SWS_Os_91014]). Como o serviço opera de forma síncrona, a chamada retorna somente após a conclusão do procedimento de leitura ([SWS_Os_91014]). Os chamadores devem passar ponteiros de memória válidos e assegurar que a chamada ocorra a partir de um contexto permitido para a API de OS ([SWS_Os_91014]).
Este texto foi gerado por uma IA e baseia-se exclusivamente nas especificações da release R20-11.
Guia do implementador em breve (complexidade I1)
função WritePeripheral [SWS_Os_91010] 📄 PDF
StatusType WritePeripheral8 (AreaIdType Area, uint8* Address, uint8 WriteValue);
This service writes the
usar
A função WritePeripheral (também designada na especificação como Write Peripheral8) é um serviço síncrono e reentrante do sistema operacional para escrever um valor em um endereço de memória especificado de uma área de periféricos [SWS_Os_91010]. A declaração é disponibilizada através do arquivo de cabeçalho Os.h [SWS_Os_91010]. A chamada espera como parâmetros a referência à área de periféricos de hardware (Area do tipo AreaIdType), o endereço de memória (Address do tipo uint8*) bem como o valor a ser escrito (Write Value do tipo uint8) [SWS_Os_91010]. Interpretação: Embora Write Value esteja listado em formato tabular sob os parâmetros de saída no texto da especificação, com base na passagem de valor na assinatura e na descrição, deve tratar-se do valor de entrada a ser escrito. Pergunta Q-619c69ba7a85ed92 (aberta)
Tratamento de erros
A função retorna um estado do tipo StatusType [SWS_Os_91010]:
E_OK: A operação de escrita foi realizada sem erros [SWS_Os_91010].E_OS_ID: O ID de área passado está fora da faixa válida (no status estendido) [SWS_Os_91010].E_OS_VALUE: O endereço de destino não pertence à área especificada (no status estendido) [SWS_Os_91010].E_OS_CALLEVEL: Contexto de chamada inadmissível da função de API (no status estendido) [SWS_Os_91010].E_OS_ACCESS: A tarefa chamadora ou ISR não possui permissão de acesso para a área [SWS_Os_91010].
Simultaneidade e restrições
A chamada é processada de forma síncrona e é reentrante [SWS_Os_91010]. Os chamadores devem garantir que a tarefa ou ISR executora atue a partir de um contexto válido e disponha dos direitos de acesso necessários para a área de periféricos endereçada [SWS_Os_91010].
Este texto foi gerado automaticamente. Todas as informações baseiam-se nas especificações AUTOSAR referenciadas.
Guia do implementador em breve (complexidade I1)
função WritePeripheral16 [SWS_Os_91012] 📄 PDF
StatusType WritePeripheral16 (AreaIdType Area, uint16* Address, uint16 WriteValue);
This service writes the
A função de sistema operacional síncrona e reentrante WritePeripheral16 ([SWS_Os_91012]) serve para escrever um valor de 16 bits em um endereço de memória de uma área de periféricos. O serviço é disponibilizado através do cabeçalho Os.h e possui o ID de serviço 0x2c.
Utilização e parâmetros
Ao chamar WritePeripheral16, o chamador passa o identificador da área de hardware de destino (Area do tipo AreaIdType), o endereço de destino (Address do tipo uint16*), bem como o valor a ser escrito (Write Value do tipo uint16, que, apesar da indicação tabular como parâmetro Out na assinatura, presumivelmente serve como passagem por valor) conforme [SWS_Os_91012]. Pergunta Q-2edc50ae2e7fd0b0 (aberta) O serviço é executado de forma síncrona e retorna um valor de status do tipo StatusType.
Tratamento de erros
Em caso de sucesso, a função retorna E_OK. Sob o status EXTENDED, estão especificados os seguintes códigos de erro ([SWS_Os_91012]):
E_OS_ID: O identificador de área passado (Area) está fora da faixa válida.E_OS_VALUE: O endereço de destino (Address) não pertence à área de periféricos indicada.E_OS_CALLEVEL: A função foi chamada a partir de um contexto inadmissível.E_OS_ACCESS: A tarefa chamadora ou ISR presumivelmente não possui permissão para o acesso à área indicada. Pergunta (aberta)
Restrições e interação
A função é reentrante ([SWS_Os_91012]), exigindo, contudo, o cumprimento do contexto de chamada permitido (tarefa ou ISR) para evitar condições de erro como E_OS_CALLEVEL. Para o monitoramento e a análise de objetos do sistema operacional, o AUTOSAR prevê a disponibilização de arquivos de descrição ARTI ([SWS_Os_00829]).
Esta nota de uso foi gerada automaticamente e baseia-se exclusivamente nos dados de especificação da release AUTOSAR R20-11.
Guia do implementador em breve (complexidade I1)
função WritePeripheral32 [SWS_Os_91011] 📄 PDF
StatusType WritePeripheral32 (AreaIdType Area, uint32* Address, uint32 WriteValue);
This service writes the
A função síncrona e reentrante WritePeripheral32 do módulo Os serve para escrever um valor de 32 bits em um endereço de memória especificado de uma área de periféricos [SWS_Os_91011]. O serviço está disponível através do cabeçalho Os.h e possui o ID de serviço 0x2d [SWS_Os_91011].
Parâmetros e chamada
Para a execução do acesso de escrita, a função requer três parâmetros de transferência [SWS_Os_91011]:
Area(AreaIdType): Referência à área de periféricos de hardware de destino [SWS_Os_91011].Address(uint32*): Endereço de memória no qual o valor deve ser escrito [SWS_Os_91011].Write Value(uint32): O valor concreto de 32 bits que é transmitido para o endereço de destino [SWS_Os_91011].
Valores de retorno e tratamento de erros
A chamada retorna um valor de status do tipo StatusType [SWS_Os_91011]. Em caso de sucesso, é reportado E_OK [SWS_Os_91011]. Com o status EXTENDED ativo, E_OS_ID sinaliza um ID de área inválido, E_OS_VALUE um endereço que não pertence à área e E_OS_CALLEVEL um contexto de chamada inadmissível [SWS_Os_91011]. Caso a tarefa chamadora ou a ISR não possua permissão de acesso para a área, é retornado E_OS_ACCESS [SWS_Os_91011].
simultaneidade
Como WritePeripheral32 é reentrante, o serviço pode ser utilizado em contextos de execução concorrentes, desde que o respectivo chamador disponha da permissão de acesso necessária em tempo de execução [SWS_Os_91011].
Esta nota de utilização foi gerada automaticamente com base na especificação AUTOSAR Classic R20-11.
Guia do implementador em breve (complexidade I1)
função ModifyPeripheral [SWS_Os_91016] 📄 PDF
StatusType ModifyPeripheral8 (AreaIdType Area, uint8* Address, uint8 Clearmask, uint8 Setmask);
This service modifies a given memory location (
Utilização e semântica
A função de sistema operacional síncrona e reentrante ModifyPeripheral8 ([SWS_Os_91016]) modifica um byte em um endereço de memória indicado Address. Com isso, o conteúdo de memória existente é atualizado bit a bit através da máscara Clearmask por operação E, bem como através da máscara Setmask por operação OU, de acordo com a fórmula *Address = ((*Address & Clearmask) | Setmask) ([SWS_Os_91016]). Como parâmetros de entrada, a função espera a referência da área de periféricos Area do tipo AreaIdType, o endereço de destino Address (tipo uint8*), bem como os dois valores de máscara do tipo uint8. A função é disponibilizada através do arquivo de cabeçalho Os.h e possui o ID de serviço 0x2e ([SWS_Os_91016]).
Tratamento de erros e valores de retorno
O valor de retorno do tipo StatusType sinaliza o sucesso da operação com E_OK ([SWS_Os_91016]). Com o status Extended ativado, podem ocorrer condições de erro específicas:
E_OS_ID: O identificador de área passadoAreaestá fora da faixa permitida ([SWS_Os_91016]).E_OS_VALUE: O endereço de destinoAddressnão pertence à área indicadaArea([SWS_Os_91016]).E_OS_CALLEVEL: O serviço foi chamado em um contexto de chamada inadmissível ([SWS_Os_91016]).E_OS_ACCESS: A tarefa chamadora ou a ISR não possui permissão de acesso para a área de destino ([SWS_Os_91016]).
Simultaneidade e condições de chamada
Como ModifyPeripheral8 está especificada como reentrante, a chamada pode ocorrer com segurança em processos paralelos ([SWS_Os_91016]). Os chamadores devem assegurar que tanto o contexto quanto os direitos de acesso para Area e Address sejam válidos, a fim de evitar condições de erro ([SWS_Os_91016]).
Este texto foi gerado por uma IA com base na especificação AUTOSAR CP R20-11.
Guia do implementador em breve (complexidade I1)
função ModifyPeripheral16 [SWS_Os_91018] 📄 PDF
StatusType ModifyPeripheral16 (AreaIdType Area, uint16* Address, uint16 Clearmask, uint16 Setmask);
This service modifies a given memory location (
A função síncrona e reentrante ModifyPeripheral16 modifica uma posição de memória de 16 bits dentro de uma área de periféricos definida de acordo com a fórmula de cálculo *Address = ((*Address & Clearmask) | Setmask) [SWS_Os_91018]. Como parâmetros, são passados a referência da área de periféricos Area (tipo AreaIdType), o endereço de destino Address (tipo uint16*), bem como as máscaras de bits Clearmask para um E bit a bit e Setmask para um OU bit a bit [SWS_Os_91018]. A declaração está disponível através do cabeçalho Os.h [SWS_Os_91018].
No caso regular de sucesso, o serviço fornece o valor de retorno E_OK [SWS_Os_91018]. Com a verificação de status estendido ativada (EXTENDED status), chamadas com erro são reconhecidas e rejeitadas com base em códigos de erro específicos [SWS_Os_91018]:
E_OS_ID: O identificador de área passadoAreaestá fora da faixa de valores válida [SWS_Os_91018].E_OS_VALUE: O endereço de memória passadoAddressnão pertence à área indicadaArea[SWS_Os_91018].E_OS_CALLEVEL: O serviço foi chamado a partir de um contexto inadmissível [SWS_Os_91018].E_OS_ACCESS: A tarefa chamadora ou a ISR chamadora não possui permissão de acesso para a área especificada [SWS_Os_91018].
Os chamadores devem garantir, antes da execução, que tanto o contexto quanto as permissões para a área referenciada estejam presentes, a fim de evitar violações de acesso [SWS_Os_91018].
Este texto foi gerado por uma IA com base na especificação AUTOSAR CP R20-11.
Guia do implementador em breve (complexidade I1)
função ModifyPeripheral32 [SWS_Os_91017] 📄 PDF
StatusType ModifyPeripheral32 (AreaIdType Area, uint32* Address, uint32 Clearmask, uint32 Setmask);
This service modifies a given memory location (
A função síncrona e reentrante do sistema operacional ModifyPeripheral32 serve, de acordo com [SWS_Os_91017], para a manipulação bit a bit direcionada de um endereço de memória de 32 bits. Disponibilizada através da interface Os.h, a função aplica à área de endereço de destino Address a fórmula de cálculo fixa *Address = ((*Address & Clearmask) | Setmask). Aqui, primeiro são redefinidos bits por operação E através da máscara de bits Clearmask e, em seguida, definidos por operação OU através de Setmask.
Como parâmetros de entrada, o serviço espera a referência da área de periféricos Area, o ponteiro de endereço Address bem como as duas máscaras de 32 bits [SWS_Os_91017]. Em caso de execução sem erros, é retornado o código de status E_OK. No status estendido (EXTENDED status), a função realiza verificações de plausibilidade e reporta os seguintes códigos de erro:
E_OS_ID: OAreapassado está fora da faixa de valores permitida [SWS_Os_91017].E_OS_VALUE: O endereço de destino não pertence à área de periféricos indicada [SWS_Os_91017].E_OS_CALLEVEL: A função foi chamada a partir de um contexto não permitido [SWS_Os_91017].E_OS_ACCESS: A tarefa chamadora ou ISR não possui permissão para o acesso [SWS_Os_91017] (interpretação: falta de permissão de acesso à área de periféricos). Pergunta Q-b4d959765dc59c72 (aberta)
Chamadas concorrentes são permitidas graças à reentrância, desde que o contexto de chamada seja mantido [SWS_Os_91017]. No sistema geral, esta modificação direta de registradores difere de fórmulas de cálculo para a determinação dinâmica de dados, avaliadas, por exemplo, no âmbito de informações de depuração ARTI de acordo com [SWS_Os_00829].
Este texto foi gerado por uma IA com base na especificação AUTOSAR CP R20-11.
Guia do implementador em breve (complexidade I1)
função EnableInterruptSource [SWS_Os_91020] 📄 PDF
StatusType EnableInterruptSource (ISRType ISRID, boolean ClearPending);
Service EnableInterruptSource.
A função de sistema síncrona e reentrante EnableInterruptSource ativa uma fonte de interrupção por meio da modificação dos registradores do controlador de interrupções [SWS_Os_91020], [SWS_Os_00811]. O sistema operacional disponibiliza este serviço para cada fonte de interrupção de categoria 2 configurada [SWS_Os_00808].
Parâmetros e chamada
Por meio do parâmetro ISRID, é passado o identificador da ISR de categoria 2 [SWS_Os_91020]. O parâmetro booleano ClearPending determina se uma flag de interrupção pendente deve ser limpa durante a ativação (TRUE) ou se permanece inalterada (FALSE) [SWS_Os_91020], [SWS_Os_00811]. A função está disponível por meio do arquivo de cabeçalho Os.h [SWS_Os_91020].
Tratamento de erros e valores de retorno
Se nenhum erro for detectado, a chamada retorna E_OK [SWS_Os_91020], [SWS_Os_00810]. Caso o sistema operacional identifique um erro, ele retorna o respectivo código de status do tipo StatusType e chama o ErrorHook() [SWS_Os_00810]. Estão definidos os seguintes estados de erro:
E_OS_ID: o parâmetroISRIDnão é um identificador válido de uma ISR de categoria 2 (no statusEXTENDED) [SWS_Os_91020].E_OS_CALLEVEL: a função foi chamada a partir de um contexto de chamada inadmissível (no statusEXTENDED) [SWS_Os_91020].E_OS_ACCESS: a aplicação chamadora não é proprietária doISRIDindicado no âmbito da Service Protection [SWS_Os_91020].
Interação
Juntamente com DisableInterruptSource e ClearPendingInterrupt, a função compõe o trio de APIs para o controle direcionado de fontes individuais de interrupção de categoria 2 (OsIsrCategory == CATEGORY_2) no sistema operacional [SWS_Os_00808], [SWS_Os_00810].
Este texto foi gerado automaticamente com base nas especificações do Release R20-11.
Guia do implementador em breve (complexidade I2)
função DisableInterruptSource [SWS_Os_91019] 📄 PDF
StatusType DisableInterruptSource (ISRType ISRID);
Disables the interrupt source by modifying the interrupt controller registers.
usar
A função síncrona e reentrante DisableInterruptSource desativa uma fonte de interrupção específica diretamente por meio dos registradores do controlador de interrupções [SWS_Os_91019], [SWS_Os_00812]. Ela está disponível por meio do arquivo de cabeçalho Os.h e é disponibilizada para cada fonte de interrupção da categoria 2 (OsIsrCategory == CATEGORY_2) [SWS_Os_91019], [SWS_Os_00808]. O identificador da respectiva ISR (ISRID) é passado como parâmetro. Em caso de execução bem-sucedida, o serviço retorna E_OK [SWS_Os_91019], [SWS_Os_00810].
Tratamento de erros
Se o sistema operacional detectar um erro durante a execução, o respectivo StatusType é retornado e o ErrorHook() é chamado [SWS_Os_00810]. Os códigos de erro possíveis são:
E_OS_ID: oISRIDpassado não é um identificador válido de uma ISR de categoria 2 (no status EXTENDED) [SWS_Os_91019].E_OS_CALLEVEL: contexto de chamada inadmissível da função de API (no status EXTENDED) [SWS_Os_91019].E_OS_ACCESS: a OS-Application chamadora não é proprietária da ISR indicada (Service Protection) [SWS_Os_91019].E_OS_NOFUNC: a fonte de interrupção solicitada já está desativada (no status EXTENDED em caso de chamadas aninhadas) [SWS_Os_00809].
Interação e condições de contorno
Juntamente com EnableInterruptSource e ClearPendingInterrupt, a função compõe o trio de APIs para o controle de fontes de interrupção de categoria 2 [SWS_Os_00808]. Chamadas concorrentes ou repetidas são protegidas no status estendido pelo retorno de E_OS_NOFUNC, mantendo controláveis as desativações redundantes [SWS_Os_00809]. Além disso, os chamadores precisam possuir os direitos de acesso adequados para evitar erros de tempo de execução decorrentes da Service Protection [SWS_Os_91019].
Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR.
Guia do implementador em breve (complexidade I1)
função ClearPendingInterrupt [SWS_Os_91021] 📄 PDF
StatusType ClearPendingInterrupt (ISRType ISRID);
Service ClearPendingInterrupt.
Utilização e contexto de chamada
A função ClearPendingInterrupt serve para redefinir uma interrupção pendente para fontes da categoria 2 [SWS_Os_00808]. Ela recebe como único parâmetro de entrada o identificador ISRID de uma ISR de categoria 2 e modifica diretamente os registradores associados do controlador de interrupções [SWS_Os_91021], [SWS_Os_00813]. A chamada é processada de forma síncrona e está disponível por meio do arquivo de cabeçalho Os.h [SWS_Os_91021].
Tratamento de erros e valores de retorno
No caso livre de erros, é retornado o código de status E_OK [SWS_Os_91021]. Se o sistema operacional detectar um erro durante a execução, o serviço retorna o respectivo código de erro do tipo StatusType e chama obrigatoriamente o ErrorHook() [SWS_Os_00810]. Estão especificados os seguintes estados de erro para a interface [SWS_Os_91021]:
E_OS_ID: o parâmetroISRIDpassado não é um identificador válido de uma ISR de categoria 2 (retornado no statusEXTENDED) [SWS_Os_91021].E_OS_CALLEVEL: a função foi chamada a partir de um contexto de chamada inadmissível (retornado no statusEXTENDED) [SWS_Os_91021].E_OS_ACCESS: a aplicação chamadora não está autorizada como proprietária da ISR passada no âmbito da Service Protection [SWS_Os_91021].
Concorrência e interação no sistema operacional
A interface é definida como reentrante e, portanto, pode ser chamada concorrentemente de forma segura [SWS_Os_91021]. O sistema operacional disponibiliza ClearPendingInterrupt para cada fonte de interrupção de categoria 2 (OsIsrCategory == CATEGORY_2) como parte integrante das APIs de controle, às quais também pertencem DisableInterruptSource e EnableInterruptSource [SWS_Os_00808].
Este texto foi gerado por uma IA com base na especificação AUTOSAR.
Guia do implementador em breve (complexidade I2)
função 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.
A função ActivateTaskAsyn (ID de serviço 0x33) representa a variante assíncrona para ativação de tarefas e é disponibilizada através do arquivo de cabeçalho Os.h ([SWS_Os_91022]). Ela é prevista primariamente para a ativação de tarefas entre núcleos em sistemas multicore ([SWS_Os_91022]).
Como único parâmetro de entrada, é passado id do tipo TaskType, o qual especifica a tarefa a ser ativada ([SWS_Os_91022]). A interface não possui valor de retorno (void) e não define parâmetros de entrada/saída nem parâmetros puramente de saída ([SWS_Os_91022]).
Eventuais erros na ativação não são retornados ao chamador ([SWS_Os_91022], [SWS_Os_00816]). Em vez disso, erros ocorridos são reportados exclusivamente através do Error-Hook global, caso um tenha sido configurado ([SWS_Os_00816]).
Em relação à concorrência, a função é reentrante e opera de forma totalmente assíncrona ([SWS_Os_91022]), de modo que o contexto chamador não bloqueia aguardando a execução. O sistema operacional é obrigado a fornecer esta interface de acordo com [SWS_Os_00816].
Esta nota de uso foi gerada por uma IA com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I1)
função 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.
função Ioc [SWS_Os_91026] 📄 PDF
void IocInit (void);
This service initializes the data structures of the IOC. Tags: atp.Status=draft
Utilização e funcionamento
A função Ioc Init (designada como rascunho na Release R20-11) inicializa as estruturas de dados internas da Inter-OS-Application Communication (IOC) [SWS_Os_91026]. A chamada ocorre de forma síncrona, não aceita parâmetros de transferência e não possui valor de retorno [SWS_Os_91026]. Se o gerador do sistema operacional for executado no "IOC mode", ele gera exclusivamente o código de IOC no arquivo de origem Ioc.c e declara as interfaces associadas no arquivo de cabeçalho Ioc.h [SWS_Os_00834], através do qual também Ioc Init é disponibilizado [SWS_Os_91026].
Tratamento de erros e simultaneidade
Para Ioc Init, não estão previstos na especificação nem valores de retorno de erro específicos nem mensagens de erro para DET ou DEM [SWS_Os_91026]. O serviço é explicitamente definido como não reentrante (Non Reentrant) [SWS_Os_91026]. Interpretação: Devido à falta de reentrância e à tarefa de inicialização, o serviço deve ter de ser chamado sequencialmente durante a fase de inicialização do sistema, antes que ocorram acessos concorrentes de comunicação.
Pergunta Q-47f99a4725b57c89 (aberta)
Interação com funções de comunicação IOC
A inicialização correta das estruturas de dados constitui o pré-requisito para o uso das interfaces de comunicação IOC geradas:
- Envio e escrita: Emissores transmitem dados de forma assíncrona através de serviços de valor único como
Ioc Send[SWS_Os_00718] eIoc Write[SWS_Os_91003] ou funções de grupo comoIoc Send Group[SWS_Os_00728] eIoc Write Group[SWS_Os_91004]. - Recepção e leitura: Receptores obtêm dados de forma síncrona através de
Ioc Receive[SWS_Os_00738],Ioc Read[SWS_Os_91005] ou serviços de grupo correspondentes [SWS_Os_00746] [SWS_Os_91006]. - Gerenciamento de fila e notificação: Com a comunicação em buffer configurada, o conteúdo de uma fila interna pode ser esvaziado de forma síncrona com
Ioc Empty Queue[SWS_Os_00754]. Adicionalmente, na recepção de dados, um callback de receptor configurado<Receiver Pull CB>pode ser executado no núcleo de destino [SWS_Os_00757].
Este texto foi gerado por uma IA e baseia-se exclusivamente nas especificações da release R20-11.
Guia do implementador em breve (complexidade I1)
função <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.
A função de callback <Receiver Pull CB> pode ser configurada opcionalmente para o receptor de uma comunicação e é declarada através do cabeçalho Os.h [SWS_Os_00757]. Se este callback estiver configurado, o IOC (Inter-OS-Application Communicator) chama a função no Core receptor de forma síncrona a cada recepção de dados [SWS_Os_00757]. O identificador concreto da função de callback é definido no lado do receptor por meio do atributo de configuração OsIocReceiverPullCB [SWS_Os_00757].
Para a chamada e as propriedades da interface, aplicam-se as seguintes diretrizes:
- Assinatura e parâmetros: A função possui o protótipo
void <Receiver Pull CB> ( void ); ela não recebe parâmetros (nem de entrada, passagem ou saída) e não fornece valor de retorno [SWS_Os_00757]. - Sincronismo e reentrância: A chamada pelo IOC ocorre com semântica síncrona diretamente no Core receptor [SWS_Os_00757]. Além disso, a função de callback é especificada como reentrante [SWS_Os_00757].
- Tratamento de erros: A especificação não prevê valores de retorno, nem códigos de erro específicos ou notificações de erro para esta função [SWS_Os_00757].
Como a assinatura não transfere nenhum dado útil, a chamada deve servir primariamente como um sinal de notificação para informar o receptor sobre a chegada de novos dados e disparar a subsequente busca dos dados úteis. Pergunta Q-2365bb46ad77a476 (aberta) Os desenvolvedores devem observar que a execução ocorre de forma síncrona no Core receptor [SWS_Os_00757].
Este texto foi criado por uma IA e baseia-se na especificação AUTOSAR CP R20-11.
função 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.
A função ProtectionHook serve como callback central do sistema operacional e é chamada de forma síncrona sempre que ocorre um erro grave [SWS_Os_00538]. Como cenários típicos de erro, a especificação cita explicitamente o estouro do pior tempo de execução (Worst Case Execution Time), bem como violações de proteção de memória [SWS_Os_00538]. A declaração da interface é fornecida através do cabeçalho Os_Externals.h [SWS_Os_00538].
Como parâmetro de entrada, a rotina recebe Fatalerror do tipo StatusType, que transmite a causa que disparou a chamada do hook [SWS_Os_00538]. Parâmetros de entrada/saída adicionais ou parâmetros puramente de saída não estão definidos na assinatura [SWS_Os_00538].
Por meio do valor de retorno do tipo ProtectionReturnType, ProtectionHook define de forma vinculativa qual ação o sistema operacional deve iniciar após a execução do hook para o tratamento posterior de erros [SWS_Os_00538]. As seguintes ações estão disponíveis como valores de retorno [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]
Em termos de concorrência e comportamento de execução, ProtectionHook é especificado como reentrante e síncrono [SWS_Os_00538]. A chamada ocorre imediatamente na ocorrência do erro grave, após o que o sistema operacional executa a ação definida [SWS_Os_00538].
Este texto foi gerado por uma IA com base na especificação.
Guia do implementador em breve (complexidade I2)
tipo AppModeType [SWS_Os_91007] 📄 PDF
App Mode of the core shall be inherited from another core.
O tipo de enumeração AppModeType é definido no arquivo de cabeçalho Os.h e serve para a definição do modo de aplicação no sistema operacional [SWS_Os_91007]. Em sistemas multicore, este tipo permite que o modo de aplicação de um núcleo de processador seja herdado de outro Core [SWS_Os_91007].
Para a faixa de valores, está especificado o valor DONOTCARE [SWS_Os_91007]. Interpretação: Este valor deve servir para configurar explicitamente um Core de forma a não iniciar um modo independente, mas sim assumir o comportamento do Core de nível superior. Pergunta Q-2b7d9f1c8e5f1a3f (aberta) Não estão definidos códigos de erro ou valores de retorno específicos para o próprio tipo.
No que diz respeito ao diagnóstico e ao estado do sistema, a interação com ferramentas de análise é relevante. Conforme [SWS_Os_00829], o arquivo de descrição de módulo ARTI deve suportar todos os contêineres ORTI para permitir que ferramentas de depuração conectadas avaliem e exibam informações sobre o sistema operacional e seus objetos. As informações de depuração ARTI fornecem atributos dinâmicos que são resolvidos por meio de fórmulas [SWS_Os_00829]. Interpretação: O estado do modo de aplicação deve, portanto, ser mapeado e lido no nível de ferramenta através dos atributos de objeto ARTI correspondentes. Pergunta Q-410d011cbcf1b158 (aberta)
Esta nota de uso foi gerada automaticamente com base nos requisitos da especificação.
Guia do implementador em breve (complexidade I1)
tipo TotalNumberOfCores [SWS_Os_91002] 📄 PDF
The total number of cores
tipo ApplicationType [SWS_Os_00772] 📄 PDF
This data type identifies the OS - Application.
tipo 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
No sistema operacional Classic AUTOSAR, o tipo de dados ApplicationStateType serve para a identificação inequívoca do estado de uma OS-Application [SWS_Os_00773]. Ele é especificado como um tipo básico escalar e é disponibilizado por meio do arquivo de cabeçalho Os.h [SWS_Os_00773].
A faixa de valores permitida de ApplicationStateType compreende três estados discretos para uma OS-Application [SWS_Os_00773]:
APPLICATION_ACCESSIBLE: indica que a OS-Application está operacional e que seus recursos podem ser acessados [SWS_Os_00773].APPLICATION_RESTARTING: sinaliza que a OS-Application se encontra atualmente em uma fase de reinicialização [SWS_Os_00773].APPLICATION_TERMINATED: indica que a OS-Application foi encerrada e não executa mais nenhuma ação [SWS_Os_00773].
Em relação ao uso e à interação com outros componentes, o tipo provavelmente deve servir como valor de retorno ou parâmetro de saída em serviços de sistema do OS correspondentes para monitoramento de estado, a fim de informar aos chamadores o status atual do ciclo de vida de uma aplicação. Como se trata de uma definição de tipo elementar, o padrão não especifica códigos de erro próprios, mensagens DET ou DEM para isso, e não formula restrições específicas quanto ao contexto de chamada ou à reentrância [SWS_Os_00773]. Pergunta Q-9a4f2254f4013853 (aberta)
Este texto foi gerado por uma IA e baseia-se em dados de especificação da AUTOSAR R20-11.
Guia do implementador em breve (complexidade I1)
tipo ApplicationStateRefType [SWS_Os_00774] 📄 PDF
This data type points to location where a Application State Type can be stored.
O tipo de dados ApplicationStateRefType é parte integrante do sistema operacional (módulo Os) na plataforma AUTOSAR Classic e é disponibilizado através do arquivo de cabeçalho Os.h [SWS_Os_00774]. O tipo é derivado de um ponteiro (pointer) e aponta diretamente para uma posição de memória na qual pode ser armazenado um estado de uma aplicação OS (Application State) [SWS_Os_00774].
No que diz respeito à utilização prática, este tipo de ponteiro serve para referenciar estados de aplicação: Interpretação: Como tipo de ponteiro, ApplicationStateRefType deve ser utilizado primariamente como parâmetro de referência ou de saída em funções de consulta do sistema operacional, através das quais o estado de uma aplicação OS é transmitido ao chamador. Pergunta Q-948bb914d3672a38 (aberta) Os chamadores devem, portanto, assegurar que, antes da passagem do parâmetro, esteja reservada uma área de memória válida e gravável para o estado de destino, a fim de evitar acessos incorretos por ponteiro em tempo de execução.
Mecanismos específicos de tratamento de erros, códigos de erro para DET ou DEM, bem como especificações separadas de reentrância e concorrência não são indicados separadamente na especificação para este tipo básico [SWS_Os_00774]. Eventuais restrições quanto ao contexto de chamada permitido ou a deveres de sincronização a serem cumpridos resultam exclusivamente daquelas interfaces do sistema operacional que utilizam este tipo nas suas assinaturas de função.
Este texto foi gerado por uma IA com base na especificação.
Guia do implementador em breve (complexidade I1)
tipo TrustedFunctionIndexType [SWS_Os_00775] 📄 PDF
This data type identifies a trusted function.
tipo TrustedFunctionParameterRefType [SWS_Os_00776] 📄 PDF
This data type points to a structure which holds the arguments for a call to a trusted function.
tipo AccessType [SWS_Os_00777] 📄 PDF
This type holds information how a specific memory region can be accessed.
tipo ObjectAccessType [SWS_Os_00778] 📄 PDF
This data type identifies if an OS - Application has access to an object.
tipo ObjectType [SWS_Os_00779] 📄 PDF
This data type identifies an object.
tipo MemoryStartAddressType [SWS_Os_00780] 📄 PDF
This data type is a pointer which is able to point to any location in the MCU address space.
tipo MemorySizeType [SWS_Os_00781] 📄 PDF
This data type holds the size (in bytes) of a memory region.
tipo ISRType [SWS_Os_00782] 📄 PDF
This data type identifies an interrupt service routine (ISR).
tipo ScheduleTableType [SWS_Os_00783] 📄 PDF
This data type identifies a schedule table.
tipo 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)
O tipo ScheduleTableStatusType representa, de acordo com [SWS_Os_00784], o status atual de execução e de sincronização de uma Schedule Table no sistema operacional AUTOSAR. Ele é disponibilizado através do arquivo de cabeçalho Os.h e é baseado em uma faixa de valores específica da implementação.
Estão especificados os seguintes valores de status:
SCHEDULETABLE_STOPPED: A Schedule Table não foi iniciada.SCHEDULETABLE_NEXT: A Schedule Table será iniciada após o término da Schedule Table atualmente ativa (interpretação: isso ocorre após a passagem para o serviçoNextScheduleTable()). Pergunta Q-8cbcfc83969eea23 (aberta)SCHEDULETABLE_WAITING: A Schedule Table utiliza sincronização explícita, já foi iniciada e aguarda o alinhamento com a hora global.SCHEDULETABLE_RUNNING: A Schedule Table está em execução, porém no momento não está síncrona com uma fonte de tempo global.SCHEDULETABLE_RUNNING_AND_SYNCHRONOUS: A Schedule Table está em execução e sincronizada com a fonte de tempo global.
Por ser um tipo de dados puramente de status, ScheduleTableStatusType não define erros de tempo de execução ou mensagens DET/DEM próprios. Na interação com ferramentas de análise, o tipo serve, de acordo com [SWS_Os_00829], para a avaliação e exibição suportadas por ARTI de objetos dinâmicos do sistema operacional, permitindo que desvios de estado e sincronização no sistema sejam registrados de forma transparente.
Este texto foi gerado por uma IA e baseia-se na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I1)
tipo ScheduleTableStatusRefType [SWS_Os_00785] 📄 PDF
This data type points to a variable of the data type Schedule Table Status Type.
Uso e definição
O tipo de dados ScheduleTableStatusRefType é definido de acordo com [SWS_Os_00785] como um tipo de ponteiro para uma variável do tipo de dados Schedule Table Status Type. O tipo é disponibilizado através do cabeçalho Os.h e serve no sistema operacional AUTOSAR como tipo de referência para o status de uma tabela de agendamento (Schedule Table) [SWS_Os_00785].
Uso e condições de contorno
Em chamadas típicas do sistema operacional, este tipo de ponteiro deve atuar como parâmetro de saída, através do qual uma função do sistema OS retorna o estado atual da Schedule Table referenciada para o chamador. Pergunta Q-53364f3a9953dae3 (aberta) Como a especificação define apenas a definição do tipo, os componentes chamadores devem observar o seguinte durante o uso:
- Disponibilização de memória: Antes de passar uma referência deste tipo, o chamador deve garantir que o ponteiro aponte para uma área de memória válida e gravável, que permaneça válida durante toda a chamada.
- Validade e ponteiros nulos: A passagem de um ponteiro nulo (
NULL) deve levar, dependendo da configuração do sistema operacional (status Standard ou Extended), a mensagens de erro correspondentes dos serviços de OS chamados. Pergunta Q-63d77f8c7857e6c4 (aberta) - Proteção de memória: Em ambientes de OS multicore ou com proteção de memória críticos para a segurança, a área de memória referenciada deve estar acessível para a tarefa chamadora ou para a instância de OS.
Como [SWS_Os_00785] não indica outras propriedades de tempo de execução ou códigos de erro específicos para o tipo básico, a reentrância e o contexto de chamada resultam dos respectivos serviços de OS que utilizam este tipo de ponteiro como parâmetro.
Esta nota de uso foi gerada automaticamente e baseia-se exclusivamente nos dados de especificação da Release R20-11.
Guia do implementador em breve (complexidade I1)
tipo ProtectionReturnType [SWS_Os_00787] 📄 PDF
This data type identifies a value which controls further actions of the OS on return from the protection hook.
tipo RestartType [SWS_Os_00788] 📄 PDF
This data type defines the use of a Restart Task after terminating an OS - Application.
tipo PhysicalTimeType [SWS_Os_00789] 📄 PDF
This data type is used for values returned by the conversion macro (see SWS_ Os_00393) OS_ TICKS2
tipo 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
tipo 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.
tipo TryToGetSpinlockType [SWS_Os_00792] 📄 PDF
The Try To Get Spinlock Type indicates if the spinlock has been occupied or not.
Utilização e gama de valores
O tipo enumerado TryToGetSpinlockType é fornecido por meio do arquivo de cabeçalho Os.h e serve como indicação de status se um spinlock pôde ser alocado com sucesso ou não pelo chamador [SWS_Os_00792]. Ele define o resultado de operações de alocação correspondentes no sistema operacional [SWS_Os_00792].
A faixa de valores compreende exatamente dois literais especificados [SWS_Os_00792]:
TRYTOGETSPINLOCK_SUCCESS: Sinaliza que o spinlock pôde ser ocupado com sucesso [SWS_Os_00792].TRYTOGETSPINLOCK_NOSUCCESS: Indica que o spinlock não pôde ser ocupado [SWS_Os_00792].
Concorrência e contexto de sistema
O tipo é empregado na sincronização em sistemas multinúcleo. Interpretação: o chamador provavelmente avalia o valor de retorno de forma síncrona para determinar imediatamente se a seção crítica protegida pode ser acessada ou se, em TRYTOGETSPINLOCK_NOSUCCESS, um desvio de programa alternativo deve ser selecionado sem espera bloqueante [SWS_Os_00792]. Pergunta Q-a04e72802dc41325 (aberta) Códigos de erro próprios ou mensagens de erro via DET ou DEM não estão especificados para este tipo [SWS_Os_00792].
Interação com ferramentas de diagnóstico
No contexto de integração de ferramentas, o arquivo de descrição de módulo ARTI suporta todos os contêineres ORTI para exibir informações sobre o sistema operacional, seus estados e objetos de sistema operacional, e para determinar valores dinâmicos [SWS_Os_00829]. Interpretação: através de tais interfaces, spinlocks e seus estados de ocupação provavelmente também podem ser visualizados para ferramentas de depuração e rastreamento [SWS_Os_00829]. Pergunta Q-a488e055eb7d402e (aberta)
Este texto foi gerado por uma IA e baseia-se nas especificações AUTOSAR do release R20-11.
Guia do implementador em breve (complexidade I1)
tipo IdleModeType [SWS_Os_00793] 📄 PDF
This data type identifies the idle mode behavior.
Utilização e gama de valores
O tipo de dados escalar IdleModeType é disponibilizado através do cabeçalho Os.h e destina-se à especificação do comportamento de um núcleo de processador no modo ocioso [SWS_Os_00793]. Na faixa de valores definida está estabelecido o modo IDLE_NO_HALT, em cuja seleção o núcleo de processador não executa ações adicionais durante o tempo de inatividade [SWS_Os_00793].
Interpretação: como IdleModeType é derivado de um tipo básico escalar, ele provavelmente serve, no contexto do sistema operacional, como valor de configuração ou parâmetro de chamada para serviços de controle do comportamento de inatividade do núcleo. Pergunta Q-911a39efb537f1bc (aberta) Interpretação: além do valor padrão IDLE_NO_HALT, implementações concretas de sistemas operacionais ou arquiteturas de microcontroladores poderiam potencialmente prever modos de retenção ou de economia de energia adicionais, embora o trecho da especificação cite apenas a ausência de ações específicas. Pergunta Q-b6688f74cacbab45 (aberta)
Restrições e tratamento de erros
Para IdleModeType, no presente escopo da especificação, não são identificados códigos de erro específicos, mensagens DET ou DEM, tampouco requisitos de reentrância ou contextos de chamada [SWS_Os_00793]. Quaisquer restrições funcionais ou pré-condições decorrem, portanto, exclusivamente das interfaces de sistema operacional de nível superior que processam este tipo.
Este texto foi gerado por uma IA com base na especificação SWS_Os_00793.
Guia do implementador em breve (complexidade I1)
tipo 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
tipo TimeInMicrosecondsType [SWS_Os_00794] 📄 PDF
-
tipo CounterType [SWS_Os_00786] 📄 PDF
This data type identifies a counter.
tipo TickType [SWS_Os_00001] 📄 PDF
typedef uint32 TickType;
This data type represents count values in ticks.
tipo StatusType [SWS_Os_00002] 📄 PDF
typedef uint8 StatusType;
This data type represents standard OSEK OS status codes (e.g. E_OK, E_OS_ACCESS).
Guia do implementador em breve (complexidade I2)
tipo TaskType [SWS_Os_00003] 📄 PDF
typedef uint8 TaskType;
This data type identifies an AUTOSAR OS task.
tipo EventMaskType [SWS_Os_00004] 📄 PDF
typedef uint32 EventMaskType;
This data type represents an event mask for extended tasks.
tipo 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#5307b824- Content hash
5307b824- 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 · Original em alemão