linux_programming_interface_index

The Linux Programming Interface - A Linux and UNIX System Programming Handbook Index

Linux: Linux Fundamentals, Linux Inventor: Linus Torvalds says “ Linux just sucks less.”, Linux Best Practices - Linux Anti-Patterns, Linux kernel, Linux commands-Linux Shells-Linux CLI-GNU-Linux GUI-X11, Linux DevOps-Linux development-Linux system programming-Bash-zsh-Linux API, Linux package managers, Linux configuration management (Ansible on Linux, Chef on Linux, Puppet on Linux, PowerShell on Linux), Linux Distros (RHEL-Rocky Linux-CentOS (CentOS Stream)-Oracle Linux-Fedora, Ubuntu-Debian-Linux Mint-Raspberry Pi OS-Kali Linux-Tails, openSUSE - SUSE Linux Enterprise Server (SLES), Arch Linux-Manjaro Linux, Alpine Linux-BusyBox - Slackware - Android-Chrome OS); UNIX-UNIX Distros (FreeBSD-OpenBSD, BSD, macOS), Linux networking, Linux storage, Linux secrets, Linux security (Linux IAM-LDAP-Linux Firewall-Linux Proxy), Linux docs, Linux GitHub, Linux Containers, Linux VM, Linux on AWS, Linux on Azure, Linux on GCP, Linux on Windows (WSL), Linux on IBM, Linux on Mainframe (Linux on IBM Z mainframe - Linux for System z - IBM LinuxONE), Embedded Linux, Linus IoT-Linux on Raspberry Pi, LinuxOps-Linux sysadmin, systemd-userland-kernel space-POSIX-SUS-Linux filesystem-Linux architecture, Linux books-UNIX books, Linux courses, Linux Foundation, Linux history, Linux philosophy, Linux adoption, Linux glossary, Linux topics (navbar_linux and navbar_unix - see also navbar_fedora, navbar_rhel, navbar_centos, navbar_debian, navbar_ubuntu, navbar_linux_mint, navbar_freebsd, navbar_opensuse, navbar_manjaro, navbar_kali_linux, navbar_nixos, navbar_alpine_linux, navbar_tails_linux, navbar_slackware, navbar_rocky_linux, navbar_arch_linux, navbar_oracle_linux)

Systems programming: Linux systems programming, UNIX systems programming, Windows system programming, macOS system programming. Linux Programming Interface - A Linux and UNIX System Programming Handbook, Advanced Programming in the UNIX Environment, Mainframe systems programming, Systems programming languages (C systems programming, C++ systems programming, Rust systems programming, Awesome systems programming (navbar_systemprogramming)

Fair Use Source: B004OEJMZM-TLPI2010

The following conventions are used in the index:

Symbols

  • used with mmap(), 1034
  • _exit(), 32, 426, 514, 531–532, 692
  • _fini(), 873

#

Numbers

  • 2MSL, 1274
  • 4.2BSD, 4, 155, 342, 390, 443, 476, 776, 1149, 1180

INDEX The Linux Programming Interface - ! Michael Kerrisk.txt

A

  • ABI, 118, 867
  • abort(), 390, 426, 433–434, 446
  • accept(), 426, 673, 801, 1152, 1157–1158
  • minimal ACL, 321
  • tag qualifier, 320, 321, 323, 332
  • access(), 298–299, 345, 426
  • acct(), 345, 592–593, 801
  • acct_on.c, 592
  • acct_v3_view.c, 598
  • acl_add_perm(), 332
  • acl_clear_perms(), 332
  • acl_dup(), 334
  • acl_get_perm(), 332
  • acl_get_permset(), 332
  • acl_get_qualifier(), 332
  • acl_set_permset(), 332
  • acl_set_qualifier(), 332
  • acl_valid(), 334
  • adjtime(), 205, 801
  • adjtimex(), 205, 801
  • Aho, A.V., 1437
  • alarm(), 390, 426, 484–485, 486, 488, 614
  • Allman, M., 1194
  • on the heap, 140–144, 147–150
  • on the stack, 150–151
  • alternate signal stack, 65, 434–437, 578, 613, 683, 691, 693, 764
  • Anley (2007), 792, 795, 1437
  • Anley, C., 1437
  • anon_mmap.c, 1036
  • Anzinger, G., xli
  • archive, 834
  • ASN.1, 1200
  • atexit(), 532, 534–535, 866

INDEX The Linux Programming Interface - ! Michael Kerrisk.txt

B

  • Bach (1986), 250, 278, 521, 530, 919, 1422, 1437
  • bad_longjmp.c, 1426
  • bind(), 345, 426, 1152, 1153–1154, 1155
  • example of use, 1166, 1168, 1172, 1173, 1176, 1208, 1222, 1229
  • Bovet (2005), 24, 46, 250, 256, 278, 419, 521, 530, 616, 919, 936, 994, 1015, 1044, 1147, 1422, 1438
  • Braden, R., 1194
  • Brahneborg, D., xli
  • Brecht, T., 1439
  • brk(), 140
  • Brouwer, A.E., xli
  • BSD, 4, 7–8
  • in the kernel, 233–236, 239–243
  • in the stdio library, 237–239, 249
  • Butenhof (1996), 630, 639, 647, 659, 687, 696, 751, 1105, 1422, 1438
  • separating messages in, 910–911
  • bzero(), 1166

C

C

  • C89, 11, 17
  • C99, 11, 17
  • calendar time, 185–187
  • calendar_time.c, 191
  • calloc(), 147–148
  • Cao, M., 1441
  • CAP_DAC_OVERRIDE capability, 287, 299, 800, 807
  • CAP_FOWNER capability, 76, 168, 287, 288, 300, 303, 308, 800, 807
  • CAP_FSETID capability, 304, 800, 807, 1432
  • cap_get_proc(), 807
  • CAP_MAC_OVERRIDE capability, 800, 807
  • CAP_MKNOD capability, 252, 368, 800, 807
  • cap_set_flag(), 807
  • cap_set_proc(), 808
  • CAP_SETGID capability, 172, 800, 1285
  • CAP_SETPCAP capability, 801, 806, 807, 812, 814, 815, 816
  • CAP_SYS_ADMIN capability, 254, 262, 312, 607, 763, 801, 929, 1285
  • CAP_SYS_MODULE capability, 801, 815
  • CAP_SYS_NICE capability, 736, 743, 747, 750, 801
  • CAP_SYS_PACCT capability, 592, 801
  • CAP_SYS_RAWIO capability, 255, 801
  • capget(), 807
  • capset(), 807
  • Card, R., 255
  • catch_rtsigs.c, 462
  • Cesati, M., 1438
  • cfgetispeed(), 426, 1316–1317
  • cfgetospeed(), 426, 1316–1317
  • cfsetispeed(), 426, 1316–1317
  • cfsetospeed(), 426, 1316–1317
  • Chandra, C., xlii
  • chdir(), 345, 364–365, 426, 604, 607
  • Chen (2002), 795, 1438
  • Chen, H., 1438
  • waiting on, 541–553
  • chmod(), 286, 303–304, 325, 345, 426, 800
  • Choffnes, D.R., 1438
  • chown(), 221, 286, 291–293, 345, 426, 800
  • chroot jail, 273, 367, 789
  • chroot(), 345, 367–368, 580, 604, 607, 801
  • Church, A.R., xli
  • Church, D.E., xlii
  • Church, D.E.M., xlii
  • Clare, G.W., xxxix
  • clearenv(), 129–130
  • clock(), 207–208, 210
  • clock_getres(), 491
  • clone(), 598–609, 801, 987
  • CLONE_NEWNS constant, 261, 600, 607, 801
  • clone2(), 599
  • close(), 70, 80–81, 426
  • close-on-exec flag, 74, 96, 98, 355, 377, 576–578, 613, 788, 894, 1110, 1153, 1158, 1175, 1281, 1356
  • Columbus UNIX, 922
  • compressed clock tick, 594
  • association with mutex, 646
  • destroying, 652
  • statically allocated, 643
  • waiting on, 643–645
  • confstr(), 48, 588, 694
  • container, 608
  • obtaining name of, 707
  • core dump file, 83, 166, 389, 441, 448–450, 530, 546, 594, 692, 789
  • circumstances when not produced, 448–449
  • Cox, J., 1440
  • CPU affinity, 748
  • CPU_CLR(), 749
  • CPU_ISSET(), 749
  • CPU_SET(), 749
  • CPU_ZERO(), 749
  • creat(), 78–79, 286, 345, 426, 673
  • critical section, 631, 635
  • Crosby (2003), 794, 1438
  • Crosby, S.A., 1438
  • crypt(), 162–163, 657
  • ctime(), 16, 188–189, 198, 657
  • ctime_r(), 189, 658
  • Currie, A.L., xlii
  • Cvetkovic, D., xli

D

D

  • Davidson, F., xli
  • Davidson, S., xli
  • dbm_clearerr(), 657
  • dbm_fetch(), 657
  • dbm_nextkey(), 657
  • dbm_store(), 657
  • mutex, 639
  • Dean, D., 1438
  • Deering, S., 1194
  • demo_clone.c, 603
  • demo_sched_fifo.c, 1432
  • demo_SIGFPE.c, 452
  • demo_sigio.c, 1348
  • demo_SIGWINCH.c, 1320
  • major ID, 253, 281
  • minor ID, 253, 281
  • de Weerd, P., xlii
  • Dilger, A., 1441
  • dirfd(), 15, 355
  • disk quotas, 794, 801
  • dlclose(), 860, 861, 866, 876
  • dlerror(), 657, 862, 863
  • dlopen(), 860–862
  • dlsym(), 862–864
  • dlvsym(), 863
  • Domaigné, L., xxxix
  • Döring, G., xxxix
  • DragonFly BSD, 8
  • drand48(), 657
  • DST, 187
  • DT_NEEDED tag (ELF), 839
  • Dunchak, M., xliii
  • dup(), 97, 426, 1425
  • dup2(), 97, 426, 899, 900, 1426
  • dup3(), 98
  • Dupont, K., xli

E

  • E2BIG error, 565, 943, 991
  • EACCES error, 77, 312, 564, 702, 928, 952, 1031, 1127
  • EAGAIN error, 57, 103, 270, 379, 460, 471, 473, 509, 761, 763, 764, 917, 918, 941, 979, 980, 1065, 1073, 1075, 1095, 1127, 1139, 1259, 1260, 1330, 1347, 1367
  • EBADF error, 97, 762, 1126, 1334, 1344, 1345
  • Ebner, R., xlii
  • EBUSY error, 270, 637, 1078, 1396
  • ecvt(), 656, 657
  • EEXIST error, 76, 315, 345, 349, 350, 924, 932, 938, 969, 999, 1059, 1109, 1357
  • EIDRM error, 933, 947, 971, 979
  • EINTR error, 418, 442, 443, 486, 489, 941, 944, 979, 1095, 1334, 1339
  • EINVAL error, 179, 216, 246, 247, 349, 381, 750, 762, 933, 950, 952, 969, 991, 999, 1000, 1014
  • EIO error, 709, 718, 727, 730, 764, 1382, 1388, 1389, 1396
  • EISDIR error, 78, 346, 349
  • Elliston, B., 1444
  • endgrent(), 161, 657
  • endpwent(), 160–161, 657
  • endspent(), 161
  • endutxent(), 657, 821
  • ENOENT error, 78, 158, 346, 349, 565, 823, 924, 932, 1059, 1357, 1396, 1429
  • ENOMEM error, 760, 761, 1037
  • ENOSPC error, 950, 991, 1014, 1206
  • ENOTDIR error, 76, 345, 349, 351, 379
  • ENOTTY error, 727, 825, 1292
  • ENXIO error, 707, 916, 1388
  • EPERM error, 76, 173, 346, 403, 435, 702, 705, 762, 929, 1357, 1435
  • ephemeral port, 1189, 1224, 1263
  • Epoch, 40, 186
  • epoll, 1327, 1355–1367, 1439
  • waiting for, 1358–1359
  • epoll_create(), 801, 1355, 1356, 1363
  • epoll_ctl(), 1356–1358, 1364
  • epoll_pwait(), 1370
  • epoll_wait(), 1356, 1358–1360, 1364, 1366–1367
  • Eranian, S., 1442
  • err_exit(), 52–53
  • errExit(), 52
  • errExitEN(), 52–53
  • ESRCH error, 158, 402, 403, 702
  • ETXTBSY error, 78, 373, 565
  • EWOULDBLOCK error, 57, 103, 1119, 1330, 1347, 1367
  • exec(), 32, 286, 345, 514, 563–579, 690, 801
  • execl(), 426, 567–568, 570–571
  • execle(), 426, 567–568, 570
  • execlp(), 567–569, 570, 575, 589
  • execv(), 426, 567–568, 570
  • execve(), 32, 426, 514, 563–566, 567–568, 593
  • execvp(), 567–570, 575, 1430
  • exit handler, 532, 533–537, 615
  • exit(), 32, 390, 513, 531–533, 692
  • os2 (JFS), 312

F

  • F_GETOWN_EX constant, 1351, 1354, 1355
  • Fabry, R.S., 1442
  • fallocate(), 83
  • fatal(), 54
  • fchdir(), 364
  • fchmod(), 286, 303, 426, 1110
  • fchown(), 221, 286, 291–293, 426, 1110
  • fcntl(), 92–93, 426, 673, 1124, 1134
  • setting pipe capacity, 891–892
  • fcvt(), 656, 657
  • FD_CLOEXEC constant, 75, 98, 355, 377, 472, 508, 577, 894, 1110, 1153, 1158, 1175, 1281, 1356
  • FD_CLR(), 1331–1332
  • FD_ISSET(), 1331–1332
  • fd_set data type, 64, 1331, 1332, 1344, 1369
  • FD_SET(), 1331–1332
  • FD_ZERO(), 1331–1332
  • fdatasync(), 240–241, 242, 244, 426, 673, 1032
  • fdopen(), 248–249, 892, 906
  • feenableexcept(), 391
  • Fellinger, P., xli, xlii
  • fexecve(), 15, 426, 571
  • fflush(), 239, 244, 538
  • fgetxattr(), 315
  • FIFO, 282, 392, 882, 883, 886, 906–918. See also pipe
  • fifo_seqnum.h, 911
  • fifo_seqnum_server.c, 912, 920
  • blocks allocated to, 282
  • compression, 306
  • holes in, 83, 259, 283
  • lease, 615, 800, 1135, 1142
  • temporary, 108–109
  • type, 27, 95, 256, 281
  • permitted, 799, 802
  • duplicating, 96–98
  • file hole, 83, 259, 283
  • scatter-gather I/O, 99–102
  • file lock, 533, 881, 882, 884, 886, 1117–1144
  • with fcntl(), 614, 1124–1137
  • with flock(), 614, 1119–1124
  • limitations, 1123–1124
  • mandatory, 265, 293, 1119, 1137–1140
  • starvation, 1137
  • file mode creation mask (umask), 301–303, 328, 351, 604, 613, 790, 907, 923, 1060, 1065, 1091, 1110, 1174
  • file ownership, 29, 281, 291–294, 800
  • busy, 270
  • last access time, 74, 76–77, 257, 264, 265, 266, 267, 283, 285, 286, 287, 289, 305, 306
  • filePermStr(), 295–296
  • FIPS 151-1, 12
  • FIPS 151-2, 12
  • Fletcher, G., xlii
  • flock(), 1119–1122, 1147, 1435
  • Forero Cuervo, A., xlii
  • fork(), 31, 426, 513, 515–522, 589, 609, 690, 1430
  • example of use, 516, 517, 519, 526, 543, 554, 582, 587, 770, 900, 1387
  • glibc wrapper invokes clone(), 609
  • stdio buffers and, 537–538
  • fork_stdio_buf.c, 537
  • Fox, B., 25
  • Franke (2002), 638, 1439
  • Franke, H., 1439
  • free(), 140–142, 144, 423
  • free_and_sbrk.c, 142
  • fsetxattr(), 286, 314–315
  • fstat(), 279–283, 426, 907, 1110
  • fstatat(), 365, 426
  • fstatfs(), 277
  • fstatvfs(), 276–277
  • fsync(), 240–241, 242, 244, 265, 426, 673, 1240
  • ftok(), 925–927, 936
  • ftw(), 16, 358, 657
  • futimens(), 15, 286, 426
  • futimes(), 15, 286, 288–289, 426
  • G
  • gai_strerror(), 1217–1218
  • Gallmeister (1995), 222, 512, 751, 1087, 1327, 1439
  • Gallmeister, B.O., 1439
  • Gamin, 375
  • Gammo (2004), 1374, 1439
  • Gammo, L., 1439
  • Gancarz (2003), 1422, 1439
  • Gancarz, M., 1439
  • Garfinkel (2003), 20, 795, 1439
  • Garfinkel, S., 1439
  • gcvt(), 656, 657
  • get_num.c, 59
  • get_num.h, 59
  • get_robust_list(), 801
  • getcwd(), 363–364
  • getdents(), 352
  • getegid(), 172–173, 426
  • getenv(), 127–128, 657
  • geteuid(),172–173, 426
  • getfsent(), 263
  • getgid(),172–173, 426
  • getgrent(), 161, 657
  • getgrgid(),158–159, 657
  • getgrgid_r(), 158, 658
  • getgrnam(), 158–159, 657
  • getgrnam_r(), 158, 658
  • getInt(), 58–59
  • getmntent(), 263
  • getopt(), 657, 1405–1411
  • getopt_long(), 1411
  • getpeername(), 426, 1263–1264
  • getpgid(), 704
  • getpgrp(), 426, 701–702, 704
  • getpid(), 114, 426, 604, 690
  • getpmsg(), 673
  • getppid(), 115, 426, 553, 608, 690
  • getprotobyname(), 657
  • getprotoent(), 657
  • getpwent(), 161, 657
  • getpwnam(), 157–158, 657
  • getpwnam_r(), 158, 658
  • getpwuid(),157–158, 657
  • getpwuid_r(), 158, 658
  • getresgid(), 176–177
  • getresuid(), 176–177
  • getrlimit(), 755–757, 759
  • getrusage(), 560, 619, 691, 694, 753–755, 765
  • getservbyport(), 657, 1205, 1234–1235
  • getsid(), 704–705
  • getspent(), 161–162
  • getspnam(), 161–162
  • gettid(), 226, 497, 605, 625, 749, 1355
  • getuid(),172–173, 426
  • getutent_r(), 658, 823
  • getutid_r(), 658, 823
  • getutline_r(), 658, 823
  • getutxent(), 657, 822
  • getutxid(), 657, 822–823
  • getutxline(), 657, 822–823
  • getwd(), 364
  • getxattr(), 315, 329, 345
  • gid_t data type, 64, 157, 158, 159, 173, 174, 175, 177, 178, 179, 280, 292, 330, 927
  • Gilligan, S., 1194
  • globbing, 903
  • Gloger, W., xxxix
  • Gmelch, T., xlii
  • gmtime(), 189, 657
  • gmtime_r(), 189, 658
  • manual, 1421
  • Göllesch, N., xli
  • Gont (2008), 1235, 1439
  • Gont (2009a), 1235, 1439
  • Gont (2009b), 1283, 1439
  • Gont, F., xxxix, 1439
  • Gratzl, C., xli, xlii

H

  • Haig, B., xlii
  • Hartinger, M., xli, xlii
  • Hauben, R., 20
  • hdestroy(), 657
  • heap, 31, 116, 612
  • Heasman, J., 1437
  • Hellwig, C., xl
  • Henderson, R., xli
  • Herbert (2004), 1235, 1440
  • Herbert, T.F., 1440
  • Hinden, R., 1194
  • Hoffman, R., xliii
  • Howard, M., xlii
  • HP-UX, 5
  • hstrerror(), 1232–1233
  • htonl(), 1199
  • htons(), 1199
  • Hubička (2003), 837, 1440
  • Hubička, J., 1440
  • HURD, 6, 1443

I

  • i6d_ucase_cl.c, 1209
  • i6d_ucase_sv.c, 1208
  • I18N, 200
  • IA-64, 10, 1442
  • ICRNL constant, 1296, 1297, 1298, 1302
  • id_echo.h, 1240
  • id_echo_cl.c, 1242
  • id_echo_sv.c, 1241
  • idshow.c, 182
  • IEXTEN constant, 1296, 1297, 1298, 1299, 1303, 1305, 1307
  • inet_aton(), 1204, 1230–1231
  • inet_ntoa(), 657, 1204, 1231
  • inet_ntop(), 1205, 1206
  • inet_pton(), 1205, 1206
  • initSemInUse(), 989–990
  • i-node, 95, 256–259
  • interval timer, 479–485, 614
  • intquit.c, 401
  • nonblocking, 77, 103–104, 915–917, 1326, 1330
  • ioctl(), 72, 86, 308, 1293, 1319
  • ioperm(), 801
  • iopl(), 801
  • ioprio_set(), 801
  • duplication of, 1185
  • ipc_perm structure, 927–928, 948, 972, 1012
  • IPC_SET constant, 801, 927, 928, 929, 947, 948, 949, 971, 973, 1011, 1013
  • IPv5, 1184
  • is_echo_cl.c, 1258, 1287
  • is_echo_inetd_sv.c, 1251
  • is_echo_sv.c, 1244, 1252
  • is_echo_v2_sv.c, 1435
  • is_seqnum.h, 1220
  • is_seqnum_cl.c, 1224
  • is_seqnum_sv.c, 1221
  • is_seqnum_v2.h, 1435
  • is_seqnum_v2_cl.c, 1435
  • is_seqnum_v2_sv.c, 1435
  • isatty(), 1321
  • ISIG constant, 1296, 1297, 1298, 1299, 1303
  • itimerspec_from_str.c, 502
  • itimerspecFromStr(), 502
  • IXOFF constant, 1296, 1298, 1299, 1302

J

  • Jacobson, V., 1194
  • Jaeger, A., xl
  • jail() (BSD), 368
  • jiffy, 205–206
  • Jinmei, T., 1194
  • job_mon.c, 719
  • Jolitz, L.G., 7
  • Jolitz, W.F., 7
  • Jones, R., xl
  • Josey (2004), 20, 222, 1440
  • Josey, A., xli, 1440
  • Joy, W.N., 4, 25, 1442
  • jumbogram, 1185

K

  • K&R C, 10
  • Kahabka, T., xlii
  • Kara, J., xlii
  • Kegel, D., 1374
  • Kegel, K., xli
  • Kent (1987), 1186, 1440
  • Kent, A., 1440
  • kill(), 401–403, 426, 439, 441, 458, 800
  • killpg(), 405, 458
  • Kleen, A., xl
  • Kleikamp, D., xlii
  • klogctl(), 776
  • Korrel, K., xlii

L

  • l64a(), 657
  • Landers, M., xl, xlii
  • last access time, file timestamp, 74, 76–77, 257, 264, 265, 266, 267, 283, 285, 286, 287, 289, 305, 306
  • Lawyer, D., 1322
  • lazy swap reservation, 1038
  • LC_COLLATE locale category, 202
  • LC_MEASUREMENT locale category, 202
  • LC_PAPER locale category, 202
  • LC_TELEPHONE locale category, 202
  • lchown(), 286, 292–293, 345
  • Leffler, S.J., 1442
  • Leroy, X., 689
  • Lezcano, D., 1437
  • lgamma(), 657
  • lgammaf(), 657
  • lgammal(), 657
  • lgetxattr(), 315, 345
  • Libenzi, D., xli
  • Libes (1989), 20, 1441
  • Libes, D., 1441
  • Lindner, F., 1437
  • link, 27, 257, 339–342
  • link(), 286, 344–346, 426, 1145
  • linkat(), 365, 426
  • LinuxThreads, 457, 592, 603, 604, 609, 687, 688, 689–692, 695
  • Lions (1996), 24, 1441
  • Lions, J., 1441
  • listen(), 426, 1152, 1156–1157
  • listxattr(), 316, 345
  • Liu, C., 1437
  • llistxattr(), 316, 345
  • specifying to a program, 203–204
  • lockf(), 673, 1127
  • lockRegion(), 1133
  • lockRegionWait(), 1133
  • LOG_MASK(), 781
  • LOG_UPTO(), 781
  • logout(), 827
  • logwtmp(), 827
  • Lokier, J., xl
  • longjmp(), 131–133, 135, 151, 360, 1426
  • incorrect use of, 135
  • lookup_dcookie(), 801
  • Love (2010), 46, 210, 250, 278, 530, 751, 1422, 1441
  • Love, R., xli, 1441
  • lrand48(), 657
  • lremovexattr(), 286, 316, 345
  • lseek(), 30, 81–83, 96, 257, 426
  • lseek64(), 105
  • lsetxattr(), 286, 314–315, 345
  • lstat(), 279–283, 345, 426
  • Lu (1995), 857, 1441
  • Lu, H.J., xli, 1441
  • lutimes(), 286, 288–289, 345

M

  • madvise(), 1054–1055
  • madvise_dontneed.c, 1434
  • magic SysRq key, 1300
  • Mahdavi, J., 1194
  • major(), 281
  • makecontext(), 442
  • mallinfo(), 147
  • malloc(), 140–142, 423, 1035
  • mallopt(), 147, 1035
  • mandatory file lock, 265, 293, 1119, 1138
  • Mane-Wheoki, J., xlii
  • Mann (2003), 1250, 1442
  • Mann, S., 1442
  • manual pages, 1419–1421
  • MAP_PRIVATE constant, 1009, 1018, 1021, 1033
  • Marshall, P., xli, xlii
  • marshalling, 1200
  • Mason, C., xli
  • Matz, M., xli
  • McCann, J., 1194
  • McGrath, R., 47
  • Mecklenburg (2005), 431, 1442
  • Mecklenburg, R., 1442
  • memalign(), 149–150
  • synchronizing, 1031–1032
  • memory residence, 1051–1054
  • migrate_pages(), 801
  • Mills (1992), 205, 1442
  • Mills, D.L., 1442
  • minor(), 281
  • Mitchell, E.L., 1442
  • mkdir(), 286, 350–351, 426
  • mkdirat(), 365, 426
  • mkdtemp(), 15, 351
  • mkfifo(), 286, 426, 907
  • mkfifoat(), 365, 426
  • mknod(), 252, 286, 426, 800, 907
  • mknodat(), 365, 426
  • mkstemp(), 108–109, 791
  • mktime(), 190, 198
  • mlock(), 800, 1048, 1049–1050
  • mlockall(), 761, 800, 1048, 1050–1051
  • example of use, 1023, 1029, 1036, 1111, 1112, 1113
  • mmap64(), 105
  • mmcat.c, 1022
  • mode_t data type, 64, 72, 78, 280, 301, 303, 350, 365, 907, 1064, 1090, 1109, 1146
  • Mogul, J.C., 1193, 1440
  • Molnar, I., 689
  • mount(), 246–267, 607, 801
  • mprobe(), 146
  • mq_close(), 1058, 1064, 1066
  • mq_getattr(), 1058, 1064, 1070–1071
  • mq_notify(), 1058, 1064, 1078–1079
  • mq_notify_sigwaitinfo.c, 1434
  • mq_open(), 1058, 1064–1065
  • mq_receive(), 673, 1058, 1064, 1074–1075
  • mq_send(), 673, 1058, 1064, 1073
  • mq_setattr(), 1058, 1064, 1072
  • mq_unlink(), 1058, 1064, 1066
  • mqd_t data type, 64, 882, 1058, 1059, 1064, 1065, 1066, 1070, 1072, 1073, 1075, 1077, 1078, 1083
  • mrand48(), 657
  • mremap(), 761, 1037–1038
  • msgctl(), 922, 947
  • msgrcv(), 673, 922, 943–944, 947, 948, 949
  • msgsnd(), 673, 922, 940–941, 947, 948, 949, 950
  • msqid_ds structure, 922, 947, 948–949, 950
  • msync(), 286, 673, 1022, 1024, 1031–1032
  • Mui, L., 1444
  • multi_SIGCHLD.c, 557
  • multi_wait.c, 543
  • munlock(), 1049–1050
  • munlockall(), 1050–1051
  • munmap(), 1022, 1023–1024, 1058
  • mutex, 614, 631–642, 881
  • destroying, 640
  • statically allocated, 635
  • mutual exclusion, 634

N

  • nanosleep(), 488–489, 673
  • necho.c, 123
  • new_intr.c, 1301
  • NeXTStep, 5
  • nftw(), 358–360, 657
  • nftw_dir_tree.c, 360
  • nice value, 614, 733–737, 801
  • NPTL nonconformance, 693
  • nice(), 735, 801
  • nl_langinfo(), 657
  • no_echo.c, 1306
  • nonblocking I/O, 77, 103–104, 915–917, 1326, 1330
  • nonlocal goto, 131–137
  • Nordmark, E., 1194
  • ntohl(), 1199
  • ntohs(), 1199

O

  • O_CREAT constant, 74, 76, 90, 107, 1059, 1065, 1109, 1145, 1146
  • O_EXCL constant, 74, 76, 90, 109, 791, 1059, 1065, 1109, 1145
  • O_NOCTTY constant, 74, 77, 706, 707, 768, 1380
  • O_NONBLOCK constant, 74, 77, 93, 96, 103–104, 377, 472, 508, 894, 915–918, 1065, 1068, 1071, 1072, 1073, 1075, 1139, 1153, 1158, 1175, 1254, 1260, 1281, 1308, 1326, 1330, 1347. See also nonblocking I/O
  • O_RDONLY constant, 73, 74, 1060, 1065, 1109
  • O_RDWR constant, 73, 74, 1060, 1065, 1109, 1380
  • O_TRUNC constant, 74, 77, 1109, 1139, 1146
  • off_t data type, 65, 66, 81, 82, 98, 102, 103, 104, 106, 244, 280, 757, 759, 1020, 1125, 1261
  • on_exit(), 532, 535–536, 866
  • OOM killer, 1039
  • open(), 70, 72–78, 96, 286, 345, 426, 673, 801, 1139, 1142, 1145, 1146
  • openat(), 15, 365–366, 426, 674
  • opportunistic lock, 1142
  • orphan.c, 1430
  • OSF/1, 4
  • ouch.c, 399
  • out-of-band data, 394, 1259, 1260, 1283, 1288, 1331, 1343

P

  • Padhye, J., 1194
  • Pai, R., 1445
  • Pariag, D., 1439
  • partial write, 80, 891, 1254
  • pause(), 418, 426, 673
  • Paxson, V., 1194
  • pclose(), 902–903, 919
  • Peach, J., xli
  • personality(), 1334
  • Phillips, M., xli
  • pid_t data type, 65, 114, 115, 402, 405, 438, 458, 493, 496, 516, 523, 542, 544, 552, 599, 605, 699, 700, 701, 702, 704, 705, 708, 741, 742, 744, 747, 749, 750, 819, 948, 1012, 1125, 1354, 1385
  • Piggin, N., xli
  • pipe, 3, 214, 282, 392, 882, 883, 886, 889–906
  • capacity, 891
  • pipe(), 286, 426, 801, 892, 1175
  • pivot_root(), 345, 801
  • Pluzhnikov, P., xli
  • pmsg_getattr.c, 1071
  • Podolsky, M., 1194
  • poll(), 426, 673, 1337–1339, 1389, 1439
  • poll_pipes.c, 1340
  • Pollard, J., xlii
  • POLLERR constant, 1337, 1338, 1342, 1343, 1353
  • POLLHUP constant, 1337, 1338, 1342, 1343, 1353
  • POLLIN constant, 1337, 1338, 1342, 1343, 1353
  • Pollock, W., xliii
  • POLLOUT constant, 1337, 1338, 1342, 1343, 1353
  • POLLPRI constant, 1337, 1338, 1343, 1353, 1389
  • POLLRDHUP constant, 1337, 1338, 1339, 1343
  • popen(), 902–903, 919
  • ephemeral, 1189, 1224, 1263
  • with timeout, 1077
  • with timeout, 1077
  • unlinking, 1066–1067
  • named, 614, 882, 886, 1089, 1090–1093
  • unnamed, 614, 882, 886, 1089, 1099–1103
  • destroying, 1102
  • arming, 498–499
  • disarming, 498–499
  • timer overrun, 502, 503–504, 505
  • POSIX.1b, 12, 17, 41, 61, 456, 491, 495, 738, 1057
  • POSIX.1c, 12, 17, 61, 620
  • POSIX.1d, 12, 17, 1077, 1096
  • POSIX.1e, 319, 337, 798, 1369
  • POSIX.1g, 12, 16, 17, 1149
  • posix_fadvise(), 244–246, 1032
  • posix_memalign(), 149–150
  • Postel, J., 1193, 1194
  • Potthoff, K.J., xli
  • ppoll(), 1370
  • prctl(), 449, 553, 806, 813
  • pread(), 98–99, 286, 673
  • preadv(), 102, 286
  • checking for existence of, 403–404
  • CPU affinity, 615, 748–750
  • ID, 32, 114, 604, 608, 613, 705
  • memory layout, 31, 115–118
  • abnormal, 389, 433, 441, 531
  • normal, 531
  • umask, 301–303, 328, 351, 604, 613, 790, 907, 923, 1060, 1065, 1091, 1110, 1174
  • inheritable, 799, 803, 807
  • permitted, 798, 802, 807
  • leader, 39, 699, 702, 705
  • waiting on member of, 544, 550
  • procfs_pidmax.c, 228
  • procfs_user_exe.c, 1428
  • prod_condvar.c, 645
  • prod_no_condvar.c, 642
  • Provos, N., 1328
  • psem_timedwait.c, 1434
  • psem_unlink.c, 1094
  • psem_wait.c, 1095
  • BSD, 1379, 1395–1397
  • I/O, 1388–1389
  • opening, 1380–1381, 1383–1384
  • obtaining name of, 1382
  • UNIX 98, 1379, 1380
  • pshm_unlink.c, 1114
  • psiginfo(), 440
  • pthread_cond_wait(), 643–644, 673, 683
  • pthread_equal(), 624–625, 1431
  • pthread_join(), 606, 607, 625–626, 673, 674, 1431
  • pthread_kill(), 683, 684, 690
  • pthread_mutex_destroy(), 640
  • pthread_mutexattr_destroy(), 642
  • pthread_t data type, 493, 605, 620, 622, 623, 624, 625, 627, 671, 684, 685
  • ptmr_null_evp.c, 1429
  • ptrace(), 394, 545, 608, 801
  • pty, 1376
  • ptyFork(), 1385–1386
  • putenv(), 128, 130, 657
  • putpmsg(), 673
  • pututxline(), 657, 826
  • pwrite(), 98–99, 286, 673

Q

  • quantum, 733
  • quotactl(), 345, 801

R

  • raise(), 404, 426, 441, 458
  • Ramakrishnan, K., 1194
  • Ramey, C., 25
  • Rampp, F., xli
  • rand(), 657
  • rand_r(), 658
  • Randow, D., xlii
  • raw I/O, 246–248
  • rdwrn.c, 1255
  • read(), 70, 79–80, 286, 426, 673, 1138
  • readdir_r(), 357, 658
  • readv(), 99–100, 286, 673
  • realloc(), 148–149, 1038
  • policy, 614, 738
  • relinquishing CPU, 747
  • round-robin policy (SCHED_RR), 739
  • sending, 458–460
  • used by NPTL, 693
  • recv(), 426, 673, 1259–1260
  • recvfrom(), 426, 673, 1160–1161
  • recvmmsg(), 1284
  • recvmsg(), 426, 673, 1284
  • reentrancy, 556
  • regular file, 27, 282
  • tail packing, 260, 307
  • removexattr(), 286, 316, 345
  • rename(), 286, 300, 345, 348–349, 426, 800
  • renameat(), 365, 426
  • NPTL nonconformance, 694
  • unrepresentable, 759–760
  • rewinddir(), 354
  • rmdir(), 286, 300, 345, 351, 426, 800
  • Robins, A.V., xli, xlii
  • Romanow, J., 1194
  • of a process, 225, 367–368, 604, 613
  • Rosen (2005), 6, 1443
  • Rosen, L., 1443
  • Rothwell, S., xli
  • Rubini, A., 1438
  • rusage.c, 1432
  • rusage_wait.c, 1432
  • Rusling, D., 255

INDEX The Linux Programming Interface - ! Michael Kerrisk.txt

S

  • S_ISBLK(), 282
  • S_ISCHR(), 282
  • S_ISDIR(), 282
  • S_ISLNK(), 282
  • S_ISREG(), 282
  • sa_family_t data type, 65, 1154, 1165, 1202, 1203, 1204
  • SA_SIGINFO constant, 417, 437–442, 458, 1352, 1353
  • Santos, J., 1441
  • Sastry, N., 1438
  • sbrk(), 140, 761
  • Scalmazzi, C., xlii
  • scandir(), 354
  • scatter-gather I/O, 99–102
  • sched_getaffinity(), 750
  • sched_getparam(), 744
  • sched_rr_get_interval(), 747
  • sched_set.c, 743
  • sched_setaffinity(), 749, 801
  • sched_setparam(), 742, 801
  • sched_yield(), 747
  • Schröder, M., xli
  • Schüpbach, W.M.M., xlii
  • Schwaiger, M., xli
  • Schwartz, A., 1439
  • scm_cred_recv.c, 1285
  • scm_cred_send.c, 1285
  • scm_rights_recv.c, 1284
  • SECBIT_KEEP_CAPS constant, 615, 812, 813, 816
  • seek_io.c, 84
  • select(), 426, 673, 1331–1334, 1389, 1439
  • sem_close(), 1058, 1093
  • sem_destroy(), 1058, 1102–1103
  • sem_getvalue(), 1058, 1097
  • sem_init(), 1058, 1100–1101
  • sem_open(), 1058, 1090–1091
  • sem_post(), 426, 1058, 1096
  • sem_t data type, 882, 1058, 1059, 1090, 1091, 1093, 1094, 1095, 1096, 1097, 1099, 1100, 1101, 1103
  • sem_timedwait(), 673, 1095–1096
  • sem_trywait(), 1095
  • sem_unlink(), 1058, 1093
  • sem_wait(), 673, 1058, 1094–1095
  • semctl(), 922, 969–972
  • semget(), 922, 969, 991
  • semid_ds structure, 922, 970, 971, 972–973, 976
  • semncnt value, 972, 974, 985
  • semop(), 922, 971, 972, 973, 978–980, 991
  • semun union, 969, 970
  • semun.h, 970
  • SEMVMX limit, 988, 991, 992
  • semzcnt value, 972, 974, 985
  • send(), 426, 673, 1259–1260
  • sendto(), 426, 673, 1160–1161
  • affinity, 1247
  • farm, 1247
  • pool, 1246
  • leader, 39, 700, 705
  • set_mempolicy(), 615
  • setbuf(), 238, 532
  • setegid(), 174–175, 181, 785, 800
  • setenv(), 128–130, 657, 1426
  • setenv.c, 1426
  • seteuid(), 174–175, 181, 784, 801
  • setfsgid(), 178, 181, 800
  • setfsuid(), 178, 181, 801
  • setgid(), 173–174, 181, 426, 786, 800
  • setgrent(), 161, 657
  • set-group-ID program, 146, 147, 168–170, 266, 564, 569, 581, 615, 784, 854, 874, 875
  • setitimer(), 16, 390, 392, 395, 479–481, 485, 486, 488, 691, 694
  • setkey(), 657
  • setpgid(), 426, 691, 693, 702–704
  • setpgrp(), 704
  • setpwent(), 160–161, 657
  • setregid(), 175–176, 181, 800
  • setresgid(), 177–178, 181, 800
  • setresuid(), 177–178, 181, 801
  • setreuid(), 175–176, 181, 786, 801
  • setrlimit(), 755–757, 801
  • setsid(), 426, 691, 693, 705, 768, 1377
  • setspent(), 161
  • setuid(),173–174, 181, 426, 801
  • set-user-ID program, 33, 129, 146, 147, 168–170, 266, 564, 569, 581, 615, 690, 718, 784, 854, 874, 875
  • setutxent(), 657, 821
  • setvbuf(), 237–238, 532
  • setxattr(), 286, 314–315, 329, 345
  • soname, 840–843, 846–847
  • using, 839–840
  • shm_open(), 801, 1058, 1109–1110
  • shm_unlink(), 1058, 1114
  • SHMALL limit, 1014, 1015
  • shmat(), 922, 999–1001, 1013, 1014
  • shmctl(), 922, 1011–1012
  • shmdt(), 922, 1000–1001, 1013, 1014
  • shmget(), 922, 998–999, 1014
  • SHMMNI limit, 1014, 1015
  • Shukla, A., 1439
  • shutdown(), 426, 1256–1257
  • SIG_IGN constant, 398, 412, 416, 419, 578
  • SIGABRT signal, 390, 392, 396, 433
  • sigaddset(), 407, 426
  • SIGALRM signal, 390, 396, 480, 484, 486, 488
  • sigaltstack(), 417, 434–435, 578, 691, 693
  • sigandset(), 408
  • SIGBUS signal, 390, 396, 439, 440, 441, 453, 683, 1021, 1030
  • SIGCHLD signal, 390, 391, 396, 440, 441, 514, 545, 551, 555–561, 583, 590, 605, 609, 697, 717, 755, 1431
  • ignoring, 559–561
  • SIGCONT signal, 391, 396, 450, 489, 544, 545, 546, 550, 559, 717, 718, 720, 727
  • sigdelset(), 407, 426
  • SIGEMT signal, 391, 396, 397, 453
  • sigfillset(), 407, 426
  • SIGFPE signal, 391, 396, 439, 440, 441, 453, 683
  • sighold(), 475
  • SIGHUP signal, 39, 391, 396, 451, 700, 706, 709–714, 725–729, 772–775
  • sigignore(), 475–476
  • SIGILL signal, 391, 396, 439, 440, 441, 453, 683
  • siginfo_t structure, 65, 437, 438–442, 460, 468, 471, 472, 499–500, 550, 551–552, 1079, 1353–1354
  • SIGINT signal, 392, 396, 451, 583, 700, 720, 725, 1296, 1297, 1302, 1304
  • siginterrupt(), 16, 419, 444–445
  • siginterrupt.c, 1429
  • SIGIO signal, 392, 396, 397, 440, 441, 1347
  • SIGKILL signal, 392, 393, 396, 411, 450, 761, 764, 772, 1040
  • siglongjmp(), 151, 429–430, 452
  • sigmask(), 476–477
  • sigmask_longjmp.c, 432
  • caught, 389
  • generation, 388
  • ignored, 389, 398
  • mask, 38, 388, 410, 578, 613, 683
  • pending, 38, 388, 389, 411–415, 578, 613, 683
  • queuing, 412–414, 422, 456, 457
  • reliable, 390, 455
  • sending, 401–405
  • unreliable, 454
  • used for IPC, 474
  • waiting for, 418, 464–471
  • terminating, 428–433
  • use of errno within, 427
  • use of nonlocal goto within, 429–433
  • signal stack, alternate, 65, 434–437, 578, 613, 683, 691, 693, 764
  • signal(), 397–398, 426, 604
  • sigorset(), 408
  • sigpause(), 426, 475–477, 673, 674
  • sigpending(), 411–412, 426, 683
  • SIGPIPE signal, 392, 396, 683, 895, 903, 912, 918, 1159, 1220, 1256, 1260
  • sigprocmask(), 410–411, 426, 684
  • SIGPROF signal, 392, 396, 480
  • SIGPWR signal, 391, 392, 396
  • sigqueue(), 426, 439, 441, 458–460, 800
  • SIGQUIT signal, 393, 396, 451, 583, 700, 725, 1296, 1298
  • sigrelse(), 475
  • SIGSEGV signal, 120, 140, 146, 151, 393, 396, 439, 440, 441, 453, 523, 683, 764, 1000, 1021, 1030, 1046, 1051
  • sigset(), 426, 475
  • sigset_t data type, 65, 407, 408, 410, 411, 416, 437, 465, 468, 471, 684, 685, 1369
  • sigsetmask(), 476–477
  • SIGTRAP signal, 394, 396, 442
  • SIGTSTP signal, 394, 396, 445, 450, 451, 700, 715, 717, 720, 725, 790, 1296, 1299, 1312
  • SIGTTIN signal, 394, 396, 445, 450, 451, 717, 718, 725
  • SIGTTOU signal, 394, 396, 445, 450, 451, 717, 718, 725, 1293, 1303
  • SIGURG signal, 394, 396, 397, 1283
  • sigval union, 459, 496, 1078
  • sigvec(), 476
  • SIGVTALRM signal, 395, 396, 480
  • sigwait(), 685–686, 673
  • sigwaitinfo(), 468, 673
  • SIGWINCH signal, 395, 396, 1319, 1320, 1395
  • SIGXFSZ signal, 395, 396, 761
  • simple_pipe.c, 896
  • version 3 (SUSv3), 13–15, 17, 1440
  • size_t data type, 65, 66, 79, 80, 98, 99, 141, 148, 149, 150, 179, 193, 237, 238, 314, 315, 316, 350, 363, 435, 749, 750, 941, 943, 998, 1012, 1020, 1023, 1031, 1037, 1041, 1046, 1049, 1051, 1054, 1073, 1075, 1077, 1161, 1200, 1206, 1214, 1218, 1254, 1259, 1261
  • sleep(), 426, 487–488, 673
  • Smith, M., xliii
  • Snader (2000), 1235, 1275, 1443
  • Snader, J.C., xlii, 1443
  • example of use, 1168, 1169, 1173, 1209, 1221, 1224
  • socket, 282, 392, 883, 1149–1163
  • identified by 4-tuple, 1280
  • out-of-band data, 394, 1259, 1260, 1283, 1288, 1331, 1343
  • pair, 1174
  • raw, 800, 1184
  • remote, 1152
  • socket(), 426, 801, 1150, 1152, 1153
  • example of use, 1166, 1169, 1172, 1173, 1208, 1209, 1221, 1224, 1228
  • socketpair(), 426, 1174–1175
  • socklen_t data type, 65, 1153, 1154, 1157, 1158, 1161, 1218, 1231, 1263, 1278
  • Spafford, G., 1439
  • spawn, 514
  • splice(), 1262
  • Spraul, M., xli
  • spurious wake-up, 648
  • ssize_t data type, 65, 66, 79, 80, 98, 99, 102, 315, 316, 350, 943, 1075, 1077, 1161, 1259, 1261
  • stack, 31, 116, 121–122, 612, 764, 1051
  • unwinding, 133
  • stat(), 106, 279–283, 325, 345, 426, 907, 1428
  • stat64(), 105
  • statfs(), 277, 345
  • statvfs(), 276–277, 345
  • fork() and, 537–538
  • Steele, G.L., 1440
  • Stevens (1994), 1190, 1210, 1235, 1256, 1267, 1268, 1272, 1443
  • Stevens (1999), 20, 975, 1087, 1105, 1108, 1143, 1146, 1421, 1443
  • Stevens (2004), 1151, 1162, 1184, 1188, 1203, 1210, 1213, 1246, 1254, 1270, 1272, 1275, 1278, 1279, 1282, 1283, 1285, 1286, 1328, 1330, 1374, 1421, 1444
  • Stevens (2005), 20, 30, 222, 487, 527, 561, 731, 821, 1118, 1146, 1383, 1421, 1444
  • Stewart (2001), 1286, 1444
  • Stewart, R.R., 1444
  • St. Laurent (2004), 6, 1443
  • St. Laurent, A.M., 1443
  • Stone (2000), 1190, 1444
  • Stone, J., 1444
  • strcoll(), 202
  • strftime(), 193, 194, 198, 203
  • strlcpy(), 793
  • strncpy(), 793
  • strptime(), 195–196
  • strtok(), 657
  • strtok_r(), 658
  • strxfrm(), 202
  • Suisted, R., xlii
  • supplementary group IDs, 33, 172, 178–180, 613
  • svmsg_info.c, 952
  • svmsg_ls.c, 953
  • svmsg_rm.c, 947
  • svsem_demo.c, 968
  • svsem_info.c, 993
  • svsem_mon.c, 973
  • svsem_op.c, 982
  • svsem_rm.c, 985
  • svsem_setall.c, 974
  • svshm_info.c, 1015
  • svshm_mon.c, 1434
  • svshm_rm.c, 1007
  • svshm_xfr.h, 1002
  • swap area, 119, 254
  • swapcontext(), 442
  • swapoff(), 254, 345, 801
  • swapon(), 254, 345, 801
  • Sweet, M., 1322
  • Swift, J., 1198
  • Swigg, T., xli
  • following (dereferencing), 28
  • sync(), 241, 242, 1032
  • setting timeout on, 486–487
  • key, 64, 923, 925–927
  • listing, 934–935
  • disadvantages, 961–962
  • sending, 940–942
  • disadvantages, 993
  • initialization, 971, 974, 975–978
  • starvation, 986
  • undo value (semadj), 533, 607, 614, 619, 691, 693, 986–988, 991
  • detaching, 1000
  • system(), 582–588, 656, 673

INDEX The Linux Programming Interface - ! Michael Kerrisk.txt

T

  • t_clone.c, 601
  • t_ftok.c, 1433
  • t_getopt.c, 1408
  • t_kill.c, 405
  • t_mmap.c, 1028
  • t_sched_getaffinity.c, 750
  • t_sched_setaffinity.c, 750
  • t_setsid.c, 706
  • t_sigwaitinfo.c, 470
  • t_stat.c, 284
  • t_statfs.c, 277
  • t_statvfs.c, 277
  • t_umask.c, 302
  • Taylor, I.L., 1444
  • tcdrain(), 426, 673, 718, 727, 1293, 1316–1317
  • tcflow(), 426, 718, 727, 1293, 1316–1317
  • tcflush(), 426, 718, 727, 1293, 1316–1318
  • tcgetattr(), 426, 1291–1292
  • example of use, 1301, 1306, 1310, 1311, 1313, 1314, 1392
  • tcgetpgrp(), 426, 708–709
  • tcgetsid(), 706
  • delayed ACK, 1191
  • sequence number, 1191, 1266, 1268
  • three-way handshake, 1270
  • vs. UDP, 1282–1283
  • TCP/IP, 1179–1195, 1438, 1440, 1441, 1443, 1444, 1445
  • tcsendbreak(), 426, 718, 727, 1293, 1316–1318
  • tcsetattr(), 426, 718, 727, 1291–1293
  • example of use, 1301, 1306, 1311, 1313, 1314, 1315, 1387, 1392
  • tcsetpgrp(), 426, 708–709, 718, 727
  • tee(), 1262
  • tell(), 82
  • disabling echoing of input, 1306
  • flags, 1301–1306
  • flushing, 1318
  • flushing, 1318
  • example of use, 1293, 1301, 1306, 1310–1311, 1313
  • tgkill(), 441, 684
  • Thomas, M., 1194
  • Thomson, J., 1194
  • detached, 627, 628
  • exec() and, 673, 686
  • exit() and, 687
  • fork() and, 673, 686
  • joining, 625–627
  • comparing IDs, 624
  • three-way handshake, TCP, 1270
  • Tilk, K., xlii
  • time_t data type, 65, 186, 187, 188, 189, 190, 280, 283, 287, 290, 471, 480, 488, 498, 747, 830, 948, 972, 1012, 1333
  • profiling, 392, 480
  • timer overrun, 495, 503–504, 505
  • timer_getoverrun(), 426
  • times(), 206–207, 210, 426, 560, 619, 691, 694, 755
  • timespec structure, 289, 290, 471, 488, 491, 492, 493, 498, 645, 747, 980, 1077, 1096, 1369
  • specifying to a program, 198–200
  • tkill(), 441
  • tlpi_hdr.h, 51
  • tm structure, 188, 189, 190, 191, 193, 195, 196
  • tmpnam(), 109, 656
  • Todino-Gonguet, G., 1442
  • Törring, J.T., xli
  • translation look-aside buffer, 527, 999, 1027
  • Troan, E.W., 1440
  • Tromey, T., 1444
  • truncate(), 103, 286, 345, 395, 1139, 1142
  • ttySetRaw(), 1310
  • Tweedie, S., xli
  • tzset(), 198

U

  • uClibc, 47
  • ud_ucase_cl.c, 1173
  • ud_ucase_sv.c, 1172
  • vs. TCP, 1282–1283
  • uid_t data type, 65, 157, 173, 174, 175, 177, 178, 280, 292, 330, 438, 927
  • uint32_t data type, 377, 379, 472, 1199, 1203, 1204, 1357
  • Ultrix, 4
  • umask(), 301, 309, 426, 604. See also process, umask
  • umount(), 269–270, 607, 801
  • UNIX, 1, 1437, 1441, 1444
  • unlink(), 109, 286, 300, 345, 346, 426, 800, 1145, 1146
  • unlinkat(), 365, 426
  • unlockpt(), 1380, 1382
  • unsetenv(), 129, 657, 1426
  • updwtmpx(), 827
  • urgent data (socket), 394, 396, 1267, 1268, 1283, 1439
  • us_xfr.h, 1167
  • us_xfr_cl.c, 1169
  • us_xfr_sv.c, 1168
  • us_xfr_v2_cl.c, 1435
  • us_xfr_v2_sv.c, 1435
  • usageErr(), 53–54
  • uselib(), 345
  • utime(), 285, 286, 287–288, 345, 426, 800
  • utimes(), 286, 345, 288, 426

V

  • Vahalia (1996), 24, 138, 250, 278, 342, 630, 919, 1044, 1422, 1444
  • Vargas, B.L., xli, xliii
  • Vargas, C.E.K., xliii
  • vfork(), 16, 523–525, 530, 609
  • vhangup(), 801
  • unified, 1032
  • vmsplice(), 1262

W

  • wait morphing, 647
  • wait(), 32, 426, 514, 541–542, 673, 690
  • wait3(), 552–553, 609, 754
  • wait4(), 552–553, 609, 754
  • waitid(), 550–552, 610, 673
  • waitpid(), 426, 544–545, 609, 673
  • Wallach, D.S., 1438
  • Wheeler, D., 795, 857
  • Wilhelm, S., 1442
  • write(), 70, 80, 286, 395, 426, 673, 800, 1138
  • writev(), 99–100, 102, 286, 673
  • Wronski, M., xli

X

  • XBD, 14
  • XCU, 14
  • Xen, 789
  • Xie, Q., 1444
  • XRAT, 14
  • XSH, 14
  • XSI extension, 15, 62, 63, 221

Y

  • Yourtchenko, A., 1439

Z

  • Zamuner, U., xli
  • Zemlin, J., xlii

Fair Use Sources


Cloud Monk is Retired (for now). Buddha with you. © 2005 - 2024 Losang Jinpa or Fair Use. Disclaimers

SYI LU SENG E MU CHYWE YE. NAN. WEI LA YE. WEI LA YE. SA WA HE.


linux_programming_interface_index.txt · Last modified: 2022/02/17 05:46 by 127.0.0.1