| Simple Virtual Machine
    A simple but flexible virtual machine | 
This module contains API functions to handle SVM memory write access. More...
| Functions | |
| SVM_FUNCTION void | svm_memory_write_address (const void *svm, const SVM_Kernel kernel, const SVM_Address address, const SVM_Value value) | 
| This function writes a value into a memory.  More... | |
| SVM_FUNCTION void | svm_memory_write_pointer (const void *svm, const SVM_Kernel kernel, const SVM_Value_Pointer pointer, const SVM_Value *values) | 
| This function writes an array of values into a memory.  More... | |
| SVM_FUNCTION void | svm_memory_write_pointer__raw (const void *svm, const SVM_Kernel kernel, const SVM_Address address, const SVM_Size size, const SVM_Value *values) | 
| This function writes an array of values into a memory.  More... | |
This module contains API functions to handle SVM memory write access.
| SVM_FUNCTION void svm_memory_write_address | ( | const void * | svm, | 
| const SVM_Kernel | kernel, | ||
| const SVM_Address | address, | ||
| const SVM_Value | value | ||
| ) | 
This function writes a value into a memory.
| [in] | svm | The SVM pointer passed as first argument of the callback function. | 
| [in] | kernel | The kernel in which the targeted memory is. | 
| [in] | address | The local address to write to. | 
| [in] | value | The value to write. | 
When a null value is written into the memory, the corresponding value is cleared. After the write, the address is still defined but no longer initialised.
| FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.) | 
| FAILURE | interruption when the kernel is not owned by our process or is not in a process locked by ours. | 
| MEMORY | interruption when the address is not defined. | 
| MEMORY | interruption when the type of the address is incompatible with the value type. | 
| SVM_FUNCTION void svm_memory_write_pointer | ( | const void * | svm, | 
| const SVM_Kernel | kernel, | ||
| const SVM_Value_Pointer | pointer, | ||
| const SVM_Value * | values | ||
| ) | 
This function writes an array of values into a memory.
| [in] | svm | The SVM pointer passed as first argument of the callback function. | 
| [in] | kernel | The kernel in which the targeted memory is. | 
| [in] | pointer | The zone to write to. | 
| [in] | values | The values to write. | 
The values are written into the memory only if all types are compatibles. Otherwise, no value is written into the memory.
When a null value is written into the memory, the corresponding value is cleared. After the write, the address is still defined but no longer initialised.
| FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.) | 
| FAILURE | interruption when the kernel is not owned by our process or is not in a process locked by ours. | 
| MEMORY | interruption when at least one address is not defined. | 
| MEMORY | interruption when at least one type of value is incompatible with the corresponding address type. | 
| SVM_FUNCTION void svm_memory_write_pointer__raw | ( | const void * | svm, | 
| const SVM_Kernel | kernel, | ||
| const SVM_Address | address, | ||
| const SVM_Size | size, | ||
| const SVM_Value * | values | ||
| ) | 
This function writes an array of values into a memory.
| [in] | svm | The SVM pointer passed as first argument of the callback function. | 
| [in] | kernel | The kernel in which the targeted memory is. | 
| [in] | address | The zone address to write to. | 
| [in] | size | The zone size to write to. | 
| [in] | values | The values to write. | 
The values are written into the memory only if all types are compatibles. Otherwise, no value is written into the memory.
When a null value is written into the memory, the corresponding value is cleared. After the write, the address is still defined but no longer initialised.
| FAILURE | interruption when a parameter is incorrect. (Please refer to the main description page of this API.) | 
| FAILURE | interruption when the kernel is not owned by our process or is not in a process locked by ours. | 
| MEMORY | interruption when at least one address is not defined. | 
| MEMORY | interruption when at least one type of value is incompatible with the corresponding address type. |