On Time RTOS-32 Documentation
Welcome
RTTarget-32
RTTarget-32 Programming Manual
Introduction
Running Win32 Programs without Win32
The i386 Microprocessor
RTLoc: Locating a Program
Running a Program on the Target
Cross Debugging
Using an IDE
The RTTarget-32 API
Demo Programs
Advanced Topics
Choosing a Locate Method
Running with or without Paging
Running at CPL 0 or 3
Installing Hardware Interrupt Handlers
Catching NULL Pointer Assignments
Catching Stack Overflows
Running without Run-Time System
Avoid Repeated Downloads
Configuration for Debug and Release Builds
Using Data Compression
Using DLLs through RTLoc
Using Rtt32dll.dll
Linking Rtt32.lib into the EXE
Using a Custom System DLL
Utility MakeDef
Differences from Win32
Using Microsoft Run-Time System DLLs
Loading DLLs through a File System
RAM File System
Installable File System
Multithread Applications
Using the MetaWINDOW Graphics Library
Using the 387 Emulator
Using Non-Volatile Memory
APIC Mode
Multiprocessor Applications
Custom MP Floating Pointer Structure
RTVmf-32
RTRth-32
Performance Optimizations
Compiling and Linking with On Time RTOS-32
Redistributable Components of RTTarget-32
RTLoc Error Messages
RTTarget-32 Reference Manual
RTKernel-32
RTFiles-32
RTIP-32
RTPEG-32
RTUSB-32
|
Differences from Win32
The following properties of RTTarget-32's DLL support differ from Win32's implementation:
- LoadLibrary always supports DLLs included with the DLL command. It can load DLLs as files only if they are converted to DLMs and if the file system RTFiles-32 is used.
- GetProcAddress finds exported entrypoints only in modules which have their .edata section mapped on the target using Locate Section or Locate NTSection.
- GetModuleHandle will return the handle of the module containing Rtt32.lib for module names Kernel32.dll, User32.dll, Advapi32.dll, Oleaut32.dll, and Rtt32dll.dll.
- At program termination, the DllEntryPoint functions are not called for event DLL_PROCESS_DETACH. If this is required by an application, it should call FreeLibrary or RTDLLThreadEvent(NULL, DLL_PROCESS_DETACH) instead.
- The data segment of a DLL is not reloaded when a DLL is initialized more than once.
Using DLLs through RTLoc
Utility MakeDef
Using Microsoft Run-Time System DLLs
|