Index |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
|
Index for Solaris Systems Programming
., see current directory
.., see parent directory
#!, see interpreter files
# string creation operator, 279, 300
4.1BSD, 45
4.2BSD, 45, 718, 724, 744, 812
4.3BSD, 46, 48, 703, 724, 1047, 1155
64-bit clean programs, writing, 32-38
64-bit programming, 31-39
64-bit programs
compiling, 38-39
installing, 38-39
A
abort function, 22, 605, 640, 672, 674, 704, 708, 710, 725, 755-757, 761-762, 775-776, 803, 1119
definition of, 776
source code, 777
absolute pathname, 8, 11, 126, 238, 270, 344, 386, 405-406, 437, 592, 595, 609-610, 662
definition of, 8
ac_btime member, 671
definition of, 671
access control list, see ACL
access function, 349, 365-367, 382, 388, 515, 667-668, 726, 780, 843
definition of, 365
access permissions, file, 362-365
access time
changing file, 390-392
definition of, 418
ac_comm member, 672
definition of, 671
ACCOUNTING constant, 263
accounting, process, 670-676
acct structure, 671
definition of, 671
ACCTF constant, 671
accton program, 670, 674
ac_etime member, definition of, 671
ac_flag member, 671
definition of, 671
ac_gid member, definition of, 671
ac_io constant, 676
definition of, 671
ACL (access control list), 23, 579-590
ACL entry
CLASS_OBJ, 583, 586, 589-590
DEF_CLASS_OBJ, 583, 586, 589-590
DEF_GROUP, 583, 586, 589-590
DEF_GROUP_OBJ, 583, 586, 589-590
DEF_OTHER_OBJ, 583, 586, 589-590
DEF_USER, 583, 586, 589-590
DEF_USER_OBJ, 583, 586, 589-590
GROUP, 583, 586, 589-590
GROUP_OBJ, 583, 585, 589-590
OTHER_OBJ, 583, 585, 589-590
USER, 583, 585-586, 589-590
USER_OBJ, 583, 585, 589-590
acl function, 581-582, 585-586, 588
definition of, 581
acl structure, 581-583
definition of, 581
aclcheck function, 584-588
definition of, 584
aclfrommode function, 588-589
definition of, 589
aclfromtext function, 582-584, 586-587
definition of, 582
aclsort function, 589-590
definition of, 589
acltomode function, 588-589
definition of, 589
acltotext function, 582-585
definition of, 582
ac_mem member, definition of, 671
ac_rw member, definition of, 671
ac_stat member, 671, 674-675
definition of, 671
ac_stime member, definition of, 671
actime member, definition of, 391
actions, resource control, 309-310
ac_tty member, definition of, 671
ac_uid member, definition of, 671
ac_utime member, definition of, 671
adjtime function, 205-206
definition of, 206
advisory record locking, 521-522
definition of, 512
AEXPND constant, 671
AF_INET constant, 556, 559
AF_INET6 constant, 556, 559
AF_NCA constant, 559
AFORK constant, 671-672, 675
Aho, Alfred, 663, 1153
a_id member, 583
definition of, 581
aiocancel function, 553
definition of, 553
aio_cancel function, 553
aio_errno member, 551
definition of, 551
aio_error function, 726
AIO_INPROGRESS constant, 551
AIO_LISTIO_MAX constant, 284
AIO_MAX constant, 284
AIO_PRIO_DELTA_MAX constant, 284
aioread function, 551-553
definition of, 551
aio_read function, 551, 553
aio_result_t structure, 551-552
definition of, 551
aio_return function, 726
aio_return member, 551
definition of, 551
aio_suspend function, 726
aiowait function, 551-553
definition of, 552
aio_waitn function, 553
aiowrite function, 551-553
definition of, 551
aio_write function, 553
alarm function, 120, 708, 726, 734-742, 744, 765, 767, 784, 786-787, 803, 989-990, 1052
definition of, 735
alignment, memory, 94-96
alloca function, 98-99, 103
definition of, 99
allocating dynamic memory, 96-99, 618
alternate signal stack, 792-797
altzone variable, 207
American National Standards Institute, see ANSI
anonymous memory, 564, 568, 795
definition of, 568
ANSI (American National Standards Institute), 47, 1153
ANSI C, see ISO C
a.out, 41
a_perm member, 583
definition of, 581
application certification, xxxi
apropos program, 11
ARG_MAX constant, 285, 661
arguments, command line, 608-610
parsing, 110-116
array member, definition of, 895
as file, 325
as program, 4
ascftime function, 209, 214-217
definition of, 214
asctime function, 209, 213
definition of, 213
asctime_r function, 213-214
definition of, 213
assert function, 118-119
definition of, 118
<assert.h> header, 119
assertion, 118-119
definition of, 118
ASU constant, 671, 675
asynchronous function call, definition of, 952
asynchronous I/O, 294, 549-553
asynchronous STREAMS I/O, 550-551
async-signal-safe functions, see reentrant functions
at program, 813
atexit function, 285, 605-608, 639, 653, 859-860, 1014
definition of, 606
ATEXIT_MAX constant, 285
AT_FDCWD constant, 592, 594-597
atof function, 90-91
definition of, 90
atoi function, 89-90
definition of, 90
atol function, 89-90
definition of, 90
atoll function, 89-90
definition of, 90
atomic operation, 109, 125, 133, 139-141, 143, 162, 185-186, 293, 325, 515, 722, 768, 832, 855-856, 891, 903, 920, 1136, 1140
definition of, 139
AT_REMOVEDIR constant, 595
AT_SYMLINK_NOFOLLOW constant, 594, 596
AT&T, 3, 46, 48, 1153
attropen function, 591-593
definition of, 592
a_type member, 582
definition of, 581
automatic variables, 623-626
automountd program, 12, 805
autopush program, 524
avoiding buffer overflow, 71, 74, 338-339
awk program, xxxvi, 49, 348, 662-666, 854, 1155
B
B0 constant, 477, 485
B110 constant, 477, 485
B115200 constant, 477, 485-486
B1200 constant, 477, 485
B134 constant, 477, 485
B150 constant, 477, 485
B153600 constant, 477, 485
B1800 constant, 477, 485
B19200 constant, 477, 485
B200 constant, 477, 485
B230400 constant, 477, 485
B2400 constant, 477, 485
B300 constant, 477, 485
B307200 constant, 477, 485
B38400 constant, 477, 485
B460800 constant, 477, 485
B4800 constant, 477, 485
B50 constant, 477, 485
B57600 constant, 477, 485
B600 constant, 477, 485
B75 constant, 477, 485
B76800 constant, 477, 485
B9600 constant, 477, 485
background process group, 483, 691, 787
definition of, 686
backing storage, definition of, 572
BADSIG constant, 761
base member, 401
definition of, 401
basename, definition of, 353
basename function, 353-355
definition of, 354
bash program, 6
baud rate
definition of, 484
terminal, 484-486
BAUDEXT constant, 477
BBLOCK constant, 449
BBOFF constant, 449
BBSIZE constant, 449
bc program, 49, 280, 285
BC_BASE_MAX constant, 285
BC_DIM_MAX constant, 285
bcmp function, 1049, 1053
definition of, 1049
bcopy function, 1049-1050, 1053
definition of, 1050
BC_SCALE_MAX constant, 285
BC_STRING_MAX constant, 285
becoming a daemon, 817-821
BEL terminal character, 463, 481
Bentley, Jon, xxxvi
Berkeley Software Distribution, see BSD
bibliography, alphabetical, 1153-1157
binary semaphore, definition of, 891
bindtextdomain function, 1039, 1041, 1043
definition of, 1041
blkoff macro, 448
block started by symbol, see BSS
Blowfish encryption algorithm, 244, 251
boot block, definition of, 375
boot program, 279
BOOT_TIME constant, 262, 266
Bourne shell, 6-7, 783, 1155
Bourne, Steve, 6
bracketing, privilege, 341-343
BREAK terminal character, 469-470, 475, 477, 480, 482, 487-488
break value, definition of, 616
brk function, 618
definition of, 618
BRKINT constant, 465, 467, 475, 477, 480, 498-499
Brown, Philip, xxxv
BS0 constant, 477
BS1 constant, 477
BSD (Berkeley Software Distribution), 45, 689, 720, 728, 742, 757, 999, 1047, 1049, 1131
BSDLY constant, 465, 467, 477, 482
bsdmalloc library, 100, 102-103, 106
BSD-style pseudo terminal, opening, 1004-1005
BSS (block started by symbol), 614-616
bubble sort, definition of, 68
buf member, 527
definition of, 527, 895
buffer overflow, 21, 71-72, 74, 85, 100, 166, 214, 338-339, 347, 1124
avoiding, 71, 74, 338-339
checking for, 72-73
definition of, 338
buffering, file stream, 191-194
BUFSIZ constant, 160, 193, 1015, 1027
BUF_SIZE constant, 14-15, 152, 157, 532, 933, 975-976, 1117
bufsplit function, 83-84
definition of, 83
BUS_ADRALN constant, 758
BUS_ADRERR constant, 758
Butenhof, Dave, xxxv, 16, 187, 989, 1154
byte arrays
comparing, 92
copying, 92-93
initializing, 94
manipulating, 91-94
searching, 93
bzero function, 1049-1050, 1053
definition of, 1050
C
C, ISO, 47-48, 54-55, 163, 165, 184-185, 279, 300, 380, 604, 609, 715, 732, 1104, 1119, 1156
C language escape sequences, 183
C program, memory layout of a, 613-616
C programs, compiling on Solaris, 4-5
C shell, 6-7
c2ms program, xxxvi
cal program, 1037
calendar time
converting between UNIX time and, 207-212
definition of, 201
calloc function, 97, 99-101, 103-104, 535, 859, 861, 898-902, 906, 947
definition of, 97
canonical mode terminal I/O, 462, 493-496
definition of, 462
Caren, Kathleen, xxxvi
cat program, 71, 690-691, 693, 1017-1018, 1037, 1152
catgets function, 1038, 1046
catman program, 11, 135
CBAUD constant, 465, 467, 477-478
CBAUDEXT constant, 465, 467, 477
cbreak mode terminal I/O, 463
definition of, 463
cc program, 4, 39, 55
c_cc member, 465, 469, 496-497
definition of, 465
c_cflag constant, 477-479, 482
definition of, 465
CDE (Common Desktop Environment), 3, 46, 691, 693
certification, application, xxxi
cfgetispeed function, 468, 485-486, 726
definition of, 485
cfgetospeed function, 468, 478, 485, 726
definition of, 485
cfsetispeed function, 468, 485-486, 726
definition of, 485
cfsetospeed function, 468, 478, 485, 726
definition of, 485
CFTIME environment variable, 214
cftime function, 209, 214-217, 666, 1045
definition of, 214
cg structure, 454
definition of, 454
cg_boff member, definition of, 454
cg_btotoff member, definition of, 454
cg_cgx member, definition of, 454
cg_cs member, definition of, 454
cg_freeoff member, definition of, 454
cg_frotor member, definition of, 454
cg_frsum member, definition of, 454
cgid member, 871, 873
definition of, 871
cg_irotor member, definition of, 454
cg_iusedoff member, definition of, 454
cg_magic member, definition of, 454
cg_ncyl member, definition of, 454
cg_ndblk member, definition of, 454
cg_nextfreeoff member, definition of, 454
cg_niblk member, definition of, 454
cg_rotor member, definition of, 454
cg_time member, definition of, 454
changing
character class membership, 63-64
file access time, 390-392
file modification time, 390-392
character class
changing membership, 63-64
manipulating, 60-65
testing membership, 60-63
character input, standard I/O, 164-165
character output, standard I/O, 165-166
character
reading a, 164
ungetting a, 164-165
writing a, 165-166
character string
finding the length of, 66-67
manipulating, 65-91
chdir function, 11, 339, 344-347, 382, 403-406, 726, 818
definition of, 404
checking for buffer overflow, 72-73
child process, definition of, 18, 631
CHILD_MAX constant, 285
chmod function, 339, 357, 368-370, 382, 389, 726
definition of, 368
chmod program, 363
chown function, 294, 357, 371, 382, 389, 596, 726
definition of, 371
Christiansen, Tom, 7, 1154
chroot function, 12, 344-346, 349-350, 406, 725, 825, 1134, 1146
definition of, 406
chroot jails, 344-346
CIBAUD constant, 465, 467, 477-478
CIBAUDEXT constant, 465, 467, 477-478
c_iflag member, 480-482
definition of, 465
Clark, James, xxxvi
Clarke, Dennis, xxxv
CLASS_ERROR constant, 586-587
CLASS_OBJ ACL entry, 583, 586, 589-590
CLD_CONTINUED constant, 758
CLD_DUMPED constant, 758
CLD_EXITED constant, 755, 758
CLD_KILLED constant, 758
CLD_STOPPED constant, 758
CLD_TRAPPED constant, 758
clearerr function, 169
definition of, 169
clear_fsflag function, 510, 546, 549, 1149
source code, 1122
cleartext password, definition of, 494
c_lflag member, 475, 479-481, 483, 493, 496, 1025
definition of, 465
cli_connect function, 940-944, 946
definition of, 940
source code, 943
client-server
applications using FIFOs, 856-863
connection functions, 938-943
CLK_TCK constant, 27, 285, 290, 320, 336
CLOCAL constant, 465, 467, 478, 709
clock function, 319, 322
definition of, 322
clock_gettime function, 726
CLOCKS_PER_SEC constant, 322
close function, 13, 30, 127-128, 154, 163, 325, 380, 524, 552, 568, 726, 939, 957, 962, 1127
definition of, 127
closedir function, 9-10, 396-399, 492, 593, 1147
definition of, 396
closefrom function, 128, 154, 820
definition of, 128
source code, 154
closelog function, 814-816
definition of, 814
Cockcroft, Adrian, 362, 1154
c_oflag member, 477-478, 480-483
definition of, 465
COLL_WEIGHTS_MAX constant, 285
Columbus UNIX, 867
command line arguments, 608-610
definition of, 110
parsing, 110-116
comma-separated value, see CSV
Common Desktop Environment, see CDE
comparing
byte arrays, 92
malloc libraries, 106
strings, 67-71
compilation environment
large file, 39-41, 129, 131
transitional large file, 41-42, 129
compiling
64-bit programs, 38-39
C programs on Solaris, 4-5
standards conforming applications, 55
Computer Systems Research Group, see CSRG
concatenating strings, 71-73
concurrent server, 863-865
definition of, 864, 953
connecting shell pipelines using FIFOs, 855-856
connection functions, client-server, 938-943
connld STREAMS module, 940-942, 944
constants, standard I/O, 159-160
controlling process, definition of, 686, 997
controlling terminal, 226-227, 250, 475, 488, 494, 632, 654, 684, 686-691, 695, 700-701, 710, 787, 807
definition of, 686
conversion specification
conversion characters, 174-178
flag characters, 180-181
precision modifiers, 178-180
size modifiers, 182-183
converting
between UNIX time and calendar time, 207-212
dates to formatted strings, 213-217
formatted strings to dates, 217-222
numbers to strings, 91
strings to numbers, 87-91
cooked mode terminal I/O, 462
definition of, 462
Coopersmith, Alan, xxxv
Coordinated Universal Time, see UTC
coprocess, 848-854
copy on write, definition of, 632
copying
byte arrays, 92-93
strings, 73-74
core file, 299, 388, 494, 705, 708, 820
coreadm program, 708, 820
counting semaphore, definition of, 891
cp program, 373, 416, 565, 591
cpio program, 49, 373, 581, 591
CPU bound, definition of, 136
CPU time, definition of, 27
CR terminal character, 469-470, 480-482, 493, 496
CR0 constant, 478
CR1 constant, 478
CR2 constant, 478
CR3 constant, 478
crack program, 1131
CRDLY constant, 465, 467, 478, 482
CREAD constant, 465, 467, 478
creat function, 126-127, 130, 139-140, 157, 357, 368, 380, 382, 389, 408, 726, 941, 959, 963, 966, 980, 1135, 1151
definition of, 127
etymology of, 127
creating
directories, 392-393
message catalogues, 1039-1041
process groups, 683-684
System V IPC objects, 870-871
temporary files, 109-110
creator ID, definition of, 871
cron program, 806, 813
crontab program, 813
CRTSCTS constant, 465, 467, 479, 483-484
CRTSXOFF constant, 465, 467, 479, 483-484
crypt function, 251-252, 254-255, 678
definition of, 251
crypt program, 687-688, 694
CRYPT_ALGORITHMS_ALLOW variable, 252
CRYPT_ALGORITHMS_DEPRECATE variable, 252
CRYPT_DEFAULT variable, 252
crypt_gensalt function, 252-256
definition of, 252
CS5 constant, 475-476, 479
CS6 constant, 475-476, 479
CS7 constant, 475-476, 479
CS8 constant, 475-476, 479, 498-499
csh program, 6, 270, 496, 611, 690
.cshrc file, 611, 679
CSIZE constant, 465, 467, 475-476, 479, 498-499
cs_nbfree member, definition of, 449
cs_ndir member, definition of, 449
cs_nffree member, definition of, 449
cs_nifree member, definition of, 449
CSRG (Computer Systems Research Group), 45
CSTOPB constant, 465, 467, 479
csum structure, 446, 449
definition of, 449
CSV (comma-separated value), 83
ctermid function, 488-489, 494-495
definition of, 488
ctermid_r function, 488-489
definition of, 488
ctime function, 209, 213, 264, 389, 1045
definition of, 213
ctime_r function, 213-214
definition of, 213
CTRL macro, 473-474
<ctype.h> header, 60
cuid member, 871, 873
definition of, 871
current directory, 11, 654
current time
getting the, 203-205
setting the, 205-206
current time zone, getting the, 206-207
current working directory, see current directory
curses library, 503-505
cuserid function, 225-227, 835, 841
definition of, 226
Cvetkovic, Dragan, xxxv
cylinder, definition of, 418
cylinder groups, 454-459
D
daemon, 805-826
becoming a, 817-821
definition of, 805
error logging, 807-817
starting only one copy, 821-824
daemon_init function, 817, 819-821, 825-826, 946, 1117, 1119, 1146
definition of, 817
source code, 818
daemon_proc variable, 819, 1119
Data Encryption Standard, see DES
data lock, definition of, 575
data segment, 613
data types
derived, 33
standard I/O, 159-160
data_ptr member, 956-957, 960-961, 974
definition of, 955
data_size member, 956-957, 974
definition of, 955
date I/O, formatted, 212-222
date program, 213-214, 263, 1037, 1152
DATEMSK environment variable, 221
dates
converting formatted strings to, 217-222
converting to formatted strings, 213-217
DATLOCK constant, 575
d_attributes member, 974
definition of, 974
daylight variable, 207
dbtofsb macro, 448, 450
dc_egid member, definition of, 969
dc_euid member, definition of, 969
dcgettext function, 1041-1042
definition of, 1042
dc_pid member, definition of, 969
dc_rgid member, definition of, 969
dc_ruid member, definition of, 969
d_data union, 974
d_descriptor member, definition of, 974
deadlock, 517-519, 599
definition of, 517
deadly embrace, see deadlock
DEAD_PROCESS constant, 263, 266-267
DEF_CLASS_OBJ ACL entry, 583, 586, 589-590
defensive programming, 340
DEF_GROUP ACL entry, 583, 586, 589-590
DEF_GROUP_OBJ ACL entry, 583, 586, 589-590
DEF_OTHER_OBJ ACL entry, 583, 586, 589-590
DEF_USER ACL entry, 583, 586, 589-590
DEF_USER constant, 836
DEF_USER_OBJ ACL entry, 583, 586, 589-590
DELAYTIMER_MAX constant, 285
demand paged, definition of, 562
denial of service, see DoS
derived data types, 33
DES (Data Encryption Standard), 251
desc_num member, 956-957, 973-974
definition of, 955
desc_ptr member, 956-957, 973-974
definition of, 955
descriptor, file, 12, 123-124
flags, 137
detached thread, definition of, 977
DEV_BSIZE constant, 458
/dev/conslog device, 808-809
developer system support software group, 4
/dev/fd file system, 156-158
device driver, definition of, 406
device independent terminal control, 503-505
device number, 407, 451
definition of, 407
major, 407, 420, 426, 451
minor, 407, 420, 426, 451
/dev/log device, 344, 808, 1146
/dev/null device, 408, 531, 672, 676, 694, 819
/dev/poll device, 54, 539, 545-549, 1015
/dev/ptmx device, 1005-1006
/dev/random device, 54
/dev/stderr device, 157
/dev/stdin device, 157
/dev/stdout device, 157
/dev/tty device, 488, 687, 694, 1025
/dev/urandom device, 54
/dev/zero device, 344, 565, 568
df program, 380, 408
dgettext function, 1041-1042
definition of, 1042
dhcpagent program, 279
di_atime member, 451
definition of, 451
di_attributes member, 971
definition of, 971
di_blocks member, definition of, 451
di_cflags member, definition of, 451
di_ctime member, 451
definition of, 451
d_id member, definition of, 974
di_data member, 971, 978
definition of, 971
di_db member, 452
definition of, 451
difftime function, 205, 210-211
definition of, 205
di_gen member, definition of, 451
di_gid member, 451
definition of, 451
di_ib member, 452
definition of, 451
di_ic member, definition of, 451
di_icom member, definition of, 451
Dijkstra, Edsger, 890
Dik, Casper, xxxv
di_mode member, 451
definition of, 451
di_mtime member, 451
definition of, 451
dining philosophers problem, 518
di_nlink member, 451
definition of, 451
d_ino member, definition of, 394
dinode structure, 450-451
definition of, 451
di_ordev member, definition of, 451
di_proc member, 971, 978, 982
definition of, 971
DIR structure, 9, 393, 396
direct block, definition of, 452
direct I/O, 155-156, 163
performance impact, 156
directio function, 155-157, 1130
definition of, 155
DIRECTIO_OFF constant, 155-157
DIRECTIO_ON constant, 155-157
directory, 7-12
creating a, 392-393
current, 11, 654
definition of, 7
home, 12, 237
parent, 344, 353-354, 388, 393
reading a, 393-403
removing a, 392-393
root, 11-12, 654
dirent structure, 9-10, 394-395
definition of, 394
<dirent.h> header, 393
dirname function, 353-355
definition of, 354
dirty buffer, definition of, 410
DISCARD terminal character, 469-470, 480
di_sgid member, definition of, 451
di_shadow member, definition of, 451
di_size member, 451
definition of, 451
disk block, definition of, 418
disk I/O, 134
disk terminology, 417-418
di_smode member, definition of, 451
di_suid member, definition of, 451
di_target member, 971
definition of, 971
di_uid member, 451
definition of, 451
di_uniquifier member, 971
definition of, 971
d_name member, 10, 394
definition of, 394
Doench, Greg, xxxvi
d_off member, definition of, 394
door_arg_t structure, 954-955, 957, 973
definition of, 955
door_bind function, 954, 962, 978-985, 1150
definition of, 978
door_call function, 953-958, 960-961, 973, 975, 978-979, 982, 985-991, 1150
definition of, 955
door_create function, 953-955, 958-959, 962-966, 971, 977-980, 983-984, 993, 1150-1151
definition of, 954
door_cred function, 968-970
definition of, 968
door_cred structure, 969
definition of, 969
door_desc structure, 956, 973-974
definition of, 974
DOOR_DESCRIPTOR constant, 974-976
doorfs file system, 156
door_info function, 954-955, 962, 970-973
definition of, 970
door_info structure, 970, 978, 982
definition of, 971
DOOR_IS_UNREF constant, 954, 971-972
DOOR_LOCAL constant, 971-972
DOOR_PRIVATE constant, 954, 971-972, 978-980
DOOR_QUERY constant, 971
DOOR_RELEASE constant, 977
door_return function, 955-957, 959-960, 962-963, 966-969, 973, 976-977, 979, 982-987, 989, 991, 1150-1151
definition of, 956
door_revoke function, 957-968, 971, 993, 1150-1151
definition of, 957
DOOR_REVOKED constant, 971-972
doors, 951-993
interrupting the door_call function, 986-989
premature termination of client, 989-992
premature termination of server, 985-989
door_server_create function, 977-980
definition of, 978
door_unbind function, 978-985
definition of, 978
DOOR_UNREF constant, 954, 962-963, 965, 971-972
DOOR_UNREF_DATA constant, 954, 962-963, 966-967
DOOR_UNREF_MULTI constant, 954, 962, 965-966, 971-972
DoS (denial of service), 337, 522, 864-865, 1133-1134
definition of, 337, 864
dot, see current directory
dot-dot, see parent directory
dp_fds member, 547
definition of, 547
DP_ISPOLLED constant, 545, 547
dp_nfds member, 547
definition of, 547
DP_POLL constant, 545, 547-548
dp_timeout member, 547
definition of, 547
d_reclen member, definition of, 394
dstflag member, 1051
definition of, 1051
DSUSP terminal character, 469-470, 480-481
dtterm program, 502, 693, 997, 999
du program, 372, 380, 591
Dunham, Darren, xxxv
dup function, 127, 136, 139-143, 158, 521, 635, 726
definition of, 141
dup2 function, 127, 136, 139-143, 726, 819, 835-836, 843-844, 851, 934, 1010, 1024
definition of, 141
DUPLICATE_ERROR constant, 586-587
duplicating
a file descriptor, 140-142
strings, 80-81
dvpoll structure, 545
definition of, 547
dynamic linking, definition of, 616
dynamic memory, 94-100
allocating, 96-99, 618
freeing, 99-100
E
E2BIG error, 877
EAGAIN error, 508-509, 511, 514, 517, 521, 876, 895, 903
EBADF error, 1150
EBADMSG error, 536
EBUSY error, 437
ECHILD error, 728, 754
ECHO constant, 465, 467, 479-480, 495, 498-499, 1014
echo program, 609, 1152
ECHOCTL constant, 465, 467, 479, 1014
ECHOE constant, 465, 467, 479-480, 495, 1014
ECHOK constant, 465, 467, 479, 495, 1014
ECHOKE constant, 465, 467, 479-480, 1014
ECHONL constant, 465, 467, 480, 495, 1014
ECHOPRT constant, 465, 467, 479-480
_edata variable, 615-616
Eeckels, Stefaan, xxxv
e_exit member, definition of, 263
EFBIG error, 40, 299
effective group ID, 23, 231-233, 341, 343, 360-361, 364-365, 393, 632, 653, 871, 873
definition of, 23
effective user ID, 22, 226-231, 233-234, 236, 277, 282, 338, 341, 343, 360-361, 364-365, 369, 391, 393, 632, 653, 678, 871, 873
definition of, 22
efficiency
I/O, 135-136
standard I/O, 194-199
EGID, see effective group ID
EIDRM error, 876-878, 894
EINTR error, 25, 27, 514, 541, 544, 721, 723, 753, 769, 876-877, 894, 986-987
EINVAL error, 528, 530, 843, 885
EIO error, 699, 712, 1004
ELOOP error, 383
EMPTY constant, 262
enabling mandatory record locking, 512
encrypting passwords, 250-256
encryption algorithm
Blowfish, 244, 251
MD5, 244, 247, 249, 251, 253
_end variable, 615-616
endgrent function, 259-260
definition of, 259
endpwent function, 240-242
definition of, 241
endspent function, 247-249
definition of, 247
endusershell function, 270, 272
definition of, 270
endutxent function, 264-266
definition of, 264
ENOENT error, 117, 139, 304, 863, 1004
ENOLOCKS error, 513
ENOMSG error, 884
ENTRY_ERROR constant, 586-587
environ variable, 111, 604, 611, 1141
environment variable, 611-613
CFTIME, 214
DATEMSK, 221
HOME, 611, 613, 678
IFS, 349
JAVA_HOME, 679
LANG, 1036-1038
LC_ALL, 1037-1038
LC_COLLATE, 340, 1037-1038
LC_CTYPE, 340, 1037-1038
LC_MESSAGES, 1037-1038
LC_MONETARY, 1037-1038
LC_NUMERIC, 1037-1038
LC_TIME, 214, 1037-1038
LD_LIBRARY_PATH, 4-5
LD_PRELOAD, 106
LOGNAME, 611, 656, 678
MAIL_USER, 834
MALLOC_DEBUG, 104
PATH, 4, 347, 349, 609-611, 656-657, 659-662, 678-679, 1047
RANDOM, 656
SECONDS, 656
SHELL, 611, 678, 1019
TERM, 656
TMPDIR, 109
TZ, 206-207, 222, 340, 611
USER, 611, 656, 678
ENXIO error, 432, 855
EOF constant, 15, 112, 116, 160, 163-165, 167-168, 172-173, 189, 191, 194, 858, 1130
EOF terminal character, 13, 250, 469-473, 480, 493, 496-497, 531, 1019
EOL terminal character, 469-471, 473, 480, 493, 496
EOL2 terminal character, 469-471, 473, 480, 493, 496
EOVERFLOW error, 40
EPERM error, 117
EPIPE error, 832
epoch, 31, 201, 203-207, 209-210, 222, 357, 387, 389, 391, 666
definition of, 27
ERASE terminal character, 469-472, 479-480, 494, 496, 1139
err_dump function, 22, 1119
source code, 1119
err_msg function, 10, 22, 1117, 1119
source code, 1120
errno variable, 10, 21, 25, 40, 89-90, 117-118, 139, 283, 290, 293, 299, 304, 311, 328, 347, 383, 395, 489, 492, 508-509, 513-514, 517, 541, 544, 699, 712, 721, 723, 725-726, 728, 748, 753-754, 769, 815, 822, 832, 841, 855, 884, 894-895, 929, 931-932, 1004
<errno.h> header, 21
error
functions, standard, 1118-1121
handling, 21-22
logging, daemon, 807-817
reporting, 117-119
err_quit function, 10, 22, 1119
source code, 1120
err_ret function, 22, 1119
source code, 1120
escape sequences, C language, 183
/etc/default/init file, 678
/etc/group file, 23, 256, 261
/etc/hosts file, 59
/etc/inet/inetd.conf file, 680
/etc/inittab file, 262
/etc/mnttab file, 417-426, 428, 435, 459, 1136
/etc/motd file, 679
/etc/.name_service_door file, 973
/etc/nodename file, 1133
/etc/nsswitch.conf file, 5, 238, 242-243, 245, 249-250, 256, 261, 285-286
/etc/passwd file, 5-6, 8, 12, 22-23, 59, 83, 234, 237, 242-243, 360-361, 403, 416, 977, 1131, 1134-1135
/etc/project file, 302
/etc/.pwd.lock file, 243
/etc/security/crypt.conf file, 251
/etc/security/policy.conf file, 251-252, 255
/etc/shadow file, 5, 59, 243-244, 249-250, 937, 1025, 1131
/etc/shells file, 270
/etc/syslog.conf file, 815, 817
/etc/syslog_door file, 973
/etc/system file, 23, 28, 275, 339, 371, 614, 874, 892, 919
/etc/termcap file, 503
/etc/vfstab file, 417, 427-432, 457
e_termination member, definition of, 263
_etext variable, 615-616
EUID, see effective user ID
events member, 543-544, 547, 1016
definition of, 543
ex program, 777-778, 782
exec function, 16, 18, 42, 49, 110, 141, 143-144, 233, 347, 382, 389, 565, 604, 607-609, 615, 618, 632, 635, 637-638, 652-663, 665-667, 670, 672, 674, 678, 680, 684, 693, 716, 735, 779, 782, 784, 822, 834, 839, 852, 932-934, 943-944, 955, 993, 998-999, 1002-1003, 1011, 1014, 1020, 1023, 1141-1142, 1147, 1150
execl function, 345, 349, 655-657, 660-661, 667-669, 673, 781, 835, 843, 851, 934, 1021
definition of, 655
execle function, 349, 656, 658, 660-661, 663, 726
definition of, 656
execlp function, 18-21, 26, 347, 349, 656-661, 669, 1024
definition of, 656
execv function, 349, 655-657, 660-661
definition of, 655
execve function, 349, 552, 656, 660-661, 726
definition of, 656
execvp function, 347, 349, 657-661, 1014
definition of, 657
exit function, 22, 163, 552, 604-607, 635, 639-641, 648, 661, 669, 672, 699, 725, 767, 776, 1119
definition of, 605
_exit function, 604-607, 635, 638-641, 669, 726, 776, 803, 1142, 1146
definition of, 605
exit status, definition of, 606, 640
exit_status structure, 263
definition of, 263
expand program, xxxvi
expect program, 997, 1001-1002, 1022, 1025, 1155
expr program, 285
EXPR_NEST_MAX constant, 285
exstr program, 1037
EXTA constant, 477
EXTB constant, 477
extended file attributes, 126, 294, 590-599
definition of, 590
extmnttab structure, 420
definition of, 420
F
f_access member, 146
definition of, 146
facl function, 581-582, 586
definition of, 581
fattach function, 938-941, 953, 958-959, 962-968, 980, 1151
definition of, 938
f_basetype member, 440
definition of, 439
f_bavail member, 439
definition of, 439
f_bfree member, 439
definition of, 439
f_blocks member, 439
definition of, 439
f_bsize member, 439
definition of, 439
fchdir function, 403-406
definition of, 404
fchmod function, 368-370, 389, 597-598
definition of, 368
fchmodat function, 597-599
source code, 598
fchown function, 371, 389, 596
definition of, 371
fchownat function, 596
definition of, 596
FCHR_MAX constant, 300
fchroot function, 12, 406
definition of, 406
fclose function, 15
definition of, 163
fcntl function, 136, 141-153, 169, 512-517, 519, 653, 726, 753, 823, 993, 1121-1122, 1152
definition of, 142
record locking using, 513-516
F_COMPAT constant, 146
fd member, 543-544, 547
definition of, 543, 930
fdatasync function, 726
FD_CLOEXEC constant, 143-144, 519, 653, 822-823, 830, 955, 993, 1150
FD_CLR function, 540
definition of, 539
f_deny member, 146
definition of, 146
fdetach function, 938-939, 962, 966-967
definition of, 938
fdetach program, 962
fdfs file system, see /dev/fd file system
FD_ISSET function, 540-541
definition of, 539
fdopen function, 162-163, 843
definition of, 163
fdopendir function, 393-394, 593
definition of, 393
fd_set datatype, 539-540, 543, 599, 1140
FD_SET function, 540-541
definition of, 539
FD_SETSIZE constant, 539, 542, 1140
F_DUP2FD constant, 143, 147
F_DUPFD constant, 143, 147
fdwalk function, 153-154
definition of, 154
FD_ZERO function, 540-541
definition of, 539
Fenner, Bill, xxxv, 556, 813, 829, 927, 1156
feof function, 168-169
definition of, 169
ferror function, 15, 168-169, 852
definition of, 169
FF0 constant, 480
FF1 constant, 480
f_favail member, 440
definition of, 439
FFDLY constant, 465, 467, 480, 482
f_ffree member, 440
definition of, 439
f_files member, 440
definition of, 439
f_flag member, 136-138, 141, 440
definition of, 439
fflush function, 162, 192, 194, 200, 698, 847, 849, 851-852, 862-863, 1002-1003, 1121
definition of, 194
f_fname member, definition of, 442
f_fpack member, definition of, 442
F_FREESP constant, 143, 147
f_frsize member, 439
definition of, 439
ffs function, 93
definition of, 93
f_fsid member, 440
definition of, 439
f_fstr member, 440
definition of, 439
fgetc function, 164, 194-195, 198
definition of, 164
F_GETFD constant, 143-144, 147, 823
F_GETFL constant, 143-144, 147, 149-151, 1121-1122
fgetgrent function, 261
definition of, 261
fgetgrent_r function, 261
definition of, 261
F_GETLK constant, 143, 145, 147, 514-516
F_GETLK64 constant, 143, 145, 147, 514
F_GETOWN constant, 143, 145, 147
fgetpos function, 184-185
definition of, 184
fgetpwent function, 242-243
definition of, 242
fgetpwent_r function, 242
definition of, 242
fgets function, 18, 25, 68, 73, 166-167, 173, 195, 198, 250, 338, 739-740, 854, 1130
definition of, 166
fgetspent function, 249-250
definition of, 249
fgetspent_r function, 249
definition of, 249
F_GETXFL constant, 143-144, 147, 150
f_id member, 146
definition of, 146
FIFOs, 124-126, 132, 293-294, 358, 371, 408, 508, 537, 854-863, 920
client-server applications using, 856-863
connecting shell pipelines using, 855-856
file, 7-12
access permissions, 362-365
access time, changing, 390-392
attributes, extended, 126, 294, 590-599
creating a temporary, 109-110
definition of, 7
locking, see record locking
modification time, changing, 390-392
pointer, definition of, 160
sharing, 136-139, 635-637
size, 371-373
sparse, 130, 185, 357, 372-373
special, 357-358, 406-409
status flags, 137, 147-150
temporary, 108-110
times, 387-390
truncation, 373
types, 357-360
file descriptor, 12, 123-124
definition of, 12
duplicating a, 140-142
flags, 137
passing, 927-931, 973-977
file offset
definition of, 128
getting the, 184
setting the, 184-185
file program, 665
file stream
buffering, 191-194
I/O, 163-168
locking, 185-191
positioning, 184-185
standard I/O, 159-160
status, 168-169
unlocked I/O, 189-191
FILE structure, 15, 109, 159-160, 199, 394, 843
file structure, 136-137, 139, 141
file system, 7-12, 374-377, 417-460
data structures, 443-459
defaults, 427-432
definition of, 8
mounted, 418-425
mounting a, 432-438
persistent, definition of, 873
status of a, 438-442
unmounting a, 432-438
filename, definition of, 8
FILENAME_MAX constant, 160
filenames and pathnames, 8
filenames, generating temporary, 108-109
fileno function, 169, 427, 923
definition of, 169
_FILE_OFFSET_BITS, 40, 129, 459
find program, 111, 590-591
finding the length of a character string, 66-67
finger program, 261, 1134-1135
FIPS 151-2, 49-50
fixed-width integer types, 34
flag characters, conversion specification, 180-181
flags
file descriptor, 137
file status, 137, 147-150
resource control, 307-308
flags member, 809
definition of, 809
F_LOCK constant, 517, 923
flock structure, 143, 145, 513-516
definition of, 143, 514
flock64 structure, 145, 514-515
flockfile function, 186-187, 189-191
definition of, 186
flushed, definition of, 192
FLUSHO constant, 465, 467, 470, 480
FMNAMESZ constant, 533
f_namemax member, 440
definition of, 439
F_NODNY constant, 146
f_offset member, 136-140
F_OK constant, 365-366
fopen function, 15, 109, 161-163, 513, 625
definition of, 161
FOPEN_MAX constant, 160, 402
foreground process group, 470-471, 473, 475, 686, 688, 690-691, 709, 711, 779, 787-788
definition of, 686
fork function, 16-20, 26, 42, 49, 139, 345, 347, 519-520, 523, 565, 569, 574, 603, 630-638, 640, 643, 645-646, 648, 650-652, 658-659, 661, 663, 666, 670-673, 678, 680, 684, 686, 693, 697-698, 716, 726, 730, 735, 779, 782, 784, 817-819, 822, 829, 831, 833, 835-836, 839, 842, 844, 851-852, 864, 868, 920-923, 925, 929, 932-934, 943-944, 950, 955, 988, 998-999, 1002-1003, 1009-1011, 1020, 1023-1024, 1139, 1143-1145
definition of, 631
fork1 function, 631-637
definition of, 631
forkall function, 633
format
conversion specifications, standard I/O, 173-183
string macros, 34-35
formatted
date I/O, 212-222
standard I/O library input, 172-173
standard I/O library output, 170-172
fpathconf function, 283, 292-295, 371
definition of, 292
FPE_FLTDIV constant, 758, 761, 763
FPE_FLTINV constant, 758, 761, 763
FPE_FLTOVF constant, 758, 761, 764
FPE_FLTRES constant, 758, 761, 763
FPE_FLTSUB constant, 758
FPE_FLTUND constant, 758, 761, 763
FPE_INTDIV constant, 758
FPE_INTOVF constant, 758
fpgetmask function, 761, 763
fprintf function, 59, 170-171, 186-187, 819
definition of, 170
fpsetmask function, 761, 763
fputc function, 165, 192, 194-195, 198
definition of, 165
fputs function, 167, 195, 198
definition of, 167
FP_X_INV constant, 763
fragoff macro, 448
F_RDACC constant, 146
F_RDDNY constant, 146
F_RDLCK constant, 514
fread function, 15, 167-168, 513, 1132
definition of, 168
free function, 94, 98-104, 107, 297, 405, 585, 588, 618, 725, 846, 889, 906, 919, 922, 949, 1133
definition of, 99
FreeBSD, 346
freeing dynamic memory, 99-100
freopen function, 162-163, 192
definition of, 162
F_RWACC constant, 146
F_RWDNY constant, 146
fs structure, 444-445
definition of, 445
FSACTIVE constant, 449
FSBAD constant, 449
fs_bmask member, 447-448
definition of, 445
fs_bshift member, 448
definition of, 445
fs_bsize member, 446
definition of, 445
fsbtodb macro, 448-449, 456, 458
fscanf function, 172
definition of, 172
fs_cblkno member, 446
definition of, 445
fs_cgmask member, 446
definition of, 445
fs_cgoffset member, 446
definition of, 445
fs_cgrotor member, 447
definition of, 445
fs_cgsize member, 446
definition of, 445
fsck program, 53, 379, 427-428, 449, 591
FSCLEAN constant, 449
fs_clean member, 447, 449
definition of, 445
fs_cpc member, 447
definition of, 445
fs_cpg member, 448
definition of, 445
fs_csaddr member, 446
definition of, 445
fs_csmask member, 448
definition of, 445
fs_csshift member, 448
definition of, 445
fs_cssize member, 446
definition of, 445
fs_cstotal member, 446
definition of, 445
fsdb program, 591
fs_dblkno member, 446
definition of, 445
fs_dsize member, 446
definition of, 445
fseek function, 184-185, 1132
definition of, 185
fseeko function, 184-185
definition of, 185
F_SETFD constant, 143-144, 147, 823
F_SETFL constant, 143-144, 147, 151, 1121-1122
F_SETLK constant, 143, 145, 147, 514-515
F_SETLK64 constant, 143, 145, 147, 514
F_SETLKW constant, 143, 145, 147, 514-515
F_SETLKW64 constant, 143, 145, 147, 515
F_SETOWN constant, 143, 145, 147
fsetpos function, 184-185
definition of, 185
FSFIX constant, 449
fs_flags member, 447
definition of, 445
fs_fmask member, 447-448
definition of, 445
fs_fmod member, 446
definition of, 445
fs_fpg member, 448
definition of, 445
fs_frag member, 446, 448
definition of, 445
fs_fragshift member, 448
definition of, 445
fs_fsbtodb member, 448
definition of, 445
fs_fshift member, 448
definition of, 445
fs_fsize member, 446
definition of, 445
fs_fsmnt member, 447
definition of, 445
F_SHARE constant, 143, 145, 147
fshare structure, 145
definition of, 146
fs_iblkno member, 446
definition of, 445
fs_id member, 446
definition of, 445
fs_inopb member, 448
definition of, 445
fs_interleave member, 449
definition of, 445
fs_ipg member, 448
definition of, 445
FSLARGEFILES constant, 447
fs_link member, 445
definition of, 445
FSLOG constant, 449
fs_logbno member, 447
definition of, 445
fs_magic member, 447
definition of, 445
fs_maxbpg member, 448
definition of, 445
fs_maxcontig member, 448
definition of, 445
fs_minfree member, 447
definition of, 445
fs_ncg member, 446, 448
definition of, 445
fs_ncyl member, 446
definition of, 445
fs_nindir member, 448
definition of, 445
fs_npsect member, 448
definition of, 445
fs_nrpos member, 447
definition of, 445
fs_nsect member, 449
definition of, 445
fs_nspf member, 448
definition of, 445
fs_ntrak member, 446, 449
definition of, 445
fs_opostbl member, 447
definition of, 445
fs_optim member, 448
definition of, 445
FS_OPTSPACE constant, 448
FS_OPTTIME constant, 448
fs_postblformat member, 447
definition of, 445
fs_postbloff member, 447
definition of, 445
fs_qbmask member, 447
definition of, 445
fs_qfmask member, 447
definition of, 445
fs_reclaim member, 447
definition of, 445
fs_rlink member, 445
definition of, 445
fs_ronly member, 447
definition of, 445
fs_rotbloff member, 447
definition of, 445
fs_rotdelay member, 447
definition of, 445
fs_rps member, 448
definition of, 445
fs_sblkno member, 446
definition of, 445
fs_sbsize member, 448
definition of, 445
fs_size member, 446
definition of, 445
fs_space member, 447
definition of, 445
fs_spc member, 449
definition of, 445
FSSTABLE constant, 449
fs_state member, 447-448
definition of, 445
FSSUSPEND constant, 449
fstat function, 7, 349, 355-357, 491, 557, 566-567, 576, 594, 726, 830-831, 972
definition of, 356
fstatat function, 594
definition of, 594
fstatvfs function, 438-442
definition of, 439
fs_time member, 446
definition of, 445
fs_trackskew member, 449
definition of, 445
fs_u member, 447
definition of, 445
fsync function, 409-410, 572, 726
definition of, 410
ftell function, 184-185
definition of, 184
ftello function, 184
definition of, 184
F_TEST constant, 517
f_tfree member, definition of, 442
ftime function, 207, 1049-1051, 1053
definition of, 1050
f_tinode member, definition of, 442
F_TLOCK constant, 517
ftok function, 868-870, 879-883, 897-903, 912-916, 926, 1148
definition of, 868
ftp program, 270
ftruncate function, 373, 389, 565-567, 823, 826
definition of, 373
ftrylockfile function, 186-187, 189, 191
definition of, 186
ftw function, 384-385, 399-403
definition of, 399
FTW structure, 400-401
definition of, 401
FTW_CHDIR constant, 400
FTW_D constant, 399-400, 403
FTW_DEPTH constant, 400
FTW_DNR constant, 399-400, 403
FTW_DP constant, 400
FTW_F constant, 399-400, 402
FTW_MOUNT constant, 400
FTW_NS constant, 399, 401, 403
FTW_PHYS constant, 400-402
FTW_PRUNE constant, 401
FTW_SKD constant, 401
FTW_SL constant, 400, 403
FTW_SLN constant, 400, 403
F_ULOCK constant, 517, 923
function
availability, 1104-1115
prototypes, 1057-1104
functions
reentrant, 725-728
standard error, 1118-1121
F_UNLCK constant, 514
F_UNLKSYS constant, 514
funlockfile function, 186-191
definition of, 186
F_UNSHARE constant, 143, 145-147
futimesat function, 596-597
definition of, 597
f_vnode member, 136
F_WRACC constant, 146
F_WRDNY constant, 146
fwrite function, 15, 167-168
definition of, 168
F_WRLCK constant, 514
G
Galvin, Peter Baer, xxxv
Garfinkel, Simson, 657, 1154
gather write, 553
gcc program, 4, 38-39, 55, 1045
Gelfenbain, Alexander, xxxv
generating temporary filenames, 108-109
Germond, Tom, 762, 1157
GETACL constant, 582, 585
GETACLCNT constant, 582, 585
GETALL constant, 896, 900-901, 906
GETALL function, 906
getc function, 164-165, 189, 195, 198
definition of, 164
getchar function, 15, 164-165, 189, 1130
definition of, 164
getchar_unlocked function, 189-191
definition of, 189
getc_unlocked function, 189-191, 195
definition of, 189
getcwd function, 403-406, 609-610, 1051, 1053
definition of, 405
getdate function, 217, 221-222, 1037
definition of, 221
getdate_err variable, 222
getdents function, 31
getdtablesize function, 301-302, 1053-1054
definition of, 302
getegid function, 232, 342, 726
definition of, 232
getenv function, 208, 611-613, 835, 841
definition of, 611
geteuid function, 228-229, 342, 726
definition of, 228
getexecname function, 609-610
definition of, 609
getextmntent function, 420-424, 427
definition of, 420
getfacl program, 580, 588
getgid function, 23-24, 232, 342, 726
definition of, 232
getgrent function, 259-261
definition of, 259
getgrent_r function, 259-260
definition of, 259
getgrgid function, 258-259, 411, 413
definition of, 258
getgrgid_r function, 258-259
definition of, 258
getgrnam function, 235, 257-258
definition of, 257
getgrnam_r function, 257-258
definition of, 257
getgroups function, 234, 236, 726
definition of, 234
gethostid function, 282, 1053-1054
definition of, 282
gethostname function, 280-282, 1053-1054
definition of, 282
gethrtime function, 29-30, 203-205, 310
definition of, 204
gethrvtime function, 29, 203-205
definition of, 204
getitimer function, 742-744
definition of, 742
getllnam function, 270
getlluid function, 273
getloadavg function, 334-335
definition of, 334
getlogin function, 224-227
definition of, 224
getlogin_r function, 224-226
definition of, 224
getmntany function, 420-423
definition of, 420
getmntent function, 420-424
definition of, 420
getmsg function, 525-527, 529-532, 534, 753, 808, 810, 812, 1026-1027, 1029
definition of, 529
GETNCNT constant, 895
getopt function, 111-114, 116, 412, 800-801, 879, 882, 887, 897, 902, 905, 913, 918, 946, 1011-1012, 1014
definition of, 112
getopt program, 112
getopts program, 112
getpagesize function, 295-296, 1053-1054
definition of, 296
getpagesizes function, 296-297, 578
definition of, 296
getpass function, 250-252, 494, 687
definition of, 250
getpassphrase function, 250-252, 254-255, 494
definition of, 250
getpgid function, 682-683
definition of, 683
getpgrp function, 682, 698, 726
definition of, 682
GETPID constant, 895
getpid function, 17-18, 30, 626, 630-631, 634, 638, 643, 698, 726, 862-863
definition of, 630
getpmsg function, 525-527, 529-531, 534, 753
definition of, 529
getppid function, 17-18, 630-631, 645, 648, 698, 726
definition of, 630
getpriority function, 1053-1054
getprusage function, 328, 331
getpwent function, 240-242, 726
definition of, 241
getpwent_r function, 240-242
definition of, 241
getpwnam function, 238-239, 254, 264, 271, 727-728
definition of, 238
getpwnam_r function, 238-239
definition of, 238
getpwuid function, 240, 411, 413, 457, 760
definition of, 240
getpwuid_r function, 240
definition of, 240
getrctl function, 304-305, 312, 317
definition of, 304
getrlimit function, 298-302, 305, 626, 818, 947, 1054
definition of, 299
getrusage function, 319, 323-324, 328, 626, 646, 1054
definition of, 323
gets function, 166-167, 338-339
definition of, 166
getsid function, 685
definition of, 685
getspent function, 247-249
definition of, 247
getspent_r function, 247-249
definition of, 247
getspnam function, 245-247, 255, 678
definition of, 245
getspnam_r function, 245-247
definition of, 245
getsubopt function, 111, 113-116
definition of, 113
gettext function, 1037-1038, 1041-1043, 1045-1046
definition of, 1042
gettext program, 1037
gettimeofday function, 29, 203-204
definition of, 204
getting
terminal attributes, 474-475
the current time, 203-205
the current time zone, 206-207
the file offset, 184
gettxt function, 1037-1038, 1046
gettxt program, 1037
getuid function, 23-24, 228-229, 342, 726
definition of, 228
getusershell function, 270, 272
definition of, 270
getutmp function, 267
definition of, 267
getutmpx function, 267
definition of, 267
getutxent function, 37, 264-266
definition of, 264
getutxid function, 266
definition of, 266
getutxline function, 266
definition of, 266
GETVAL constant, 895
getvfsany function, 428-431
definition of, 429
getvfsent function, 428-431
definition of, 429
getvfsfile function, 428-431, 455
definition of, 429
getvfsspec function, 428-431
definition of, 429
getw function, 164
definition of, 164
getwd function, 1051, 1053
definition of, 1051
GETZCNT constant, 895
GID, see group ID
gid member, 871, 873
definition of, 871, 930
GMT (Greenwich Mean Time), 202, 210
gmtime function, 208-211
definition of, 210
gmtime_r function, 210
definition of, 210
GNOME (GNU Network Object Model Environment), 3, 46, 691
GNU Network Object Model Environment, see GNOME
Goodheart, Berny, 505, 1154
goto in structured programming, 619
gpic program, xxxvi
grain variable, 101
grantpt function, 1005-1007
definition of, 1005
Greenwich Mean Time, see GMT
grep program, 1155
gr_gid member, 256
definition of, 256
gr_mem member, 256
definition of, 256
gr_name member, 256
definition of, 256
groff program, xxxvi
GROUP ACL entry, 583, 586, 589-590
group file, 256-261
group ID, 23-24, 231-234, 237, 256, 258-259, 340, 371, 451, 583
definition of, 231
effective, 23, 231-233, 341, 343, 360-361, 364-365, 393, 632, 653, 871, 873
real, 23, 231-233, 341, 343, 360-361, 365, 632, 653
supplementary, 23-24, 234-236, 256, 365, 369
group membership, 234-236
group name, 256
group set, definition of, 234
group structure, 256-259, 261
definition of, 256
GROUP_OBJ ACL entry, 583, 585, 589-590
gr_passwd member, 256
definition of, 256
GRP_ERROR constant, 586-587
<grp.h> header, 256
gsignal function, 790-792
definition of, 790
gtbl program, xxxvi
Gyger, Markus, xxxv
H
hard link, 39, 377, 382
definition of, 39, 377
hardware address translation, definition of, 578
hasmntopt function, 423-424
definition of, 423
heap, 614-615
high order word, definition of, 183
highlight function, 75, 77
source code, 76
Hill, Karen, xxxvi
hires_tick variable, 28
history of Solaris, 46-47
Hoey, Dan, 77
home directory, 12, 237
definition of, 12
HOME environment variable, 611, 613, 678
hostid program, 280
HUPCL constant, 465, 467, 480
HZ macro, 27-28
I
I18N, see internationalization
ICANON constant, 465, 467, 469-473, 479-480, 483, 493, 496, 498-499, 1025
I_CANPUT constant, 533
ic_atime member, definition of, 451
ic_blocks member, definition of, 451
ic_ctime member, definition of, 451
ic_db member, definition of, 451
ic_flags member, definition of, 451
ic_gen member, definition of, 451
ic_gid member, definition of, 451
ic_ib member, definition of, 451
ICL (International Computers Limited), 46
ic_lsize member, definition of, 451
ic_mtime member, definition of, 451
ic_nlink member, definition of, 451
icommon structure, 450-451
definition of, 451
ICRNL constant, 465, 467, 470, 480, 493, 498-499
ic_sgid member, definition of, 451
ic_shadow member, definition of, 451
ic_smode member, definition of, 451
ic_suid member, definition of, 451
ic_uid member, definition of, 451
ID
group, 23-24, 231-234, 237, 256, 258-259, 340, 371, 451, 583
job, 689-690
parent process, 17-18, 630, 646, 648, 654, 682, 693
process, 17-18, 263, 310, 312, 630, 633, 635, 644, 646, 652, 654, 682-684, 686, 693, 731, 815
process group, 632, 644, 654, 683-686, 688-689, 693, 695, 731
session, 263, 632, 654, 684, 688, 693
user, 22, 227-231, 237, 240, 269, 340, 371, 451, 583
id program, 23
idempotent function, definition of, 986
identification
system, 276-282
user, 22-24
identifiers
process, 629-630
System V IPC, 867-868
IEC C, see ISO C
IEC (International Electrotechnical Commission), 48, 1154
IEEE 754, 761
IEEE (Institute of Electrical and Electronic Engineers), 48-49, 761, 1154
IETF (Internet Engineering Task Force), 47
IEXTEN constant, 465, 467, 469-470, 472-473, 480, 498-499
IFATTRDIR constant, 591
IFS environment variable, 349
IFSHAD constant, 581
IGNBRK constant, 465, 467, 475, 477, 480
IGNCR constant, 465, 467, 470, 480-481, 493
IGNPAR constant, 465, 467, 481-483
I_GRDOPT constant, 533
I_GWROPT constant, 534
I_LIST constant, 533-535
ILL_BADSTK constant, 758
ILL_COPROC constant, 758
ILL_ILLADR constant, 758
ILL_ILLOPC constant, 758
ILL_ILLOPN constant, 758
ILL_ILLTRP constant, 758
ILL_PRVOPC constant, 758
ILL_PRVREG constant, 758
ILP32, 32-37, 87, 289
_ILP32, 37
IMAXBEL constant, 465, 467, 481
index function, 1051, 1053
definition of, 1051
indirect block, definition of, 452
inetd program, 680, 805-806, 817, 819-820, 1146
INFTIM constant, 544, 947, 1015, 1027
init program, 262-263, 328, 331, 334, 410, 629-630, 678
initgroups function, 235-236, 678
definition of, 235
initialized data segment, 613-616
initializing byte arrays, 94
INIT_PROCESS constant, 263, 266
INLCR constant, 465, 467, 481
inode, 139-140, 358, 370, 374, 376-378, 382, 388, 448, 450-454, 869
definition of, 7
inode table, 450-454
INOPB macro, 448, 456
INPCK constant, 465, 467, 481-482, 498-499
in.rlogind program, 1000, 1026
installing 64-bit programs, 38-39
Institute of Electrical and Electronic Engineers, see IEEE
INT64_MAX constant, 34
INT64_MIN constant, 34
INT8_MAX constant, 34
INT8_MIN constant, 34
in.talkd program, 537, 637
integer type
limits, 34
fixed-width, 34
in.telnetd program, 680, 693, 1000
internal transfer rate, see transfer rate
International Computers Limited, see ICL
International Electrotechnical Commission, see IEC
International Organization for Standardization, see ISO
internationalization, 1035-1046
definition of, 1035
Internet superserver, definition of, 680
interpreter files, 662-666
definition of, 662
interprocess communication, see IPC
interrupted system call, 25, 723-724, 986-989
interval timers, 742-744
definition of, 742
INTMAX_MAX constant, 34
INTMAX_MIN constant, 34
INTR terminal character, 469-471, 473, 481, 496, 690, 1139
<inttypes.h> header, 33-35
I/O
asynchronous, 294, 549-553
asynchronous STREAMS, 550-551
bound, definition of, 136
direct, 155-156, 163
disk, 134
efficiency, 135-136
file stream, 163-168
formatted date, 212-222
memory mapped, 562-579
multiplexing, 537-549
multiplexing, definition of, 538
network, 134
nonblocking, 507-511
performance impact of, direct, 156
STREAMS, 134, 153, 159, 524-537
terminal, 134, 461-505
unbuffered, 13-14
iocblk structure, 1030
ioctl function, 153, 325, 331, 334, 425-427, 461, 465, 503-504, 507, 524, 526, 533-536, 545, 547-548, 550-551, 713, 723-724, 753, 810, 930-931, 941, 943, 999, 1008-1010, 1014, 1026, 1030, 1033
definition of, 153
_IOFBF constant, 193, 195
_IOLBF constant, 193, 196, 1054
_IONBF constant, 193
iov_base member, definition of, 554
iovec structure, 286, 553-554
definition of, 554
iov_len member, 554, 933
definition of, 554
IOV_MAX constant, 286, 554
ip STREAMS module, 534
IPC (interprocess communication), 829-993
System V, 867-926
IPC_CREAT constant, 871, 879, 897, 913, 921, 925
IPC_EXCL constant, 871, 879, 896-897, 912-913
IPC_NOWAIT constant, 876-877, 882, 884, 894, 901-902
ipc_perm structure, 871-872
definition of, 871
IPC_PRIVATE constant, 868-871, 921, 925-926, 1148
ipcrm program, 873, 884, 907
IPC_RMID constant, 878, 883, 896, 898, 911, 915-916, 921, 925
ipcs program, 873-874, 884, 890, 903, 907, 916
IPC_SET constant, 878, 896, 911
IPC_STAT constant, 878, 896, 898-901, 906, 911-912, 914-915, 917, 919
I_PUSH constant, 941, 1008
I_RECVFD constant, 930-931, 941, 943
isaexec program, 39
isainfo program, 31
isalist program, 39, 53
isalnum function, 61-63
definition of, 62
isalpha function, 60-62
definition of, 61
isascii function, 62-63
definition of, 62
isastream function, 525-526, 943
definition of, 525
isatty function, 488-491, 853, 1012
definition of, 489
source code, 489
iscntrl function, 61-63
definition of, 62
isdigit function, 61-62
definition of, 61
I_SENDFD constant, 930
I_SETSIG constant, 550
isgraph function, 62-63, 85
definition of, 62
ISIG constant, 465, 467, 469-473, 481, 498-499
islower function, 60-62
definition of, 61
ISO 3166, 1036
ISO 639, 1036
ISO 8601, 215
ISO C, 47-48, 54-55, 163, 165, 184-185, 279, 300, 380, 604, 609, 715, 732, 1104, 1119, 1156
ISO (International Organization for Standardization), 47, 1154
isprint function, 62-63
definition of, 62
ispunct function, 61-63
definition of, 62
I_SRDOPT constant, 534, 536
isspace function, 61-62, 87, 90
definition of, 62
ISTRIP constant, 465, 467, 481, 483, 498-499
isupper function, 60-62
definition of, 61
I_SWROPT constant, 534, 536
isxdigit function, 61
definition of, 61
iterative server, 863-865
definition of, 863
ITIMER_PROF constant, 742
ITIMER_REAL constant, 633, 727, 742, 744-745, 1052
ITIMER_REALPROF constant, 742-743
itimerval structure, 743-744
definition of, 744
ITIMER_VIRTUAL constant, 742
it_interval member, 633, 744
definition of, 744
itod macro, 454, 458
itog macro, 454
itoo macro, 454
it_value member, 633, 744
definition of, 744
IUCLC constant, 465, 467, 481
IXANY constant, 465, 467, 481
IXOFF constant, 465, 467, 469, 472-473, 481
IXON constant, 465, 467, 469, 472, 481, 498-499
J
Jacobson, Guy, 77
jails, chroot, 344-346
JAVA_HOME environment variable, 679
job control, 689-691
shell, definition of, 689
signal, 787-789
job ID, 689-690
joinable thread, definition of, 977
joining a process group, 683-684
Joy, Bill, 7, 45, 375, 447
K
K Desktop Environment, see KDE
Kaplan, Raquel, xxxvi
Karels, Michael, 1155
KDE (K Desktop Environment), 3
kernel persistent, definition of, 873
Kernighan, Brian, xxxvi, 47, 127, 171, 663, 1119, 1153, 1155
key member, definition of, 871
key, System V IPC, 867-868
kill function, 640, 673, 698, 704-705, 726, 729-734, 755-757, 775, 802, 921-922, 1146
definition of, 731
kill program, 576, 705, 711, 714-715, 800
source code, 801
KILL terminal character, 469-473, 479-480, 494, 496, 1139
killpg function, 729, 732, 1054
definition of, 732
Knuth, Donald, 68, 1155
Korn, David, 7
Korn shell, 6-7, 49, 149, 666, 783, 1148
ksh program, 6, 10, 49, 270, 496, 611, 615, 656, 689, 760, 1017, 1019
L
L10N, see localization
LANG environment variable, 1036-1038
large file
aware, 459
aware, definition of, 40
compilation environment, 39-41, 129, 131
definition of, 31
safe, definition of, 40
_LARGEFILE_SOURCE, 40-41
lastlog file, 269-270
lastlog structure, 269-270, 273, 1132
definition of, 269
latency time, definition of, 418
LBA (lower boundary address), 910
lblkno macro, 448
lbolt variable, 28
LC_ALL constant, 1038, 1043
LC_ALL environment variable, 1037-1038
LC_COLLATE constant, 1038, 1044
LC_COLLATE environment variable, 340, 1037-1038
LC_CTYPE constant, 1038
LC_CTYPE environment variable, 340, 1037-1038
lchown function, 371, 382, 389, 596
definition of, 371
lckpwdf function, 243
definition of, 243
LC_MESSAGES constant, 1038, 1042-1043
LC_MESSAGES environment variable, 1037-1038
LC_MONETARY constant, 1038
LC_MONETARY environment variable, 1037-1038
LC_NUMERIC constant, 1038
LC_NUMERIC environment variable, 1037-1038
L_ctermid constant, 489
LC_TIME constant, 1038
LC_TIME environment variable, 214, 1037-1038
L_cuserid constant, 226
ld program, 4
ldbtob macro, 458
LD_LIBRARY_PATH environment variable, 4-5
LD_PRELOAD environment variable, 106
ldterm STREAMS module, 464, 534, 997-999, 1008, 1025-1026
leader
process group, 683-684
session, 685-687
leap year, 202
least privilege, principle of, 340-343, 348-349
Leffler, Sam, 374, 1155
len member, 527-528
definition of, 527
length of a character string, finding the, 66-67
Lesk, Mike, 159
level member, 401, 809
definition of, 401, 809
libaio library, 538
libc library, 100, 106, 324, 1049
Libes, Don, 1002, 1145, 1155
library function, 28-31
definition of, 28
librt library, 538
libumem library, 100
life, the universe, and everything, answer to, 811
lightweight process, definition of, 325
limits
integer type, 34
per-process resource, 297-302, 626
system resource, 282-297, 626
<limits.h> header, 173, 225, 234, 250, 283, 377, 490, 554, 661
line control, terminal, 486-488
line input, standard I/O, 166
line output, standard I/O, 167
LINE_BUF constant, 1142
LINE_LEN constant, 19, 26, 82, 84, 196, 559, 561, 835, 841, 849-851, 853, 859-860, 862-863, 935, 947, 1117, 1121, 1129-1130, 1142, 1144
LINE_MAX constant, 286
link, see hard link
link function, 357, 377-380, 382-383, 389, 591, 726
definition of, 378
link, hard, 39, 377, 382
link, symbolic, 39, 356, 377-378, 381-387, 399, 406
resolving, 385-387
LINK_MAX constant, 293, 377
lint program, 35, 606
Linux, 3, 338, 374, 952, 1131
Lions, John, 708, 1155
Liu, Zhishun Alex, xxxv
livelock, 517-519
definition of, 518
l_len member, 144, 514
definition of, 143, 514
ll_host member, 270
definition of, 269
ll_line member, 270
definition of, 269
llseek function, 128-131
definition of, 129
ll_time member, 270
definition of, 269
lltostr function, 91
definition of, 91
LMS_DFAULT constant, 743
LMS_KFAULT constant, 743
LMS_SLEEP constant, 743
LMS_STOPPED constant, 743
LMS_SYSTEM constant, 743
LMS_TFAULT constant, 743
LMS_TRAP constant, 743
LMS_USER constant, 743
LMS_USER_LOCK constant, 743
LMS_WAIT_CPU constant, 743
ln program, 387
l_name member, definition of, 533
LNEXT terminal character, 469-470, 472, 480
load average, 334-335
definition of, 334
LOADAVG_15MIN constant, 335
LOADAVG_1MIN constant, 335
LOADAVG_5MI constant, 335
LOADAVG_5MIN constant, 335
local procedure call, definition of, 951
locale, 1036-1037
category, 1036-1037
definition of, 1035
localeconv function, 1037, 1045
localedef program, 284
localization, 1035-1046
definition of, 1035
localtime function, 208-210, 218, 725
definition of, 209
localtime_r function, 209-210
definition of, 209
lockd program, 513-514
lockf function, 513, 517, 519, 923-924
definition of, 517
record locking using, 517
locking
file stream, 185-191
pages in memory, 573-576
record, 127, 511-522
log device, 807-812
LOG_ALERT constant, 814, 816-817
LOG_AUTH constant, 813
LOG_CONS constant, 814, 816
LOG_CRIT constant, 814
LOG_CRON constant, 813
log_ctl structure, 809, 811
definition of, 809
LOG_DAEMON constant, 813, 818, 820
LOG_DEBUG constant, 814
LOG_EMERG constant, 814
LOG_ERR constant, 814, 816, 1119
logger program, 817
logging
daemon error, 807-817
STREAMS, 807-811
logging in, 5
.login file, 611, 679
login name, definition of, 224
login, network, 679-682
login program, 261, 269, 656, 678, 693, 813
login shell, 237
login, terminal, 677-679
LOG_INFO constant, 814, 1119
LOGIN_PROCESS constant, 263, 266
LOG_KERN constant, 813
LOG_LOCAL0 constant, 813
LOG_LOCAL1 constant, 813
LOG_LOCAL2 constant, 813
LOG_LOCAL3 constant, 813
LOG_LOCAL4 constant, 813
LOG_LOCAL5 constant, 813
LOG_LOCAL6 constant, 813
LOG_LOCAL7 constant, 813
LOG_LPR constant, 813
LOG_MAIL constant, 813
LOG_MASK macro, 815-816
log_msg function, 22, 1119
source code, 1120
LOGNAME environment variable, 611, 656, 678
LOGNAME_MAX constant, 286
LOG_NDELAY constant, 814-815, 1146
LOG_NEWS constant, 813
LOG_NOTICE constant, 814
LOG_NOWAIT constant, 815
LOG_ODELAY constant, 815
LOG_PID constant, 815-816, 818
LOG_SYSLOG constant, 813
LOG_UPTO macro, 815
LOG_USER constant, 813-816
LOG_UUCP constant, 814
LOG_WARNING constant, 814
longjmp function, 619-626, 725-726, 736-737, 740-742, 745, 762, 764, 768, 776, 796, 1145
definition of, 621
_longjmp function, 625
definition of, 625
lost+found file, 11
low order word, definition of, 183
lower boundary address, see LBA
LP64, 32-37, 87, 289
_LP64, 37, 843
l_pid member, 514
definition of, 514
ls program, 11, 67, 201, 357-358, 363, 370, 383, 388-389, 395, 408, 525, 576, 580, 590-591, 627, 873, 960, 1037, 1127, 1134
lseek function, 41, 43, 128-131, 139-140, 158, 552, 726, 1128-1130
definition of, 129
lseek64 function, 41
l_start member, 144, 514
definition of, 143, 514
lstat function, 7, 355-357, 359-360, 382, 385, 399, 412, 594
definition of, 356
l_sysid member, 514
definition of, 514
ltime member, definition of, 809
L_tmpnam constant, 109
l_type member, 514
definition of, 514
l_whence member, 144, 514
definition of, 143, 514
lwp file, 325
_lwp_kill function, 755-757
M
machine member, 277-278
definition of, 276
MADV_ACCESS_DEFAULT constant, 572
MADV_ACCESS_LWP constant, 571
MADV_ACCESS_MANY constant, 571
MADV_DONTNEED constant, 571
MADV_FREE constant, 571
madvise function, 570-572
definition of, 570
MADV_NORMAL constant, 570
MADV_RANDOM constant, 571
MADV_SEQUENTIAL constant, 571
MADV_WILLNEED constant, 571
mail program, 834
MAIL_USER environment variable, 834
mailx program, 169, 834
main function, 10, 20, 187, 603-607, 619, 621-623, 627, 639, 641, 652, 676, 715, 767
major device number, 407, 420, 426, 451
major function, 407, 409, 413
definition of, 407
major page fault, definition of, 324
make program, 4, 41, 689
makedev function, 407
definition of, 407
mallinfo function, 101-102
definition of, 102
mallinfo structure, 102
definition of, 102
malloc function, 36, 81, 94, 96-107, 109, 119, 133, 193, 195-196, 296-297, 300, 304, 312, 317, 394, 405, 556, 582, 584-585, 612, 618, 626, 725, 846, 880-882, 889, 921-922, 949
definition of, 96
malloc libraries, comparing, 106
malloc library, 100-102, 106
MALLOC_DEBUG environment variable, 104
<malloc.h> header, 100
mallopt function, 100-102
definition of, 101
man program, 11
mandatory record locking, 521-522
definition of, 512
enabling, 512
Mandic, Anthony, xxxv
manipulating
byte arrays, 91-94
character classes, 60-65
character strings, 65-91
MAP_ALIGN constant, 564-565
MAP_ANON constant, 564-565, 568
MAP_FIXED constant, 564-565
mapmalloc library, 100, 103
MAP_NORESERVE constant, 564
MAP_PRIVATE constant, 564, 572-573, 794
MAP_SHARED constant, 564, 566, 568-569, 572-573, 575-576
M_ASYNC constant, 573
Mauro, Jim, 325, 373, 579, 1130, 1155
MAX_CANON constant, 293, 463
MAXCSBUFS constant, 447
maxfast variable, 101-102
maxfilesize member, 293
MAXHOSTNAMELEN constant, 282
MAX_INPUT constant, 293, 463
MAXINT constant, 32
maxlen member, 527
definition of, 527
MAXLONG constant, 119
MAX_MNTOPT_STR constant, 433, 436
MAX_MNTOPT_TAG constant, 426
MAXNAMELEN constant, 8, 160
MAXNAMLEN constant, 393-394
MAXPATHLEN constant, 8, 160, 399, 414, 626, 662, 859, 862
MAXPID constant, 859
MAXSIG constant, 802
mblen function, 1037
McDougall, Richard, 325, 373, 579, 1130, 1155
MC_HAT_ADVISE constant, 578-579
McKusick, Marshall Kirk, 1155
MCL_CURRENT constant, 574, 578
MCL_FUTURE constant, 574, 578
MC_LOCK constant, 577
MC_LOCKAS constant, 577
MC_SYNC constant, 578-579
MC_UNLOCK constant, 578
MC_UNLOCKAS constant, 578
MD5 encryption algorithm, 244, 247, 249, 251, 253
M_DATA constant, 1028
M_DATA STREAMS message, 527-528, 1029
mdb program, 53
memalign function, 97-98
definition of, 97
membership, group, 234-236
memccpy function, 93, 198
definition of, 92
memchr function, 93
definition of, 93
memcmp function, 92, 1049, 1053
definition of, 92
memcntl function, 577-579
definition of, 577
memcntl_mha structure, 578
definition of, 578
memcpy function, 92-93, 565, 567, 1050
definition of, 92
MEM_ERROR constant, 586-587
memmove function, 92-93, 1050, 1053
definition of, 92
memory
alignment, 94-96
alignment, definition of, 94
allocating dynamic, 96-99, 618
anonymous, 564, 568, 795
dynamic, 94-100
freeing dynamic, 99-100
locking pages in, 573-576
mapped I/O, 562-579
memory layout of a C program, 613-616
memset function, 94, 97, 1050, 1053
definition of, 94
M_ERROR STREAMS message, 550
message catalogue, 1038-1041
creating a, 1039-1041
message queue
definition of, 867
System V IPC, 873-890
M_FLUSH constant, 1028
M_FLUSH STREAMS message, 1029
mha_cmd member, 578-579
definition of, 578
mha_flags member, 578
definition of, 578
MHA_MAPSIZE_BSSBRK constant, 578-579
MHA_MAPSIZE_STACK constant, 578-579
MHA_MAPSIZE_VA constant, 578
M_HANGUP STREAMS message, 550
mha_pagesize member, 578
definition of, 578
mid member, definition of, 809
millitm member, definition of, 1051
MIN terminal value, 480, 496-497, 1139
MIN_ACL_ENTRIES constant, 582, 585
minor device number, 407, 420, 426, 451
minor function, 407, 409, 413
definition of, 407
minor page fault, definition of, 324
MINSIGSTKSZ constant, 793
M_IOCTL constant, 1028
M_IOCTL STREAMS message, 1030
miscellaneous source code, 1117-1125
MISS_ERROR constant, 586-587
mkdir function, 382, 388-389, 392, 408, 591, 726
definition of, 392
mkfifo function, 382, 389, 408, 726, 854, 858-860, 1148-1149
definition of, 854
mkfifo program, 856
mkfile program, 40, 362
mknod function, 357, 382, 388-389, 407, 591
definition of, 408
mkstemp function, 109-110
definition of, 110
mktemp function, 108, 110, 349
definition of, 108
mktime function, 208-212, 221
definition of, 211
mlock function, 573-577, 653
definition of, 573
mlockall function, 574, 653
definition of, 574
mmap function, 49, 103, 300, 344, 513, 562-570, 576, 618, 653, 794
definition of, 563
mntfs file system, 156
system ioctl commands, 425-427
mnt_fstype member, 419
definition of, 419-420
MNTIOC_CLRTAG constant, 425-426
MNTIOC_GETDEVLIST constant, 426
MNTIOC_NMNTS constant, 426
MNTIOC_SETTAG constant, 425-427
MNT_LINE_MAX constant, 421
mnt_major member, definition of, 420
mnt_minor member, definition of, 420
mnt_mntopts member, 419, 423
definition of, 419-420
mnt_mountp member, 419
definition of, 419-420
MNTOPT_ACDIRMAX constant, 435
MNTOPT_ACDIRMIN constant, 435
MNTOPT_ACREGMAX constant, 435
MNTOPT_ACREGMIN constant, 435
MNTOPT_ACTIMEO constant, 435
MNTOPT_BG constant, 435
MNTOPT_DEV constant, 435
MNTOPT_DFRATIME constant, 435
MNTOPT_DIRECT constant, 435
MNTOPT_DISABLEDIRECTIO constant, 435
MNTOPT_FG constant, 435
MNTOPT_FORCEDIRECTIO constant, 435
MNTOPT_GLOBAL constant, 435
MNTOPT_GRPID constant, 435
MNTOPT_HARD constant, 435
MNTOPT_IGNORE constant, 435
MNTOPT_INDIRECT constant, 435
MNTOPT_INTR constant, 435
MNTOPT_LARGEFILES constant, 435
MNTOPT_LLOCK constant, 435
MNTOPT_LOGGING constant, 435
MNTOPT_MAP constant, 435
MNTOPT_MULTI constant, 435
MNTOPT_NBMAND constant, 435
MNTOPT_NOAC constant, 435
MNTOPT_NOATIME constant, 435
MNTOPT_NOCTO constant, 435
MNTOPT_NODFRATIME constant, 435
MNTOPT_NOFORCEDIRECTIO constant, 435
MNTOPT_NOGLOBAL constant, 435
MNTOPT_NOINTR constant, 435
MNTOPT_NOLARGEFILES constant, 435
MNTOPT_NOLOGGING constant, 435
MNTOPT_NONBMAND constant, 435
MNTOPT_NOPRINT constant, 435
MNTOPT_NOQUOTA constant, 435
MNTOPT_NOSETSEC constant, 435
MNTOPT_NOSUB constant, 435
MNTOPT_NOSUID constant, 435
MNTOPT_NOXATTR constant, 435
MNTOPT_ONERROR constant, 435
MNTOPT_PORT constant, 435
MNTOPT_POSIX constant, 435
MNTOPT_PROTO constant, 435
MNTOPT_PUBLIC constant, 435
MNTOPT_QUOTA constant, 435
MNTOPT_REMOUNT constant, 435
MNTOPT_RETRANS constant, 435
MNTOPT_RETRY constant, 435
MNTOPT_RO constant, 435
MNTOPT_RQ constant, 433
MNTOPT_RSIZE constant, 433
MNTOPT_RW constant, 433
MNTOPT_SEC constant, 433
MNTOPT_SECURE constant, 433
MNTOPT_SEMISOFT constant, 433
MNTOPT_SOFT constant, 433
MNTOPT_SUID constant, 433
MNTOPT_SYNCDIR constant, 433
MNTOPT_TIMEO constant, 433
MNTOPT_VERS constant, 433
MNTOPT_WSIZE constant, 433
MNTOPT_XATTR constant, 433
mnt_special member, 419
definition of, 419-420
mnttab structure, 419-420, 423, 425
definition of, 419
mnttagdesc structure, 425-426
definition of, 425
mnt_time member, 419
definition of, 419-420
MNT_TOOFEW constant, 421
MNT_TOOLONG constant, 421
MNT_TOOMANY constant, 421
MNTTYPE_AUTOFS constant, 433
MNTTYPE_CACHEFS constant, 433
MNTTYPE_HSFS constant, 433
MNTTYPE_LOFS constant, 433
MNTTYPE_NFS constant, 433
MNTTYPE_NFS3 constant, 433
MNTTYPE_PCFS constant, 433
MNTTYPE_SWAP constant, 433
MNTTYPE_TMPFS constant, 433
MNTTYPE_UFS constant, 433, 436, 1137
mode member, 872-873
definition of, 871
modification time, changing file, 390-392
modtime member, definition of, 391
Moffat, Darren, xxxv
Moffitt, Bill, xxxvi
Moore, Jim, xxxv
MORECTL constant, 530, 532
MOREDATA constant, 530, 532
Morgan, Chris, xxxv
mount function, 432-436, 1137
definition of, 432
mount options, 433-435
mount program, 113, 417, 421, 425
mounted file system, 418-425
mounting a file system, 432-438
M_PCPROTO STREAMS message, 527-528, 550
mprotect function, 570
definition of, 570
M_PROTO STREAMS message, 527-528
mq_close function, 654
MQ_OPEN_MAX constant, 286
MQ_PRIO_MAX constant, 286
MS_ASYNC constant, 572, 578
MS_DATA constant, 432-433, 435-436, 1137
MS_FORCE constant, 437-438, 1138
MSG_ANY constant, 530
MSG_BAND constant, 528, 530
msgbuf structure, 881
msg_cbytes member, definition of, 874
msg_ctime member, definition of, 874
msgctl function, 878-884, 921
definition of, 878
msg_cv member, 874
definition of, 874
msg_first member, 874
definition of, 874
msgfmt program, 1040
msgget function, 868-870, 872, 874-875, 879-880, 882-883, 920-921
definition of, 875
MSG_HIPRI constant, 528, 530
msgids function, 875, 886-890
definition of, 886
msg_last member, 874
definition of, 874
MS_GLOBAL constant, 432
msg_lrpid member, definition of, 874
msg_lspid member, definition of, 874
MSG_NOERROR constant, 877
msg_perm member, definition of, 874
msg_qbytes member, definition of, 874
msg_qnum member, definition of, 874
msg_qnum_cv member, 874
definition of, 874
MSG_R constant, 872, 879, 882, 921
msgrcv function, 876-877, 881-882, 884, 920-921
definition of, 876
msg_rtime member, definition of, 874
msgsnap function, 884-885, 889-890
definition of, 885
msgsnap_head structure, 885-886
definition of, 885
msgsnap_mhead structure, 885
definition of, 885
msgsnap_mlen member, 885
definition of, 885
msgsnap_mtype member, definition of, 885
msgsnap_nmsg member, 885
definition of, 885
msgsnap_size member, 885
definition of, 885
msgsnd function, 875-876, 880-881, 920-921
definition of, 875
msg_stime member, definition of, 874
MSG_W constant, 872, 879-880, 921
MS_INVALIDATE constant, 573, 578
MS_NOSUID constant, 432, 436
MS_OPTIONSTR constant, 432-433, 435-436
MS_OVERLAY constant, 433
msqid_ds structure, 874-878, 891
definition of, 874
MS_RDONLY constant, 433, 436
MS_REMOUNT constant, 433
MS_SYNC constant, 572, 578
M_START constant, 1028
M_START STREAMS message, 1030
M_STARTI constant, 1028
M_STARTI STREAMS message, 1030
M_STOP constant, 1028
M_STOP STREAMS message, 1030
M_STOPI constant, 1028
M_STOPI STREAMS message, 1030
M_SYNC constant, 573
msync function, 572-573
definition of, 572
mtd_major member, definition of, 425
mtd_minor member, definition of, 425
mtd_mntpt member, definition of, 425
mtd_tag member, definition of, 425
mtmalloc library, 100
Muffet, Alec, xxxv
Mui, Linda, 505, 1157
multiplexing, I/O, 537-549
munlock function, 573-574
definition of, 573
munlockall function, 574
definition of, 574
munmap function, 562-568, 956, 960-961
definition of, 565
mv program, 111, 377, 591
N
named pipes, see FIFOs
NAME_MAX constant, 386
nanosleep function, 1052-1053
Nash, Russell, 824
nawk program, 664
NCCS constant, 465, 1028
NDADDR constant, 452
NDEBUG constant, 119
<netdb.h> header, 282
network I/O, 134
network login, 679-682
newfs program, 11
newgrp program, 256
NEW_TIME constant, 262-263, 266
NFPCHUNK constant, 136
nftw function, 399-403
definition of, 399
NGROUPS_MAX constant, 234-236, 286
ngroups_max variable, 23
NINDIR macro, 448
nl program, xxxvi
NL terminal character, 469-473, 480-482, 493, 496
NL0 constant, 481
NL1 constant, 481
NL_ARGMAX constant, 173, 179
NLDLY constant, 465, 467, 481-482
nodename member, 276-277, 282
definition of, 276
noexec_user_stack variable, 339, 614
noexec_user_stack_log variable, 339
NOFLSH constant, 465, 467, 481
nohup program, 226
nohup.out file, 226-227
nonblocking I/O, 507-511
non-canonical mode terminal I/O, 462, 496-502
definition of, 462
nonlocal branches, 619, 621
nscd program, 1134
NSPF macro, 448
NSS_BUFLEN_GROUP constant, 285
NSS_BUFLEN_PASSWD constant, 286
NUL, definition of, 65
NULL constant, 160
NULL, definition of, 65
null signal, 704, 731
numbers
converting strings to, 87-91
converting to strings, 91
numblks variable, 101-102
numfrags macro, 448
O
O_ACCMODE constant, 144, 147
O_APPEND constant, 124, 127-128, 132, 138, 140, 144, 150, 158, 1130
oawk program, 664
O_CREAT constant, 124-125, 127, 139, 383, 520-521, 523, 555, 557, 559, 561, 566, 592, 823, 854, 1137-1138
OCRNL constant, 465, 467, 482
od program, 131
O_DSYNC constant, 125, 127, 144, 151-152, 156
O_EXCL constant, 124-125, 127, 139, 382
OFDEL constant, 465, 467, 482
offset_t datatype, 129-130
off_t datatype, 40, 125, 129-131, 184-185
OFILL constant, 465, 467, 482
O_LARGEFILE constant, 125, 127, 131, 144, 147
OLCUC constant, 465, 467, 482
OLD_TIME constant, 262, 266
O_NDELAY constant, 125-127, 144, 508-509, 830, 855
one_copy function, 822, 824, 826, 1146
definition of, 822
source code, 823
ONLCR constant, 465, 467, 482, 1014, 1021
ONLRET constant, 465, 467, 482
ONOCR constant, 465, 467, 482
O_NOCTTY constant, 125, 127, 687, 819, 1008
O_NONBLOCK constant, 125-127, 144, 508-510, 546, 548-549, 830, 855, 1148-1149
Onufer, Greg, xxxv
open function, 11, 13, 30, 41, 109, 117-118, 124-127, 134, 139-140, 144, 157, 162, 318, 325, 347, 349, 357, 363, 365, 373, 380, 382-383, 389, 408, 410, 432, 478, 508, 513, 515, 521-522, 524, 545, 558, 567-568, 592, 616, 625, 687, 726, 822, 826, 854-855, 858, 863-864, 868, 872, 941, 943, 953, 955, 962, 965, 971, 976, 1008, 1127-1128, 1135, 1146, 1148
definition of, 124
Open Group, The, 50, 276
open64 function, 41
openat function, 591-593, 597-598
definition of, 592
opendir function, 9, 382, 393-397, 492-493, 653, 1146-1147
definition of, 393
opening
BSD-style pseudo terminals, 1004-1005
SVR4-style pseudo terminals, 1005-1009
System V IPC objects, 870-871
openlog function, 344, 814-818, 820, 825, 1146
definition of, 814
OPEN_MAX constant, 287, 291, 300
OPOST constant, 465, 467, 482, 498-499, 502
optarg variable, 112
opterr variable, 112, 116, 800, 1011
optind variable, 112
optopt variable, 112
O_RDONLY constant, 124, 127, 144, 363, 512, 523, 535, 557, 561, 566, 576, 593, 598, 675, 859, 862, 933, 972, 976, 1128, 1144, 1149
O_RDWR constant, 124, 127, 144, 363, 512, 517, 520, 523, 555, 569, 794, 818, 943, 958, 961, 975, 988, 990, 1007-1008
O'Reilly, Tim, 505, 1157
$ORIGIN, 5
orphaned process group, 697-700
definition of, 699
O_RSYNC constant, 126-127, 144
O_SYNC constant, 126-127, 144, 152-153, 156, 410
OTHER_ERROR constant, 586-587
OTHER_OBJ ACL entry, 583, 585, 589-590
O_TRUNC constant, 126-127, 363, 373, 520-521, 523, 555, 557, 559, 561, 566, 826, 1146
overflow, buffer, 21, 71-72, 74, 85, 100, 166, 214, 338-339, 347, 1124
owner ID, definition of, 871
O_WRONLY constant, 124, 127, 144, 363, 512, 517, 557, 559, 561, 566, 598, 810, 823, 860, 862, 1137-1138, 1149
O_XATTR constant, 126-127, 147, 592, 598
P
packet mode, pseudo terminal, 1026-1032
definition of, 1026
page fault, definition of, 324
PAGESIZE constant, 287
P_ALL constant, 647-648, 733
PAM (Pluggable Authentication Module), 678
Panama palindrome, 77-79
PARENB constant, 465, 467, 482-483, 498-499
parent
directory, 344, 353-354, 388, 393
process, definition of, 18, 631
process ID, 17-18, 630, 646, 648, 654, 682, 693
process ID, definition of, 17
PAREXT constant, 465, 467, 482
PARMRK constant, 465, 467, 477, 482-483
PARODD constant, 465, 467, 482-483
parsing command line arguments, 110-116
passing file descriptors, 927-931, 973-977
PASS_MAX constant, 250, 287, 494-495
passwd program, 244, 341, 361, 687, 1001-1002, 1022, 1025
passwd structure, 237-243
definition of, 237
password file, 237-243
passwords
encrypting, 250-256
reading, 250-256
PATH environment variable, 4, 347, 349, 609-611, 656-657, 659-662, 678-679, 1047
pathconf function, 283, 292-295, 371, 382, 393, 726
definition of, 292
PATH_MAX constant, 329, 1051
pathname
absolute, 8, 11, 126, 238, 270, 344, 386, 405-406, 437, 592, 595, 609-610, 662
components, 353-354
definition of, 8
pathnames and filenames, 8
pause function, 503, 507, 576, 714-715, 718, 720-723, 726, 730, 734-737, 759-760, 767, 789, 799, 821, 824, 959, 963, 966, 981, 1145, 1151
definition of, 720
pax program, 591
_PC_ASYNC_IO constant, 294
_PC_CHOWN_RESTRICTED constant, 294
_PC_FILESIZEBITS constant, 293, 295
P_CID constant, 733
pckt STREAMS module, 998-999, 1026
_PC_LINK_MAX constant, 293, 295
pclose function, 839-848, 865, 1148
definition of, 839
source code, 844
_PC_MAX_CANON constant, 293
_PC_MAX_INPUT constant, 293
_PC_NAME_MAX constant, 293-294, 393
_PC_NO_TRUNC constant, 294
_PC_PATH_MAX constant, 293
_PC_PIPE_BUF constant, 293
_PC_PRIO_IO constant, 294
_PC_SYNC_IO constant, 294
_PC_VDISABLE constant, 294
_PC_XATTR_ENABLED constant, 294
_PC_XATTR_EXISTS constant, 294
PDP-7, 362
PENDIN constant, 465, 467, 483
performance comparisons, System V IPC, 919-924
performance impact of, direct I/O, 156
permissions
file access, 362-365
System V IPC, 871-873
per-process resource limits, 297-302, 626
perror function, 21, 117-118, 797
definition of, 117
Pettit, Richard, 362, 1154
P_GID constant, 733
pgrep program, 53
PID, see process ID
Pike, Rob, 127, 1155
PIOCUSAGE constant, 325, 331, 334
pipe function, 127, 357, 389, 726, 830, 833-835, 838, 840, 842-843, 851-852, 922, 932, 934, 941, 1023-1024, 1140
definition of, 830
PIPE_BUF constant, 294, 832, 855-856, 1140
PIPE_MAX constant, 920
pipes, 829-854
pkill program, 53, 576
platter, definition of, 417
Plauger, P. J., 48, 1156
p_lid member, 734
definition of, 734
p_lidtype member, 734
definition of, 734
plock function, 574-576
definition of, 574
Pluggable Authentication Module, see PAM
pm device, 231
pmap program, 576
P_MYID constant, 733
poll function, 54, 524-525, 539, 542-547, 549, 599, 710, 742, 944, 946-947, 1015-1016, 1027, 1140, 1150
definition of, 543
POLLERR constant, 544
POLL_ERR constant, 758
pollfd structure, 543, 545, 547, 945-946, 948, 1015-1016, 1026
definition of, 543
POLLHUP constant, 544, 947-948
POLL_HUP constant, 758
POLLIN constant, 543-544, 947, 1015, 1027
POLL_IN constant, 756, 758
polling, 649
definition of, 511, 538
POLL_MSG constant, 756, 758
POLLNVAL constant, 544
POLLOUT constant, 543-544, 546, 548, 1140
POLL_OUT constant, 756, 758
POLLPRI constant, 543-544
POLL_PRI constant, 758
POLLRDBAND constant, 543-544
POLLRDNORM constant, 543-544
POLLWRBAND constant, 544
POLLWRNORM constant, 543-544
p_op member, 734
definition of, 734
POP_AND constant, 734
POP_DIFF constant, 734
popen function, 347, 349, 661, 839-848, 865, 1148
definition of, 839
source code, 842
POP_OR constant, 734
POP_XOR constant, 734
Portable Operating System Interface, see POSIX
positioning, file stream, 184-185
POSIX (Portable Operating System Interface), 27, 42, 48-50, 54-55, 214, 222, 225, 239-240, 257, 259, 276, 282, 284, 287-290, 371, 395, 461, 465, 473, 490, 508, 553, 562, 604, 609, 625, 633, 689, 703, 718-719, 725, 728, 744, 746, 774, 779, 784, 830, 847, 867, 873, 891, 920, 927, 1049, 1053, 1057, 1104
signals, 744-760
threads, see pthreads
_POSIX2_C_BIND constant, 284
_POSIX2_C_DEV constant, 284
_POSIX2_CHAR_TERM constant, 284
_POSIX2_C_VERSION constant, 284
_POSIX2_FORT_DEV constant, 284
_POSIX2_FORT_RUN constant, 284
_POSIX2_LOCALEDEF constant, 284
_POSIX2_SW_DEV constant, 284
_POSIX2_UPE constant, 284
_POSIX2_VERSION constant, 284
_POSIX_ARG_MAX constant, 937
_POSIX_ASYNCHRONOUS_IO constant, 285
_POSIX_ASYNC_IO constant, 294
_POSIX_CHOWN_RESTRICTED constant, 294, 371
_POSIX_FSYNC constant, 285
_POSIX_JOB_CONTROL constant, 286
_POSIX_LOGIN_NAME_MAX constant, 225
_POSIX_MAPPED_FILES constant, 286
_POSIX_MEMLOCK constant, 286
_POSIX_MEMLOCK_RANGE constant, 286
_POSIX_MEMORY_PROTECTION constant, 286
_POSIX_MESSAGE_PASSING constant, 286
_POSIX_NO_TRUNC constant, 294
_POSIX_PATH_MAX constant, 490-492
_POSIX_PRIO_IO constant, 294
_POSIX_PRIORITIZED_IO constant, 287
_POSIX_PRIORITY_SCHEDULING constant, 287
_POSIX_PTHREAD_SEMANTICS, 213, 224, 238, 240, 257-258, 394, 490, 773
_POSIX_REALTIME_SIGNALS constant, 287
_POSIX_SAVED_IDS constant, 287
_POSIX_SEMAPHORES constant, 288
_POSIX_SHARED_MEMORY_OBJECTS constant, 288
posix_spawn function, 637
_POSIX_SYNCHRONIZED_IO constant, 288
_POSIX_SYNC_IO constant, 294
_POSIX_THREAD_ATTR_STACKADDR constant, 288
_POSIX_THREAD_ATTR_STACKSIZE constant, 288
_POSIX_THREAD_PRIO_INHERIT constant, 288
_POSIX_THREAD_PRIO_PROTECT constant, 288
_POSIX_THREAD_PRIORITY_SCHEDULING constant, 288
_POSIX_THREAD_PROCESS_SHARED constant, 289
_POSIX_THREADS constant, 289
_POSIX_THREAD_SAFE_FUNCTIONS constant, 289
_POSIX_TIMERS constant, 289
_POSIX_VDISABLE constant, 294, 469, 474
_POSIX_VERSION constant, 289
post mortem debugging, definition of, 705
P_PGID constant, 647, 733
PPID, see parent process ID
P_PID constant, 647, 733
P_PROJID constant, 733
pr_count member, 326
definition of, 326
pr_create member, 326
definition of, 326
pr_dftime member, 327
definition of, 326
pread function, 131-132, 456, 458, 753
definition of, 132
preap program, 641
precision modifiers, conversion specification, 178-180
pre-forking, definition of, 864
pri member, definition of, 809
pr_ictx member, 327
definition of, 326
p_rid member, 734
definition of, 734
p_ridtype member, 734
definition of, 734
primary group ID, definition of, 23, 234
pr_inblk member, 327
definition of, 326
principle of least privilege, 340-343, 348-349
definition of, 340
printf function, 17, 27, 34-35, 37, 59, 170-172, 176, 183, 347, 616, 635, 639, 715, 726, 728, 815, 854, 1037, 1043, 1045
definition of, 170
print_rctl function, 311-319
print_rctls function, 311-312
print_term_status function, 320, 642-643, 669, 783
source code, 642, 1124
pr_ioch member, 328
definition of, 326
PRIVATE constant, 577
privilege bracketing, 341-343
definition of, 341
privilege level, resource control, 306
privilege, principle of least, 340-343, 348-349
priv_off function, 343
priv_on function, 343
pr_kftime member, 327
definition of, 326
pr_ltime member, 327
definition of, 326
pr_lwpid member, 326
definition of, 326
pr_majf member, 327
definition of, 326
pr_minf member, 327
definition of, 326
pr_mrcv member, 327
definition of, 326
pr_msnd member, 327
definition of, 326
pr_nswap member, 327
definition of, 326
/proc file system, 103-105, 153, 319, 324-334, 626
resource usage using, 325-334
proc structure, 136
PROC_DATA constant, 577
process, 16-21
accounting, 670-676
control, 18-21
definition of, 16
ID, 17-18, 263, 310, 312, 630, 633, 635, 644, 646, 652, 654, 682-684, 686, 693, 731, 815
ID, definition of, 17
identifiers, 629-630
lock, definition of, 575
persistent, definition of, 873
start-up, 603-604, 716
suspending a, 119-120
termination, 604-608
zombie, 641, 645, 676, 708, 728, 754, 1142-1143
process group, 682-685
background, 483, 691, 787
creating a, 683-684
definition of, 682
foreground, 470-471, 473, 475, 686, 688, 690-691, 709, 711, 779, 787-788
ID, 632, 644, 654, 683-686, 688-689, 693, 695, 731
joining a, 683-684
leader, 683-684
leader, definition of, 683
lifetime, definition of, 683
orphaned, 697-700
process.max-address-space resource control, 303, 316
process.max-core-size resource control, 303
process.max-cpu-time resource control, 303
process.max-data-size resource control, 303
process.max-file-descriptor resource control, 303, 316, 318
process.max-file-size resource control, 303
process.max-stack-size resource control, 303
procfs file system, see /proc file system
<procfs.h> header, 326, 331
PROCLOCK constant, 575
/proc/self file, 325
procset structure, 734
definition of, 734
PROC_TEXT constant, 577
.profile file, 6, 611, 679
program, 16-21
definition of, 16
environment, 339-340
starting only one copy of a, 821-824
programming, defensive, 340
project.cpu-shares resource control, 303
PROT_EXEC constant, 563, 577
PROT_NONE constant, 563
prototypes, function, 1057-1104
PROT_READ constant, 563, 566, 569, 576-577, 794
PROT_WRITE constant, 563-564, 566, 569, 576-577, 794
pr_oublk member, 327
definition of, 326
pr_rtime member, 327
definition of, 326
pr_sigs member, 327
definition of, 326
pr_slptime member, 327
definition of, 326
pr_stime member, 327
definition of, 326
pr_stoptime member, 327
definition of, 326
pr_sysc member, 327
definition of, 326
prt STREAMS module, 534
pr_term member, 327
definition of, 326
pr_tftime member, 327
definition of, 326
pr_tstamp member, 326
definition of, 326
pr_ttime member, 327
definition of, 326
prusage structure, 326, 328
definition of, 326
pr_utime member, 327
definition of, 326
pr_vctx member, 327
definition of, 326
pr_wtime member, 327
definition of, 326
ps program, 325, 334, 641, 676, 693, 700, 760, 821, 973, 1019, 1142, 1144
pseudo file system, definition of, 156
pseudo terminal, 997-1034
definition of, 502, 997
master, 998-1000, 1005-1007, 1009, 1011, 1014, 1016, 1019, 1025-1026, 1029, 1033
master, definition of, 997
opening BSD-style, 1004-1005
opening SVR4-style, 1005-1009
packet mode, 1026-1032
remote mode, 1025-1026
signal generation, 1033
slave, 998-999, 1001, 1005-1007, 1009, 1011, 1014, 1019, 1025-1026, 1029-1030, 1032-1034, 1152
slave, definition of, 997
window size change, 1033
P_SID constant, 733
psiginfo function, 798-799
definition of, 798
psignal function, 797-799
definition of, 797
psinfo file, 324-325
psysinfo macro, 279
P_TASKID constant, 733
ptem STREAMS module, 534, 998-999, 1008, 1025
pthread library, 187
pthread_attr_destroy function, 981
pthread_attr_init function, 981
pthread_attr_setdetachstate function, 981
pthread_attr_setscope function, 981
pthread_attr_setstacksize function, 981
PTHREAD_CANCEL_DISABLE constant, 983
PTHREAD_CANCEL_ENABLE constant, 991
pthread_cleanup_pop function, 991
pthread_cleanup_push function, 991
pthread_cond_signal function, 980
pthread_cond_wait function, 983
pthread_create function, 188, 190, 953, 981-982
PTHREAD_CREATE_DETACHED constant, 981
PTHREAD_DESTRUCTOR_ITERATIONS constant, 288
pthread_exit function, 605, 986
pthread_join function, 188, 190, 953, 977, 982
PTHREAD_KEYS_MAX constant, 288
pthread_mutex_lock function, 980, 983
pthread_mutex_unlock function, 980, 983
pthreads, 49, 51, 187, 395, 633, 735, 1154
PTHREAD_SCOPE_PROCESS constant, 982
PTHREAD_SCOPE_SYSTEM constant, 981-982
pthread_self function, 188, 190, 984, 987, 991
pthread_setcancelstate function, 983, 990-991
pthread_setconcurrency function, 188, 190
PTHREAD_STACK_MIN constant, 289, 981-982
PTHREAD_THREADS_MAX constant, 289
ptime program, 205
ptm STREAMS module, 998-999
ptm_open function, 1010
source code, 1007
P_tmpdir constant, 108-109
pts STREAMS module, 998-999
ptsname function, 1005-1009
definition of, 1006
pts_open function, 1010
source code, 1008
pty program, 1001-1003, 1011-1026, 1152
source code, 1012, 1015, 1024
pty_fork function, 1002, 1009-1011, 1014, 1022, 1033-1034
definition of, 1009
source code, 1010
P_UID constant, 733
PUNLOCK constant, 575
putc function, 165, 191, 195, 198-199
definition of, 165
putchar function, 15, 165-166, 191
definition of, 165
putchar_unlocked function, 191
definition of, 191
putc_unlocked function, 191, 195
definition of, 191
putenv function, 611-613
definition of, 612
putmntent function, 425
definition of, 425
putmsg function, 525-529, 534, 537, 753, 808-812
definition of, 528
putpmsg function, 525-529, 534, 537, 753
definition of, 528
putpwent function, 243, 273
definition of, 243
puts function, 167
definition of, 167
putspent function, 249-250, 273
definition of, 250
pututxline function, 266-267
definition of, 266
putvfsent function, 431-432
definition of, 431
putw function, 166
definition of, 165
pw_age member, 237
definition of, 237
pw_comment member, 237
definition of, 237
<pwd.h> header, 237
pw_dir member, 238
definition of, 237
pw_gecos member, 237
definition of, 237
pw_gid member, 237
definition of, 237
pw_name member, 237
definition of, 237
pw_passwd member, 237
definition of, 237
pwrite function, 132-134, 753
definition of, 132
pw_shell member, 238
definition of, 237
pw_uid member, 237
definition of, 237
Q
qsort function, 68, 456, 458
Quarterman, John, 1155
quit member, 401
definition of, 401
QUIT terminal character, 469-470, 472, 481, 690
R
race condition, 648-652
definition of, 648
race hazard, see race condition
radix, definition of, 87
Rago, Stephen, 159, 524, 533, 1156
raise function, 704, 729, 732, 755-757, 777, 788-789, 794, 1018
definition of, 732
RANDOM environment variable, 656
raw mode terminal I/O, 463
definition of, 463
rbuf member, 956-957, 960-961, 974
definition of, 955
rc script, definition of, 680
RCPRIV_BASIC constant, 306, 308
RCPRIV_PRIVILEGED constant, 305-306
RCPRIV_SYSTEM constant, 306
rctladm program, 309
rctlblk structure, 303-304
rctlblk_get_enforced_value function, 306-307, 312-313
definition of, 307
rctlblk_get_firing_time function, 310, 315
definition of, 310
rctlblk_get_global_action function, 309, 312-313
definition of, 309
rctlblk_get_global_flags function, 307, 312-313
definition of, 307
rctlblk_get_local_action function, 309, 315
definition of, 309
rctlblk_get_local_flags function, 307-308, 315
definition of, 307
rctlblk_get_privilege function, 306, 312-313
definition of, 306
rctlblk_get_recipient_pid function, 310, 312
definition of, 310
rctlblk_get_value function, 306-307, 312-313
definition of, 307
rctlblk_set_local_action function, 309-310, 317
definition of, 309
rctlblk_set_local_flags function, 307-308
definition of, 307
rctlblk_set_privilege function, 306
definition of, 306
rctlblk_set_value function, 306-307, 317
definition of, 307
rctlblk_size function, 303-304, 312, 317
definition of, 304
RCTL_DELETE constant, 305
RCTL_FIRST constant, 304
RCTL_GLOBAL_CPU_TIME constant, 308
RCTL_GLOBAL_DENY_ALWAYS constant, 308-309, 318
RCTL_GLOBAL_DENY_NEVER constant, 308-309
RCTL_GLOBAL_FILE_SIZE constant, 308
RCTL_GLOBAL_INFINITE constant, 308
RCTL_GLOBAL_LOWERABLE constant, 305-306, 308
RCTL_GLOBAL_NOACTION constant, 309
RCTL_GLOBAL_NOBASIC constant, 308
RCTL_GLOBAL_NOLOCALACTION constant, 308
RCTL_GLOBAL_SYSLOG constant, 309
RCTL_GLOBAL_UNOBSERVABLE constant, 308
RCTL_INSERT constant, 305
RCTL_LOCAL_DENY constant, 305, 309, 318
RCTL_LOCAL_MAXIMAL constant, 308
RCTL_LOCAL_NOACTION constant, 309
RCTL_LOCAL_SIGNAL constant, 309-310, 318
RCTL_NEXT constant, 304
RCTL_REPLACE constant, 305, 318
RCTL_USAGE constant, 304
rctl_walk function, 311, 315
definition of, 311
read function, 13-15, 125, 128, 131-135, 137, 152, 155, 157, 191, 196-197, 199, 324-326, 329, 357, 373, 389, 494, 497, 501, 508, 510, 512-513, 521-524, 526, 530-531, 534-538, 542, 544, 546, 548, 553, 562, 567, 579, 675, 698, 724, 726, 740, 753, 833-834, 838-839, 850-851, 853, 855, 857-859, 862, 920, 922, 931, 933, 935, 938, 947, 975, 1015, 1026-1027, 1122-1123, 1148
definition of, 132
read mode, STREAMS, 534-536
read, scatter, 553
readdir function, 9-10, 389, 394-396, 399, 492-493, 593, 1147
definition of, 394
readdir_r function, 394-395
definition of, 394
reading
a character, 164
directories, 393-403
passwords, 250-256
readlink function, 382, 387, 389
definition of, 387
readn function, 134, 1122-1124
definition of, 134
source code, 1123
readpass function, 495
readv function, 286, 553-556, 724, 753
definition of, 553
real group ID, 23, 231-233, 341, 343, 360-361, 365, 632, 653
definition of, 23
real time, definition of, 28
real user ID, 22, 227-231, 233-234, 341, 343, 360-361, 365, 632, 653, 678
definition of, 22
realloc function, 98-104, 886, 889, 906, 917-918
definition of, 98
realpath function, 385-387
definition of, 386
reboot function, 1054
record locking, 127, 511-522
advisory, 521-522
definition of, 511
inheritance, 519-521
mandatory, 521-522
release, 519-521
using fcntl function, 513-516
using lockf function, 517
recursion, see recursion
recv function, 753
recv_fd function, 929-931, 934, 944, 950
definition of, 929
source code, 931
recvfrom function, 753
recvmsg function, 753
red zone, 105
definition of, 105
RE_DUP_MAX constant, 287
_REENTRANT, 954
reentrant functions, 725-728
definition of, 725
register variables, 623-626
relative pathname, definition of, 8
release member, 276, 278
definition of, 276
reliable signals, 718-719
definition of, 718
remote mode, pseudo terminal, 1025-1026
definition of, 1025
remote procedure call, see RPC
definition of, 951
remove function, 380-382, 389
definition of, 380
removing directories, 392-393
rename function, 380-382, 389, 591, 726
definition of, 381
renameat function, 595
definition of, 595
reporting, error, 117-119
REPRINT terminal character, 469-470, 472, 480, 483, 496
resetmnttab function, 421, 424-425
definition of, 425
resolvepath function, 385-386
definition of, 385
resolving symbolic links, 385-387
resource control, 302-319
actions, 309-310
flags, 307-308
privilege level, 306
process.max-address-space, 303, 316
process.max-core-size, 303
process.max-cpu-time, 303
process.max-data-size, 303
process.max-file-descriptor, 303, 316, 318
process.max-file-size, 303
process.max-stack-size, 303
project.cpu-shares, 303
task.max-cpu-time, 303
task.max-lwps, 303
values, 306-307
resource limits
per-process, 297-302, 626
system, 282-297, 626
resource usage, 319-334
using /proc, 325-334
return value from system function, 782-784
revents member, 543-544, 547, 948, 1150
definition of, 543
rewind function, 185, 421, 429-430, 455
definition of, 185
rewinddir function, 395-396
definition of, 395
rindex function, 1051, 1053
definition of, 1051
Ritchie, Dennis, 47, 159, 171, 1119, 1155
rlim_cur member, definition of, 299
RLIM_INFINITY constant, 299-301
rlimit structure, 299
definition of, 299
RLIMIT_AS constant, 299, 301
RLIMIT_CORE constant, 299, 301, 708
RLIMIT_CPU constant, 299, 301
RLIMIT_DATA constant, 299, 301
RLIMIT_FSIZE constant, 299-301
RLIMIT_NOFILE constant, 299-302, 818, 1054
RLIMIT_STACK constant, 299-301
RLIMIT_VMEM constant, 299-301
rlim_max member, definition of, 299
RLIM_SAVED_CUR constant, 300
RLIM_SAVED_MAX constant, 300
rlogin program, 1026
rm program, 873, 962
rmdir function, 379-380, 382, 388-389, 393, 595, 726
definition of, 393
RMSGD constant, 536
RMSGN constant, 536
RNORM constant, 536
Robinson, David, xxxv
R_OK constant, 365
root directory, 11-12, 654
RPC (remote procedure call), 951-953
RPROTDAT constant, 536
RPROTDIS constant, 536
RPROTNORM constant, 536
rsh program, 224, 680
RS_HIPRI constant, 528-530
rsize member, 956-957, 960, 974
definition of, 955
rstchown variable, 371
RTSIG_MAX constant, 287
Ruduff, Andrew, 556, 813, 829, 927, 1156
ru_idrss member, 324
definition of, 323
ru_inblock member, 324
definition of, 323
ru_isrss member, 324
definition of, 323
ru_ixrss member, 324
definition of, 323
ru_majflt member, 324
definition of, 323
ru_maxrss member, 324
definition of, 323
ru_minflt member, 324
definition of, 323
ru_msgrcv member, 324
definition of, 323
ru_msgsnd member, 324
definition of, 323
runat program, 590
runaway process, definition of, 704
ru_nivcsw member, 324
definition of, 323
RUN_LVL constant, 262, 266
ru_nsignals member, 324
definition of, 323
ru_nswap member, 324
definition of, 323
ru_nvcsw member, 324
definition of, 323
ru_oublock member, 324
definition of, 323
rusage structure, 323-324, 646
definition of, 323
RUSAGE_CHILDREN constant, 323
RUSAGE_SELF constant, 323
ru_stime member, 323
definition of, 323
ru_utime member, 323
definition of, 323
S
SAF (Service Access Facility), 678
sa_flags member, 752-753, 757
definition of, 752
sa_handler member, 752-753
definition of, 752
Salus, Peter, 45, 1156
sa_mask member, 753
definition of, 752
SA_NOCLDSTOP constant, 754
SA_NOCLDWAIT constant, 323, 754, 759
SA_NODEFER constant, 753, 759
Santa Cruz Operation, see SCO
SA_ONSTACK constant, 653, 753, 793-796
SA_RESETHAND constant, 753, 759
SA_RESTART constant, 753, 757, 759
sa_sigaction member, 752-753
definition of, 752
SA_SIGINFO constant, 752-754, 758, 798-799, 803
saved
set-group-ID, 231-233, 360-361, 632, 653
set-user-ID, 227-228, 231, 233-234, 287, 360-361, 632, 653, 676
save-text bit, see sticky bit
SA_WAITSIG constant, 754
Saxe, Jim, 77
S_BANDURG constant, 550-551
SBLOCK constant, 449, 456
SBOFF constant, 449
sbrk function, 31, 103, 616, 618
definition of, 618
SBSIZE constant, 449, 456
_SC_2_C_BIND constant, 284
_SC_2_C_DEV constant, 284
_SC_2_CHAR_TERM constant, 284
_SC_2_C_VERSION constant, 284
_SC_2_FORT_DEV constant, 284
_SC_2_FORT_RUN constant, 284
_SC_2_LOCALEDEF constant, 284
_SC_2_SW_DEV constant, 284
_SC_2_UPE constant, 284
_SC_2_VERSION constant, 284
_SC_AIO_LISTIO_MAX constant, 284
_SC_AIO_MAX constant, 284
_SC_AIO_PRIO_DELTA_MAX constant, 284
scanf function, 34-35, 64, 170, 172-173, 347
definition of, 172
_SC_ARG_MAX constant, 285
_SC_ASYNCHRONOUS_IO constant, 285
_SC_ATEXIT_MAX constant, 285, 291, 607
scatter read, 553
_SC_AVPHYS_PAGES constant, 285, 291-292
_SC_BC_BASE_MAX constant, 285
_SC_BC_DIM_MAX constant, 285
_SC_BC_SCALE_MAX constant, 285
_SC_BC_STRING_MAX constant, 285
_SC_CHILD_MAX constant, 285, 637
_SC_CLK_TCK constant, 285, 321
_SC_COLL_WEIGHTS_MAX constant, 285
_SC_CPUID_MAX constant, 285, 291
sccs program, 4
_SC_DELAYTIMER_MAX constant, 285
_SC_EXPR_NEST_MAX constant, 285
_SC_FSYNC constant, 285
_SC_GETGR_R_SIZE_MAX constant, 257, 259, 261, 285
_SC_GETPW_R_SIZE_MAX constant, 286
SCHED_FIFO constant, 654
SCHED_IA constant, 654
SCHED_RR constant, 654
Schendel, Karl, xxxv
_SC_IOV_MAX constant, 286
_SC_JOB_CONTROL constant, 286
_SC_LINE_MAX constant, 286
_SC_LOGIN_NAME_MAX constant, 286
_SC_LOGNAME_MAX constant, 286
_SC_MAPPED_FILES constant, 286
_SC_MAXPID constant, 286
_SC_MEMLOCK constant, 286
_SC_MEMLOCK_RANGE constant, 286
_SC_MEMORY_PROTECTION constant, 286
_SC_MESSAGE_PASSING constant, 286
_SC_MQ_OPEN_MAX constant, 286
_SC_MQ_PRIO_MAX constant, 286
_SC_NGROUPS_MAX constant, 286
_SC_NPROCESSORS_CONF constant, 287, 292
_SC_NPROCESSORS_MAX constant, 287, 291
_SC_NPROCESSORS_ONLN constant, 287, 292
SCO (Santa Cruz Operation), 339, 1156
_SC_OPEN_MAX constant, 287
SCP (Source Compatibility Package), 48, 1047-1055
_SC_PAGESIZE constant, 287, 291-292, 296, 565, 1054
_SC_PAGE_SIZE constant, 287, 296, 565
_SC_PASS_MAX constant, 287
_SC_PHYS_PAGES constant, 287, 291-292
_SC_PRIORITIZED_IO constant, 287
_SC_PRIORITY_SCHEDULING constant, 287
_SC_REALTIME_SIGNALS constant, 287
_SC_RE_DUP_MAX constant, 287
script program, 997, 1000-1001, 1019, 1033, 1152
source code, 1019, 1152
_SC_RTSIG_MAX constant, 287
_SC_SAVED_IDS constant, 287
_SC_SEMAPHORES constant, 288
_SC_SEM_NSEMS_MAX constant, 287
_SC_SEM_VALUE_MAX constant, 287
_SC_SHARED_MEMORY_OBJECTS constant, 288
_SC_SIGQUEUE_MAX constant, 288
_SC_STACK_PROT constant, 288
_SC_STREAM_MAX constant, 288
_SC_SYNCHRONIZED_IO constant, 288
_SC_THREAD_ATTR_STACKADDR constant, 288
_SC_THREAD_ATTR_STACKSIZE constant, 288
_SC_THREAD_DESTRUCTOR_ITERATIONS constant, 288, 291
_SC_THREAD_KEYS_MAX constant, 288, 291
_SC_THREAD_PRIO_INHERIT constant, 288
_SC_THREAD_PRIO_PROTECT constant, 288
_SC_THREAD_PRIORITY_SCHEDULING constant, 288
_SC_THREAD_PROCESS_SHARED constant, 289
_SC_THREADS constant, 289
_SC_THREAD_SAFE_FUNCTIONS constant, 289
_SC_THREAD_STACK_MIN constant, 289
_SC_THREAD_THREADS_MAX constant, 289, 291
_SC_TIMER_MAX constant, 289
_SC_TIMERS constant, 289
_SC_TTY_NAME_MAX constant, 289
_SC_TZNAME_MAX constant, 289
_SC_VERSION constant, 289
_SC_XBS5_ILP32_OFF32 constant, 289
_SC_XBS5_ILP32_OFFBIG constant, 289
_SC_XBS5_LP64_OFF64 constant, 289
_SC_XBS5_LPBIG_OFFBIG constant, 289
_SC_XOPEN_CRYPT constant, 290
_SC_XOPEN_ENH_I18N constant, 290
_SC_XOPEN_LEGACY constant, 290
_SC_XOPEN_REALTIME constant, 290
_SC_XOPEN_REALTIME_THREADS constant, 290
_SC_XOPEN_SHM constant, 290
_SC_XOPEN_UNIX constant, 290
_SC_XOPEN_VERSION constant, 290, 667-668, 780, 843-844
_SC_XOPEN_XCU_VERSION constant, 290
searching
byte arrays, 93
strings, 74-80
SECONDS environment variable, 656
sector, definition of, 418
secure C programming, 337-350
sed program, xxxvi, 663, 1155
seek time, see access time
SEEK_CUR constant, 129, 144, 185, 514, 552
seekdir function, 395-396
definition of, 395
SEEK_END constant, 129, 144, 185, 514, 552, 1128
SEEK_SET constant, 129, 144, 185, 514, 520, 523, 552, 823, 1132
SEGV_ACCERR constant, 758
SEGV_MAPERR constant, 758
select function, 539-544, 549, 599, 742, 771, 773, 1015, 1140
definition of, 539
sem structure, 891
definition of, 891
SEM_A constant, 872, 897, 925
semaphore
definition of, 867, 890
System V IPC, 890-907
sema_post function, 726
sem_base member, 891
definition of, 891
sem_binary member, definition of, 891
sembuf structure, 893
definition of, 893
sem_close function, 653
sem_ctime member, definition of, 891
semctl function, 893, 895-904, 906, 925
definition of, 895
sem_flg member, 893-894
definition of, 893
semget function, 868-870, 872, 892-893, 897-900, 902-903, 925
definition of, 892
semid_ds structure, 891-892, 895-896
definition of, 891
semids function, 893, 904-907
definition of, 904
semncnt member, 895
definition of, 891
semncnt_cv member, definition of, 891
sem_nsems member, definition of, 891
SEM_NSEMS_MAX constant, 287
sem_num member, 893
definition of, 893
semop function, 893-895, 903, 924, 926
definition of, 893
sem_op member, 893-894
definition of, 893
sem_otime member, 895
definition of, 891
sem_perm member, definition of, 891
sempid member, 895
definition of, 891
sem_post function, 726
SEM_R constant, 872, 897, 925
semtimedop function, 893-895
definition of, 893
semun union, 895
definition of, 895
SEM_UNDO constant, 893-894, 901-902, 904, 924, 926
semval member, 895-896
definition of, 891
SEM_VALUE_MAX constant, 287
semzcnt member, 895
definition of, 891
semzcnt_cv member, definition of, 891
send function, 753
send_err function, 929-932, 936, 950
definition of, 929
source code, 930
send_fd function, 929-932, 936, 950
definition of, 929
source code, 930
sendfile function, 556-562
definition of, 556
sendfilev function, 556-562
definition of, 559
sendfilevec structure, 560
definition of, 560
sendmail program, 805, 834, 836, 840
sendmsg function, 753
sendto function, 753
seq member, definition of, 871
seq_no member, definition of, 809
S_ERROR constant, 550
server
concurrent, 863-865
iterative, 863-865
Service Access Facility, see SAF
session, 684-686
definition of, 684
ID, 263, 632, 654, 684, 688, 693
leader, 685-687
set, signal, 746-747
SETACL constant, 582, 588
SETALL constant, 896, 898-899
setbuf function, 192-194, 199, 854, 1054
definition of, 193
setbuffer function, 193-194, 1054
definition of, 194
setcontext function, 797
setegid function, 232, 342
definition of, 232
seteuid function, 228-231, 233, 342
definition of, 228
SETFL constant, 1152
set_fsflag function, 151-152, 509-510, 546, 548
source code, 151, 1121
setgid function, 232, 678, 726
definition of, 232
setgrent function, 259-260
definition of, 259
set-group-ID, 341, 348-349, 360-361, 365, 369, 371, 432, 440, 632, 653, 670, 708, 1006
saved, 231-233, 360-361, 632, 653
setgroups function, 235-236
definition of, 235
sethostname function, 280-282, 336, 1054, 1133
definition of, 282
setitimer function, 708, 710, 713, 727, 742-745, 803, 1052-1053
definition of, 742
setjmp function, 619-626, 736-737, 740-742, 745, 762, 764, 768
definition of, 621
_setjmp function, 625
definition of, 625
setlinebuf function, 193-194, 1054
definition of, 194
setlocale function, 222, 1037-1038, 1043, 1045
definition of, 1037
setlogmask function, 814-816
definition of, 814
setpgid function, 683-684, 693, 726
definition of, 683
setpgrp function, 684
definition of, 684
setpriority function, 1054
setpwent function, 240-242
definition of, 241
setrctl function, 305-308, 310, 317-318
definition of, 305
setregid function, 232-234, 1054
definition of, 233
setreuid function, 231, 233, 1054
definition of, 231
setrlimit function, 291, 298-300, 305, 340, 626, 818
definition of, 299
setsid function, 683, 685-686, 693, 726, 807, 817-819, 1010-1011, 1145
definition of, 686
setspent function, 247-249
definition of, 247
settimeofday function, 205-206
definition of, 206
setting
terminal attributes, 474-475
the current time, 205-206
the file offset, 184-185
settle time, definition of, 418
setuid function, 228-231, 233, 360, 653, 726
definition of, 228
set-user-ID, 228, 230, 341, 343, 348-349, 360-361, 365, 367, 371, 432, 440, 632, 653, 670, 708, 932, 937, 970, 1005, 1007
saved, 227-228, 231, 233-234, 287, 360-361, 632, 653, 676
setusershell function, 270, 272
definition of, 270
setutxent function, 264-266
definition of, 264
SETVAL constant, 895, 925
setvbuf function, 192-196, 198-199, 1054
definition of, 193
sfv_fd member, 560
definition of, 560
SFV_FD_SELF constant, 557-561
sfv_flag member, 560
definition of, 560
sfv_len member, 560
definition of, 560
sfv_off member, 560
definition of, 560
SGID, see set-group-ID
sh program, 6, 238, 270, 496, 611, 670, 693
shadow password file, 243-250
definition of, 243
<shadow.h> header, 244
S_HANGUP constant, 550
SHARED constant, 577
shared memory
definition of, 867, 908
System V IPC, 908-919
shared objects, 616-617
sharing, file, 136-139, 635-637
shebang, definition of, 662
shell
Bourne, 6-7, 783, 1155
C, 6-7
definition of, 6
Korn, 6-7, 49, 149, 666, 783, 1148
login, 237
script, definition of, 6
SHELL environment variable, 611, 678, 1019
shells file, 270-273
S_HIPRI constant, 550
shm_amp member, 908
definition of, 908
shmat function, 909-910, 914-915
definition of, 910
shm_atime member, definition of, 908
shm_cnattch member, definition of, 908
shm_cpid member, definition of, 908
shm_ctime member, definition of, 908
shmctl function, 911-917, 919
definition of, 911
shmdt function, 911, 913-915
definition of, 911
shm_dtime member, definition of, 908
shmget function, 868-870, 872, 909-910, 913-916
definition of, 909
shmid_ds structure, 908-909, 911, 917
definition of, 908
shmids function, 909, 917-919
definition of, 917
SHMLBA constant, 910
shm_lkcnt member, definition of, 908
SHM_LOCK constant, 912
shm_lpid member, definition of, 908
shm_nattch member, definition of, 908
SHM_PAGEABLE constant, 910
shm_perm member, definition of, 908
SHM_R constant, 872, 913
SHM_RDONLY constant, 910
SHM_RND constant, 910
shm_segsz member, definition of, 908
SHM_SHARE_MMU constant, 910
SHM_UNLOCK constant, 912
SHM_W constant, 872, 913
si_addr member, 756
definition of, 755
S_IAMB constant, 364
SI_ARCHITECTURE constant, 278, 280-281
SI_ASYNCIO constant, 756-757
si_band member, 756
definition of, 755
sibling processes, definition of, 682
si_code member, 755-757
definition of, 755
SID, see session ID
sid member, definition of, 809
SI_DHCP_CACHE constant, 279-281
si_entity member, 756
definition of, 755
si_errno member, 755
definition of, 755
si_faddr member, 756
definition of, 755
si_fault member, 756
definition of, 755
S_IFBLK constant, 399, 403, 408, 414
S_IFCHR constant, 399, 403, 408, 413
si_fd member, 756
definition of, 755
S_IFDIR constant, 399, 408, 413
S_IFDOOR constant, 399, 403, 414
S_IFIFO constant, 399, 403, 408, 414
S_IFLNK constant, 356, 377, 382, 399, 414
S_IFMT constant, 359, 399, 402, 408, 413
S_IFREG constant, 399, 402, 408, 413
S_IFSOCK constant, 399, 403, 414
sig2str function, 798-802
definition of, 799
SIG2STR_MAX constant, 799, 801
SIGABRT signal, 310, 640, 674, 704, 707-708, 710, 748, 776, 803, 1146
sigaction function, 25, 716, 720, 724, 726, 729, 740, 746, 752-760, 777, 780-781, 786-787, 793-794, 796, 799, 803
definition of, 752
sigaction structure, 752, 798
definition of, 752
sigaddset function, 726, 747, 749-750, 770, 772, 775, 780, 786, 789
definition of, 746
SIGALRM signal, 704, 707-708, 726-727, 735-738, 740-742, 744, 748, 766-767, 784-785, 787, 989, 1052, 1145
sigaltstack function, 753, 792-797
definition of, 793
sigaltstack structure, 793
definition of, 793
sig_atomic_t datatype, 715, 717, 722
SIG_BLOCK constant, 747, 750, 770, 772, 775, 780, 786-787
SIGBUS signal, 564, 567, 707-708, 756, 758
SIGCANCEL signal, 707-708, 752
SIGCHLD signal, 323, 538, 648, 705, 707-709, 720, 728-729, 754-755, 757-758, 777, 779, 781-782, 787, 815, 987
SIGCLD signal, 707-709, 728-729, 754, 757
SIGCONT signal, 25, 691, 699, 707-709, 731, 787-789, 1018
sigdelset function, 726, 747, 777, 786
definition of, 746
SIG_DFL constant, 24, 299, 653, 713, 719, 752-753, 757, 790-792, 1018
sigemptyset function, 726, 746-747, 749-750, 759, 770, 772, 775, 780, 786, 789, 794, 799
definition of, 746
SIGEMT signal, 707-709
SIG_ERR constant, 26, 757, 790
sigfillset function, 726, 746-747, 777
definition of, 746
sigfpe function, 761-763
definition of, 761
SIGFPE signal, 640, 707-709, 756, 758
SIGFPE_ABORT constant, 761
SIGFPE_DEFAULT constant, 761
SIGFPE_IGNORE constant, 761
SIGFREEZE signal, 707-709
SIG_HOLD constant, 719, 752
sighold function, 721-724, 746, 748
definition of, 722
SIGHUP signal, 226, 310, 687, 698-699, 707-710, 820, 1152
SIG_IGN constant, 24, 653, 713, 719, 722, 728, 752, 790-791
sigignore function, 721-724, 746
definition of, 722
SIGILL signal, 707-708, 710, 756, 758
siginfo_t structure, 648, 743, 754-760, 798
definition of, 755
SIGINT signal, 25-26, 42, 471, 475, 480-481, 498, 500, 686, 690-691, 704, 707-710, 716, 718, 723, 737, 750-752, 768-771, 773, 777, 779, 781-783, 799, 820, 1145
SIGIO signal, 551, 707-708, 710
SIGIOT signal, 707-708, 710
sigismember function, 726, 747, 749-750, 777
definition of, 746
SIGKILL signal, 25, 310, 675, 705, 707-708, 710, 713-714, 718-719, 752, 822
siglongjmp function, 625, 742, 762-768, 776, 797
definition of, 764
SIGLOST signal, 707-708, 710
SIGLWP signal, 707-708, 710, 752
sign extension problems, 35, 38
signal function, 25, 48, 713-716, 719-721, 725, 727-730, 740, 746, 753, 757, 790
signal function definition of, 713
signal function source code, 759
<signal.h> header, 704, 746, 791, 793, 799
signals, 24-27, 703-803
accepted, definition of, 704
action, definition of, 705
alternate stack, 792-797
catching, definition of, 713
delivery, definition of, 704
disposition, definition of, 705
generation, definition of, 703
generation, pseudo terminal, 1033
handler, definition of, 24, 713
job control, 787-789
mask, definition of, 719
null, 704, 731
pending, definition of, 704
POSIX, 744-760
reliable, 718-719
set, 746-747
set, definition of, 746
software, 790-792
unreliable, 716-718
sigpause function, 721-724, 734, 746
definition of, 722
sigpending function, 718, 724, 726, 748-752, 777
definition of, 749
SIGPIPE signal, 537, 704, 707-708, 710, 832, 850, 852-853, 855, 858, 861, 865, 1147-1148
SIGPOLL signal, 550-551, 553, 707-708, 710, 758
sigprocmask function, 719, 724, 726, 736, 746-751, 770, 772, 775, 777, 780-781, 786-787, 789
definition of, 747
SIGPROF signal, 707-708, 710, 742-743, 756
SIGPWR signal, 707-708, 710-711
sigqueue function, 726, 755-757
SIGQUEUE_MAX constant, 288
SIGQUIT signal, 472, 481, 500, 686, 690-691, 707-709, 711, 716, 770-771, 777, 779, 781-783
sigrelse function, 721-724, 741, 746
definition of, 722
SIGSEGV signal, 299, 564, 567, 640, 704, 707-708, 711, 719, 756, 758, 792, 799
sigsend function, 729, 732-734, 756-757
definition of, 733
sigsendset function, 729, 732-734
definition of, 733
sigset function, 24-26, 501, 504, 698, 713, 719-720, 722-724, 728, 736-741, 745-746, 750, 753, 765, 767, 770, 772, 778, 789, 851, 859, 987-988
definition of, 719
sigsetjmp function, 625, 742, 762-768
definition of, 764
SIG_SETMASK constant, 747-751, 770, 772, 775, 777, 781
sigset_t datatype, 746
sigstack function, 792, 796-797
definition of, 796
sigstack structure, 796
definition of, 796
SIGSTKSZ constant, 793-796
SIGSTOP signal, 25, 310, 705, 707-708, 711, 713-714, 718-719, 752, 787-788
SIGSUSP signal, 481
sigsuspend function, 724, 726, 736, 746, 768-773, 786
definition of, 768
SIGSYS signal, 707-708, 711
SIGTERM signal, 310, 318, 500, 705, 707-708, 711, 715, 759, 1034
SIGTHAW signal, 707-708, 711
SIGTRAP signal, 104-105, 707-708, 711, 756, 758
SIGTSTP signal, 470, 473, 690-691, 699, 704, 707-709, 711-712, 757, 787-789, 1018
SIGTTIN signal, 690, 693-694, 699, 707-708, 712, 757, 787-788
SIGTTOU signal, 483, 691, 693, 707-708, 712, 757, 787-788
SIG_UNBLOCK constant, 747, 751, 789
SIGURG signal, 145, 550-551, 704, 707-708, 712
SIGUSR1 signal, 707-708, 713-714, 717, 720, 764, 766-768, 771, 773-774, 795, 798
SIGUSR2 signal, 707-708, 713-714, 720, 774, 798
SIGVTALRM signal, 707-708, 713, 742
sigwait function, 732, 773-775
definition of, 773
SIGWAITING signal, 707-708, 713, 752, 754
SIGWINCH signal, 503, 707-708, 713, 820, 1033-1034
SIGXCPU signal, 299, 308, 310, 707-708, 713
SIGXFSZ signal, 299, 308, 310, 707-708, 713, 756
SIGXRES signal, 310, 318, 707-708, 713, 756-758
SI_HOSTNAME constant, 277, 280-282
SI_HW_PROVIDER constant, 278-281
SI_HW_SERIAL constant, 278-282
SI_ISALIST constant, 39, 278, 280-281
SI_LWP constant, 757
SI_MACHINE constant, 278, 280-281
SI_MESGQ constant, 757
si_mstate member, 743, 756
definition of, 755
Single UNIX Specification, see SUS
Version 1, see SUSv1
Version 2, see SUSv2
Version 3, see SUSv3
SI_NOINFO constant, 755, 760
S_INPUT constant, 550
si_nsysarg member, 756
definition of, 755
si_pc member, 756
definition of, 755
si_pid member, 648, 755-756
definition of, 755
SI_PLATFORM constant, 278, 280-281
SI_QUEUE constant, 757
SI_RCTL constant, 758
SI_RELEASE constant, 278, 280-281
S_IRGRP constant, 364, 369, 414
S_IROTH constant, 364, 369, 415
S_IRUSR constant, 364, 367, 369, 414
S_IRWXG constant, 364, 369
S_IRWXO constant, 364, 369
S_IRWXU constant, 364, 369
S_ISBLK macro, 358-359, 409, 413
S_ISCHR macro, 358-359, 409, 413
S_ISDIR macro, 358-359, 397, 492
S_ISDOOR macro, 358-359, 971-972
SI_SET_HOSTNAME constant, 277, 280-281, 1054
SI_SET_SRPC_DOMAIN constant, 279-281
S_ISFIFO macro, 358-359, 830, 854
S_ISGID constant, 124, 361, 369, 393, 415
si_signo member, 648, 755-756
definition of, 755
S_ISLNK macro, 358-359
S_ISREG macro, 358-359
SI_SRPC_DOMAIN constant, 279-281
S_ISSOCK macro, 358-359
si_status member, 755
definition of, 755
si_stime member, 755
definition of, 755
S_ISUID constant, 361, 369, 415
S_ISVTX constant, 362, 369, 415
si_sysarg member, 756
definition of, 755
si_syscall member, 756
definition of, 755
SI_SYSNAME constant, 277, 281
SI_TIMER constant, 757
si_trapno member, 756
definition of, 755
si_tstamp member, 756
definition of, 755
si_uid member, 755-756
definition of, 755
SI_USER constant, 757
si_utime member, 755
definition of, 755
si_value member, 755, 757
definition of, 755
SI_VERSION constant, 278, 280-281
S_IWGRP constant, 364, 369-370, 414
S_IWOTH constant, 364, 369-370, 415
S_IWUSR constant, 364, 367, 369, 414
S_IXGRP constant, 364, 369, 415
S_IXOTH constant, 364, 369, 415
S_IXUSR constant, 364, 369-370, 414
size
file, 371-373
modifiers, conversion specification, 182-183
size program, 615, 627, 1141
Slaughter, Michael, xxxv
SL_CONSOLE constant, 809
sleep function, 119-120, 379, 392, 520, 634, 638, 645-646, 648, 673, 698, 726, 730, 735, 744, 751-752, 766, 783-787, 984, 987-988, 1052, 1143, 1145, 1148
definition of, 120
source code, 786
sleep program, 1148
SL_ERROR constant, 809-811
SL_FATAL constant, 809-810
sl_modlist member, 533
definition of, 533
sl_nmods member, 533
definition of, 533
SL_NOTE constant, 809
SL_NOTIFY constant, 809
slow system call, definition of, 507, 723
SL_TRACE constant, 809, 811
SL_TRACK constant, 810
SL_WARN constant, 809
Smallberg, David, 1046, 1157
S_MSG constant, 550
SNDPIPE constant, 537
SNDZERO constant, 537
snprintf function, 21, 171-172, 339, 933, 1124-1125
definition of, 171
__snprintf function, 21
sockets, 132
SOCK_STREAM constant, 556, 559
software group, developer system support, 4
software signal, 790-792
Solaris
1.1.2, 47
2.5, 21, 52, 331, 579, 952, 1049, 1124
2.5.1, 3, 21, 52, 331, 1124
2.6, 21, 27, 31, 33, 39, 53, 125, 147, 325, 339, 447, 538, 704, 951-952, 955, 977, 1041
7, 5, 31, 47, 53, 136, 217, 268, 334, 410, 420, 539, 576, 704, 874, 891-892, 954, 971, 977
8, 6, 47, 53-54, 72, 74, 136, 187, 217, 224, 261, 268, 341, 410, 419-420, 425, 437, 440, 459, 556, 564, 568, 704, 708, 733, 820, 824, 910, 973
9, 6, 54, 100, 126, 128, 147, 153, 187, 244, 251-252, 273, 277, 287, 291, 294, 296, 302, 394, 452, 571-572, 579, 590-591, 597, 626, 641, 667, 680, 704, 735, 756-757, 820, 844, 869, 881, 908, 920, 973-974, 1142
10, 6, 8, 31, 341, 344, 617, 633, 874, 892, 908
history of, 46-47
standards compliance, 54
Trusted, 341
x86, xxxv
Zones, 344, 426
solutions to exercises, 1127-1152
source code
availability, xxxv
miscellaneous, 1117-1125
S_OUTPUT constant, 550
Spafford, Gene, 657, 1154
SPARC International, 100, 339, 1156
sparse file, 130, 185, 357, 372-373
definition of, 130
spawn, definition of, 637
special file, 357-358, 406-409
definition of, 358, 406
special input characters, terminal, 469-473
sp_expire member, 245, 250
definition of, 244
sp_flag member, 245
definition of, 244
sp_inact member, 245, 250
definition of, 244
sp_lstchg member, 244, 250
definition of, 244
sp_max member, 244, 250
definition of, 244
sp_min member, 244, 250
definition of, 244
sp_namp member, 244
definition of, 244
sp_pwdp member, 244
definition of, 244
sprintf function, 21, 59, 91, 118, 171-172, 339, 1124
definition of, 171
sp_warn member, 245, 250
definition of, 244
spwd structure, 244-247, 249-250
definition of, 244
srchtxt program, 1037
S_RDBAND constant, 550
S_RDNORM constant, 550
Srinivasan, Raj, 168, 1156
srv_accept function, 939-940, 942-944, 947-948
definition of, 940
source code, 943
srv_listen function, 939-940, 944, 946-947
definition of, 939
source code, 941
sscanf function, 172-173, 850, 853, 859, 861
definition of, 173
SS_DISABLE constant, 793, 795-796
ss_flags member, 793
definition of, 793
ssh program, 5, 224, 680
sshd program, 680, 1000
ssignal function, 790-791
definition of, 790
SS_ONSTACK constant, 793, 795
ss_onstack member, 796
definition of, 796
ssp.a library, 1128
ssp.h header, 9, 134, 515, 1117
ssp_is_rlock macro, 516
ssp_is_wlock macro, 516
ssp_lock function, 515
source code, 515, 1122
ssp_lock_test function, 516
source code, 516
ssp_rlock function, 515
definition of, 515
ssp_rlockw function, 515
definition of, 515
ssp_tell_child function, 569, 649, 651, 774, 837, 1139
source code, 775, 838
ssp_tell_parent function, 569, 649, 774, 837, 1139
source code, 775, 838
ssp_tell_wait_fin function, 649, 774, 837
source code, 775, 838
ssp_tell_wait_init function, 569, 649, 651-652, 774, 837, 1139
source code, 775, 838
ssp_unlock function, 515
definition of, 515
ssp_wait_child function, 569, 649, 774, 837, 1139
source code, 775, 838
ssp_wait_parent function, 569, 649, 651, 774, 837, 1139
source code, 775, 838
ssp_wlock function, 515, 822-823
definition of, 515
ssp_wlockw function, 515
definition of, 515
ss_size member, 793
definition of, 793
ss_sp member, 793
definition of, 793, 796
stack, 614-615
Stallman, Richard, 49
standard error, 13, 160-161, 679
standard error functions, 1118-1121
standard input, 13, 160-161, 679
standard I/O
binary I/O, 167-168
character input, 164-165
character output, 165-166
constants, 159-160
data types, 159-160
efficiency, 194-199
file stream, 159-160
format conversion specifications, 173-183
formatted input, 172-173
formatted output, 170-172
library, 15-16, 32, 159-200
line input, 166
line output, 167
standard output, 13, 160-161, 679
standards, 47-52
Solaris compliance, 54
compiling conforming applications, 55
star program, 373
START terminal character, 469-470, 472, 481, 487
starting only one copy of a program, 821-824
stat function, 7, 40, 139, 345, 349, 355-357, 360, 370, 382, 385, 388, 390-392, 396-397, 399-401, 409, 443, 451, 492-493, 594, 616, 726, 869-870, 1136
definition of, 356
stat structure, 40, 353, 358, 361-363, 371, 377, 399-400, 407-408, 410-411, 451, 594, 854, 869, 971
definition of, 356
static linking, definition of, 562, 616
st_atime member, 357, 388, 390-391
definition of, 356
status
file stream, 168-169
flags, file, 137, 147-150
file system, 438-442
STATUS terminal character, 480
statvfs function, 438-442
definition of, 439
statvfs structure, 439
definition of, 439
st_blksize member, 357, 372
definition of, 356
st_blocks member, 357, 372
definition of, 356
st_ctime member, 357, 388, 390
definition of, 356
stderr constant, 161-162
STDERR_FILENO constant, 123, 160-161, 1010
st_dev member, 356, 407-408, 869-870
definition of, 356
stdin constant, 15, 161-162, 172, 852, 862-863, 1121
STDIN_FILENO constant, 14-15, 123, 134, 160-161, 474, 476, 486, 501-502, 504, 510, 532, 546, 548, 698, 835, 850-851, 934-935, 1010, 1012, 1014-1015, 1024, 1027, 1031
<stdio.h> header, 15, 109, 160-161, 226
<stdlib.h> header, 96, 100, 103
stdout constant, 15, 161-162, 170, 698, 849, 851-852, 862-863, 1121
STDOUT_FILENO constant, 15, 123, 134, 160-161, 510, 532, 546, 548-549, 634, 650-651, 850-851, 933-935, 975, 1010, 1015, 1024, 1028
Steele, Guy, 77
Stevens, Rich, xxxv, 556, 813, 829, 867, 920, 927, 952, 1000, 1156
st_fstype member, 357, 411
definition of, 356
st_gid member, 357, 361, 363-364
definition of, 356
sticky bit, 360-362, 369, 381
stime function, 205-206, 209
definition of, 205
st_ino member, 356, 407, 869-870
definition of, 356
st_mode member, 356, 358-362, 364, 377, 382, 408, 854, 971
definition of, 356
st_mtime member, 357, 388, 390-391
definition of, 356
st_nlink member, 357, 377
definition of, 356
ST_NOSUID constant, 440-441
ST_NOTRUNC constant, 440-441
STOP terminal character, 469-470, 472-473, 481, 487
str2sig function, 798-802
definition of, 799
strace program, 809, 811
Strang, John, 505, 1156-1157
strbuf structure, 527, 529, 1029
definition of, 527
strcadd function, 84-85
definition of, 85
strcasecmp function, 70-71
definition of, 70
strcat function, 71-73, 339
definition of, 71
etymology of, 71
strccpy function, 84-85
definition of, 85
strchr function, 74-78, 1051, 1053
definition of, 75
strcmp function, 68-70, 250, 493, 1044-1045
definition of, 68
strcoll function, 1037, 1044-1045
definition of, 1044
strcpy function, 73-74, 339
definition of, 73
strcspn function, 66-67
definition of, 67
st_rdev member, 357, 407-408
definition of, 356
ST_RDONLY constant, 440-441
strdup function, 80-81, 99
definition of, 81
streadd function, 85
definition of, 85
stream head, definition of, 524
STREAM_MAX constant, 288
STREAMS
driver, definition of, 524
ioctl operations, 533-534
logging, 807-811
messages, 526-531
read mode, 534-536
write mode, 536-537
STREAMS I/O, 134, 153, 159, 524-537
using read and write, 534-537
STREAMS module
connld, 940-942, 944
definition of, 524
ip, 534
ldterm, 464, 534, 997-999, 1008, 1025-1026
pckt, 998-999, 1026
prt, 534
ptem, 534, 998-999, 1008, 1025
ptm, 998-999
pts, 998-999
tcp, 534
ttcompat, 534, 998-999, 1008-1009
strecpy function, 85
definition of, 85
strerr program, 809, 811
strerror function, 21-22, 117-118, 797, 1121
definition of, 118
strfind function, 79-80
definition of, 79
strftime function, 209, 214-221, 1037, 1045
definition of, 214
string creation operator (#), 279, 300
<string.h> header, 70
strings
comparing, 67-71
concatenating, 71-73
converting numbers to, 91
converting to numbers, 87-91
copying, 73-74
duplicating, 80-81
manipulating, 65-91
searching, 74-80
tokenizing, 81-84
transforming, 84-87
<strings.h> header, 70
strip program, 1141
strlcat function, 71-73
definition of, 71
strlcpy function, 73-74
definition of, 73
strlen function, 66, 72, 739
definition of, 66
str_list structure, 533
definition of, 533
str_mlist structure, 533
definition of, 533
strncasecmp function, 70-71
definition of, 70
strncat function, 71-74, 339
definition of, 71
strncmp function, 68-70
definition of, 68
strncpy function, 73-74, 339
definition of, 73
<stropts.h> header, 533, 544, 550
strpbrk function, 78-79
definition of, 78
strptime function, 209, 217-221
definition of, 218
_STRPTIME_DONTZERO constant, 219-220
strrchr function, 74-78, 1051, 1053
definition of, 75
strrecvfd structure, 930
definition of, 930
strrspn function, 78-79
definition of, 78
strsignal function, 642, 797, 1124
definition of, 797
strspn function, 66-67
definition of, 67
strstr function, 79-80
definition of, 79
strtod function, 90-91, 1037
definition of, 90
strtok function, 43, 81-83, 937
definition of, 81
strtok_r function, 81-83
definition of, 81
strtol function, 87-90, 121
definition of, 87
strtoll function, 87-89, 1104
definition of, 87
strtoul function, 87-89
definition of, 87
strtoull function, 87-89
definition of, 87
strtrns function, 85-87, 848
definition of, 86
structured programming, goto in, 619
strxfrm function, 68, 1037, 1044-1045
definition of, 1044
st_size member, 357, 371-372, 416
definition of, 356
stty program, 473, 475, 484, 486, 496, 505, 691, 1139
st_uid member, 357, 361-362, 364
definition of, 356
su program, 343, 576, 813
SUID, see set-user-ID
Sun Microsystems, xxxvi, 3, 762, 1025, 1046, 1157
SunOS, xxxiv, 45-47, 237, 324, 465, 1038, 1047-1049
3.2, 45
3.5 PSR, 46
4.1.1, 375
4.1.4, 47
SUNWarc package, 4
SUNWarcx package, 4
SUNWbtool package, 4
SUNWbtoox package, 4
SUNWdplx package, 4
SUNWhea package, 4
SUNWlibCx package, 4
SUNWlibm package, 4
SUNWlibms package, 4
SUNWlmsx package, 4
SUNWlmx package, 4
SUNWolinc package, 4
SUNWscpu package, 1048
SUNWscpux package, 4, 1048
SUNWsprot package, 4
SUNWsprox package, 4
SUNWsra package, 1048
SUNWsrh package, 1048
SUNWtoo package, 4
SUNWtoox package, 4
SUNWxcu4 package, 667, 844
SUNWxglh package, 4
SUNWxwinc package, 4
superblock, 444-450
definition of, 375
superuser, definition of, 22
supplementary group ID, 23-24, 234-236, 256, 365, 369
definition of, 23, 234
SUS (Single UNIX Specification), 42, 50-52, 55, 276, 282, 382, 461, 625, 725, 728, 779, 1053, 1157
SUSP terminal character, 469-470, 473, 481, 496, 690
suspending a process, 119-120
SUSv1, 50-51, 54-55, 173
SUSv2, 49, 51, 54-55, 465
SUSv3, 51-52, 54-55, 637, 1049, 1104
SVID (System V Interface Definition), 48, 54-55, 725-726
SVR3, 46, 703
SVR3.2, 46, 48
SVR4, 4, 46, 48, 448, 451, 461, 703, 718, 724, 744, 746, 830, 1005, 1038, 1047, 1153
SVR4-style pseudo terminal, opening, 1005-1009
swapcontext function, 797
S_WRBAND constant, 550
S_WRNORM constant, 550
SWTCH terminal character, 469-470, 473, 480
symbolic link, 39, 356, 377-378, 381-387, 399, 406
definition of, 381
resolving, 385-387
symlink function, 387, 389, 591
definition of, 387
sync function, 409-410, 458
definition of, 410
sync program, 410
synchronous function call, definition of, 952
<sys/acct.h> header, 671
sysconf function, 98, 257, 259, 261, 283-292, 321, 334, 565, 607, 637, 667-668, 726, 780, 843-844, 1054
definition of, 283
<sys/conf.h> header, 153, 533
<sys/devpoll.h> header, 545
<sys/errno.h> header, 21, 117
<sys/file.h> header, 136
<sys/fs/ufs_fs.h> header, 444
sysinfo function, 39, 277-282, 1054, 1132
definition of, 277
<sys/int_fmtio.h> header, 34
<sys/ipc.h> header, 871, 875
<sys/loadavg.h> header, 335
syslog facility, 812-817
definition of, 813
syslog function, 309, 344, 347, 811-812, 814-817, 819, 825, 1119, 1121, 1146
definition of, 814
syslog severity, definition of, 813
syslogd program, 809, 813
<sys/msacct.h> header, 743
<sys/msg.h> header, 871, 881
sysname member, 276-277
definition of, 276
<sys/old_procfs.h> header, 331
<sys/param.h> header, 8, 160, 458
<sys/procfs.h> header, 326, 331
<sys/select.h> header, 539
<sys/sem.h> header, 871
<sys/shm.h> header, 871
<sys/siginfo.h> header, 743
<sys/stat.h> header, 358-359, 364
<sys/stropts.h> header, 533
system
identification, 276-282
information, 276-282
resource limits, 282-297, 626
time, definition of, 27
system call, 28-31
definition of, 28
interrupted, 25, 723-724, 986-989
system function, 320-321, 347, 349, 661, 666-670, 776-784, 839-840, 1143, 1148
definition of, 666
return value from, 782-784
source code, 669, 780
System V Interface Definition, see SVID
System V IPC, 867-926
identifier, 867-868
identifier, definition of, 867
key, 867-868
message queue, 873-890
objects, creating, 870-871
objects, opening, 870-871
performance comparisons, 919-924
permissions, 871-873
semaphore, 890-907
shared memory, 908-919
<sys/types.h> header, 33, 153, 539, 868, 875, 1140
<sys/ucontext.h> header, 754
<sys/user.h> header, 136
<sys/vnode.h> header, 136
T
TAB0 constant, 483
TAB1 constant, 483
TAB2 constant, 483
TAB3 constant, 483
TABDLY constant, 465, 467, 482-483
tail program, 1002
talk program, 537-538
Tanenbaum, Andy, xxxv, 47, 1157
tar program, 49, 373, 581, 591
task.max-cpu-time resource control, 303
task.max-lwps resource control, 303
tcdrain function, 468, 486, 488, 712, 726
definition of, 486
tcflow function, 468, 486-487, 712, 726, 1030-1032
definition of, 487
tcflush function, 468, 486-487, 712, 726, 1031-1032
definition of, 487
tcgetattr function, 468, 473-476, 485-486, 489-490, 495, 499, 726, 1014, 1030-1031
definition of, 474
tcgetpgrp function, 468, 688, 726, 1144
definition of, 688
tcgetsid function, 468, 688-689
definition of, 689
TCIFLUSH constant, 487
TCIOFF constant, 487, 1030-1031
TCIOFLUSH constant, 487, 1031-1032
TCION constant, 487, 1030-1031
TCOFLUSH constant, 487
TCOOFF constant, 487, 1030-1031
TCOON constant, 487, 1030-1032
tcp STREAMS module, 534
TCSADRAIN constant, 474, 1031
TCSAFLUSH constant, 475, 495, 499-500, 1031
TCSANOW constant, 474, 476, 486, 1010, 1014, 1031
TCSBRK constant, 1028, 1030
tcsendbreak function, 468, 486-488, 712, 726
definition of, 488
tcsetattr function, 468, 473-476, 485-486, 495, 499-500, 712, 726, 1010, 1014, 1031
definition of, 474
tcsetpgrp function, 468, 688, 691, 693, 712, 726
definition of, 688
TCSETS constant, 1028, 1030
TCSETSF constant, 1028, 1030
TCSETSW constant, 1028, 1030
tcsh program, 6
tee program, 856
Teer, Jenny, xxxv
Teer, Judge, xxxv
tell function, 131
definition of, 131
tell64 function, 131
telldir function, 395-396
definition of, 396
telnet program, 5, 680
tempnam function, 109
definition of, 109
temporary file, 108-110
creating a, 109-110
definition of, 108
temporary filenames, generating, 108-109
TERM environment variable, 656
termcap, 503-505
terminal
baud rate, 484-486
control, device independent, 503-505
controlling, 226-227, 250, 475, 488, 494, 632, 654, 684, 686-691, 695, 700-701, 710, 787, 807
identification, 488-493
line control, 486-488
login, 677-679
options, 475-484
pseudo, 997-1034
special input characters, 469-473
window size, 502-503
terminal attributes
getting, 474-475
setting, 474-475
terminal I/O, 134, 461-505
canonical mode, 462, 493-496
cbreak mode, 463
cooked mode, 462
non-canonical mode, 462, 496-502
raw mode, 463
termination, process, 604-608
termination status, definition of, 640
terminfo, 503, 505
<termio.h> header, 153
termios structure, 464-465, 468, 474-475, 477-478, 485, 493-494, 496, 498, 1009, 1021, 1025, 1030
definition of, 465
<termios.h> header, 153, 464, 473
testing character class membership, 60-63
text lock, definition of, 575
text segment, 613-616
textdomain function, 1042-1043
definition of, 1042
Thompson, Ken, 127
thread, 16-21
definition of, 16
thr_kill function, 726
thr_sigsetmask function, 726
time function, 31, 203-204, 209, 218, 666, 726, 765, 767, 986, 1053
definition of, 204
time, getting the current, 203-205
time member, definition of, 1051
time program, 28, 43, 194
time, setting the current, 205-206
TIME terminal value, 480, 496-497, 1139
time values, UNIX, 27-28
time zone
definition of, 203
getting the current, 206-207
timeb structure, 1050
definition of, 1051
<time.h> header, 219, 283
timeout member, 544
timer_create function, 654
timer_getoverrun function, 726
timer_gettime function, 726
TIMER_MAX constant, 289
timers, interval, 742-744
timer_settime function, 726, 757
times, file, 387-390
times function, 319-322, 336, 726
definition of, 319
timespec structure, 895
time_t datatype, 27, 32-33, 201, 205, 208-209, 212-213, 221, 269
timeval structure, 204, 206, 269, 391, 541, 552, 597
definition of, 204, 541
timezone member, 1051
definition of, 1051
timezone variable, 207
TIOCGWINSZ constant, 503-504, 1014
TIOCREMOTE constant, 1026
TIOCSIGNAL constant, 1033
TIOCSWINSZ constant, 503, 713, 1010, 1033
tm structure, 208-214, 217-218, 220-221
definition of, 208
tm_hour member, 220
definition of, 208
tm_isdst member, 211, 221
definition of, 208
tm_mday member, 219-221
definition of, 208
tm_min member, definition of, 208
tm_mon member, 211, 219-221
definition of, 208
TMPDIR environment variable, 109
tmpfile function, 109-110, 605, 639, 923
definition of, 110
tmpnam function, 108-109
definition of, 109
tmpnam_r function, 108-109
definition of, 109
tms structure, 319, 633
definition of, 319
tms_cstime member, 320, 633, 654
definition of, 319
tms_cutime member, 320, 633, 654
definition of, 319
tm_sec member, 208
definition of, 208
tms_stime member, 320, 633, 654
definition of, 319
tms_utime member, 320, 633, 654
definition of, 319
tm_wday member, 211, 220-221
definition of, 208
tm_yday member, 208, 211, 219-221
definition of, 208
tm_year member, 208, 211, 219-221
definition of, 208
toascii function, 64
definition of, 64
token, definition of, 81
tokenizing strings, 81-84
tolower function, 63, 65
definition of, 63
_tolower function, 63-65
definition of, 63
TOSTOP constant, 465, 467, 483
touch program, 201, 884
toupper function, 63, 65
definition of, 63
_toupper function, 63, 65
definition of, 63
track, definition of, 418
transfer rate, definition of, 418
transforming strings, 84-87
transitional large file compilation environment, 41-42, 129
TRAP_BRKPT constant, 758
TRAP_TRACE constant, 758
trivial ACL, definition of, 580
troff program, xxxvi
truncate function, 373, 382, 389
definition of, 373
truncation, file, 373
truss program, 4, 53, 198, 384, 986, 1018, 1132, 1152
Trusted Solaris, 341
ttcompat STREAMS module, 534, 998-999, 1008-1009
ttime member, definition of, 809
tty program, 1016-1017
tty_atexit function, 500, 1014
source code, 500
tty_cbreak function, 498, 500-501
source code, 499
tty_getoldattr function, 500
source code, 500
ttymon program, 678-679, 693, 813
ttyname function, 488, 490-493
definition of, 490
TTYNAME_MAX constant, 289
ttyname_r function, 490-493
definition of, 490
source code, 491
tty_raw function, 498, 500-501, 505, 1014
source code, 499
tty_reset function, 500-502
source code, 500
tunefs program, 375
Tuthill, Bill, 1046, 1157
tv_sec member, definition of, 204, 541
tv_usec member, definition of, 204, 541
TXTLOCK constant, 575
types
derived data, 33
file, 357-360
fixed-width integer, 34
typescript file, 1001, 1019
TZ environment variable, 206-207, 222, 340, 611
tzname variable, 207
TZNAME_MAX constant, 289
tzset function, 206-208, 211, 217, 1051, 1053
definition of, 207
U
uadmin function, 1054
ualarm function, 1052-1053
definition of, 1052
ucontext_t structure, 754
uf_entry structure, 136-137, 141
uf_ofile member, 136-137, 139
uf_pofile member, 136-137, 141, 144
ufs_args structure, 435-436
ufsboot program, 375
ufsdump program, 373, 443, 581
UFSMNT_LARGEFILES constant, 436, 1137
ufsrestore program, 373
UFSROOTINO constant, 456, 458
UID, see user ID
uid member, 871, 873
definition of, 871, 930
ulckpwdf function, 243
definition of, 243
UL_GDESLIM constant, 298
UL_GETFSIZE constant, 298
UL_GMEMLIM constant, 298
ulimit function, 298
definition of, 298
ulimit program, 340
ulltostr function, 91
definition of, 91
umask function, 162, 367-368, 726, 818
definition of, 367
umask program, 368, 416
umount function, 436-438, 460, 1138
definition of, 437
umount2 function, 436-438, 1138
definition of, 437
uname function, 276-278, 281-282, 336, 726, 1132
definition of, 276
uname program, 336, 375, 1132
unbuffered I/O, 13-14
definition of, 13
ungetc function, 164-165, 185
definition of, 165
ungetting a character, 164-165
uninitialized data segment, 614-616
Unisoft V7, 45
<unistd.h> header, 14, 123, 129, 283
UNIX
95, 50-51, 53
98, 51, 53-54
03, 51-52
time values, 27-28
unlink function, 110, 357, 377-380, 382, 389, 521, 595, 726, 858-860, 862, 941, 958-959, 963, 966, 980, 1149, 1151
definition of, 378
unlink program, 962
unlinkat function, 595
definition of, 595
unlocked file stream I/O, 189-191
unlockpt function, 1005-1007
definition of, 1006
unmounting a file system, 432-438
unreliable signals, 716-718
definition of, 716
updwtmp function, 267-268
definition of, 268
updwtmpx function, 267-268
definition of, 268
usage file, 325-326
USER ACL entry, 583, 585-586, 589-590
USER environment variable, 611, 656, 678
user ID, 22, 227-231, 237, 240, 269, 340, 371, 451, 583
definition of, 22, 227
effective, 22, 226-231, 233-234, 236, 277, 282, 338, 341, 343, 360-361, 364-365, 369, 391, 393, 632, 653, 678, 871, 873
real, 22, 227-231, 233-234, 341, 343, 360-361, 365, 632, 653, 678
user identification, 22-24
user name, 223-227, 237-238, 245
definition of, 223
user structure, 136
user time, definition of, 27
useradd program, 223
USER_ERROR constant, 586-587
USER_OBJ ACL entry, 583, 585, 589-590
USER_PROCESS constant, 263-264, 266-267
USHRT_MAX constant, 451, 455
usleep function, 1053
definition of, 1052
/usr/lib/utmp_update program, 267
ustat function, 356, 438, 442-443, 725
definition of, 442
ustat structure, 442
definition of, 442
UTC (Coordinated Universal Time), 201-203, 207, 210
ut_exit member, 263
definition of, 262, 269
ut_host member, 263
definition of, 262
ut_id member, 262, 266
definition of, 262, 269
utimbuf structure, 390
definition of, 391
utime function, 357, 388-392, 416, 726, 1136
definition of, 390
utimes function, 357, 388-392, 597
definition of, 391
ut_line member, 262, 266-267, 269
definition of, 262, 269
utmp file, 267-269
utmp structure, 267-269
definition of, 269
<utmp.h> header, 268-269
utmpx file, 261-270
utmpx structure, 262, 267-269
definition of, 262
<utmpx.h> header, 262
utmpxname function, 267
definition of, 267
ut_name member, 262
ut_pid member, 262-263, 269
definition of, 262, 269
ut_session member, 263
definition of, 262
utsname structure, 276, 282
definition of, 276
ut_syslen member, 263
definition of, 262
ut_time member, 269
definition of, 269
ut_tv member, 262-263
definition of, 262
ut_type member, 262, 264, 266-267
definition of, 262, 269
ut_user member, 262-263, 267, 269
definition of, 262, 269
V
val member, definition of, 895
valloc function, 97-98
definition of, 97
values, resource control, 306-307
<values.h> header, 32
/var/adm/lastlog file, 269
/var/adm/messages file, 817
/var/adm/pacct file, 670
/var/adm/utmp file, 224, 268
/var/adm/utmpx file, 224-227, 261, 267
/var/adm/wtmp file, 268
/var/adm/wtmpx file, 261, 267-268
variables
automatic, 623-626
register, 623-626
volatile, 623-626
v_count member, 137
v_data member, 137
VDISCARD constant, 469
VDSUSP constant, 469
VEOF constant, 469, 497
VEOL constant, 469, 497
VEOL2 constant, 469
VERASE constant, 469
version member, 277-278
definition of, 276
v_flag member, 137
vfork function, 637-639, 667-668, 676, 781-782, 1141-1142
definition of, 637
vfprintf function, 171, 173
definition of, 171
vfs_automnt member, 428
definition of, 428
vfscanf function, 173
definition of, 173
vfs_fsckdev member, 428
definition of, 428
vfs_fsckpass member, 428
definition of, 428
vfs_fstype member, 428
definition of, 428
vfs_mntopts member, 428
definition of, 428
vfs_mountp member, 428
definition of, 428
vfs_special member, 428
definition of, 428
vfstab structure, 428-429, 431-432
definition of, 428
VFS_TOOFEW constant, 429
VFS_TOOLONG constant, 429
VFS_TOOMANY constant, 429
vi program, xxxvi, 49, 463, 503-505, 613, 777, 1037
VINTR constant, 469, 474
VKILL constant, 469, 474
VLNEXT constant, 469
VMIN constant, 497, 499
vnode, 137, 927-928, 965
vnode structure, 136-137
volatile variables, 623-626
vprintf function, 171
definition of, 171
VQUIT constant, 469
VREPRINT constant, 469
vscanf function, 173
definition of, 173
vsnprintf function, 172
definition of, 172
vsprintf function, 172
definition of, 172
vsscanf function, 173, 1104
definition of, 173
VSTART constant, 469
VSTOP constant, 469
VSUSP constant, 469
VSWTCH constant, 469
VT0 constant, 483
VT1 constant, 483
VTDLY constant, 465, 467, 482-483
VTIME constant, 497, 499
VWERASE constant, 469
W
wait function, 18, 320, 507, 523, 640-644, 646-648, 658, 660-661, 663, 666, 708, 723-724, 726, 729-730, 753-754, 784, 833, 836, 865, 977, 1148
definition of, 641
wait3 function, 646-647
definition of, 646
wait4 function, 646-647
definition of, 646
waitid function, 647-648, 755
definition of, 647
waitpid function, 19-20, 26, 643-646, 667-669, 684, 690, 705, 724, 726, 753, 781, 844-845, 865, 921-923, 925
definition of, 644
wall program, 1006
wall time, see real time
Walton, Tony, xxxv
watchmalloc shared object, 100, 103-105
watchpoints, 104-105
wc program, 372, 689
WCONTINUED constant, 644, 647
WCOREDUMP function, 642, 1124
Weaver, David, 762, 1157
Weinberger, Peter, 663, 1153
well-known FIFO, definition of, 856
WERASE terminal character, 469-470, 473, 479-480, 496
WEXITED constant, 647-648
WEXITSTATUS function, 641-642, 1124
who program, 261, 264, 266, 1016
WIFCONTINUED function, 642
WIFEXITED function, 641-642, 1124
WIFSIGNALED function, 641-642, 1124
WIFSTOPPED function, 642, 644, 1124
window size
change, pseudo terminal, 1033
terminal, 502-503
winsize structure, 502-503, 1009
definition of, 503
WNOHANG constant, 644, 647-648
WNOWAIT constant, 644, 648
W_OK constant, 365-366
working directory, see current directory
write function, 13-15, 125, 128, 130, 132-135, 137, 140, 151-152, 155, 158, 168, 191-192, 196-197, 199, 324-325, 357, 373, 389, 508-510, 512, 521-522, 524, 526-528, 531, 534, 537, 542, 545-546, 548-549, 553-556, 558, 562, 567, 579, 635, 638, 650, 724, 726, 753, 808-809, 832, 834, 853, 855, 857, 863, 920, 938, 1122-1123, 1130, 1139-1140
definition of, 132
write, gather, 553
write mode, STREAMS, 536-537
write program, 261, 1006
writen function, 134, 152, 157, 495, 520, 523, 532, 634, 650-651, 823, 833, 836, 838, 850-851, 860, 862-863, 922, 930, 933, 975, 1015, 1027-1028, 1117, 1122-1124, 1137-1138, 1140
definition of, 134
source code, 1123
writev function, 286, 553-556, 558, 560, 724, 753, 933-934, 944
definition of, 553
writing 64-bit clean programs, 32-38
writing a character, 165-166
ws_col member, definition of, 503
ws_row member, definition of, 503
WSTOPPED constant, 648
WSTOPSIG function, 642, 1124
ws_xpixel member, definition of, 503
ws_ypixel member, definition of, 503
WTERMSIG function, 642, 1124
wtmp file, 268-269
wtmpx file, 261-268
WTRAPPED constant, 648
WUNTRACED constant, 644, 647
X
_XBS5_ILP32_OFFBIG constant, 289
_XBS5_LP64_OFF64 constant, 289
_XBS_ILP32_OFF32 constant, 289
XCASE constant, 465, 467, 483
XDR (external data representation), 168
XENIX, 46, 48, 999
xgettext program, 1039
X_OK constant, 365-366, 668, 843
X/Open, 50, 1157
_XOPEN_CRYPT constant, 290
_XOPEN_ENH_I18N constant, 290
_XOPEN_LEGACY constant, 290
_XOPEN_REALTIME constant, 290, 653
_XOPEN_REALTIME_THREADS constant, 290
_XOPEN_SHM constant, 290
_XOPEN_UNIX constant, 290
_XOPEN_VERSION constant, 290
_XOPEN_XCU_VERSION constant, 290
XPG3, 55, 1038, 1157
XPG4, 50, 55, 1157
__XPG4_CHAR_CLASS__ constant, 60
Xsun program, 231
XTABS constant, 483
xterm program, 502, 997, 999
Z
zombie process, 641, 645, 676, 708, 728, 754, 1142-1143
definition of, 641
Zones, Solaris, 344, 426
zsh program, 6
|