Simple Virtual Machine
A simple but flexible virtual machine
|
This module contains API functions to get SVM processes. More...
Functions | |
SVM_FUNCTION SVM_Process | svm_process_new (const void *svm, const SVM_Value_String name, const SVM_Value_PluginEntryPoint sequencer, const SVM_Boolean auto_terminated, const SVM_Kernel kernel) |
This function creates a new process from a kernel and the name from a string value. More... | |
SVM_FUNCTION SVM_Process | svm_process_new__string (const void *svm, const SVM_String name, const SVM_Value_PluginEntryPoint sequencer, const SVM_Boolean auto_terminated, const SVM_Kernel kernel) |
This function creates a new process from a kernel and the name from a SVM string. More... | |
SVM_FUNCTION SVM_Process | svm_process_new__raw (const void *svm, const char *name, const SVM_Value_PluginEntryPoint sequencer, const SVM_Boolean auto_terminated, const SVM_Kernel kernel) |
This function creates a new process from a kernel and the name from a C nul-terminated string. More... | |
SVM_FUNCTION SVM_Process | svm_process_new_code (const void *svm, const SVM_Value_String name, const SVM_Value_PluginEntryPoint sequencer, const SVM_Boolean auto_terminated, const SVM_Code code, const SVM_Boolean transmit_interruptions, const SVM_Boolean last_return_is_shutdown, const SVM_Boolean protected_mode, const SVM_AccessControl access_control) |
This function creates a new process from specific values and the name from a string value. More... | |
SVM_FUNCTION SVM_Process | svm_process_new_code__string (const void *svm, const SVM_String name, const SVM_Value_PluginEntryPoint sequencer, const SVM_Boolean auto_terminated, const SVM_Code code, const SVM_Boolean transmit_interruptions, const SVM_Boolean last_return_is_shutdown, const SVM_Boolean protected_mode, const SVM_AccessControl access_control) |
This function creates a new process from specific values and the name from a SVM_String. More... | |
SVM_FUNCTION SVM_Process | svm_process_new_code__raw (const void *svm, const char *name, const SVM_Value_PluginEntryPoint sequencer, const SVM_Boolean auto_terminated, const SVM_Code code, const SVM_Boolean transmit_interruptions, const SVM_Boolean last_return_is_shutdown, const SVM_Boolean protected_mode, const SVM_AccessControl access_control) |
This function creates a new process from specific values and the name from a C nul-terminated string. More... | |
SVM_FUNCTION SVM_Process | svm_process_new_symbol (const void *svm, const SVM_Value_String name, const SVM_Value_PluginEntryPoint sequencer, const SVM_Boolean auto_terminated, const SVM_Value_Symbol symbol, const SVM_Boolean transmit_interruptions, const SVM_Boolean last_return_is_shutdown, const SVM_Boolean protected_mode, const SVM_AccessControl access_control) |
This function creates a new process from specific values and the name from a string value. More... | |
SVM_FUNCTION SVM_Process | svm_process_new_symbol__string (const void *svm, const SVM_String name, const SVM_Value_PluginEntryPoint sequencer, const SVM_Boolean auto_terminated, const SVM_Value_Symbol symbol, const SVM_Boolean transmit_interruptions, const SVM_Boolean last_return_is_shutdown, const SVM_Boolean protected_mode, const SVM_AccessControl access_control) |
This function creates a new process from specific values and the name from a SVM_String. More... | |
SVM_FUNCTION SVM_Process | svm_process_new_symbol__raw (const void *svm, const char *name, const SVM_Value_PluginEntryPoint sequencer, const SVM_Boolean auto_terminated, const SVM_Value_Symbol symbol, const SVM_Boolean transmit_interruptions, const SVM_Boolean last_return_is_shutdown, const SVM_Boolean protected_mode, const SVM_AccessControl access_control) |
This function creates a new process from specific values and the name from a C nul-terminated string. More... | |
SVM_FUNCTION SVM_Process | svm_process_get_current (const void *svm) |
This function retrieves the current process. More... | |
This module contains API functions to get SVM processes.
SVM_FUNCTION SVM_Process svm_process_get_current | ( | const void * | svm | ) |
This function retrieves the current process.
[in] | svm | The SVM pointer passed as first argument of the callback function. |
FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.) |
SVM_FUNCTION SVM_Process svm_process_new | ( | const void * | svm, |
const SVM_Value_String | name, | ||
const SVM_Value_PluginEntryPoint | sequencer, | ||
const SVM_Boolean | auto_terminated, | ||
const SVM_Kernel | kernel | ||
) |
This function creates a new process from a kernel and the name from a string value.
[in] | svm | The SVM pointer passed as first argument of the callback function. |
[in] | name | The name of the process. |
[in] | sequencer | The sequencer name. A NULL pointer will select the default sequencer. |
[in] | auto_terminated | This flag indicates whether the process shall be automatically terminated. |
[in] | kernel | The first kernel of the process. |
The process is created in SUSPENDED state and has to be attached to a scheduler to be executed.
FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.) |
SVM_FUNCTION SVM_Process svm_process_new__raw | ( | const void * | svm, |
const char * | name, | ||
const SVM_Value_PluginEntryPoint | sequencer, | ||
const SVM_Boolean | auto_terminated, | ||
const SVM_Kernel | kernel | ||
) |
This function creates a new process from a kernel and the name from a C nul-terminated string.
[in] | svm | The SVM pointer passed as first argument of the callback function. |
[in] | name | The name of the process. |
[in] | sequencer | The sequencer name. A NULL pointer will select the default sequencer. |
[in] | auto_terminated | This flag indicates whether the process shall be automatically terminated. |
[in] | kernel | The first kernel of the process. |
The process is created in SUSPENDED state and has to be attached to a scheduler to be executed.
FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.) |
SVM_FUNCTION SVM_Process svm_process_new__string | ( | const void * | svm, |
const SVM_String | name, | ||
const SVM_Value_PluginEntryPoint | sequencer, | ||
const SVM_Boolean | auto_terminated, | ||
const SVM_Kernel | kernel | ||
) |
This function creates a new process from a kernel and the name from a SVM string.
[in] | svm | The SVM pointer passed as first argument of the callback function. |
[in] | name | The name of the process. |
[in] | sequencer | The sequencer name. A NULL pointer will select the default sequencer. |
[in] | auto_terminated | This flag indicates whether the process shall be automatically terminated. |
[in] | kernel | The first kernel of the process. |
The process is created in SUSPENDED state and has to be attached to a scheduler to be executed.
FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.) |
SVM_FUNCTION SVM_Process svm_process_new_code | ( | const void * | svm, |
const SVM_Value_String | name, | ||
const SVM_Value_PluginEntryPoint | sequencer, | ||
const SVM_Boolean | auto_terminated, | ||
const SVM_Code | code, | ||
const SVM_Boolean | transmit_interruptions, | ||
const SVM_Boolean | last_return_is_shutdown, | ||
const SVM_Boolean | protected_mode, | ||
const SVM_AccessControl | access_control | ||
) |
This function creates a new process from specific values and the name from a string value.
[in] | svm | The SVM pointer passed as first argument of the callback function. |
[in] | name | The name of the process. |
[in] | sequencer | The sequencer name. A NULL pointer will select the default sequencer. |
[in] | auto_terminated | This flag indicates whether the process shall be automatically terminated. |
[in] | code | The SVM code to execute in the first kernel of the process. |
[in] | transmit_interruptions | This flag asks the first kernel to forward the interruption to the next kernel or the process. |
[in] | last_return_is_shutdown | This flag indicates whether an extra return on an empty return stack can be considered as a shutdown in the first kernel of the process. |
[in] | protected_mode | The protected mode of the first kernel of the process. |
[in] | access_control | The access control of the first kernel of the process. A NULL pointer means no specific restriction. |
The process is created in SUSPENDED state and has to be attached to a scheduler to be executed.
FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.) |
SVM_FUNCTION SVM_Process svm_process_new_code__raw | ( | const void * | svm, |
const char * | name, | ||
const SVM_Value_PluginEntryPoint | sequencer, | ||
const SVM_Boolean | auto_terminated, | ||
const SVM_Code | code, | ||
const SVM_Boolean | transmit_interruptions, | ||
const SVM_Boolean | last_return_is_shutdown, | ||
const SVM_Boolean | protected_mode, | ||
const SVM_AccessControl | access_control | ||
) |
This function creates a new process from specific values and the name from a C nul-terminated string.
[in] | svm | The SVM pointer passed as first argument of the callback function. |
[in] | name | The name of the process. |
[in] | sequencer | The sequencer name. A NULL pointer will select the default sequencer. |
[in] | auto_terminated | This flag indicates whether the process shall be automatically terminated. |
[in] | code | The SVM code to execute in the first kernel of the process. |
[in] | transmit_interruptions | This flag asks the first kernel to forward the interruption to the next kernel or the process. |
[in] | last_return_is_shutdown | This flag indicates whether an extra return on an empty return stack can be considered as a shutdown in the first kernel of the process. |
[in] | protected_mode | The protected mode of the first kernel of the process. |
[in] | access_control | The access control of the first kernel of the process. A NULL pointer means no specific restriction. |
The process is created in SUSPENDED state and has to be attached to a scheduler to be executed.
FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.) |
SVM_FUNCTION SVM_Process svm_process_new_code__string | ( | const void * | svm, |
const SVM_String | name, | ||
const SVM_Value_PluginEntryPoint | sequencer, | ||
const SVM_Boolean | auto_terminated, | ||
const SVM_Code | code, | ||
const SVM_Boolean | transmit_interruptions, | ||
const SVM_Boolean | last_return_is_shutdown, | ||
const SVM_Boolean | protected_mode, | ||
const SVM_AccessControl | access_control | ||
) |
This function creates a new process from specific values and the name from a SVM_String.
[in] | svm | The SVM pointer passed as first argument of the callback function. |
[in] | name | The name of the process. |
[in] | sequencer | The sequencer name. A NULL pointer will select the default sequencer. |
[in] | auto_terminated | This flag indicates whether the process shall be automatically terminated. |
[in] | code | The SVM code to execute in the first kernel of the process. |
[in] | transmit_interruptions | This flag asks the first kernel to forward the interruption to the next kernel or the process. |
[in] | last_return_is_shutdown | This flag indicates whether an extra return on an empty return stack can be considered as a shutdown in the first kernel of the process. |
[in] | protected_mode | The protected mode of the first kernel of the process. |
[in] | access_control | The access control of the first kernel of the process. A NULL pointer means no specific restriction. |
The process is created in SUSPENDED state and has to be attached to a scheduler to be executed.
FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.) |
SVM_FUNCTION SVM_Process svm_process_new_symbol | ( | const void * | svm, |
const SVM_Value_String | name, | ||
const SVM_Value_PluginEntryPoint | sequencer, | ||
const SVM_Boolean | auto_terminated, | ||
const SVM_Value_Symbol | symbol, | ||
const SVM_Boolean | transmit_interruptions, | ||
const SVM_Boolean | last_return_is_shutdown, | ||
const SVM_Boolean | protected_mode, | ||
const SVM_AccessControl | access_control | ||
) |
This function creates a new process from specific values and the name from a string value.
[in] | svm | The SVM pointer passed as first argument of the callback function. |
[in] | name | The name of the process. |
[in] | sequencer | The sequencer name. A NULL pointer will select the default sequencer. |
[in] | auto_terminated | This flag indicates whether the process shall be automatically terminated. |
[in] | symbol | The symbol to jump to in the first kernel of the process. |
[in] | transmit_interruptions | This flag asks the first kernel to forward the interruption to the next kernel or the process. |
[in] | last_return_is_shutdown | This flag indicates whether an extra return on an empty return stack can be considered as a shutdown in the first kernel of the process. |
[in] | protected_mode | The protected mode of the first kernel of the process. |
[in] | access_control | The access control of the first kernel of the process. A NULL pointer means no specific restriction. |
The process is created in SUSPENDED state and has to be attached to a scheduler to be executed.
FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.) |
SVM_FUNCTION SVM_Process svm_process_new_symbol__raw | ( | const void * | svm, |
const char * | name, | ||
const SVM_Value_PluginEntryPoint | sequencer, | ||
const SVM_Boolean | auto_terminated, | ||
const SVM_Value_Symbol | symbol, | ||
const SVM_Boolean | transmit_interruptions, | ||
const SVM_Boolean | last_return_is_shutdown, | ||
const SVM_Boolean | protected_mode, | ||
const SVM_AccessControl | access_control | ||
) |
This function creates a new process from specific values and the name from a C nul-terminated string.
[in] | svm | The SVM pointer passed as first argument of the callback function. |
[in] | name | The name of the process. |
[in] | sequencer | The sequencer name. A NULL pointer will select the default sequencer. |
[in] | auto_terminated | This flag indicates whether the process shall be automatically terminated. |
[in] | symbol | The symbol to jump to in the first kernel of the process. |
[in] | transmit_interruptions | This flag asks the first kernel to forward the interruption to the next kernel or the process. |
[in] | last_return_is_shutdown | This flag indicates whether an extra return on an empty return stack can be considered as a shutdown in the first kernel of the process. |
[in] | protected_mode | The protected mode of the first kernel of the process. |
[in] | access_control | The access control of the first kernel of the process. A NULL pointer means no specific restriction. |
The process is created in SUSPENDED state and has to be attached to a scheduler to be executed.
FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.) |
SVM_FUNCTION SVM_Process svm_process_new_symbol__string | ( | const void * | svm, |
const SVM_String | name, | ||
const SVM_Value_PluginEntryPoint | sequencer, | ||
const SVM_Boolean | auto_terminated, | ||
const SVM_Value_Symbol | symbol, | ||
const SVM_Boolean | transmit_interruptions, | ||
const SVM_Boolean | last_return_is_shutdown, | ||
const SVM_Boolean | protected_mode, | ||
const SVM_AccessControl | access_control | ||
) |
This function creates a new process from specific values and the name from a SVM_String.
[in] | svm | The SVM pointer passed as first argument of the callback function. |
[in] | name | The name of the process. |
[in] | sequencer | The sequencer name. A NULL pointer will select the default sequencer. |
[in] | auto_terminated | This flag indicates whether the process shall be automatically terminated. |
[in] | symbol | The symbol to jump to in the first kernel of the process. |
[in] | transmit_interruptions | This flag asks the first kernel to forward the interruption to the next kernel or the process. |
[in] | last_return_is_shutdown | This flag indicates whether an extra return on an empty return stack can be considered as a shutdown in the first kernel of the process. |
[in] | protected_mode | The protected mode of the first kernel of the process. |
[in] | access_control | The access control of the first kernel of the process. A NULL pointer means no specific restriction. |
The process is created in SUSPENDED state and has to be attached to a scheduler to be executed.
FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.) |