INtime SDK Help
Object Directories
INtime SDK v7.1 > About INtime > INtime Kernel > Object Directories

Overview

An object directory lists object names and corresponding handles.

The object directory enables threads to use symbolic names to share object access.

Creating a process object directory

The RT kernel creates an object directory for each process. The number of entries for processes is a parameter in the RT Application Loader.

Deleting a process object directory

You delete the process object directory when the process is deleted.

Using an object directory

Typically, one thread creates an object and catalogs its handle and name. Another thread uses that name to look up the handle for the object. Two or more threads can share an object cataloged in an object directory.

Note:   The object directory is case-sensitive: upper-and lower-case alphabetic characters are interpreted differently. The INtime kernel, however, sees the name as just a string of bytes; it does not interpret these bytes as ASCII characters.

System calls

This lists common operations on objects in object directories and the system calls that perform the operations. Threads can use the object directory of their process or another process.

To . . . Use this system call . . .
Enter object in directory CatalogRtHandle
CatalogRtHandleLong
ntxCatalogNtxHandle
Get an object's type GetRtHandleType
GetRtHandleTypeEx
ntxGetType
Look up an object's name LookupRtHandle
LookupRtHandleLong
ntxLookupNtxHandle
Remove a directory entry UncatalogRtHandle
UncatalogRtHandleLong
ntxUncatalogNtxHandle
Get the root process handle ntxGetRootRtProcess
GetRtThreadHandles
Obtain an NTXHANDLE that corresponds to an RTHANDLE ntxImportRtHandle
Return the contents of a process' object directory InspectRtProcessDirectory
Return the contents of a process' object directory entry GetRtProcessDirectoryEntry
Return the contents of a process' object directory entry, including long name GetRtProcessDirectoryEntryLong

This shows the order to make object directory system calls and lists calls that objects frequently use:

  1. Make this call from the thread that created the object.
  2. Make these calls from threads that need to access the object.
  3. Make this call from the thread that created the object.

 

See Also