del_sem

Outline

Delete semaphore.

C format

 ER      del_sem (ID semid);
Parameter(s)

I/O

Parameter

Description

I

 ID      semid;
ID number of the semaphore.



Explanation

This service call can be called from tasks that belong to Trusted Domain.

This service call deletes the semaphore indicated by semid.

When there are waiting tasks for the target semaphore by using wai_sem or twai_sem, this service call cancels the WAITING state of the tasks and returns E_DLT as a return value of the wai_sem or twai_sem.

Return value

Macro

Value

Description

E_OK

0

Normal completion.

E_ID

-18

Invalid ID number.

- semid < 0

- semid > VTMAX_SEM

E_CTX

-25

Context error.

- This service call was issued in the CPU locked state.

- This service call was issued from non-task.

- This service call was issued in the status "PSW.IPL > kernel interrupt mask level".

E_MACV

-26

Memory access violation.

- Stack pointer points out of user stack for invoking task.

E_OACV

-27

Object access violation.

- The invoking task does not belong to trusted domain.

E_NOEXS

-42

Non-existent object.

- The semaphore specified by semid does not exist.