Caution: This version of this document is no longer maintained. For the latest documentation, see http://www.qnx.com/developers/docs.

Keywords - I


· ! · 0 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z ·


I/O Vector
See IOV

IBM PC
· Preface to the First Edition by Rob Krten ·

in*()
· ISR functions ·

in8()
· Using InterruptAttach() ·

inactivity shutdown
· Periodic server maintenance cycles ·

initializing
struct sigevent
· Kernel timeouts with pthread_join() ·
shortcut
· Kernel timeouts with pthread_join() ·

interrupt
10 millisecond
· Operating periodically ·
8259 chip
· Clearing the interrupt source ·
analogy
· Neutrino and interrupts ·
associated thread
· Clearing the interrupt source · Telling a thread to do something ·
associating with thread or process
· The flags parameter ·
attaching handler
· Attaching an interrupt handler · Attaching with InterruptAttach() ·
BSP specific
· Level-sensitivity versus edge-sensitivity ·
causes
· Neutrino and interrupts ·
chained
· Level-sensitivity versus edge-sensitivity ·
chaining
· The flags parameter · The trade-offs ·
clearing
· Clearing the interrupt source · Using InterruptAttachEvent() ·
clock
diagram
· Clock interrupt sources ·
complex
· Clearing the interrupt source ·
context switches
· InterruptAttach() versus InterruptAttachEvent() ·
defined
· Neutrino and interrupts ·
detach on death of thread or process
· Detaching an interrupt handler ·
disabling
· ISR functions · Neutrino and interrupts ·
cli
· Neutrino and interrupts ·
doing nothing in the ISR
· Neutrino and interrupts ·
doing the work in a thread
· Clearing the interrupt source ·
edge-sensitive
· Level-sensitivity versus edge-sensitivity ·
and cleanup
· Detaching an interrupt handler ·
diagram
· Level-sensitivity versus edge-sensitivity ·
problems
· Level-sensitivity versus edge-sensitivity ·
enabling
· ISR functions · Neutrino and interrupts ·
sti
· Neutrino and interrupts ·
end of interrupt (EOI)
· Level-sensitivity versus edge-sensitivity ·
environment
· ISR functions ·
EOI
· Level-sensitivity versus edge-sensitivity ·
ethernet device
· Level-sensitivity versus edge-sensitivity ·
events
· Telling a thread to do something ·
exit()
· Detaching an interrupt handler ·
filtering out unnecessary
· The trade-offs ·
floppy disk controller
· Clearing the interrupt source · Level-sensitivity versus edge-sensitivity ·
functions
InterruptAttach() diagram
· InterruptAttach() versus InterruptAttachEvent() ·
InterruptAttachEvent() diagram
· InterruptAttach() versus InterruptAttachEvent() ·
InterruptAttachEvent() example
· Using InterruptAttachEvent() ·
InterruptWait() example
· Using InterruptAttachEvent() ·
handlers
detaching
· Detaching an interrupt handler ·
detaching the last handler
· Detaching an interrupt handler ·
events
· Using InterruptAttach() ·
example
· Now that you've attached an interrupt · Using InterruptAttach() ·
goals
· ISR functions ·
safe functions
· ISR functions ·
volatile
· Using InterruptAttach() ·
handling
· Neutrino and interrupts ·
hardware
· Rescheduling — hardware interrupts ·
hardware acknowledgment
· Clearing the interrupt source ·
high frequency
· The trade-offs ·
ignoring
· Clearing the interrupt source ·
impact on scheduling
· Clearing the interrupt source ·
informing the kernel
· Neutrino and interrupts ·
interrupt identifier
· Using InterruptAttachEvent() ·
InterruptAttach()
· Attaching an interrupt handler ·
InterruptAttachEvent()
· Attaching an interrupt handler ·
InterruptAttachEvent() versus InterruptAttach()
· InterruptAttach() versus InterruptAttachEvent() · Using InterruptAttachEvent() ·
InterruptDetach()
· Detaching an interrupt handler ·
ISRs
· Interrupt service routine · Neutrino and interrupts ·
detaching
· Detaching an interrupt handler ·
detaching the last handler
· Detaching an interrupt handler ·
events
· Using InterruptAttach() ·
example
· Now that you've attached an interrupt · Using InterruptAttach() ·
goals
· ISR functions ·
pseudo-code example
· Telling a thread to do something ·
safe functions
· ISR functions ·
volatile
· Using InterruptAttach() ·
kernel
· InterruptAttach() versus InterruptAttachEvent() ·
kernel ISR for timer
· Operating periodically ·
latency
· Neutrino and interrupts ·
level-sensitive
· Level-sensitivity versus edge-sensitivity ·
and cleanup
· Detaching an interrupt handler ·
diagram
· Level-sensitivity versus edge-sensitivity ·
low frequency
· The trade-offs ·
managing
· Neutrino and interrupts ·
masking
· Clearing the interrupt source ·
masking after detaching
· Detaching an interrupt handler ·
masking on detach of last handler
· Detaching an interrupt handler ·
minimizing latency
· The trade-offs ·
minimizing time spent in
· Clearing the interrupt source ·
not clearing the source
· Clearing the interrupt source ·
_NTO_INTR_FLAGS_END
· The flags parameter ·
_NTO_INTR_FLAGS_PROCESS
· The flags parameter ·
_NTO_INTR_FLAGS_TRK_MSK
· The flags parameter ·
order of processing
· Level-sensitivity versus edge-sensitivity ·
permissions required
· Now that you've attached an interrupt ·
PIC
· Clearing the interrupt source · Level-sensitivity versus edge-sensitivity ·
edge-sensitive mode
· Level-sensitivity versus edge-sensitivity ·
edge-sensitive mode diagram
· Level-sensitivity versus edge-sensitivity ·
level-sensitive mode
· Level-sensitivity versus edge-sensitivity ·
level-sensitive mode diagram
· Level-sensitivity versus edge-sensitivity ·
priority
· Interrupt service routine ·
processing
· Telling a thread to do something ·
programmable interrupt controller
· Clearing the interrupt source ·
edge-sensitive mode
· Level-sensitivity versus edge-sensitivity ·
edge-sensitive mode diagram
· Level-sensitivity versus edge-sensitivity ·
level-sensitive mode
· Level-sensitivity versus edge-sensitivity ·
level-sensitive mode diagram
· Level-sensitivity versus edge-sensitivity ·
pulses
· Telling a thread to do something · The MsgReceivePulse() function ·
readying a thread
· Attaching with InterruptAttach() · Attaching with InterruptAttachEvent() · Clearing the interrupt source · InterruptAttach() versus InterruptAttachEvent() · Neutrino and interrupts · Telling a thread to do something · Using InterruptAttach() ·
realtime
· Neutrino and interrupts ·
realtime clock
· Rescheduling — hardware interrupts ·
relationship to thread
· Clearing the interrupt source ·
responsibilities
· Interrupt service routine ·
returning struct sigevent
· Using InterruptAttach() ·
role of ISR
· Clearing the interrupt source ·
scheduling
· Neutrino and interrupts · Operating periodically · Rescheduling — hardware interrupts · Scheduling and the real world ·
SCSI device
· Level-sensitivity versus edge-sensitivity ·
serial handler
· Clearing the interrupt source ·
servers
· Detaching an interrupt handler ·
sharing
· Level-sensitivity versus edge-sensitivity · Now that you've attached an interrupt ·
diagram
· Level-sensitivity versus edge-sensitivity ·
problem
· Level-sensitivity versus edge-sensitivity ·
problems
· Level-sensitivity versus edge-sensitivity ·
SIGEV_INTR
· How to fill in the struct sigevent · The trade-offs · Using InterruptAttachEvent() ·
SIGEV_SIGNAL
· Using InterruptAttachEvent() ·
SIGEV_THREAD
· Using InterruptAttachEvent() ·
signals
· Telling a thread to do something ·
SMP
· ISR functions · Things to watch out for when using SMP ·
source
· Clearing the interrupt source ·
specifying order
· The flags parameter ·
spending a long time in ISR
· Clearing the interrupt source ·
startup code
· Attaching an interrupt handler ·
struct sigevent
· Attaching with InterruptAttach() · Attaching with InterruptAttachEvent() · Telling a thread to do something · Using InterruptAttach() · Using InterruptAttachEvent() ·
tail-end polling
· Clearing the interrupt source ·
thread interaction
· ISR functions ·
thread-level interactions
· Using InterruptAttach() ·
threads
· Telling a thread to do something ·
timing
· Operating periodically ·
tracking mask/unmasks
· The flags parameter ·
unmasking
· Clearing the interrupt source ·
unmasking when attaching
· Now that you've attached an interrupt ·
unnecessary wakeups
diagram
· InterruptAttach() versus InterruptAttachEvent() ·
used for timing
· Operating periodically ·
used with timers
· Clock interrupt sources ·
using InterruptWait()
· Using InterruptAttachEvent() ·
volatile
· Summary · Using InterruptAttach() ·
waiting in thread
· Using InterruptAttachEvent() ·
waking up only when required
· InterruptAttach() versus InterruptAttachEvent() ·
waking up unnecessarily
· InterruptAttach() versus InterruptAttachEvent() ·
writing
· Writing interrupt handlers ·

interrupt service routine
defined
· Glossary ·

See also Interrupts


Interrupt() family
· ISR functions ·

InterruptAttach()
· Attaching an interrupt handler · Attaching with InterruptAttach() · InterruptAttach() versus InterruptAttachEvent() · Now that you've attached an interrupt · Summary · The flags parameter · The interrupt service routine · The trade-offs · Using InterruptAttachEvent() ·
diagram
· InterruptAttach() versus InterruptAttachEvent() ·
example
· Using InterruptAttach() ·
flags parameter
· The flags parameter ·

InterruptAttachEvent()
· Attaching an interrupt handler · Attaching with InterruptAttach() · Attaching with InterruptAttachEvent() · Interrupt service routines · InterruptAttach() versus InterruptAttachEvent() · ISR functions · Now that you've attached an interrupt · Summary · The flags parameter · The interrupt service routine · The trade-offs · Using InterruptAttachEvent() ·
diagram
· InterruptAttach() versus InterruptAttachEvent() ·
example
· Using InterruptAttachEvent() ·
flags parameter
· The flags parameter ·
pseudo-code
· InterruptAttach() versus InterruptAttachEvent() ·
returning interrupt identifier
· Using InterruptAttachEvent() ·

InterruptAttachEvent() versus InterruptAttach()
· InterruptAttach() versus InterruptAttachEvent() · Using InterruptAttachEvent() ·

InterruptDetach()
· Detaching an interrupt handler ·
example
· Detaching an interrupt handler ·

InterruptDisable()
· ISR functions · Neutrino and interrupts ·

InterruptEnable()
· ISR functions · Neutrino and interrupts ·

InterruptLock()
· Glossary · ISR functions · Neutrino and interrupts · Summary ·

InterruptMask()
· ISR functions ·

InterruptUnlock()
· Glossary · ISR functions · Neutrino and interrupts · Summary ·

InterruptUnmask()
· ISR functions ·

InterruptWait()
· Kernel states, the complete list · The trade-offs · Using InterruptAttachEvent() ·
and SIGEV_INTR
· The trade-offs · Using InterruptAttachEvent() ·
example
· Using InterruptAttachEvent() ·

_IO_CHMOD
· io_chmod() ·

io_chmod()
· io_chmod() ·

io_chmod_t
· io_chmod() · io_chown() ·

_IO_CHOWN
· io_chown() ·

io_chown()
· io_chown() ·

io_close()
· Locking, unlocking, and combine message handling ·

_IO_CLOSE_DUP
· io_close_dup() · The struct dirent structure and friends ·

io_close_dup()
· io_close_dup() · io_dup() ·

io_close_ocb()
· io_close_dup() · io_close_ocb() ·

io_close_t
· io_close_dup() · io_close_ocb() ·

_IO_CONNECT
· Client/Server using an I/O manager · io_link() · io_mknod() · io_mount() · io_open() · io_readlink() · io_rename() · io_unlink() · The struct dirent structure and friends ·

_IO_CONNECT_COMBINE
· io_open() ·

_IO_CONNECT_COMBINE_CLOSE
· io_open() · Messages that should be connect messages but aren't ·

_IO_CONNECT_LINK
· io_link() ·

_IO_CONNECT_MKNOD
· io_mknod() ·

_IO_CONNECT_MOUNT
· io_mount() ·

_IO_CONNECT_OPEN
· io_open() ·

_IO_CONNECT_READLINK
· io_readlink() ·

_IO_CONNECT_RENAME
· io_rename() ·

_IO_CONNECT_UNLINK
· io_unlink() ·

_IO_DEVCTL
· A simple io_devctl() example · io_devctl() · The other_func message handler ·

io_devctl()
· A simple io_devctl() example · An io_devctl() example that deals with data · io_devctl() · Putting in your own functions · Step 1 · Step 1 · Step 2 ·

io_devctl_t
· io_devctl() ·

_IO_DUP
· io_dup() ·

io_dup()
· io_dup() ·

io_dup_t
· io_dup() ·

_IO_FDINFO
· io_fdinfo() ·

io_fdinfo()
· io_fdinfo() ·

_IO_FLAG_RD
· The iofunc_ocb_t OCB structure ·

_IO_FLAG_WR
· The iofunc_ocb_t OCB structure ·

io_link()
· io_link() ·

io_link_extra_t
· io_link() ·

io_link_t
· io_link() ·

io_lock()
· io_lock() ·

io_lock_ocb()
· io_lock_ocb() · io_unlock_ocb() ·

io_lock_t
· io_lock() ·

_IO_LSEEK
· io_lseek() · The struct dirent structure and friends ·

io_lseek()
· io_lseek() · Offsets ·

io_lseek_t
· io_lseek() ·

io_mknod()
· io_mknod() ·

io_mknod_t
· io_mknod() ·

_IO_MMAP
· io_mmap() ·

io_mmap()
· io_mmap() ·

io_mmap_t
· io_mmap() · io_notify() ·

io_mount()
· io_mount() ·

io_mount_t
· io_mount() ·

_IO_MSG
· Client/server using the global namespace · io_msg() · The other_func message handler · Translating messages to devctl() or _IO_MSG ·

io_msg()
· io_msg() ·

io_msg_t
· io_msg() ·

_IO_NOTIFY
· io_notify() ·

io_notify()
· io_notify() ·

io_open()
· Alphabetical listing of connect and I/O functions · io_close_dup() · io_open() · io_openfd() · OCB monitor · Putting in your own functions · The general flow of a resource manager · The resmgr_context_t internal context block ·

io_open_default()
· Putting in your own functions ·

io_open_t
· io_open() · io_readlink() ·

_IO_OPENFD
· io_openfd() ·

io_openfd()
· io_openfd() ·

io_openfd_t
· io_openfd() ·

_IO_PATHCONF
· io_pathconf() ·

io_pathconf()
· io_pathconf() ·

io_pathconf_t
· io_pathconf() ·

io_power()
· io_power() ·

_IO_READ
· io_read() · Step 2 · The struct dirent structure and friends ·

io_read()
· A simple io_read() example · A simple io_write() example · Blocking within the resource manager · Data area size considerations · Effective use of other messaging functions · Generally speaking … · io_read() · Offsets · Putting in your own functions · Returning directory entries · Step 4 · Step 6 · Step 7 · The struct dirent structure and friends ·
example
· A simple io_read() example ·

io_read_t
· io_read() ·

io_readlink()
· io_readlink() ·

io_rename()
· io_rename() ·

io_rename_extra_t
· io_rename() ·

io_rename_t
· io_rename() ·

_IO_SET_CONNECT_RET
· io_mount() · io_open() ·

_IO_SET_FDINFO_LEN
· io_fdinfo() ·

_IO_SET_PATHCONF_VALUE
· io_pathconf() ·

_IO_SET_READ_NBYTES
· io_read() ·

_IO_SET_WRITE_NBYTES
· io_write() ·

_IO_SET_WRITE_NBYTES()
· Step 6 · Step 8 ·

io_shutdown()
· io_shutdown() ·

_IO_SPACE
· io_space() ·

io_space()
· io_space() ·

io_space_t
· io_space() ·

_IO_STAT
· io_stat() ·

io_stat()
· io_stat() · Step 6 ·

io_stat_t
· io_stat() ·

_IO_SYNC
· io_sync() ·

io_sync()
· io_sync() ·

io_sync_t
· io_sync() ·

io_unblock()
· Extending the OCB · io_unblock() [CONNECT] · io_unblock() [I/O] ·

io_unlink()
· io_unlink() ·

io_unlink_t
· io_unlink() ·

io_unlock_ocb()
· io_unlock_ocb() ·

_IO_UTIME
· io_utime() ·

io_utime()
· io_utime() ·

io_utime_t
· io_utime() ·

_IO_WRITE
· A simple io_write() example · io_write() ·

io_write()
· A simple io_write() example · Important note · io_read() · io_write() · Putting in your own functions · Step 4 ·
example
· A simple io_write() example ·

io_write_t
· io_write() ·

_IO_XTYPE_NONE
· Step 2 ·

_IO_XTYPE_OFFSET
· A simple io_write() example · io_read() · Step 2 · Step 7 · Step 7 ·

IOFUNC_ATTR_ATIME
· Step 6 · Step 7 ·

IOFUNC_ATTR_DIRTY_TIME
· Step 6 ·

iofunc_attr_init()
· The library really does what we just talked about ·

IOFUNC_ATTR_MTIME
· Step 7 ·

iofunc_attr_t
· POSIX-layer data structures · The iofunc_attr_t attributes structure ·

iofunc_chmod_default()
· io_chmod() ·

iofunc_chown()
· io_chown() ·

iofunc_chown_default()
· io_chown() ·

iofunc_close_dup()
· io_close_dup() ·

iofunc_close_dup_default()
· io_close_dup() ·

iofunc_close_ocb_default()
· io_close_ocb() ·

iofunc_devctl()
· io_devctl() ·

iofunc_devctl_default()
· io_devctl() · Step 1 ·

iofunc_func_init()
· Alphabetical listing of connect and I/O functions · Examples · Putting in your own functions · resmgr_connect_funcs_t connect table · resmgr_io_funcs_t I/O table · Step 1 · Step 2 · The library really does what we just talked about ·

iofunc_link()
· io_link() ·

iofunc_lock_default()
· io_lock() · The iofunc_attr_t attributes structure ·

iofunc_lock_ocb_default()
· io_lock_ocb() · Locking, unlocking, and combine message handling ·

iofunc_lseek()
· io_lseek() ·

iofunc_lseek_default()
· io_lseek() ·

iofunc_mknod()
· io_mknod() ·

iofunc_mmap()
· io_mmap() ·

iofunc_mmap_default()
· io_mmap() · The iofunc_attr_t attributes structure ·

IOFUNC_MOUNT_32BIT
· The iofunc_mount_t mount structure ·

IOFUNC_MOUNT_FLAGS_PRIVATE
· The iofunc_mount_t mount structure ·

iofunc_mount_t
· POSIX-layer data structures · The iofunc_attr_t attributes structure · The iofunc_mount_t mount structure ·

_IOFUNC_NFUNCS
· The iofunc_mount_t mount structure ·

iofunc_notify()
· io_notify() ·

iofunc_notify_remove()
· io_notify() ·

iofunc_notify_trigger()
· io_notify() ·

iofunc_ocb_attach()
· io_open() ·

iofunc_ocb_calloc()
· io_mmap() ·

IOFUNC_OCB_FLAGS_PRIVATE
· The iofunc_ocb_t OCB structure ·

IOFUNC_OCB_MMAP
· The iofunc_ocb_t OCB structure ·

IOFUNC_OCB_PRIVILEGED
· The iofunc_ocb_t OCB structure ·

IOFUNC_OCB_T
· Extending the OCB ·

iofunc_ocb_t
· POSIX-layer data structures · The iofunc_ocb_t OCB structure · The strange case of the offset member ·

iofunc_open()
· io_open() ·

iofunc_open_default()
· io_open() · Putting in your own functions ·

iofunc_openfd()
· io_openfd() ·

iofunc_openfd_default()
· io_openfd() ·

iofunc_pathconf()
· io_pathconf() ·

iofunc_pathconf_default()
· io_pathconf() ·

IOFUNC_PC_CHOWN_RESTRICTED
· io_chown() · The iofunc_mount_t mount structure ·

IOFUNC_PC_LINK_DIR
· The iofunc_mount_t mount structure ·

IOFUNC_PC_NO_TRUNC
· The iofunc_mount_t mount structure ·

IOFUNC_PC_SYNC_IO
· The iofunc_mount_t mount structure ·

iofunc_read_default()
· io_read() ·

iofunc_read_verify()
· A simple io_write() example · io_read() · Step 1 · Step 2 ·

iofunc_readlink()
· io_readlink() ·

iofunc_rename()
· io_rename() ·

iofunc_space_verify()
· io_space() ·

iofunc_stat()
· io_stat() ·

iofunc_stat_default()
· io_stat() · Step 6 ·

iofunc_sync()
· io_sync() ·

iofunc_sync_default()
· io_sync() ·

iofunc_sync_verify()
· io_read() · io_sync() · io_write() ·

iofunc_unblock()
· io_unblock() [CONNECT] · io_unblock() [I/O] ·

iofunc_unblock_default()
· io_unblock() [I/O] ·

iofunc_unlink()
· io_unlink() ·

iofunc_unlock_ocb_default()
· io_unlock_ocb() · Locking, unlocking, and combine message handling ·

iofunc_utime()
· io_utime() ·

iofunc_utime_default()
· io_utime() ·

iofunc_write_default()
· io_write() ·

iofunc_write_verify()
· A simple io_write() example · io_write() ·

_IOMGR_PRIVATE_BASE
· Translating messages to devctl() or _IO_MSG ·

_IOMGR_PRIVATE_MAX
· Translating messages to devctl() or _IO_MSG ·

IOV
defined
· Glossary ·

See Message passing

See also Message passing


iov_t
· Multipart messages ·
defined
· Multipart messages ·

ISR
See interrupt service routine

· ! · 0 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z ·