21.01.2015 Views

INtime® 3.1 Software - tenAsys

INtime® 3.1 Software - tenAsys

INtime® 3.1 Software - tenAsys

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

INtime <strong>3.1</strong> <strong>Software</strong><br />

iwin32 calls<br />

iwin32x calls<br />

RtGetClockTimerPeriod<br />

RtGetClockTimerPeriod<br />

RtGetTimer –<br />

QueryPerformanceCounter –<br />

QueryPerformanceFrequency –<br />

RtSetClockTime –<br />

RtSetTimer –<br />

RtSetTimerRelative –<br />

I/O handling<br />

In iwin32 a few general file handling functions are present. For many functions, the C-<br />

library offers alternatives. Device dependent functions (as provided by DeviceIoControl<br />

in Win32) can either be programmed using port I/O, or can be delegated to INtime<br />

device drivers.<br />

In contrast to Win32, port I/O (accessing hardware ports directly) is allowed in all<br />

INtime threads.<br />

I/O functions in iwin32 include::<br />

iwin32 calls<br />

iwin32x calls<br />

CreateFile<br />

Part of Win32<br />

DeleteFile<br />

Part of Win32<br />

RtDisablePortIo<br />

Part of Win32<br />

RtEnablePortIo –<br />

RtGetBusDataByOffset<br />

RtGetBusDataByOffset<br />

ReadFile<br />

Part of Win32<br />

RtReadPort... –<br />

RemoveDirectory<br />

Part of Win32<br />

RtSetBusDataByOffset<br />

RtSetBusDataByOffset<br />

RtTranslateBussAddress<br />

RtTranslateBussAddress<br />

SetFilePointer<br />

Part of Win32<br />

WriteFile<br />

Part of Win32<br />

RtWritePort... –<br />

Interrupt handling<br />

Win32 does not provide interrupt handling functions, as this always takes place in the<br />

Windows kernel environment. Since interrupts are critical in INtime, we have<br />

extended iwin32 with interrupt handling. There are two choices for handling an<br />

interrupt:<br />

148

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!