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

Keywords - F


· ! · 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 ·


F_ALLOCSP
· io_space() ·

F_FREESP
· io_space() ·

faults and scheduling
· Rescheduling — exceptions · Scheduling and the real world ·

fcntl()
· Starting a process with the exec() and spawn() calls ·

FD_CLOEXEC
· Starting a process with the exec() and spawn() calls ·

fgets()
· Client summary · Filesystem ·

FIFO scheduling
· Scheduling algorithms ·
defined
· Glossary ·

FILE
· Characteristics of resource managers · Client summary ·

file descriptor
and Resource managers
· Characteristics of resource managers ·
connection ID
· Finding the server · Finding the server's ND/PID/CHID ·
resource manager
· Finding the server ·

file stream
and Resource managers
· Characteristics of resource managers ·

filesystem
chown restricted
· The iofunc_mount_t mount structure ·
server example
· Reading and writing data ·
union
· Union'd filesystems ·

fopen()
· Client summary · Finding the server · Handling directories ·

fork()
· Process creation and threads · So what should you use? · Starting a process from within a program · Starting a process with the exec() and spawn() calls · Starting a process with the fork() call · Starting a process with the vfork() call · Summary ·
and resource managers
· So what should you use? ·
and threads
· So what should you use? ·
avoid
· So what should you use? ·

fprintf()
· Filesystem ·

fs-cache
· Union'd filesystems ·

fs-qnx4
· Finding the server · Multipart messages · Reading and writing data ·

_FTYPE_ANY
· The resmgr_attach() function and its parameters ·

_FTYPE_MQUEUE
· The resmgr_attach() function and its parameters ·

function
atomic
atomic_*()
· ISR functions ·
atomic_set()
· ISR functions ·
basename()
· Starting a process with the exec() and spawn() calls ·
block_func()
· Controlling the number of threads · The thread pool functions ·
channel
ChannelCreate()
· Architecture & structure · Channel flags · Creating the channel · Glossary · main() · _NTO_CHF_UNBLOCK · Who sent the message? ·
ChannelCreate() example
· main() ·
ChannelDestroy()
· Architecture & structure · Creating the channel ·
ConnectAttach()
· Architecture & structure · Creating the channel · Establishing a connection · Finding the server's ND/PID/CHID · Glossary · Impact on ConnectAttach() · Networked message passing differences · setupPulseAndTimer() · Some notes on NDs · The server ·
ConnectAttach() example
· setupPulseAndTimer() ·
ConnectAttach() prototype
· Establishing a connection ·
ConnectDetach()
· Architecture & structure · Establishing a connection ·
chmod()
· The resource manager library ·
chown()
· The resource manager library ·
clock_nanosleep()
· Using different clock sources ·
close()
· Message passing and client/server · Message passing over a network ·
context_alloc()
· Controlling the number of threads · The thread pool functions ·
context_free()
· Controlling the number of threads · The thread pool functions ·
Creceive()
· Message passing · Proxies ·
delay()
· Base timing resolution · Timing jitter ·
devctl()
· Characteristics of resource managers · Client/server using the global namespace · Glossary · Translating messages to devctl() or _IO_MSG · Translating messages to standard file-descriptor-based POSIX calls ·
dispatch_create()
· The library really does what we just talked about ·
event related
SIGEV_INTR_INIT() (macro)
· General tricks for notification ·
SIGEV_PULSE_INIT() (macro)
· General tricks for notification ·
SIGEV_SIGNAL_CODE_INIT() (macro)
· General tricks for notification ·
SIGEV_SIGNAL_INIT() (macro)
· General tricks for notification ·
SIGEV_SIGNAL_THREAD_INIT() (macro)
· General tricks for notification ·
SIGEV_THREAD_INIT() (macro)
· General tricks for notification ·
SIGEV_UNBLOCK_INIT() (macro)
· General tricks for notification ·
exit()
· Detaching an interrupt handler · Starting a process with the vfork() call ·
fcntl()
· Starting a process with the exec() and spawn() calls ·
fgets()
· Client summary · Filesystem ·
fopen()
· Client summary · Finding the server · Handling directories ·
fork()
· Process creation and threads · So what should you use? · Starting a process from within a program · Starting a process with the exec() and spawn() calls · Starting a process with the fork() call · Starting a process with the vfork() call · Summary ·
fprintf()
· Filesystem ·
getppid()
· Finding the server's ND/PID/CHID ·
gotAMessage()
· gotAMessage() · main() ·
gotAPulse()
· gotAPulse() · main() ·
handler_func()
· Controlling the number of threads · The thread pool functions ·
in*()
· ISR functions ·
in8()
· Using InterruptAttach() ·
interrupt
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() ·
InterruptAttach() diagram
· InterruptAttach() versus InterruptAttachEvent() ·
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() ·
InterruptAttachEvent() diagram
· InterruptAttach() versus InterruptAttachEvent() ·
InterruptAttachEvent() example
· Using InterruptAttachEvent() ·
InterruptAttachEvent() versus InterruptAttach()
· InterruptAttach() versus InterruptAttachEvent() · Using InterruptAttachEvent() ·
InterruptDetach()
· 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() ·
InterruptWait() example
· Using InterruptAttachEvent() ·
io_fdinfo()
· io_fdinfo() ·
io_read()
· A simple io_read() example · A simple io_write() example ·
example
· A simple io_read() example ·
io_write()
· A simple io_write() example ·
example
· A simple io_write() example ·
ISR-safe
· ISR functions ·
atomic() family
· ISR functions ·
in() family
· ISR functions ·
InterruptDisable()
· ISR functions ·
InterruptEnable()
· ISR functions ·
InterruptLock()
· ISR functions ·
InterruptMask()
· ISR functions ·
InterruptUnlock()
· ISR functions ·
InterruptUnmask()
· ISR functions ·
mem() family
· ISR functions ·
out() family
· ISR functions ·
str() family
· ISR functions ·
kill()
· Pulses and events ·
lseek()
· Characteristics of resource managers · Client summary · Glossary · Summary ·
malloc()
· ISR functions · Multipart messages ·
mem*()
· ISR functions ·
memcpy()
· ISR functions · Multipart messages ·
message passing
ChannelCreate()
· Architecture & structure · Channel flags · Creating the channel · io_unblock() [I/O] · _NTO_CHF_UNBLOCK · So what's the trick? · Who sent the message? ·
ChannelDestroy()
· Architecture & structure · Creating the channel ·
ConnectAttach()
· Architecture & structure · Creating the channel · Establishing a connection · Finding the server's ND/PID/CHID · Impact on ConnectAttach() · Networked message passing differences · Some notes on NDs · The server ·
ConnectDetach()
· Architecture & structure · Establishing a connection ·
MsgDeliverEvent()
· Architecture & structure · Glossary · Impact on MsgDeliverEvent() · Impact on MsgReply(), MsgRead(), and MsgWrite() · io_notify() · Networked message passing differences · Proxies · The MsgDeliverEvent() function · The receive ID (a.k.a. the client cookie) · The send-hierarchy ·
MsgError()
· Architecture & structure · General notes · Replying with no data, or an errno ·
MsgInfo()
· Using the _NTO_MI_UNBLOCK_REQ · Who sent the message? ·
MsgRead()
· Architecture & structure · Impact on MsgReceive() · Impact on MsgReply(), MsgRead(), and MsgWrite() · Implementation · Networked message passing differences · Reading and writing data · Step 3 ·
MsgReadv()
· Architecture & structure ·
MsgReceive()
· Architecture & structure · Glossary · Handling messages · Impact on MsgReceive() · Implementation · main() · Message handling · Message passing · Message passing over a network · More about channels · Multipart messages · Networked message passing differences · Not replying to the client · Notes · _NTO_CHF_UNBLOCK · Priority inheritance · Reading and writing data · Receiving a pulse message · Server framework · So what's the trick? · Synchronization problem · The MsgReceivePulse() function · Using InterruptAttachEvent() · Using the _NTO_MI_UNBLOCK_REQ · Who sent the message? ·
MsgReceive() example
· main() ·
MsgReceivePulse()
· Architecture & structure · Glossary · Implementation · Receiving a pulse message · The MsgReceivePulse() function ·
MsgReceivev()
· Architecture & structure · Glossary · Multipart messages · The MsgReceivePulse() function · The resmgr_context_t internal context block ·
MsgReply()
· Architecture & structure · Effective use of other messaging functions · Impact on MsgReply(), MsgRead(), and MsgWrite() · Message handling · Networked message passing differences · Reading and writing data · Receiving a pulse message · Replying to the client · Replying with no data, or an errno · Server framework · Step 5 · Step 8 · Step 9 · Synchronization problem · The receive ID (a.k.a. the client cookie) ·
MsgReply() example
· gotAMessage() · gotAPulse() ·
MsgReplyv()
· Architecture & structure · Effective use of other messaging functions · General notes · Multipart messages ·
MsgSend()
· Architecture & structure · Finding the server's ND/PID/CHID · Implementation · io_msg() · Kernel timeouts with message passing · Message handling · Multipart messages · _NTO_CHF_UNBLOCK · Pulses · Reading and writing data · Replying to the client · Replying with no data, or an errno · Sending messages · Server framework · The receive ID (a.k.a. the client cookie) · The server · What about the other versions? ·
MsgSend() example
· Sending messages ·
MsgSend() family
· Sending messages · What about the other versions? ·
MsgSendnc()
· Architecture & structure · What about the other versions? ·
MsgSendsv()
· Architecture & structure · What about the other versions? ·
MsgSendsvnc()
· Architecture & structure · What about the other versions? ·
MsgSendv()
· Architecture & structure · Multipart messages · _NTO_CHF_UNBLOCK · Rescheduling — kernel calls · Step 5 · Translating messages to devctl() or _IO_MSG · What about the other versions? ·
MsgSendvnc()
· Architecture & structure · What about the other versions? ·
MsgSendvs()
· Architecture & structure · _NTO_CHF_UNBLOCK · What about the other versions? ·
MsgSendvsnc()
· Architecture & structure · What about the other versions? ·
MsgVerifyEvent()
· The MsgDeliverEvent() function ·
MsgWrite()
· Architecture & structure · Effective use of other messaging functions · Impact on MsgReply(), MsgRead(), and MsgWrite() · Implementation · Networked message passing differences · Reading and writing data · Replying with no data, or an errno ·
MsgWritev()
· Architecture & structure · Effective use of other messaging functions · Multipart messages ·
message queue
mq_open()
· The resmgr_attach() function and its parameters ·
mq_receive()
· The resmgr_attach() function and its parameters ·
message-sending

See message passing

mktime()
· What kind of timer? ·
MsgVerifyEvent()
· The MsgDeliverEvent() function ·
name_attach()
· Client/server using the global namespace · Finding the server's ND/PID/CHID ·
name_close()
· Client/server using the global namespace · Finding the server's ND/PID/CHID ·
name_detach()
· Client/server using the global namespace · Finding the server's ND/PID/CHID ·
name_open()
· Client/server using the global namespace · Finding the server's ND/PID/CHID ·
nanospin()
· Operating periodically ·
netmgr_remote_nd()
· Some notes on NDs ·
netmgr_strtond()
· Some notes on NDs ·
network
netmgr_remote_nd()
· Some notes on NDs ·
netmgr_strtond()
· Some notes on NDs ·
open()
· Characteristics of resource managers · Client summary · Client/Server using an I/O manager · Client/server using the global namespace · Connect messages · Finding the server · Finding the server's ND/PID/CHID · Glossary · Handling directories · I/O messages · Impact on ConnectAttach() · Message passing and client/server · Message passing considerations · Message passing over a network · Network-distributed message passing · resmgr_io_funcs_t I/O table · Some notes on NDs · Union'd filesystems ·
implementation
· Finding the server ·
out*()
· ISR functions ·
POSIX
mq_open()
· The resmgr_attach() function and its parameters ·
mq_receive()
· The resmgr_attach() function and its parameters ·
POSIX threads
· Glossary ·
pread()
· Step 2 ·
printf()
· Starting a process with the fork() call ·
process
exec()
· So what should you use? · Starting a process with the vfork() call ·
exec() family
· Starting a process from within a program · Starting a process with the exec() and spawn() calls ·
execl()
· Starting a process with the exec() and spawn() calls ·
execle()
· Starting a process with the exec() and spawn() calls ·
execlp()
· Starting a process with the exec() and spawn() calls ·
execlpe()
· Starting a process with the exec() and spawn() calls ·
execv()
· Starting a process with the exec() and spawn() calls ·
execve()
· Starting a process with the exec() and spawn() calls ·
execvp()
· Starting a process with the exec() and spawn() calls ·
execvpe()
· Starting a process with the exec() and spawn() calls ·
getppid()
· Finding the server's ND/PID/CHID ·
spawn()
· Starting a process with the exec() and spawn() calls · Starting a process with the fork() call ·
spawn() family
· So what should you use? · Starting a process from within a program · Starting a process with the exec() and spawn() calls ·
spawnl()
· Starting a process with the exec() and spawn() calls ·
spawnle()
· Starting a process with the exec() and spawn() calls ·
spawnlp()
· Starting a process with the exec() and spawn() calls ·
spawnlpe()
· Starting a process with the exec() and spawn() calls ·
spawnp()
· Starting a process with the exec() and spawn() calls ·
spawnv()
· Starting a process with the exec() and spawn() calls ·
spawnve()
· Starting a process with the exec() and spawn() calls ·
spawnvp()
· Starting a process with the exec() and spawn() calls ·
spawnvpe()
· Starting a process with the exec() and spawn() calls ·
process creation
· Starting a process with the exec() and spawn() calls · Starting a process with the fork() call · Starting a process with the system() call ·
process transformation
· Starting a process with the exec() and spawn() calls ·
pthread_mutex_timedlock()
· CLOCK_MONOTONIC · Other clock sources ·
pulse
MsgReceive()
· Receiving a pulse message ·
MsgReceivePulse()
· Receiving a pulse message ·
pulse_attach()
· The other_func message handler ·
pulses
pulse_attach()
· The base layer ·
pulse_detach()
· The base layer ·
QNX 4
Creceive()
· Message passing · Proxies ·
qnx_name_attach()
· Client/server using the global namespace ·
qnx_name_locate()
· Client/server using the global namespace ·
qnx_proxy_attach()
· Proxies ·
Receive()
· Message passing · Proxies ·
Reply()
· Message passing ·
Send()
· Client/server using the global namespace · Message passing ·
tfork()
· Thread support ·
Trigger()
· Proxies ·
read()
· Characteristics of resource managers · Client summary · Client/server using the global namespace · Connect messages · Finding the server's ND/PID/CHID · Glossary · I/O messages · Message passing over a network · The library really does what we just talked about · Translating messages to devctl() or _IO_MSG · Translating messages to standard file-descriptor-based POSIX calls ·
rename()
· Connect messages ·
Reply()
· Message passing ·
resmgr_attach()
· The resmgr_context_t internal context block ·
resource manager
_DEVCTL_DATA()
· Step 1 ·
dispatch_block()
· The library really does what we just talked about ·
dispatch_context_alloc()
· The library really does what we just talked about ·
dispatch_create()
· The basic skeleton of a resource manager ·
dispatch_handler()
· Behind the scenes at the library · The library really does what we just talked about ·
io_chmod()
· io_chmod() ·
io_chown()
· io_chown() ·
io_close()
· Locking, unlocking, and combine message handling ·
io_close_dup()
· io_close_dup() · io_dup() ·
io_close_ocb()
· io_close_dup() · io_close_ocb() ·
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_dup()
· io_dup() ·
io_fdinfo()
· io_fdinfo() ·
io_link()
· io_link() ·
io_lock()
· io_lock() ·
io_lock_ocb()
· io_lock_ocb() · io_unlock_ocb() ·
io_lseek()
· io_lseek() · Offsets ·
io_mknod()
· io_mknod() ·
io_mmap()
· io_mmap() ·
io_mount()
· io_mount() ·
io_msg()
· io_msg() ·
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_openfd()
· io_openfd() ·
io_pathconf()
· io_pathconf() ·
io_power()
· io_power() ·
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 ·
io_readlink()
· io_readlink() ·
io_rename()
· io_rename() ·
_IO_SET_WRITE_NBYTES()
· Step 6 · Step 8 ·
io_shutdown()
· io_shutdown() ·
io_space()
· io_space() ·
io_stat()
· io_stat() · Step 6 ·
io_sync()
· io_sync() ·
io_unblock()
· Extending the OCB · io_unblock() [CONNECT] · io_unblock() [I/O] ·
io_unlink()
· io_unlink() ·
io_unlock_ocb()
· io_unlock_ocb() ·
io_utime()
· io_utime() ·
io_write()
· A simple io_write() example · Important note · io_read() · io_write() · Putting in your own functions · Step 4 ·
iofunc_attr_init()
· The library really does what we just talked about ·
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_notify()
· io_notify() ·
iofunc_notify_remove()
· io_notify() ·
iofunc_notify_trigger()
· io_notify() ·
iofunc_ocb_attach()
· io_open() ·
iofunc_ocb_calloc()
· io_mmap() ·
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_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() ·
resmgr_attach()
· Alphabetical listing of connect and I/O functions · resmgr_attr_t control structure · Resource manager structure · Step 3 · The base layer · The flags parameter · The library really does what we just talked about · The resmgr_attach() function and its parameters · The resmgr_context_t internal context block ·
resmgr_bind_ocb()
· io_open() ·
resmgr_detach()
· The base layer ·
resmgr_msgread()
· Step 3 · The base layer ·
resmgr_msgreadv()
· io_devctl() · io_write() · Step 3 · The base layer · The resmgr_context_t internal context block ·
resmgr_msgwrite()
· The base layer ·
resmgr_msgwritev()
· io_devctl() · The base layer ·
resmgr_open_bind()
· The base layer · The general flow of a resource manager ·
rsrcdbmgr_devno_attach()
· Of device numbers, inodes, and our friend rdev ·
scheduling
ClockPeriod()
· Round Robin ·
sched_get_priority_max()
· Prioritization ·
sched_get_priority_min()
· Prioritization ·
sched_rr_get_interval()
· Round Robin ·
sched_yield()
· FIFO ·
SchedYield()
· FIFO ·
setuid()
· Now that you've attached an interrupt ·
setupPulseAndTimer()
· main() · setupPulseAndTimer() ·
signal
SIGEV_INTR_INIT() (macro)
· General tricks for notification ·
sigev_notify_function()
· Thread notification ·
SIGEV_PULSE_INIT()
· setupPulseAndTimer() ·
SIGEV_PULSE_INIT() (macro)
· General tricks for notification ·
SIGEV_SIGNAL_CODE_INIT() (macro)
· General tricks for notification ·
SIGEV_SIGNAL_INIT() (macro)
· General tricks for notification ·
SIGEV_SIGNAL_THREAD_INIT() (macro)
· General tricks for notification ·
SIGEV_THREAD_INIT() (macro)
· General tricks for notification ·
SIGEV_UNBLOCK_INIT() (macro)
· General tricks for notification ·
sigwait()
· Signal notification ·
sleep()
· Kernel states, the complete list · Operating periodically · Other clock sources · Rescheduling — kernel calls ·
bad implementation
· Operating periodically ·
stat()
· The library really does what we just talked about · The resource manager library ·
strcmp()
· ISR functions ·
strdup()
· ISR functions ·
strftime()
· What kind of timer? ·
synchronization
pthread_barrier_init()
· Using a barrier ·
pthread_barrier_wait()
· Glossary · Synchronizing to the termination of a thread · Using a barrier ·
sem_post()
· Glossary ·
sem_wait()
· Glossary ·
sysconf()
· The “stack” thread attributes ·
system()
· Starting a process from within a program · Starting a process with the system() call ·
tfork() (QNX 4)
· Thread support ·
thread
pthread_atfork()
· Process creation and threads · So what should you use? ·
pthread_attr_destroy()
· The thread attributes structure · Thread attribute administration ·
pthread_attr_getdetachstate()
· The thread attributes structure ·
pthread_attr_getguardsize()
· The thread attributes structure ·
pthread_attr_getinheritsched()
· The thread attributes structure ·
pthread_attr_getschedparam()
· The thread attributes structure ·
pthread_attr_getschedpolicy()
· The thread attributes structure ·
pthread_attr_getscope()
· The thread attributes structure ·
pthread_attr_getstackaddr()
· The thread attributes structure ·
pthread_attr_getstacklazy()
· The thread attributes structure ·
pthread_attr_getstacksize()
· The thread attributes structure ·
pthread_attr_init()
· The thread attributes structure · Thread attribute administration ·
pthread_attr_set() family
· The thread attributes structure ·
pthread_attr_setdetachstate()
· The “flags” thread attribute · The thread attributes structure ·
pthread_attr_setguardsize()
· The thread attributes structure ·
pthread_attr_setinheritsched()
· The “flags” thread attribute · The “scheduling” thread attributes · The thread attributes structure ·
pthread_attr_setschedparam()
· The “flags” thread attribute · The “scheduling” thread attributes · The thread attributes structure ·
pthread_attr_setschedpolicy()
· The “flags” thread attribute · The “scheduling” thread attributes · The thread attributes structure ·
pthread_attr_setscope()
· The “flags” thread attribute · The thread attributes structure ·
pthread_attr_setstackaddr()
· The thread attributes structure ·
pthread_attr_setstacklazy()
· The thread attributes structure ·
pthread_attr_setstacksize()
· The thread attributes structure ·
pthread_cancel()
· Rescheduling — kernel calls · What about the other versions? ·
pthread_cond_broadcast()
· Signal versus broadcast ·
pthread_cond_signal()
· Condition variables · Signal versus broadcast ·
pthread_cond_wait()
· Condition variables · Sleepons versus condvars ·
pthread_create()
· A few examples · Joining · Process creation and threads · Starting a thread · The thread attributes structure · Thread support ·
pthread_join()
· Joining · Kernel timeouts · Kernel timeouts with pthread_join() · Rescheduling — kernel calls · Synchronizing to the termination of a thread · The “flags” thread attribute · Using a barrier ·
pthread_join() example
· Kernel timeouts with pthread_join() ·
pthread_mutex_lock()
· Additional Neutrino services · Condition variables · Thread support ·
pthread_mutex_unlock()
· Additional Neutrino services · Condition variables ·
pthread_rwlock_destroy()
· Readers/writer locks ·
pthread_rwlock_init()
· Readers/writer locks ·
pthread_rwlock_rdlock()
· Readers/writer locks ·
pthread_rwlock_tryrdlock()
· Readers/writer locks ·
pthread_rwlock_unlock()
· Readers/writer locks ·
pthread_rwlock_wrlock()
· Readers/writer locks ·
pthread_rwlockattr_destroy()
· Readers/writer locks ·
pthread_rwlockattr_getpshared()
· Readers/writer locks ·
pthread_rwlockattr_init()
· Readers/writer locks ·
pthread_rwlockattr_setpshared()
· Readers/writer locks ·
pthread_setschedparam()
· Priorities · So what's the trick? ·
pthread_sleepon_broadcast()
· Signal versus broadcast · Sleepon locks ·
pthread_sleepon_lock()
· Condition variables · Sleepon locks ·
pthread_sleepon_signal()
· Condition variables · Signal versus broadcast · Sleepon locks ·
pthread_sleepon_unlock()
· Condition variables · Sleepon locks ·
pthread_sleepon_wait()
· Condition variables · Sleepon locks ·
thread_pool() family
· Multiple threads ·
thread_pool_control()
· Pools of threads ·
thread_pool_create()
· Controlling the number of threads · Pools of threads ·
thread_pool_destroy()
· Pools of threads ·
thread_pool_limits()
· Pools of threads ·
thread_pool_start()
· Controlling the number of threads · Pools of threads ·
ThreadCtl()
· Now that you've attached an interrupt ·
time
asctime()
· What kind of timer? ·
clock_getres()
· Getting and setting the realtime clock and more ·
clock_gettime()
· Getting and setting the realtime clock and more ·
clock_settime()
· Getting and setting the realtime clock and more ·
ClockAdjust()
· Getting and setting · Getting and setting the realtime clock and more ·
ClockCycles()
· An accurate timestamp · Getting and setting the realtime clock and more ·
ClockPeriod()
· Getting and setting the realtime clock and more ·
ClockTime()
· Getting and setting the realtime clock and more ·
ctime()
· What kind of timer? ·
mktime()
· What kind of timer? ·
strftime()
· What kind of timer? ·
time()
· What kind of timer? ·
timer_create()
· Creating a timer · setupPulseAndTimer() · Signal, pulse, or thread? · Timers delivering signals · What kind of timer? ·
timer_create() example
· setupPulseAndTimer() ·
timer_settime()
· setupPulseAndTimer() · What kind of timer? ·
timer_settime() example
· setupPulseAndTimer() ·
timer
ClockCycles()
· An accurate timestamp ·
ClockPeriod()
· Getting and setting ·
delay()
· Base timing resolution · Timing jitter ·
timer_create()
· Creating a timer ·
timer_settime()
· What kind of timer? ·
TimerTimeout()
· Kernel timeouts · Kernel timeouts with message passing · Kernel timeouts with pthread_join() · Message passing · _NTO_CHF_UNBLOCK · The receive ID (a.k.a. the client cookie) ·
TimerTimeout() example
· Kernel timeouts with pthread_join() ·
timing
nanospin()
· Operating periodically ·
sleep()
· Operating periodically ·
unblock_func()
· The thread pool functions ·
vfork()
· So what should you use? · Starting a process from within a program · Starting a process with the vfork() call · Summary ·
waitpid()
· Starting a process with the exec() and spawn() calls ·
write()
· Client/Server using an I/O manager · Glossary · Message passing and client/server · Multipart messages · Reading and writing data · Translating messages to standard file-descriptor-based POSIX calls ·

· ! · 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 ·