Architecture of operation

Every process has a current directory path. Every thread can have an individual directory path, or – if not set explicitly by use of SetCurrentRtThreadDirectory – inherits the current directory path of its process. Creating a file object with a non-absolute filename will return a file object for the filename prepended by the current directory path.
 
Most access to files/devices like read/write/seek requires a file object fed into the API. Some operations like deleting/renaming files or traversing the directory structure work with the filenames and do not require a file object.
 
Access to files can be synchronous (where the call waits for the operation to complete prior to returning) or asynchronous (where the function call returns immediately and it‘s up to the application to later collect the result of the call). While synchronous operation is easier in terms of coding (no management of results from previous functions calls), it requires the application to wait on sometimes lengthy operations like writes and reads of long data buffers.
 
There were some limitations of the API when running INtime in the Distributed RTOS configuration with Intime 6. Hints are found in the documentation and in this training.