
Литература_1 / sys_arch
.pdf♥ 2008, QNX Software Systems GmbH & Co. KG. |
Index |
pthread_kill() 18, 66 |
|
pthread_mutex_destroy() |
18, 40 |
pthread_mutex_init() 18, 40 |
|
pthread_mutex_lock() |
18, 22, 33, 40, 98 |
pthread_mutex_timedlock() 33 |
|
pthread_mutex_trylock() |
18, 34, 40, 44 |
pthread_mutex_unlock() |
18, 33, 40, 98 |
pthread_mutexattr_init() 34 pthread_mutexattr_setprotocol() 34 pthread_mutexattr_setrecursive() 34
PTHREAD_PRIO_INHERIT 34 pthread_rwlock_rdlock() 38 pthread_rwlock_tryrdlock() 38 pthread_rwlock_trywrlock() 38 pthread_rwlock_unlock() 38 pthread_rwlock_wrlock() 38 pthread_self() 18 pthread_setname_np() 20 pthread_setschedparam() 18, 30 pthread_setspecific() 18 pthread_sigmask() 18 pthread_sleepon_lock() 38 pthread_spin_lock() 98 pthread_spin_unlock() 98
pty (pseudo terminal)
as pair of character devices 184 pulses 61, 64
Q
qdb
resource manager 274 QDB
introduction 274 Qnet 192, 197–206
limiting transmission retries 204 redundant 202
QNX 4 filesystem 119, 161
QNX 6 filesystem See Power-Safe filesystem
QNX Neutrino |
|
design goals |
3, 16 |
extensibility |
9 |
flexibility 6 |
|
network as homogeneous set of resources 11
network flexibility 11 network transparency 11
preemptible even during message pass 16 realtime applications, suitability for 5
services |
16 |
single-computer model 11 |
|
QoS (Quality of Service) 202 |
|
policies |
202 |
R
raise() |
66 |
|
|
|
|
|
|
RAM |
114 |
|
|
|
|
|
|
RAM “filesystem” |
157 |
|
|
||||
RAM disk |
154 |
|
|
|
|
|
|
RapidIO 207 |
|
|
|
|
|
||
rate monotonic analysis (RMA) |
28 |
||||||
raw input mode |
180 |
|
|
|
|||
conditions for input request |
180 |
||||||
FORWARD qualifier |
181 |
|
|||||
MIN qualifier |
180 |
|
|
||||
TIME qualifier |
180 |
|
|
||||
TIMEOUT qualifier |
180 |
|
|||||
read() |
65 |
|
|
|
|
|
|
readblock() |
146 |
|
|
|
|
|
|
readdir() |
123, 151 |
|
|
|
|
||
reader/writer locks |
32, 38 |
|
|||||
READY (thread state) |
23 |
|
|||||
realtime performance |
44 |
|
|
||||
interrupt latency and |
45 |
|
|||||
nested interrupts and |
46 |
|
|||||
scheduling latency and 45 |
|
||||||
RECEIVE (thread state) |
23 |
|
|||||
rectangle list (Photon) |
250 |
|
|||||
recv() |
213 |
|
|
|
|
|
|
recvfrom() |
213 |
|
|
|
|
|
|
redirecting |
|
|
|
|
|
|
|
input |
84 |
|
|
|
|
|
|
output |
84 |
|
|
|
|
|
|
redundant Qnet |
202 |
|
|
|
|||
regions (Photon) |
247, 249 |
|
relative pathnames, converting to network pathnames 125
remove() 85
replenishment period (sporadic scheduling) 28
October 16, 2008 |
Index 303 |
Index |
♥ 2008, QNX Software Systems GmbH & Co. KG. |
REPLY (thread state) 23 |
|
|
|
|||||
res_init() |
213 |
|
|
|
|
|
|
|
res_mkquery() |
213 |
|
|
|
|
|||
res_query() |
213 |
|
|
|
|
|
||
res_querydomain() |
213 |
|
|
|
||||
res_search() |
213 |
|
|
|
|
|
||
res_send() |
|
213 |
|
|
|
|
|
|
RESCONF |
213 |
|
|
|
|
|
||
resolv.conf |
213 |
|
|
|
|
|||
resource managers |
151 |
|
|
|
|
|||
atomic operations |
146 |
|
|
|
||||
attributes structure |
147 |
|
|
|
||||
can be started and stopped dynamically |
||||||||
139 |
|
|
|
|
|
|
|
|
communicate with clients via IPC |
142 |
|||||||
context for client requests |
144 |
|
||||||
defined |
139 |
|
|
|
|
|
||
devb |
275 |
|
|
|
|
|
|
|
don’t require any special arrangements with |
||||||||
the kernel |
139 |
|
|
|
||||
io-audio |
275 |
|
|
|
|
|||
io-fs |
275 |
|
|
|
|
|
||
io-media |
275 |
|
|
|
|
|||
io-usb |
275 |
|
|
|
|
|
||
iofunc_*() shared library |
146 |
|
||||||
message types |
143 |
|
|
|
||||
mme |
274 |
|
|
|
|
|
|
|
mount structure |
147 |
|
|
|
||||
qdb |
274 |
|
|
|
|
|
|
|
shared library |
144 |
|
|
|
|
|||
similarity to traditional device drivers 139 |
||||||||
similarity to user-level servers |
139 |
|||||||
thread management |
145 |
|
|
|
||||
unique features of |
142 |
|
|
|
||||
resources |
|
|
|
|
|
|
|
|
accessing on other machines |
11 |
|
||||||
no real difference between local and remote |
||||||||
11 |
|
|
|
|
|
|
|
|
open |
126 |
|
|
|
|
|
|
|
RLIMIT_AS |
82 |
|
|
|
|
|
|
|
RLIMIT_DATA |
82 |
|
|
|
|
|
||
RLIMIT_VMEM |
82 |
|
|
|
|
|||
rm 85 |
|
|
|
|
|
|
|
|
robustness |
|
|
|
|
|
|
|
|
improved via memory protection |
114 |
of application architectures via
Send/Receive/Reply |
63 |
|||
of implementations with |
|
|||
Send/Receive/Reply |
62 |
|||
of IPC |
53 |
|
|
|
of signal handlers |
64 |
|
||
ROM 114 |
|
|
|
|
round-robin scheduling |
26, 27 |
|
||
runmask |
103 |
|
|
|
inheriting |
103 |
|
|
|
RUNNING (thread state) 23 |
|
|||
runtime linker |
134 |
|
|
S
scaling |
|
|
|
advantages of |
3 |
||
of applications |
3 |
||
scatter/gather DMA |
56 |
||
sched_yield() |
24 |
|
|
SchedGet() |
18 |
|
|
SchedSet() |
18 |
|
|
scheduling |
|
|
|
FIFO |
26, 27 |
|
|
latency |
|
45 |
|
method |
|
|
|
determining |
26 |
||
setting |
26 |
|
|
round-robin 26, 27 |
|||
SMP systems |
101 |
||
sporadic |
26, 28 |
||
threads |
|
24 |
|
seek points |
126, 127 |
||
segments |
132 |
|
|
select() 65, 213 |
|
||
SEM (thread state) |
23 |
||
sem_destroy() |
40 |
|
|
sem_init() |
40 |
|
|
sem_post() |
40 |
|
|
sem_trywait() |
40 |
|
|
sem_wait() |
40 |
|
|
semaphores |
|
16, 31, 32, 38 |
|
named |
39 |
|
|
SMP |
102 |
|
|
SEND (thread state) |
23 |
304 Index |
October 16, 2008 |
♥ 2008, QNX Software Systems GmbH & Co. KG. |
Index |
send() 213 |
|
|
|
|
|
||
sendto() |
213 |
|
|
|
|
|
|
sensitivity bitmask (Photon) |
249 |
|
|||||
serial |
|
|
|
|
|
|
|
devices |
183 |
|
|
|
|||
drivers |
184 |
|
|
|
|
||
Server Side Includes (SSI) |
217 |
|
|||||
services |
214 |
|
|
|
|
||
services, handled by system processes |
9 |
||||||
sessions, remote node |
112 |
|
|
||||
setprotoent() |
213 |
|
|
|
|||
setrlimit() |
82 |
|
|
|
|
|
|
setservent() |
213 |
|
|
|
|||
setsockopt() |
213 |
|
|
|
|||
shared libraries (.so files) |
15, 109, 134 |
||||||
shared memory |
31, 39, 58, 72–77 |
|
|||||
shm_ctl() |
74 |
|
|
|
|
|
|
shm_open() |
74 |
|
|
|
|
||
shm_unlink() |
74 |
|
|
|
|||
shutdown() |
213 |
|
|
|
|
||
SIGABRT |
69 |
|
|
|
|
|
|
sigaction() |
66 |
|
|
|
|
||
SIGALRM |
69 |
|
|
|
|
|
|
SIGBUS |
69 |
|
|
|
|
|
|
SIGCHLD |
69 |
|
|
|
|
|
|
SIGCONT |
69 |
|
|
|
|
|
|
SIGDEADLK |
69 |
|
|
|
|||
SIGEMT |
69 |
|
|
|
|
|
|
SIGFPE |
69 |
|
|
|
|
|
|
SIGHUP |
69 |
|
|
|
|
|
|
SIGILL |
69 |
|
|
|
|
|
|
SIGINT |
69 |
|
|
|
|
|
|
SIGIOT |
69 |
|
|
|
|
|
|
SIGKILL |
69 |
|
|
|
|
|
|
signal() |
68 |
|
|
|
|
|
|
SignalAction() |
66 |
|
|
|
|||
SignalKill() |
18, 23, 66 |
|
|
|
|||
SignalProcmask() |
18, 66 |
|
|
||||
signals |
16 |
|
|
|
|
|
|
POSIX and UNIX |
66 |
|
|
||||
queuing of |
|
67 |
|
|
|
||
rules for a multithreaded process |
66 |
||||||
similarity to pulses |
67 |
|
|
||||
targeted at specific threads 66 |
|
||||||
SignalSuspend() |
66 |
|
|
|
|||
SignalWaitinfo() |
66 |
|
|
|
SIGPIPE |
69 |
|
|
|
|
|
||
SIGPOLL |
|
69 |
|
|
|
|
|
|
sigprocmask() |
66 |
|
|
|
|
|||
sigqueue() |
66 |
|
|
|
|
|||
SIGQUIT |
|
69 |
|
|
|
|
|
|
SIGSEGV |
|
69 |
|
|
|
|
|
|
SIGSTOP |
|
69 |
|
|
|
|
|
|
SIGSUSPEND (thread state) |
23 |
|
||||||
sigsuspend() |
23, 66 |
|
|
|
||||
SIGSYS |
|
69 |
|
|
|
|
|
|
SIGTERM |
|
69 |
|
|
|
|
|
|
sigtimedwait() |
44 |
|
|
|
|
|||
SIGTRAP |
|
69 |
|
|
|
|
|
|
SIGTSTP |
|
69 |
|
|
|
|
|
|
SIGTTIN |
69 |
|
|
|
|
|
||
SIGTTOU |
|
69 |
|
|
|
|
|
|
SIGURG |
69 |
|
|
|
|
|
||
SIGUSR1 |
|
69 |
|
|
|
|
|
|
SIGUSR2 |
|
69 |
|
|
|
|
|
|
SIGWAITINFO (thread state) 23 |
|
|||||||
sigwaitinfo() |
23, 66 |
|
|
|
||||
SIGWINCH |
69 |
|
|
|
|
|||
single-computer model |
11 |
|
|
|||||
slay |
104 |
|
|
|
|
|
||
sleep() |
44 |
|
|
|
|
|
||
sleepon locks |
32, 38 |
|
|
|
||||
slinger |
|
216 |
|
|
|
|
||
SMP (Symmetric Multiprocessing) |
97, 98 |
|||||||
snapshot (Power-Safe filesystem) |
164 |
|||||||
socket() |
|
213 |
|
|
|
|
|
|
sockets (logical flash drives) |
169 |
|
||||||
software interrupt |
See signals |
|
||||||
SPAWN_EXPLICIT_CPU 104 |
|
|||||||
SPAWN_SETGROUP |
111 |
|
|
|||||
SPAWN_SETSIGDEF |
111 |
|
|
|||||
SPAWN_SETSIGMASK |
111 |
|
||||||
spawn() |
104 |
|
|
|
|
|
||
family of functions 109–111 |
|
|||||||
spinlocks |
|
102 |
|
|
|
|
||
SPOF |
225 |
|
|
|
|
|
||
sporadic scheduling |
26, 28 |
|
|
|||||
SSI (Server Side Includes) |
217 |
|
||||||
STACK (thread state) |
23 |
|
|
|||||
startup code (startup-*) |
100 |
|
||||||
stat() |
148 |
|
|
|
|
|
||
states |
|
|
|
|
|
|
|
|
October 16, 2008 |
Index 305 |
Index |
♥ 2008, QNX Software Systems GmbH & Co. KG. |
CONDVAR |
22 |
|
|
|||
DEAD |
|
22 |
|
|
|
|
INTERRUPT |
22 |
|
||||
JOIN |
22 |
|
|
|
|
|
MUTEX |
22 |
|
|
|
||
NANOSLEEP |
23 |
|
||||
NET_REPLY |
23 |
|
||||
NET_SEND |
23 |
|
||||
READY |
23 |
|
|
|
||
RECEIVE |
23 |
|
|
|||
REPLY |
23 |
|
|
|
||
RUNNING |
23 |
|
|
|||
SEM |
23 |
|
|
|
|
|
SEND |
|
23 |
|
|
|
|
SIGSUSPEND |
|
23 |
|
|||
SIGWAITINFO |
23 |
|
||||
STACK |
23 |
|
|
|
||
STOPPED |
23 |
|
|
|||
WAITCTX |
23 |
|
|
|||
WAITPAGE 23 |
|
|
||||
WAITTHREAD |
23 |
|
||||
static linking |
131 |
|
|
|
||
static partitions |
237 |
|
|
|||
STOPPED (thread state) |
23 |
|||||
stty 182 |
|
|
|
|
|
|
superblocks |
163 |
|
|
|
||
symbol names, resolving |
136 |
|||||
symbolic links |
|
|
|
|
||
cd command and |
125 |
|||||
symbolic prefixes |
123 |
|
||||
Symmetric Multiprocessing See SMP |
||||||
SyncCondvarSignal() |
18, 40 |
|||||
SyncCondvarWait() |
|
18, 40 |
||||
SyncDestroy() |
18, 40 |
|
||||
synchronization services |
32, 40 |
|||||
SyncMutexEvent() |
18 |
|
||||
SyncMutexLock() |
18, 40 |
|
||||
SyncMutexUnlock() |
|
18, 40 |
||||
SyncSemPost() |
40 |
|
|
|
||
SyncSemWait() |
23, 40 |
|
||||
SyncTypeCreate() |
18, 40 |
|
||||
system |
|
|
|
|
|
|
emergency access to |
242 |
|||||
page |
41 |
|
|
|
|
|
processes |
9 |
|
|
|
similarity to user-written processes |
9 |
T
tcdropline() |
179 |
|
|
|
|
|||
tcgetattr() |
179 |
|
|
|
|
|
||
tcgetpgrp() |
179 |
|
|
|
|
|
||
tcinject() |
179 |
|
|
|
|
|
|
|
TCP/IP |
211–217 |
|
|
|
|
|||
resource manager (io-pkt*) |
212 |
|||||||
stack configurations |
211 |
|
|
|||||
tcsendbreak() |
179 |
|
|
|
|
|||
tcsetattr() |
179 |
|
|
|
|
|
||
tcsetpgrp() |
179 |
|
|
|
|
|
||
terminal emulation |
183 |
|
|
|
||||
textto |
166 |
|
|
|
|
|
|
|
thread scheduler |
237 |
|
|
|
||||
ThreadCancel() |
18 |
|
|
|
|
|||
ThreadCreate() |
|
18, 23 |
|
|
|
|||
ThreadCtl() |
18, 104 |
|
|
|
||||
ThreadDestroy() |
18 |
|
|
|
||||
ThreadDetach() |
18 |
|
|
|
|
|||
ThreadJoin() |
18 |
|
|
|
|
|||
threads |
16, 145 |
|
|
|
|
|
||
all share same kernel interface |
109 |
|||||||
and barriers |
35 |
|
|
|
||||
attributes of |
20 |
|
|
|
||||
cancellation handlers |
20 |
|
|
|||||
concurrency advantages |
32 |
|
||||||
defined |
18 |
|
|
|
|
|
||
life cycle |
21 |
|
|
|
|
|||
migration, reducing |
101 |
|
|
|||||
names |
20 |
|
|
|
|
|
||
priority |
20, 24 |
|
|
|
|
|||
priority inversion 25 |
|
|
||||||
process must contain one or more 18 |
||||||||
register set |
|
20 |
|
|
|
|
||
scheduling |
|
24 |
|
|
|
|
||
FIFO |
27 |
|
|
|
|
|
||
round-robin |
27 |
|
|
|
||||
sporadic |
|
28 |
|
|
|
|
||
signal mask |
20 |
|
|
|
||||
stack |
20 |
|
|
|
|
|
|
|
states |
21 |
|
|
|
|
|
|
|
synchronization |
31 |
|
|
|
||||
tid |
20 |
|
|
|
|
|
|
|
TLS (thread local storage) |
20 |
|
||||||
time_t |
41 |
|
|
|
|
|
|
306 Index |
October 16, 2008 |
♥ 2008, QNX Software Systems GmbH & Co. KG. |
Index |
timeout service |
43 |
|
|
timer_create() |
44 |
|
|
timer_delete() |
44 |
|
|
timer_getoverrun() |
44 |
||
timer_gettime() |
44 |
|
|
timer_settime() |
44 |
|
|
TimerAlarm() |
44 |
|
|
TimerCreate() |
44 |
|
|
TimerDestroy() |
44 |
|
|
TimerInfo() |
44 |
|
|
timers 16, 42 |
|
|
|
cyclical mode |
43 |
||
TimerSettime() |
44 |
|
|
TimerTimeout() |
43, 44 |
||
timeslice |
27 |
|
|
TLB (translation look-aside buffer) 115, 118
TLS (thread local storage) |
20 |
|
TraceEvent() |
93 |
|
transactions |
157 |
|
transparency of network |
11 |
|
typed memory |
78 |
|
typographical conventions |
xvi |
U
UART |
49 |
|
UDF (Universal Disk Format) filesystem |
173 |
|
umount |
193 |
|
uname |
15 |
|
Unicode |
253 |
|
Universal Disk Format (UDF) filesystem |
173 |
|
unlink() |
85 |
|
UNMAP_INIT_OPTIONAL 78 |
|
|
UNMAP_INIT_REQUIRED 78 |
|
|
UTF-8 encoding 253 |
|
|
utime() |
148 |
|
V
variable page size |
118 |
vfork() 109, 113 |
|
virtual addresses |
115 |
virtual consoles |
183 |
W
WAITCTX (thread state) |
23 |
|
||
WAITPAGE (thread state) |
23 |
|
||
WAITTHREAD (thread state) 23 |
|
|||
watchdog |
116 |
|
|
|
web server |
216 |
|
|
|
wide emitting mode (instrumented kernel) |
90 |
|||
widgets (Photon) |
255–267 |
|
||
window manager |
255 |
|
|
|
windows, dragging across network links |
252 |
|||
write() 65, 131 |
|
|
|
Z
zero-copy architecture (io-pkt*) 189
October 16, 2008 |
Index 307 |