Linux, kernel, systemd, init, GRUB (GRand Unified Bootloader), initramfs, ext4 (Fourth Extended Filesystem), XFS, Btrfs (B-Tree File System), zram, zswap, cgroups (Control Groups), namespaces, selinux (Security-Enhanced Linux), AppArmor, iptables, nftables, firewalld, auditd, journald, syslog, logrotate, dmesg, udev, eBPF (Extended Berkeley Packet Filter), KVM (Kernel-based Virtual Machine), QEMU (Quick Emulator), VirtIO, LXC (Linux Containers), Docker, Podman, CRI-O, Kubernetes Integration, etcd, Linux Control Groups, LXD (Linux Daemon), Snap, Flatpak, AppImage, RPM (Red Hat Package Manager), dpkg (Debian Package Manager), APT (Advanced Package Tool), YUM (Yellowdog Updater, Modified), DNF (Dandified YUM), Pacman, Zypper, Portage, emerge, Nix, pkg-config, ldconfig, make, cmake, autoconf, automake, configure, GCC (GNU Compiler Collection), Clang, glibc (GNU C Library), musl, libstdc++, libc, binutils, GNU Coreutils, Bash (Bourne Again Shell), Zsh (Z Shell), Fish Shell, dash, sh, SSH (Secure Shell), sshd (SSH Daemon), scp (Secure Copy), rsync, SCP (Secure Copy Protocol), wget, curl, ftp, sftp, TFTP (Trivial File Transfer Protocol), NFS (Network File System), CIFS (Common Internet File System), Samba, autofs, mount, umount, lsblk, blkid, parted, fdisk, gdisk, mkfs, fsck, tune2fs, xfs_repair, btrfs-progs, mdadm (Multiple Device Admin), RAID (Redundant Array of Independent Disks), LVM (Logical Volume Manager), thin provisioning, lvcreate, lvremove, vgcreate, vgremove, pvcreate, pvremove, multipath-tools, ISCSI (Internet Small Computer Systems Interface), nvme-cli, dm-crypt, cryptsetup, LUKS (Linux Unified Key Setup), dracut, GRUB Customizer, PXE (Preboot Execution Environment), tftpboot, Syslinux, LiveCD, LiveUSB, mkbootdisk, dd, cpio, tar, gzip, bzip2, xz, 7zip, zstd, rsyslog, sysctl, lsmod, modprobe, depmod, modinfo, insmod, rmmod, kmod, dkms (Dynamic Kernel Module Support), kernel tuning, kernel headers, kernel modules, patch, diff, strace, ltrace, ptrace, perf, htop, top, iotop, atop, vmstat, mpstat, sar, dstat, iostat, uptime, free, df, du, ps, pidstat, nice, renice, kill, pkill, killall, jobs, bg, fg, wait, nohup, screen, tmux, cron, crontab, at, anacron, systemctl, service, chkconfig, rc-update, update-rc.d, ntpd (Network Time Protocol Daemon), chronyd, hwclock, timedatectl, ntpdate, ufw (Uncomplicated Firewall), iptables-save, iptables-restore, fail2ban, denyhosts, tcp_wrappers, libcap, setcap, getcap, auditctl, ausearch, kernel parameters, boot parameters, sysfs, procfs, debugfs, tmpfs, ramfs, overlayfs, aufs, bind mounts, chroot, pivot_root, overlay2, network namespaces, bridge-utils, iproute2, ip, ifconfig, route, netstat, ss, arp, ping, traceroute, mtr, tcpdump, ngrep, nmap, arp-scan, ethtool, iwconfig, iw, wpa_supplicant, hostapd, dnsmasq, networkmanager, nmcli, nmtui, system-config-network, dhclient, dhcpd, isc-dhcp-server, bind9, named, unbound, nslookup, dig, resolvconf, iptables, nftables, firewalld, conntrack, ipset, snort, suricata, tcp_wrappers, rkhunter, chkrootkit, clamav, lynis, openvpn, strongswan, libreswan, openconnect, network namespaces, virtual ethernet, veth, tap interfaces, tun interfaces, vlan, bridge, brctl, ovs-vsctl, openvswitch, macvlan, ipvlan, bonding, teamd, network teaming, multipath, multipath-tools, route tables, ip rule, ip route, policy routing, qos, tc (Traffic Control), htb, fq_codel, cake, iptables NAT, iptables MASQUERADE, squid, socks5, privoxy, tor, iptables DNAT, iptables SNAT, iptables REDIRECT, conntrack, stateful firewall, stateless firewall, tcp_window_scaling, tcp_timestamps, tcp_sack, tcp_rmem, tcp_wmem, tcp_no_metrics_save, tcp_ecn, netem, ip6tables, ipset, ebtables, arptables, bridge-nf, br_netfilter, openvswitch, gre tunnels, ipip tunnels, vxlan, gretap, macsec, macvlan, ipvlan, wireguard, strongswan, libreswan, xfrm, ipsec, isakmpd, racoon, openswan, ikev2, ikev1, vpn tunnels, gre tunnels, vxlan tunnels, fou tunnels, ipip tunnels.
Linux Core Utilities commands - GNU Core Utilities command-line interface programs
This list should really only include standard universal commands that come with GNU Core Utilities.
This should really only include standard universal commands that come with all Linux distributions adhering to the Single UNIX Specification.
Really this is “Unix programs”, since there are no commands in Unix, they are programs except for shell builtins.
Unix command-line interface programs and shell builtins:
Unix user environment commands:
[[env]]
Unix text processing commands:
[[alias (command) ]] | [[ alias]]
Note: Networking is not part of SUS
Unix network utility commands:
Unix software development commands: Note: There are a huge number of Linux software development tools / Unix software development tools; this list should be restricted to ones that are standardized as part of Unix, i.e., those marked SD, CD], or FD (http://pubs.opengroup.org/onlinepubs/9699919799/help/codes.html) within the Unix/POSIX specifications
Linux Commands (ls, cd, pwd, cp, mv, rm, mkdir, rmdir, touch, cat, less, head, tail, grep, find, chmod, chown, chgrp, tar, gzip, gunzip, df, du, ps, top, kill, man, ssh, scp, rsync, vim, nano, sed, awk, ping, ifconfig, netstat, route, traceroute, dig), Linux Fundamentals, Linux Inventor: Linus Torvalds says “Linux sucks | 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 - Glossaire de Linux - French, 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 Plus Plus systems programming | C++ systems programming, Rust systems programming, Awesome systems programming (navbar_systemprogramming)
The function subentries labeled “definition of” point to where the function prototype appears and, when applicable, to the source code for the function. Functions defined in the text that are used in later examples, such as the set_fl function in Figure 3.12, are included in this index. The definitions of functions that are part of the larger examples (Chapters 17, 19, 20, and 21) are also included to help in going through these examples. Also, significant functions and constants that occur in any of the examples in the text, such as select and poll, are also included in this index. Trivial functions that occur frequently, such as printf, are sometimes not referenced when they occur in examples.
. , see current directory
.. , see parent directory
386BSD, xxxi, 34
3BSD, 234
4.1BSD, 525
4.2BSD, 18, 34, 81, 121, 129–130, 183, 277, 326, 329, 469, 502, 508, 521, 525, 589
4.3BSD, xxxi, 33–34, 36, 49, 201, 257, 267, 289, 313, 318, 329, 366, 482, 535, 735, 898, 951
Reno, xxxi, 34, 76
Tahoe, xxxi, 34, 951
4.4BSD, xxvi, xxxi, 21, 34, 74, 112, 121, 129, 149, 234, 329, 535, 589, 735, 744, 951
abort function, 198, 236, 241, 272, 275, 313, 317–319, 331, 365–367, 381, 447, 900
definition of, 365–366
absolute pathname, 5, 8, 43, 50, 64, 136, 141–142, 260, 553, 911
accept function, 148, 331, 451, 608–609, 615, 617, 635, 639–640, 648, 817
definition of, 608
access function, 102–104, 121, 124, 331, 452
definition of, 102
Accetta, M., 35
login, 186–187
process, 269–275
acct function, 269
acct structure, 270, 273
Adams, J., 293
add_job function, 814, 820, 823, 827
definition of, 820
add_option function, 831, 834
definition of, 831
addressing, socket, 593–605
addrinfo structure, 599–603, 614, 616, 618, 620, 622, 800, 802, 804, 807, 813–814, 816, 819, 833
add_worker function, 814, 824, 828
definition of, 828
adjustment on exit, semaphore, 570–571
AES (Application Environment Specification), 32
AF_INET constant, 590–591, 595–596, 598, 601, 603–604, 802, 808
AF_INET6 constant, 590, 595–596, 601
AF_UNIX constant, 590, 601, 630, 632, 635, 637, 640–641, 941
Aho, A. V., 262, 947
AI_CANONNAME constant, 603, 616, 618, 623, 802
AI_NUMERICHOST constant, 603
AI_NUMERICSERV constant, 603
aio_cancel function, 514–515
definition of, 514
aio_error function, 331, 513, 515, 519–520
definition of, 513
aio_fsync function, 512–513, 520
definition of, 513
AIO_LISTIO_MAX constant, 515–516
AIO_PRIO_DELTA_MAX constant, 515–516
aio_read function, 512–513, 515, 518
definition of, 512
aio_return function, 331, 513, 519–520
definition of, 513
aio_suspend function, 331, 451, 514, 520
definition of, 514
aio_write function, 512–513, 515, 519
definition of, 512
AI_V4MAPPED constant, 600, 603
AIX, 35, 334
alarm function, 313, 317, 331–332, 335, 338–343, 357, 373–374, 381–382, 620–621, 924
definition of, 338
Almquist, K., 4
already_running function, 475–478
definition of, 474
ALTWERASE constant, 676, 682, 685
American National Standards Institute, see ANSI
Andrade, J. M., 560, 947
ANSI (American National Standards Institute), 25
Application Environment Specification, see AES
apue_db.h header, 745, 753, 757, 761
apue.h header, 7, 9–10, 247, 324, 489–490, 635, 755, 895–898
Architecture, UNIX, 1–2
ARG_MAX constant, 40, 43, 47, 49, 251
arguments, command-line, 203
Arnold J. Q., 206, 947
assignment-allocation character, 162
asynchronous I/O, 501, 509–520
asynchronous socket I/O, 627
async-signal safe, 330, 446, 450, 457, 461–462, 927
at program, 259, 472
AT_EACCESS constant, 103
atexit function, 40–41, 43, 200, 202, 226, 236, 394, 731, 920
definition of, 200
ATEXIT_MAX constant, 40–41, 43, 49, 52
AT_FDCWD constant, 65, 94, 102, 106, 110, 116–117, 120, 123–124, 127, 129, 553
atol function, 765–767, 818, 823
atomic operation, 39, 44, 59, 63, 77–79, 81, 116, 149, 359, 365, 488, 553, 566, 568, 570, 945
AT_SYMLINK_FOLLOW constant, 116
AT_SYMLINK_NOFOLLOW constant, 94, 106, 110, 127
AT&T, xix, 6, 33, 174, 336, 507, 948
automatic variables, 205, 215, 217, 219, 226
awk program, 44, 46, 262–264, 552, 950
B150 constant, 692
B1800 constant, 692
B19200 constant, 692
B200 constant, 692
B2400 constant, 692
B300 constant, 692
B38400 constant, 692
B4800 constant, 692
B50 constant, 692
Bach, M. J., xix, xxxii, 74, 81, 112, 116, 229, 907, 948
background process group, 296, 300, 302, 304, 306–307, 309, 321, 369, 377, 944
Barkley, R. E., 948
barriers, 418–422
.bash_login file, 289
Bass, J., 485
baud rate, terminal I/O, 692–693
Berkeley Software Distribution, see BSD
bibliography, alphabetical, 947–953
big-endian byte order, 593, 791
bind function, 331, 604, 609, 624–625, 634–635, 637–638, 641
definition of, 604
block special file, 95, 138–139
Bolsky, M. I., 548, 948
Bostic, K., xxxii, 33, 74, 112, 116, 525, 951
Keith, 229, 236
Bourne, S. R., 3
Bourne shell, 3, 53, 90, 210, 222, 289, 299, 303, 372, 497, 542, 548, 702, 935, 950
Bourne-again shell, 3–4, 53, 85, 90, 210, 222, 289, 300, 548
Bovet, D. P., 74, 948
BREAK character, 677, 682, 685, 688, 690, 694, 708
BRKINT constant, 676, 685, 688, 706–708
BS0 constant, 685
BS1 constant, 685
BSD (Berkeley Software Distribution), 34, 65, 111, 175, 286, 289, 291, 293, 296–297, 299, 482, 501, 509–511, 532, 596–597, 630, 726–727, 734, 742
BSD Networking Release 1.0, xxxi, 34
BSD Networking Release 2.0, xxxi, 34
BSD/386, xxxi
BSDLY constant, 676, 684–685, 689
buf_args function, 656–658, 668–670, 897
definition of, 657
buffer cache, 81
buffering, standard I/O, 145–147, 231, 235, 265, 367, 552, 721, 752
BUFSIZ constant, 49, 147, 166, 220
build_qonstart function, 814, 817, 822
definition of, 822
BUS_ADRALN constant, 353
BUS_ADRERR constant, 353
BUS_OBJERR constant, 353
byte order, xxii, 593–594, 792, 810, 825, 831, 834, 842, 861, 865
big-endian, 593, 791
little-endian, 593
ISO, 25–26, 153, 950
C shell, 3, 53, 222, 289, 299, 548
c99 program, 58, 70
buffer, 81
page, 81
CAE (Common Application Environment), 32
calendar time, 20, 24, 59, 126, 189, 191–192, 264, 270
calloc function, 207–208, 226, 544, 760, 920
definition of, 207
canonical mode, terminal I/O, 700–703
Carges, M. T., 560, 947
cat program, 89, 112, 123, 301, 304, 734–735, 748, 944
CBAUDEXT constant, 675, 685
cbreak terminal mode, 672, 704, 708, 713
cc program, 6, 57, 206
CCAR_OFLOW constant, 675, 685, 689
cc_t data type, 674
Cesati, M., 74, 948
cfgetispeed function, 331, 677, 692
definition of, 692
cfgetospeed function, 331, 677, 692
definition of, 692
cfsetispeed function, 331, 677, 692
definition of, 692
cfsetospeed function, 331, 677, 692
definition of, 692
character special file, 95, 138–139, 699
CHARCLASS_NAME_MAX constant, 39, 49
chdir function, 8, 121, 135–137, 141, 222, 288, 331, 468, 912
definition of, 135
Chen, D., 949
CHILD_MAX constant, 40, 43, 49, 233
chmod function, 106–108, 121, 125, 331, 452, 558, 641, 944
definition of, 106
chown function, 55, 109–110, 120–121, 125, 288, 331, 452, 558, 944
definition of, 109
chroot function, 141, 480, 910, 928
CIBAUDEXT constant, 675, 685
CIGNORE constant, 675, 685
Clark, J. J., xxxii
CLD_KILLED constant, 353
CLD_TRAPPED constant, 353
clearenv function, 212
clearerr function, 151
definition of, 151
cli_args function, 656–658, 668–669
definition of, 658
cli_conn function, 636–637, 640, 659, 665, 897
definition of, 636, 640
client_add function, 662, 665, 667
definition of, 661
client_alloc function, 661–662, 668
definition of, 660
client_cleanup function, 814, 824, 829
definition of, 829
definition of, 661
client–server model, 479–480, 585–587
client_thread function, 814, 817, 824
definition of, 824
CLOCAL constant, 318, 675, 685
clock tick, 20, 42–43, 49, 59, 270, 280
definition of, 190
clock_gettime function, 189–190, 331, 408, 414, 437, 439
definition of, 189
clock_nanosleep function, 373–375, 437, 439, 451, 462
definition of, 375
CLOCK_PROCESS_CPUTIME_ID constant, 189
CLOCK_REALTIME constant, 189–190, 408, 437, 439, 581
clock_settime function, 190, 439
definition of, 190
clock_t data type, 20, 58–59, 280
CLOCK_THREAD_CPUTIME_ID constant, 189
clone function, 229
close function, 8, 52, 61, 66, 80–81, 124, 128, 331, 451, 468, 474, 492, 532, 537–539, 544, 550, 553, 560, 577–578, 587, 592–593, 609, 616, 618, 625, 638–639, 641, 654–655, 657, 665, 667–669, 725–726, 728–729, 739–740, 761, 823, 826–827, 829, 833, 837
definition of, 66
closedir function, 5, 7, 130–135, 452, 698, 823, 910
definition of, 130
definition of, 470
close-on-exec flag, 80, 83, 252–253, 479–480, 492
clrasync function, definition of, 940
clr_fl function, 85, 482–483, 896, 937
clri program, 122
CMSG_DATA function, 645–646, 648, 650, 652
definition of, 645
CMSG_FIRSTHDR function, 645, 652
definition of, 645
cmsghdr structure, 645–647, 649, 651
CMSG_LEN function, 645–647, 649, 651
definition of, 645
CMSG_NXTHDR function, 645, 650, 652
definition of, 645
CMSPAR constant, 675, 685, 690
COLL_WEIGHTS_MAX constant, 39, 43, 49
COLUMNS environment variable, 211
Comer, D. E., 744, 949
command-line arguments, 203
Common Application Environment, see CAE
Common Open Software Environment, see COSE
communication, network printer, 789–843
comp_t data type, 59
Computing Science Research Group, see CSRG
condition variable attributes, 440–441
connect function, 331, 451, 605–608, 610–611, 621, 635, 641–642
definition of, 605
connection establishment, 605–609
connect_retry function, 607, 614, 800, 808, 834
definition of, 606–607
controlling
process, 296–297, 318
terminal, 63, 233, 252, 270, 292, 295–298, 301, 303–304, 306, 309, 311–312, 318, 321, 377, 463, 465–466, 469, 480, 680, 685, 691, 694, 700, 702, 716, 724, 726–727, 898, 953
cooperating processes, 495, 752, 945
Coordinated Universal Time, see UTC
coprocesses, 548–552, 721, 737
core dump, 74, 928
core file, 111, 124, 275, 315, 317, 320, 332, 366, 681, 703, 909, 920, 922
COSE (Common Open Software Environment), 32
count, link, 44, 59, 114–117, 130
cpio program, 127, 142, 910–911
CR terminal character, 678, 680, 703
CR0 constant, 685
CR1 constant, 685
CR2 constant, 685
CR3 constant, 685
CRDLY constant, 676, 684–685, 689
creat function, 61, 66, 68, 79, 89, 101, 104, 118, 121, 125, 149, 331, 451, 491, 825–826, 909, 912
definition of, 66
creation mask, file mode, 104–105, 129, 141, 169, 233, 252, 466
cron program, 259, 382, 465, 470, 472–474, 925
CRTSCTS constant, 675, 686
CRTSXOFF constant, 675, 686
crypt function, 287, 298, 304, 442
CS5 constant, 684, 686
CS6 constant, 684, 686
CS7 constant, 684, 686
CS8 constant, 684, 686, 706–708
.cshrc file, 289
CSIZE constant, 675, 684, 686, 706–707
definition of, 654, 659
CSRG (Computing Science Research Group), xx, xxvi, 34
ctermid function, 442, 452, 694, 700–701
definition of, 694
cu program, 500
cupsd program, 465, 793
current directory, 4–5, 8, 13, 43, 50, 65, 94, 100, 115–117, 120, 127, 130, 135–137, 178, 211, 233, 252, 315, 317, 466
Curses, 32
curses library, 712–713, 949, 953
daemon, 463–480
coding, 466–469
conventions, 474–479
daemonize function, 466, 468, 480, 616, 618, 623, 664, 815, 896, 929–930
definition of, 467
Dang, X. T., 206, 949
Darwin, xxii, xxvii, 35
dash program, 372
initialized, 205
uninitialized, 205
data types, primitive system, 58
coarse-grained locking, 752
concurrency, 752–753
fine-grained locking, 752
implementation, 746–750
performance, 781–786
source code, 753–781
database transactions, 952
date functions, time and, 189–196
date program, 192, 196, 371, 919, 944
DATEMSK environment variable, 211
db library, 744, 952
DB structure, 756–758, 760–762, 765–768, 773, 776, 782
_db_alloc function, 757, 760–761
definition of, 760
db_close function, 745, 749, 754, 761
definition of, 745, 761
db_delete function, 746, 752, 754, 768–769, 771, 945
definition of, 746, 768
_db_dodelete function, 757, 768–769, 772, 776, 780–781, 787, 944–945
definition of, 769
db_fetch function, 745, 748–749, 752, 754, 762, 767
definition of, 745, 762
_db_find_and_lock function, 757, 762–763, 767–768, 774–775, 777, 786
definition of, 763
_db_findfree function, 757, 775, 777–778, 781
definition of, 777
_db_free function, 757–758, 761
definition of, 761
DBHANDLE data type, 749, 754, 757, 761–762, 768, 774, 779
_db_hash function, 757, 764, 787
definition of, 764
DB_INSERT constant, 745, 749, 754, 774, 776
dbm library, 743–744, 952
dbm_clearerr function, 442
dbm_nextkey function, 442, 452
dbm_store function, 442, 452
db_nextrec function, 746, 750, 752, 754, 769, 779, 781, 787, 944–945
definition of, 746, 779
db_open function, 745–746, 749, 752, 754–757, 759–761, 781
definition of, 745, 757
_db_readdat function, 757, 762, 768, 780, 945
definition of, 768
_db_readidx function, 757, 764–765, 778, 780, 945
definition of, 765
_db_readptr function, 757, 763, 765, 770, 775–777, 787
definition of, 765
DB_REPLACE constant, 745, 754, 774
db_rewind function, 746, 754, 760, 779, 781
definition of, 746, 779
DB_STORE constant, 745, 754, 774
db_store function, 745, 747, 749, 752, 754, 769, 771, 774, 781, 787
definition of, 745, 774
_db_writedat function, 757, 769, 771–772, 775–777, 781, 787, 944–945
definition of, 771
_db_writeidx function, 522, 757, 759, 770, 772, 775–776, 781, 787, 945
definition of, 772
_db_writeptr function, 757, 759, 770, 773, 775–776, 778
definition of, 773
dd program, 275
deadlock, 234, 402, 490, 552, 721
avoidance, 402–407
Debian Linux distribution, 4
delayed write, 81
DELAYTIMER_MAX constant, 40, 43
descriptor set, 503, 505, 532, 933
detachstate attribute, 427–428
/dev/fd device, 88–89, 142, 696
major, 58–59, 137, 139, 465, 699
minor, 58–59, 137, 139, 465, 699
/dev/log device, 470, 480, 928
dev_t data type, 59, 137–138
devtmpfs file system, 139
/dev/tty device, 298, 304, 312, 694, 700, 740
df program, 141, 910
DIR structure, 7, 131, 283, 697, 822
files and, 4–8
reading, 130–135
directory, 4
current, 4–5, 8, 13, 43, 50, 65, 94, 100, 115–117, 120, 127, 130, 135–137, 178, 211, 233, 252, 315, 317, 466
file, 95
home, 2, 8, 135, 211, 288, 292
ownership, 101–102
parent, 4, 108, 125, 129
root, 4, 8, 24, 139, 141, 233, 252, 283, 910
Directory Services daemon, 185
dirent structure, 5, 7, 131, 133, 697, 822
DISCARD terminal character, 678, 680, 687
definition of, 739
Dorward, S., 229, 952
DOS, 57, 65
dot, see current directory
dot-dot, see parent directory
dprintf function, 159, 452, 945
definition of, 159
drand48 function, 442
DSUSP terminal character, 678, 680, 688
dtruss program, 497
du program, 111, 141, 909
Duff, T., 88
dup function, 52, 61, 74, 77, 79–81, 148, 164, 231, 331, 468, 492–493, 592–593, 907–908, 921
definition of, 79
dup2 function, 64, 79–81, 90, 148, 331, 539, 544, 550–551, 592, 618–619, 655, 728–729, 739–740, 907–908
definition of, 79
E2BIG error, 564
EACCES error, 14–15, 474, 487, 499, 918
EAGAIN error, 16, 376, 474, 482, 484, 487, 496–497, 499, 514, 563, 569–570, 581, 609, 627
EBADF error, 52, 916
EBUSY error, 16, 400, 410, 418
ECHILD error, 333, 351, 371, 546
ECHO constant, 676, 686–687, 701, 705–707, 731
echo program, 203
ECHOCTL constant, 676, 686
ECHOE constant, 676, 686–687, 701, 731
ECHOK constant, 676, 687, 701, 731
ECHOKE constant, 676, 687
ECHONL constant, 676, 687, 701, 731
ECHOPRT constant, 676, 686–687
ed program, 367, 369–370, 496–497
EEXIST error, 121, 558, 584
EFBIG error, 925
group ID, 98–99, 101–102, 108, 110, 140, 183, 228, 233, 256, 258, 558, 587
user ID, 98–99, 101–102, 106, 110, 126, 140, 228, 233, 253, 256–260, 276, 286, 288, 337, 381, 558, 562, 568, 573, 586–587, 637, 640, 809, 918
efficiency
I/O, 72–74
EIDRM error, 562–564, 568–570, 579
EINPROGRESS error, 519–520, 608
EINTR error, 16, 265–266, 301, 327–329, 339, 359, 370, 502, 508, 514, 545–546, 563–564, 569–570, 620
EINVAL error, 42, 47–48, 345, 389, 543, 545–546, 705–707, 774, 914
EIO error, 309, 321, 823–824, 826–827
Ellis, M., xxxii
ENAMETOOLONG error, 65, 637, 640
endgrent function, 183–184, 442, 452
definition of, 183
definition of, 597
definition of, 598
endprotoent function, 452, 598
definition of, 598
endpwent function, 180–181, 442, 452
definition of, 180
definition of, 599
endspent function, 182
definition of, 182
endutxent function, 442, 452
ENOBUFS error, 16
ENOENT error, 15, 170, 445, 745, 774
ENOLCK error, 16
ENOMEM error, 16, 914
ENOSPC error, 16, 445
ENOTDIR error, 592
ENOTRECOVERABLE error, 433
ENOTTY error, 683, 693
environ variable, 203–204, 211, 213, 251, 255, 444–445, 450, 920
environment list, 203–204, 233, 251, 286–288
environment variable, 210–213
COLUMNS , 211
HOME , 210–211, 288
IFS , 269
LANG , 41, 211
LC_ALL , 211
LC_COLLATE , 43, 211
LC_CTYPE , 211
LC_MESSAGES , 211
LC_MONETARY , 211
LC_NUMERIC , 211
LC_TIME , 211
LINES , 211
MALLOC_OPTIONS , 928
MSGVERB , 211
NLSPATH , 211
PAGER , 539, 542–543
PATH , 100, 211, 250–251, 253, 260, 263, 265, 288–289
POSIXLY_CORRECT , 111
PWD , 211
SHELL , 211, 288, 737
TERM , 211, 287, 289
TMPDIR , 211
TZ , 190, 192, 195–196, 211, 919
USER , 210, 288
ENXIO error, 553
EOF constant, 10, 151–152, 154, 164, 175, 545, 547–548, 550–551, 664, 730, 913
EOF terminal character, 678, 680, 686–687, 700, 703
EOL terminal character, 678, 680, 687, 700, 703
EOL2 terminal character, 678, 680, 687, 700, 703
EPERM error, 256
Epoch, 20, 22, 126, 187, 189–190, 640
ERASE terminal character, 678, 680, 686–687, 702–703
ERASE2 terminal character, 678, 681
err_cont function, 897, 899
definition of, 900
err_dump function, 366, 767, 897, 899
definition of, 900
err_exit function, 809, 897, 899
definition of, 900
definition of, 901
errno variable, 14–15, 42, 50, 55, 65, 67, 81, 121, 144, 256, 265, 277, 301, 309, 314, 321, 327–328, 330–331, 333, 337, 339, 345, 351, 359, 371, 376, 380, 384, 386, 446–447, 454, 471, 474, 482, 484, 487, 499, 502, 508, 513–514, 537, 546, 553, 564, 568, 579, 581, 584, 592, 608–610, 627, 637–638, 640, 683, 693, 745, 805, 899, 925, 937
handling, 14–16
recovery, 16
TOCTTOU, 65, 250, 953
err_quit function, 7, 815, 897, 899, 912
definition of, 901
err_ret function, 897, 899, 912
definition of, 899
err_sys function, 7, 897, 899
definition of, 899
ESRCH error, 337
/etc/group file, 17–18, 177, 185–186
/etc/passwd file, 2, 99, 135, 177–178, 180, 182, 185–186
/etc/printer.conf file, 794–795, 799
ETIMEDOUT error, 407, 413, 415, 581, 800
Evans, J., 949
EWOULDBLOCK error, 16, 482, 609, 627
exec function, 10–11, 13, 23, 39–40, 43, 79, 82, 100, 121, 125, 197, 201, 203, 225, 229, 233–234, 249–257, 260–261, 264–266, 269–271, 275, 277, 282–283, 286–288, 290–292, 294, 305, 325, 372, 457, 479, 492, 527, 533, 538, 541, 557, 585, 653–654, 658–659, 669, 716–717, 721, 723, 727, 739, 742, 920, 928, 948
execl function, 249–251, 261, 265–266, 272, 274–275, 283, 288, 331, 370–371, 539, 544, 550–551, 618, 655, 737, 922
definition of, 249
execle function, 249–251, 254, 287, 331
definition of, 249
execlp function, 12–13, 19, 249–251, 253–254, 264–265, 283, 740, 922
definition of, 249
definition of, 249
execve function, 249–251, 253, 331, 922
definition of, 249
execvp function, 249–251, 253, 731–732
definition of, 249
exercises, solutions to, 905–945
_Exit function, 198, 201, 236–237, 239, 331, 365, 367, 388, 447
definition of, 198
_exit function, 198, 201, 235–239, 265–266, 282–283, 331, 365, 367, 370, 381, 388, 447, 921, 924
definition of, 198
exit function, 7, 150, 154, 198–202, 226, 231, 234–239, 246, 249, 265, 271–272, 274–275, 283, 288, 330, 365–366, 388, 447, 466, 542, 705, 732, 742, 817, 830, 895, 920–921, 944
definition of, 198
exit handler, 200
expect program, 720, 739–740, 951
ext2 file system, 129
ext3 file system, 129
ext4 file system, 73, 86, 129, 465
EXTPROC constant, 676, 687
faccessat function, 102–104, 331, 452
definition of, 102
Fagin, R., 744, 750, 949
fatal error, 16
fchdir function, 135–137, 592
definition of, 135
fchmod function, 106–108, 120, 125, 331, 452, 498, 592
definition of, 106
fchmodat function, 106–108, 331, 452
definition of, 106
fchown function, 109–110, 125, 331, 452, 592
definition of, 109
fchownat function, 109–110, 331, 452
definition of, 109
fclose function, 148–150, 172–174, 199, 201, 365, 367, 452, 545, 701, 803
definition of, 150
fcntl function, 61, 77, 80–87, 90, 112, 148, 164, 252–253, 331, 451–452, 480, 482, 485–490, 492, 494–495, 510–511, 592, 626–627, 783, 785, 939, 944
definition of, 82
fdatasync function, 81, 86–87, 331, 451, 513, 592
definition of, 81
FD_CLOEXEC constant, 63, 79, 82–83, 252, 480
FD_CLR function, 503–504, 665, 933
definition of, 503
FD_ISSET function, 503–504, 665, 817, 933
definition of, 503
fdopen function, 148–150, 159, 544, 936
definition of, 148
definition of, 130
fd_pipe function, 630, 655, 739, 896
definition of, 630
fd_set data type, 59, 503–504, 532, 664, 805, 814, 816–817, 932–933, 939
FD_SET function, 503–504, 664–665, 805, 816, 933
definition of, 503
FD_SETSIZE constant, 504, 932–933
F_DUPFD constant, 81–83, 592
F_DUPFD_CLOEXEC constant, 82, 592
FD_ZERO function, 503–504, 664, 805, 933
definition of, 503
Fenner, B., 157, 291, 470, 589, 952
feof function, 151, 157
definition of, 151
ferror function, 10, 151, 154, 157, 273, 538, 543, 550
definition of, 151
fexecve function, 249–250, 253, 331
definition of, 249
FF0 constant, 687
FF1 constant, 687
FFDLY constant, 676, 684, 687, 689
fflush function, 145, 147, 149, 172, 174–175, 366, 452, 547–548, 552, 702, 721, 901, 904, 913
definition of, 147
fgetc function, 150–151, 154–155, 452
definition of, 150
F_GETFD constant, 82–83, 480, 592
F_GETFL constant, 82–85, 592
F_GETLK constant, 82, 486–490
F_GETOWN constant, 82–83, 592, 626
fgetpos function, 157–159, 452
definition of, 158
fgets function, 10, 12, 19, 150, 152–156, 168, 174–175, 214, 216, 452, 538, 543, 548, 550–552, 616, 622, 654, 738, 753, 803, 845, 911, 913, 936
definition of, 152
fgetwc function, 452
fgetws function, 452
FIFOs, 95, 534, 552–556
access permissions, 99–101, 140
character special, 95, 138–139, 699
descriptor passing, 587, 642–652
descriptors, 8–10, 61–62
directory, 95
group, 182–183
holes, 68–69, 111–112
mode creation mask, 104–105, 129, 141, 169, 233, 252, 466
offset, 66–68, 74, 77–78, 80, 231–232, 494, 522, 747–748, 908
ownership, 101–102
pointer, 144
regular, 95
sharing, 74–77, 231
size, 111–112
times, 124–125, 532
truncation, 112
types, 95–98
FILE structure, 131, 143–144, 151, 164, 168, 171–172, 220, 235, 273, 443–444, 538, 542–543, 545, 547, 622, 701, 754, 803, 914, 929
file system, 4, 113–116
devtmpfs , 139
ext2 , 129
ext3 , 129
ext4 , 73, 86, 129, 465
HFS , 87, 113, 116
HSFS , 113
PCFS , 49, 57, 113
S5 , 65
UFS , 49, 57, 65, 113, 116, 129
filename, 4
truncation, 65–66
fileno function, 164, 545, 701, 913
definition of, 164
_FILE_OFFSET_BITS constant, 70
files and directories, 4–8
FILESIZEBITS constant, 39, 44, 49
finger program, 141, 179, 910
FIOASYNC constant, 627, 939–940
FIOSETOWN constant, 627
FIPS, 32–33
Flandrena, B., 229, 952
flock structure, 486, 489–490, 494
definition of, 443
FLUSHO constant, 676, 680, 687
fmemopen function, 171–175, 913
definition of, 171
FNDELAY constant, 482
F_OK constant, 102
fopen function, 6, 144, 148–150, 165, 220, 273, 452, 538–539, 542, 701, 803, 929
definition of, 148
foreground process group, 296, 298, 300–303, 306, 311, 318–322, 369, 377, 680–682, 685, 689, 710, 719, 741, 944
foreground process group ID, 298, 303, 677
fork function, 11–13, 19, 23, 77, 228–237, 241–243, 245–249, 254, 260–261, 264–266, 269–272, 274–275, 277, 282, 286, 288, 290–292, 294, 296, 304, 307–308, 312, 326, 331, 334, 370–372, 381, 457–462, 466–469, 471, 479, 491–493, 498–500, 527, 533–539, 541, 544, 546, 550, 557, 565, 577, 585, 588, 618–619, 642, 653–655, 658–659, 669–670, 716, 721, 723–724, 726–728, 732, 739, 781, 922–923, 927–928, 930–931, 934, 937, 939, 948
definition of, 229
Fowler, G. S., 135, 949, 953
fpathconf function, 37, 39, 41–48, 53–55, 65, 110, 452, 537, 679
definition of, 42
FPE_FLTDIV constant, 353
FPE_FLTINV constant, 353
FPE_FLTOVF constant, 353
FPE_FLTRES constant, 353
FPE_FLTSUB constant, 353
FPE_FLTUND constant, 353
FPE_INTDIV constant, 353
FPE_INTOVF constant, 353
fpos_t data type, 59, 157
definition of, 159
fputc function, 145, 152, 154–155, 452
definition of, 152
fputs function, 146, 150, 152–156, 164, 168, 174–175, 452, 543, 548, 550, 701, 901, 904, 911, 919, 926, 936
definition of, 153
fputwc function, 452
fputws function, 452
F_RDLCK constant, 486–487, 489–490, 897, 930–931
fread function, 150, 156–157, 269, 273, 452
definition of, 156
free function, 163, 174, 207–209, 330, 332, 401, 403–405, 407, 437–438, 450, 697, 762, 829, 833, 837, 842, 917
definition of, 207
freeaddrinfo function, 599, 833
definition of, 599
FreeBSD, xxi–xxii, xxvi–xxvii, 3–4, 21, 26–27, 29–30, 34–36, 38, 49, 57, 60, 62, 64, 68, 70, 81, 83, 88, 95, 102, 108–111, 121, 129, 132, 138, 175, 178, 182, 184–185, 187–188, 209–212, 222, 225, 229, 240, 245, 253, 257, 260, 262, 269, 271, 276–277, 288–289, 292, 298, 303, 310, 314–316, 319, 322, 329, 334, 351, 355, 358, 371, 373, 377, 379–380, 385, 388, 393, 396, 409, 426–427, 433, 439, 473, 485, 492–493, 497, 499, 503, 527, 534, 559, 561, 567, 572, 576, 594–595, 607, 611–613, 627, 634, 648–649, 652, 675–678, 685–691, 716, 724, 726–727, 740–741, 744, 799, 911, 918, 930, 932–933, 935–936, 949, 951
freopen function, 144, 148–150, 452
definition of, 148
frequency scaling, 785
fscanf function, 162, 452
definition of, 162
fsck program, 122
fseek function, 149, 157–159, 172, 452
definition of, 158
fseeko function, 157–159, 172, 452
definition of, 158
F_SETFD constant, 82, 85, 90, 480, 592, 907
F_SETFL constant, 82–83, 85, 90, 511, 592, 627, 907, 944
F_SETLK constant, 82, 486–488, 490, 494, 897, 930–931
F_SETLKW constant, 82, 486, 488, 490, 897, 931
F_SETOWN constant, 82–83, 510, 592, 626–627, 939
fsetpos function, 149, 157–159, 172, 452
definition of, 158
fstat function, 4, 93–95, 120, 331, 452, 494, 498, 518, 529–530, 535, 586, 592, 698, 759, 808, 833
definition of, 93
fstatat function, 93–95, 331, 452
definition of, 93
fsync function, 61, 81, 86–87, 175, 331, 451, 513, 517, 528, 592, 787, 913
definition of, 81
ftell function, 157–159, 452
definition of, 158
ftello function, 157–159, 452
definition of, 158
ftok function, 557–558
definition of, 557
ftruncate function, 112, 125, 331, 529–530, 592
definition of, 112
ftrylockfile function, 443–444
definition of, 443
fts function, 132
ftw function, 122, 130–135, 141
full-duplex pipes, 534
named, 534
timing, 565
functions, system calls versus, 21–23
F_UNLCK constant, 486–487, 489–490, 897
definition of, 443
futimens function, 125–128, 331, 452, 910
definition of, 126
fwide function, 144
definition of, 144
fwrite function, 150, 156–157, 382, 452, 925
definition of, 156
F_WRLCK constant, 486–487, 489–490, 494, 897, 931
fwscanf function, 452
gai_strerror function, 600, 616, 619, 621, 623
definition of, 600
Gallmeister, B. O., 949
Garfinkel, S., 181, 250, 298, 949
gather write, 521, 644
gawk program, 262
gcc program, 6, 26, 58, 919
gdb program, 928
gdbm library, 744
getaddrinfo function, 452, 599–601, 603–604, 614–616, 619, 621, 623, 802, 808
definition of, 599
getaddrlist function, 800, 802, 804, 808, 815
definition of, 802
GETALL constant, 568
getc function, 10, 150–156, 164–165, 452, 701–702, 913
definition of, 150
getchar function, 150–151, 164, 175, 452, 547, 913
definition of, 150
getchar_unlocked function, 442, 444, 452
definition of, 444
getc_unlocked function, 442, 444, 452
definition of, 444
getcwd function, 50, 135–137, 142, 208, 452, 911–912
definition of, 136
getdate function, 211, 442, 452
getdelim function, 452
getegid function, 228, 331
definition of, 228
getenv function, 204, 210–212, 442, 444–446, 449–450, 462, 539, 928
definition of, 210
getenv_r function, 445–446
geteuid function, 228, 257, 268, 331, 650, 809
definition of, 228
getgid function, 17, 228, 331
definition of, 228
getgrent function, 183–184, 442, 452
definition of, 183
getgrgid function, 182, 442, 452
definition of, 182
getgrgid_r function, 443, 452
getgrnam function, 182, 442, 452
definition of, 182
getgrnam_r function, 443, 452
definition of, 184
gethostbyaddr function, 597, 599
gethostbyname function, 597, 599
gethostent function, 442, 452, 597
definition of, 597
gethostname function, 39–40, 43, 188, 452, 616–618, 623, 815
definition of, 188
getlogin function, 275–276, 442, 452, 480, 929–930
definition of, 275
getnameinfo function, 452, 600
definition of, 600
GETNCNT constant, 568
getnetbyaddr function, 442, 452, 598
definition of, 598
getnetbyname function, 442, 452, 598
definition of, 598
getnetent function, 442, 452, 598
definition of, 598
get_newjobno function, 814, 820, 825, 843
definition of, 820
getopt function, 442, 452, 662–664, 669, 730–731, 807–808
definition of, 662
getpass function, 287, 298, 700, 702–703
definition of, 701
getpeername function, 331, 605
definition of, 605
getpgid function, 293–294
definition of, 294
getpgrp function, 293, 331
definition of, 293
GETPID constant, 568
getpid function, 11, 228, 230, 235, 272, 308, 331, 366, 378, 387, 474, 650, 939
definition of, 228
getppid function, 228–229, 331, 491, 732
definition of, 228
get_printaddr function, 800, 804, 819
definition of, 804
get_printserver function, 800, 804, 808
definition of, 804
definition of, 277
getprotobyname function, 442, 452, 598
definition of, 598
getprotobynumber function, 442, 452, 598
definition of, 598
getprotoent function, 442, 452, 598
definition of, 598
getpwent function, 180–181, 442, 452
definition of, 180
getpwnam function, 177–181, 186, 276, 287, 330–332, 442, 452, 816, 918
definition of, 179–180
getpwnam_r function, 443, 452
getpwuid function, 177–181, 186, 275–276, 442, 452, 809, 918
definition of, 179
getpwuid_r function, 443, 452
getresgid function, 257
getresuid function, 257
getrlimit function, 53, 220, 224, 466–467, 906–907
definition of, 220
getrusage function, 245, 280
definition of, 152
getservbyname function, 442, 452, 599
definition of, 599
getservbyport function, 442, 452, 599
definition of, 599
getservent function, 442, 452, 599
definition of, 599
definition of, 296
getsockname function, 331, 605
definition of, 605
getsockopt function, 331, 624–625
definition of, 624
definition of, 182
definition of, 182
gettimeofday function, 190, 414, 421, 437, 439
definition of, 190
getty program, 238, 286–288, 290, 472
gettytab file, 287
getuid function, 17, 228, 257, 268, 275–276, 331
definition of, 228
getutxent function, 442, 452
getutxid function, 442, 452
GETVAL constant, 568
getwc function, 452
GETZCNT constant, 568
Ghemawat, S., 949
gid_t data type, 59
Gingell, R. A., 206, 525, 949
Gitlin, J. E., xxxii
glob function, 452
definition of, 192
GNU, 2, 289, 753
Godsil, J. M., xxxii
Goodheart, B., 712, 949
Google, 210
goto, nonlocal, 213–220, 355–358
Grandi, S., xxxii
definition of, 723
grep program, 20, 174, 200, 252, 949–950
effective, 98–99, 101–102, 108, 110, 140, 183, 228, 233, 256, 258, 558, 587
real, 98, 102, 183, 228, 233, 252–253, 256, 270, 585
supplementary, 18, 39, 98, 101, 108, 110, 183–184, 233, 252, 258
hack, 303, 842
half-duplex pipes, 534
handle_request function, 656, 665–666, 668
definition of, 657, 668
hard link, 4, 114, 117, 120, 122
hard links and directories, 117, 120
hdestroy function, 442
optional, 30
standard, 27
heap, 205
Hein, T. R., xxxii, 951
Hewlett-Packard, 35, 835
HFS file system, 87, 113, 116
Hogue, J. E., xxxii
holes, file, 68–69, 111–112
home directory, 2, 8, 135, 211, 288, 292
HOME environment variable, 210–211, 288
Honeyman, P., xxxii
HOST_NAME_MAX constant, 40, 43, 49, 188, 615–618, 622–623, 800, 815
HP-UX, 35
HSFS file system, 113
htonl function, 594, 810, 824–827, 834
definition of, 594
htons function, 594, 831, 834
definition of, 594
HTTP (Hypertext Transfer Protocol), 792–793
Hume, A. G., 174, 949
HUPCL constant, 675, 687
Hypertext Transfer Protocol, see HTTP
IBM (International Business Machines), 35
ICANON constant, 676, 678, 680–682, 686–687, 691, 703, 705–707
ICRNL constant, 676, 680, 688, 700, 706–708
identifiers
IPC, 556–558
process, 227–228
IEC (International Electrotechnical Commission), 25
IEEE (Institute for Electrical and Electronic Engineers), xx, 26–27, 950
IEXTEN constant, 676, 678, 680–682, 688, 706–708
IFS environment variable, 269
IGNBRK constant, 676, 685, 688
IGNCR constant, 676, 680, 688, 700
IGNPAR constant, 676, 688, 690
ILL_BADSTK constant, 353
ILL_COPROC constant, 353
ILL_ILLADR constant, 353
ILL_ILLOPC constant, 353
ILL_ILLOPN constant, 353
ILL_ILLTRP constant, 353
ILL_PRVOPC constant, 353
ILL_PRVREG constant, 353
Illumos, xxi
implementation differences, password, 184–185
implementations, UNIX System, 33
incore, 74, 152
INET6_ADDRSTRLEN constant, 596
INET_ADDRSTRLEN constant, 596, 603–604
inetd program, 291, 293, 465, 470, 472
definition of, 596
definition of, 596
INFTIM constant, 508
init program, 187, 189, 228, 237–238, 246, 270, 286–291, 293, 307, 309, 312, 320, 337, 379, 464–465, 475, 923, 930
definition of, 184
init_printer function, 814, 816, 819, 833
definition of, 819
init_request function, 814, 816, 818
definition of, 818
initserver function, 615–617, 619, 622–623, 800, 816
definition of, 609, 625
INLCR constant, 676, 688
i-node, 59, 75–77, 94, 108, 113–116, 120, 124, 127, 130–131, 138–139, 179, 253, 493, 698, 905, 910
ino_t data type, 59, 114
INPCK constant, 676, 688, 690, 706–708
in_port_t data type, 595
Institute for Electrical and Electronic Engineers, see IEEE
int16_t data type, 831
Intel, xxii
International Business Machines, see IBM
International Electrotechnical Commission, see IEC
International Standards Organization, see ISO
Internet Printing Protocol, see IPP
Internet worm, 153
interpreter file, 260–264, 283
interprocess communication, see IPC
interrupted system calls, 327–330, 343, 351, 354–355, 365, 508
INT_MIN constant, 37–38
INTR terminal character, 678, 681, 688, 701
asynchronous, 501, 509–520
asynchronous socket, 627
efficiency, 72–74
library, standard, 10, 143–175
multiplexing, 500–509
nonblocking, 481–484
nonblocking socket, 608–609, 627
terminal, 671–713
unbuffered, 8, 61–91
IOBUFSZ constant, 836
ioctl function, 61, 87–88, 90, 297–298, 322, 328–329, 452, 482, 510, 562, 592, 627, 674, 710–711, 718–719, 725–728, 730, 740–742, 939–940
definition of, 87
_IOLBF constant, 147, 166, 220
iovec structure, 41, 43, 521, 611, 646–647, 649, 651, 655, 659, 765, 771–772, 832, 836
IOV_MAX constant, 41, 43, 49, 521
IPC (interprocess communication), 533–588, 629–670
identifiers, 556–558
key, 556–558, 562, 567, 572
XSI, 556–560
IPC_CREAT constant, 558, 632, 941
IPC_NOWAIT constant, 563–564, 569–570
ipc_perm structure, 558, 562, 567, 572, 587
IPC_PRIVATE constant, 557–558, 575, 586, 588
ipcrm program, 559
IPC_RMID constant, 562–563, 568, 573–575
ipcs program, 559, 588
IPC_SET constant, 562–563, 568, 573
IPC_STAT constant, 562–563, 568, 573
IPP (Internet Printing Protocol), 789–792
ipp_hdr structure, 798, 832, 834, 838, 842
IPPROTO_ICMP constant, 591
IPPROTO_IP constant, 591, 624
IPPROTO_RAW constant, 591, 602
IPPROTO_TCP constant, 591, 602, 624
IPPROTO_UDP constant, 591, 602
I_PUSH constant, 725–726
IRIX, 35
isatty function, 679, 695, 698–699, 711, 730, 738
definition of, 695
I_SETSIG constant, 510
ISIG constant, 676, 678, 680–682, 688, 706–708
ISO (International Standards Organization), xx, xxxi, 25–27, 950
is_read_lockable function, 490, 897
ISTRIP constant, 676, 688, 690, 706–708
is_write_lockable function, 490, 897
IUCLC constant, 676, 688
IUTF8 constant, 676, 689
IXANY constant, 676, 689
IXOFF constant, 676, 681–682, 689
IXON constant, 676, 681–682, 689, 706–708
jemalloc, 210
jmp_buf data type, 216, 218, 340, 343
shell, 294, 299, 306–307, 325, 358, 377, 379, 734–735
signals, 377–379
job structure, 812–813, 820–821, 832
job_append function, definition of, 411
definition of, 412
job_insert function, definition of, 411
definition of, 412
Jolitz, W. F., 34
Joy, W. N., 3, 76
jsh program, 299
Karels, M. J., 33–34, 74, 112, 116, 229, 236, 525, 951
kernel, 1
Kernighan, B. W., xx, xxxii, 26, 149, 155, 162, 164, 208, 262, 898, 906, 947, 950
Kerrisk, M., 950
key, IPC, 556–558, 562, 567, 572
kill function, 18, 272, 308, 314, 325, 331, 335–338, 353, 363, 366–367, 376, 378–379, 381, 455, 679, 681, 702, 732–733, 924, 932
definition of, 337
kill program, 314–315, 321, 325, 551
KILL terminal character, 678, 681, 687, 702–703
kill_workers function, 814, 828–830
definition of, 828
Kleiman, S. R., 76, 950
Knuth, D. E., 422, 764, 950
Korn, D. G., 3, 135, 174, 548, 948–950, 953
Korn shell, 3, 53, 90, 210, 222, 289, 299, 497, 548, 702, 733–734, 737, 935, 948
Kovach, K. R., 560, 947
Krieger, O., 174, 531, 950
l64a function, 442
LANG environment variable, 41, 211
last program, 187
launchctl program, 293
launchd program, 228, 259, 289, 292, 465
LC_ALL environment variable, 211
LC_COLLATE environment variable, 43, 211
LC_CTYPE environment variable, 211
lchown function, 109–110, 121, 125
definition of, 109
LC_MESSAGES environment variable, 211
LC_MONETARY environment variable, 211
LC_NUMERIC environment variable, 211
LC_TIME environment variable, 211
LDAP (Lightweight Directory Access Protocol), 185
LD_LIBRARY_PATH environment variable, 753
ldterm STREAMS module, 716, 726
leakage, memory, 209
least privilege, 256, 795, 816
Lee, M., 206, 949
Lee, T. P., 948
Leffler, S. J., 34, 951
Lennert, D., 951
Lesk, M. E., 143
lgamma function, 442
lgammaf function, 442
lgammal function, 442
Libes, D., 720, 924, 951
libraries, shared, 206–207, 226, 753, 920, 947
Lightweight Directory Access Protocol, see LDAP
limits, 36–53
C, 37–38
POSIX, 38–41
resource, 220–225, 233, 252, 322, 382
XSI, 41
<limits.h> header, 27, 37, 39, 41, 49–50
Linderman, J. P., xxxii
line control, terminal I/O, 693–694
LINES environment variable, 211
count, 44, 59, 114–117, 130
hard, 4, 114, 117, 120, 122
symbolic, 55, 94–95, 110–111, 114, 118, 120–123, 131, 137, 141, 186, 908–909
link function, 79, 115–119, 121–122, 125, 331, 452
definition of, 116
linkat function, 116–119, 331, 452
definition of, 116
LINK_MAX constant, 39, 44, 49, 114
lint program, 200
Linux, xxi–xxii, xxv, xxvii, 2–4, 7, 14, 21, 26–27, 29–30, 35–38, 49, 52, 57, 60, 62, 64–65, 70, 73, 75–76, 86–89, 102, 108–111, 121–122, 129, 132, 138, 173, 178, 182, 184–185, 187–188, 205, 209, 211–212, 222, 226, 229, 240, 244–245, 253, 257, 259–260, 262, 269, 271, 274, 276–277, 288–290, 293, 298, 303, 306, 314–316, 318–320, 322, 329, 334–335, 351, 354–355, 358, 371, 373, 377, 379–380, 385, 388, 392, 396, 409, 426–427, 432–433, 439, 462, 464–465, 473–474, 485, 496–497, 503, 522, 530–531, 534, 559, 561, 567, 571–573, 575–576, 578, 583, 594–596, 607, 611–613, 627, 634, 648–650, 652, 675–678, 684–691, 693, 716, 724, 726–727, 740–741, 744, 753, 783, 793, 799, 911, 918, 925, 930, 932, 935–936
definition of, 515
LIO_NOWAIT constant, 515
Lions, J., 951
LIO_WAIT constant, 515
listen function, 331, 605, 608–609, 625, 635, 638, 800
definition of, 608
little-endian byte order, 593
Litwin, W., 744, 750, 951
LNEXT terminal character, 678, 681
locale, 43
localtime function, 190–192, 194–195, 264, 408, 442, 452, 919
definition of, 192
localtime_r function, 443, 452
definition of, 494
database library, coarse-grained, 752
database library, fine-grained, 752
lock_reg function, 489, 897, 930–931
definition of, 489
locks
spin, 417–418
lock_test function, 489–490, 897
definition of, 489
LOG_ERR constant, 472, 474–476, 478–479, 615–619, 622–623, 902–903
log_exit function, 817, 898–899
definition of, 903
login accounting, 186–187
login name, 2, 17, 135, 179, 187, 211, 275–276, 290, 480, 930
root, 16
login program, 179, 182, 184, 187, 251, 254, 256, 276, 287–290, 292, 472, 700, 717, 738
LOG_INFO constant, 472, 476, 478
LOGIN_NAME_MAX constant, 40, 43, 49
network, 290–293
terminal, 285–290
definition of, 903
LOGNAME environment variable, 211, 276, 288
definition of, 902
log_quit function, 830, 898–899
definition of, 903
definition of, 902
log_sys function, 804, 898–899
definition of, 902
log_to_stderr variable, 664, 807, 813, 902, 904
longjmp function, 197, 213, 215–219, 225, 330–331, 340–341, 343, 355–358, 365, 381, 924
definition of, 215
LONG_MAX constant, 37, 52–53, 60, 420, 906–907
loop function, 663–664, 666, 670, 732, 742
definition of, 666, 732
lp program, 585, 793
lpc program, 472
lpd program, 472, 793
lpsched program, 585, 793
lrand48 function, 442
ls program, 5–8, 13, 107–108, 112, 123, 125, 131, 135, 139, 141, 177, 179, 559, 905
lseek function, 8, 59, 61, 66–70, 77–79, 88, 91, 149, 158, 331, 452, 462, 486, 489, 498, 592, 670, 765–766, 768, 771, 773, 779, 819, 908
definition of, 67
lstat function, 93–97, 121–122, 133, 141, 331, 452, 942
definition of, 93
L_tmpnam constant, 168
Lucchina, P., xxxii
Mac OS X, xxi–xxii, xxvi–xxvii, 3–4, 17, 26–27, 29–30, 35–36, 38, 49, 57, 60, 62, 64, 70, 83, 87–88, 102, 108–111, 113, 121, 129, 132, 138, 175, 178, 182, 184–185, 187–188, 193, 209, 211–212, 222, 228, 240, 244–245, 260, 262, 269, 271, 276–277, 288–289, 292–293, 298, 303, 314–317, 319, 322, 329, 334, 351, 355, 371, 373, 377, 379–380, 385, 388, 393, 396, 409, 426–427, 464–465, 485, 497, 503, 522, 534, 559, 561, 567, 572, 576, 594, 607, 611–613, 627, 634, 648, 675–678, 685–691, 716, 724, 726–727, 740–741, 744, 793, 799, 911, 918, 925, 930, 932, 935–936
Mach, xxii, xxvi–xxvii, 35, 947
<machine/_types.h> header, 906
macro, feature test, 57–58, 84
MAILPATH environment variable, 210
main function, 7, 150, 155, 197–200, 202, 204, 215–217, 226, 236–237, 249, 283, 330–332, 357–358, 468, 654, 656, 663, 729, 739, 811, 814, 817, 824, 830, 833, 919, 921, 939, 944
major device number, 58–59, 137, 139, 465, 699
major function, 138–139
make program, 300
makethread function, 436, 438–439
mallinfo function, 209
malloc function, 21–23, 51, 136, 145, 174, 207–210, 213, 330, 332, 392, 400–401, 403, 405, 429, 437, 447, 450, 575, 616, 618, 623, 646–647, 650–651, 661–662, 666, 696, 760–761, 815, 820, 828, 839, 926, 928
definition of, 207
MALLOC_OPTIONS environment variable, 928
mallopt function, 209
Mandrake, xxvii
MAP_ANON constant, 578
MAP_ANONYMOUS constant, 578
MAP_FAILED constant, 529, 577
MAP_PRIVATE constant, 526, 528, 578
MAP_SHARED constant, 526–529, 576–578
Mauro, J., 74, 112, 116, 951
MAX_CANON constant, 39, 44, 47, 49, 673
MAX_INPUT constant, 39, 44, 49, 672
McDougall, R., 74, 112, 116, 951
McIlroy, M. D., xxxii
McKusick, M. K., xxxii, 33–34, 74, 112, 116, 229, 236, 525, 951
MD5, 181
MDMBUF constant, 675, 685, 689
memccpy function, 155
memcpy function, 530–531, 916
allocation, 207–210
layout, 204–206
leakage, 209
shared, 534, 571–578
memset function, 172–173, 614, 616, 618, 621, 623
Menage, P., 949
timing, 565
mgetty program, 290
MIN terminal value, 687, 703–704, 708, 713, 943
minor device number, 58–59, 137, 139, 465, 699
minor function, 138–139
mkdir function, 101–102, 120–122, 125, 129–130, 331, 452, 912
definition of, 129
mkdirat function, 129–130, 331, 452
definition of, 129
mkdtemp function, 167–171, 452
definition of, 169
mkfifo function, 120–121, 125, 331, 452, 553, 937
definition of, 553
mkfifo program, 553
mkfifoat function, 331, 452, 553
definition of, 553
mknod function, 120–121, 129, 331, 452, 553
mknodat function, 331, 452, 553
mkstemp function, 167–171, 452
definition of, 169
mktime function, 190, 192, 195, 452
definition of, 192
mmap function, 174, 221, 429, 481, 525, 527, 529–532, 576–578, 587, 592, 949
definition of, 525
modem, xx, xxvii, 285, 287, 297, 318, 328, 481, 508, 671, 674–675, 685, 687, 689, 692
Moran, J. P., 525, 949
more program, 543, 748
Morris, R., 181, 951
mount program, 102, 129, 139, 496
mounted STREAMS-based pipes, 534
definition of, 527
mrand48 function, 442
definition of, 562
msgget function, 557–562, 632–633, 941
definition of, 562
msghdr structure, 611, 613, 644, 646–647, 649, 651
MSG_NOERROR constant, 564, 631, 941
MSG_OOB constant, 611–613, 626
msgrcv function, 451, 558–559, 561, 564, 585, 631, 941
definition of, 564
msgsnd function, 451, 558, 560–561, 563–565, 633
definition of, 563
MSGVERB environment variable, 211
msqid_ds structure, 561–562, 564
definition of, 528
Mui, L., 712, 953
munmap function, 528–529
definition of, 528
mutex attributes, 430–439
mutex timing comparison, 571
mutexes, 399–409
myftw function, 133, 141
NAME_MAX constant, 38–39, 44, 49, 55, 65, 131
nanosleep function, 373–375, 437, 439, 451, 462, 837, 934
definition of, 374
Nataros, S., xxxii
Native POSIX Threads Library, see NPTL
nawk program, 262
NCCS constant, 674
ndbm library, 744
Nemeth, E., xxxii, 951
<netinet/in.h> header, 29, 595, 605
Network File System, Sun Microsystems, see NFS
Network Information Service, see NIS
network printer communication, 789–843
Neville-Neil, G. V., 74, 112, 116, 951
newgrp program, 183
nfds_t data type, 507
NFS (Network File System, Sun Microsystems), 76, 787
nftw function, 122, 131–132, 135, 442, 452, 910
NGROUPS_MAX constant, 39, 43, 49, 183–184
nice function, 276–277
definition of, 276
nice value, 252, 276–277, 279
Nievergelt, J., 744, 750, 949
NIS (Network Information Service), 185
NIS+, 185
NL terminal character, 678, 680–681, 687, 700, 703
NL0 constant, 689
NL1 constant, 689
NLDLY constant, 676, 684, 689
nl_langinfo function, 442
NLSPATH environment variable, 211
NOFLSH constant, 676, 689
NOKERNINFO constant, 676, 682, 689
nonblocking
I/O, 481–484
noncanonical mode, terminal I/O, 703–710
nonfatal error, 16
nonlocal goto, 213–220, 355–358
NPTL (Native POSIX Threads Library), xxiii, 388
ntohl function, 594, 811, 825, 842
definition of, 594
ntohs function, 594, 604, 842
definition of, 594
NZERO constant, 41, 276–277
O_APPEND constant, 63, 66, 72, 77–78, 83–84, 149, 497, 511
O_ASYNC constant, 83, 511, 627
O_CREAT constant, 63, 66, 79, 89, 121, 125, 474, 496–498, 517–518, 529, 558, 579–580, 584, 749, 758, 818, 930
OCRNL constant, 676, 689
od program, 69
O_EXCL constant, 63, 79, 121, 558, 580, 584
OFDEL constant, 676, 684, 689
off_t data type, 59, 67–70, 157–158, 772
OFILL constant, 676, 684, 689
OLCUC constant, 676, 689
Olson, M., 952
O_NDELAY constant, 36, 63, 482
ONLCR constant, 676, 690, 731, 738
ONLRET constant, 676, 690
ONOCR constant, 676, 690
O_NOCTTY constant, 63, 297–298, 466, 723–724, 726
ONOEOT constant, 676, 690
O_NONBLOCK constant, 36, 63, 83–84, 482–483, 496, 498, 553, 611–612, 934, 937
open function, 8, 14, 61–66, 77, 79, 83, 89, 91, 100–101, 103–104, 112, 118, 120–125, 127–128, 137, 148–150, 283, 287, 297–298, 331, 451, 468, 470, 474, 482, 492–493, 495–498, 517–518, 525, 529, 553, 556, 558, 560, 577–578, 585, 588, 592, 653, 656–657, 669–670, 685, 723, 725–726, 745, 757–758, 808, 818, 823, 833, 907, 909, 930, 937
definition of, 62
Open Group, The, xxi, xxvi, 31, 196, 950
Open Software Foundation, see OSF
openat function, 62–66, 331, 451
definition of, 62
opendir function, 5, 7, 121, 130–135, 252–253, 283, 452, 697, 822, 910
definition of, 130
openlog function, 452, 468, 470–471, 480, 902, 928
definition of, 470
OPEN_MAX constant, 40, 43, 49, 51–53, 60, 62, 906
open_max function, 466, 544, 546, 666, 896
definition of, 52, 907
open_memstream function, 171–174
definition of, 173
OpenSolaris, xxi
OpenSS7, 534
open_wmemstream function, 171–174
definition of, 173
OPOST constant, 676, 690, 706–708, 710
opterr variable, 663
optind variable, 808
options, 53–57
socket, 623–625
optopt variable, 663
Oracle Corporation, xxi–xxii, 35
O_RDONLY constant, 62, 83–84, 100, 103, 517–518, 529, 654, 808, 833, 937
O_RDWR constant, 62, 83–84, 100, 128, 468, 474, 498, 517–518, 529, 577, 723, 725, 749, 818, 930
O’Reilly, T., 712, 953
orphaned process group, 307–309, 469, 735
OSF (Open Software Foundation), 31–32
O_SYNC constant, 63–64, 83–84, 86–87, 513, 520
O_TRUNC constant, 63, 66, 100, 112, 125, 127–128, 149, 496, 498, 517–518, 529, 749
O_TTY_INIT constant, 64, 683, 722
ownership
directory, 101–102
file, 101–102
O_WRONLY constant, 62, 83–84, 100, 937
packet mode, pseudo terminal, 740
PAGER environment variable, 539, 542–543
PAGE_SIZE constant, 41, 43, 49
P_ALL constant, 244
PARENB constant, 675, 688, 690, 706–708
directory, 4, 108, 125, 129
process ID, 228, 233, 237, 243, 246, 252, 287–288, 309, 464
PAREXT constant, 675, 690
PARMRK constant, 676, 685, 688, 690
PARODD constant, 675, 685, 688, 690, 713
Partridge, C., xxxii
passing, file descriptor, 587, 642–652
passwd structure, 177, 180, 332, 809, 814, 918
file, 177–181
implementation differences, 184–185
shadow, 181–182, 196, 918
PATH environment variable, 100, 211, 250–251, 253, 260, 263, 265, 288–289
path_alloc function, 133, 137, 896, 912
definition of, 50
pathconf function, 37, 39, 41–48, 50–51, 53–55, 57, 65, 110, 121, 452, 537
definition of, 42
PATH_MAX constant, 38–39, 44, 49–50, 142, 911
pathname, 5
absolute, 5, 8, 43, 50, 64, 136, 141–142, 260, 553, 911
relative, 5, 8, 43–44, 50, 64–65, 135, 553
truncation, 65–66
pause function, 324, 327–328, 331, 334, 338–343, 356, 359, 365, 374, 451, 460, 711, 924, 930–931
definition of, 338
_PC_CHOWN_RESTRICTED constant, 55
_PC_FILESIZEBITS constant, 42, 44
PCFS file system, 49, 57, 113
pclose function, 267, 452, 541–548, 616, 622, 935–937
definition of, 541, 545
_PC_MAX_CANON constant, 42, 44, 47
_PC_MAX_INPUT constant, 42, 44
_PC_NO_TRUNC constant, 55, 57
_PC_PATH_MAX constant, 43–44, 51
_PC_PRIO_IO constant, 55
_PC_TIMESTAMP_RESOLUTION constant, 42, 44
_PC_VDISABLE constant, 54–55, 679
PENDIN constant, 676, 690
Pentium, xxii, xxvii
permissions, file access, 99–101, 140
perror function, 15–16, 24, 334, 379, 452, 600, 905
definition of, 15
pgrp structure, 311–312
pid_t data type, 11, 59, 293, 384
Pike, R., 229, 950, 952
pipe function, 125, 148, 331, 535, 537–538, 540, 544, 546, 550, 565, 630, 934
definition of, 535
PIPE_BUF constant, 39, 44, 49, 532, 537, 554–555, 935
pipes, 534–541
full-duplex, 534
half-duplex, 534
named full-duplex, 534
timing full-duplex, 565
Pippenger, N., 744, 750, 949
Plan 9 operating system, 229, 952
Plauger, P. J., 26, 164, 323, 952
poll function, 319, 330–331, 343, 451, 481, 501–502, 506–509, 531–532, 560, 586, 588, 592, 608–609, 627, 631–632, 659, 664, 666–668, 718, 732, 742, 933–934, 936–937, 942
definition of, 506
POLLERR constant, 508
pollfd structure, 507, 632, 666, 668, 934, 941
POLLHUP constant, 508, 667–668, 936
POLLIN constant, 508, 632, 666–668, 936, 941–942
polling, 246, 484, 501
POLLNVAL constant, 508
POLLOUT constant, 508
POLLPRI constant, 508
POLLRDNORM constant, 508
POLLWRNORM constant, 508
popen function, 23, 242, 249, 267, 452, 541–548, 587–588, 615, 619, 622–623, 935–937
definition of, 541, 543
port number, 593, 595–596, 598–601, 605
Portable Operating System Environment for Computer Environments, IEEE, see POSIX
POSIX (Portable Operating System Environment for Computer Environments, IEEE), xix, xxxi, 26–30, 33, 265, 561, 674
POSIX.1, xxvi, xxxi, 4, 9, 27, 38, 41, 50, 53, 57–58, 88, 257, 262, 329, 367–368, 384, 533, 546, 553, 589, 617, 744, 950
POSIX.2, 262
_POSIX_ADVISORY_INFO constant, 31
_POSIX_AIO_LISTIO_MAX constant, 515
_POSIX_ARG_MAX constant, 39–40
_POSIX_ASYNCHRONOUS_IO constant, 54, 57
_POSIX_BARRIERS constant, 54, 57
_POSIX_CHILD_MAX constant, 39–40
_POSIX_CHOWN_RESTRICTED constant, 55, 57, 110
_POSIX_CLOCKRES_MIN constant, 38
_POSIX_CLOCK_SELECTION constant, 54, 57
_POSIX_CPUTIME constant, 31, 189
_POSIX_C_SOURCE constant, 57–58, 84, 240
_POSIX_DELAYTIMER_MAX constant, 39–40
_POSIX_HOST_NAME_MAX constant, 39–40
_POSIX_JOB_CONTROL constant, 57
_POSIX_LOGIN_NAME_MAX constant, 39–40
POSIXLY_CORRECT environment variable, 111
_POSIX_MAPPED_FILES constant, 54, 57
_POSIX_MEMLOCK_RANGE constant, 31
_POSIX_MEMORY_PROTECTION constant, 54, 57
_POSIX_MESSAGE_PASSING constant, 31
_POSIX_MONOTONIC_CLOCK constant, 31, 189
_POSIX_NAME_MAX constant, 39, 580
_POSIX_NGROUPS_MAX constant, 39
_POSIX_NO_TRUNC constant, 55, 57, 65
_POSIX_OPEN_MAX constant, 39–40
posix_openpt function, 452, 722–725
definition of, 722
_POSIX_PATH_MAX constant, 39–40, 696–697
_POSIX_PRIORITIZED_IO constant, 31
_POSIX_PRIORITY_SCHEDULING constant, 31
_POSIX_RAW_SOCKETS constant, 31
_POSIX_READER_WRITER_LOCKS constant, 55, 57
_POSIX_REALTIME_SIGNALS constant, 55, 57
_POSIX_RE_DUP_MAX constant, 39
_POSIX_RTSIG_MAX constant, 39–40
_POSIX_SAVED_IDS constant, 57, 98, 256, 337
_POSIX_SEMAPHORES constant, 55, 57
_POSIX_SEM_NSEMS_MAX constant, 39–40
_POSIX_SEM_VALUE_MAX constant, 39–40
_POSIX_SHARED_MEMORY_OBJECTS constant, 31
_POSIX_SIGQUEUE_MAX constant, 39–40
_POSIX_SPIN_LOCKS constant, 55, 57
_POSIX_SPORADIC_SERVER constant, 31
_POSIX_STREAM_MAX constant, 39–40
_POSIX_SYMLINK_MAX constant, 39
_POSIX_SYMLOOP_MAX constant, 39–40
_POSIX_SYNCHRONIZED_IO constant, 31
_POSIX_THREAD_ATTR_STACKADDR constant, 31, 429
_POSIX_THREAD_ATTR_STACKSIZE constant, 31, 429
_POSIX_THREAD_CPUTIME constant, 31, 189
_POSIX_THREAD_PRIO_INHERIT constant, 31
_POSIX_THREAD_PRIO_PROTECT constant, 31
_POSIX_THREAD_PRIORITY_SCHEDULING constant, 31
_POSIX_THREAD_PROCESS_SHARED constant, 31, 431
_POSIX_THREAD_ROBUST_PRIO_INHERIT constant, 31
_POSIX_THREAD_ROBUST_PRIO_PROTECT constant, 31
_POSIX_THREADS constant, 55, 57, 384
_POSIX_THREAD_SAFE_FUNCTIONS constant, 55, 57, 442
_POSIX_THREAD_SPORADIC_SERVER constant, 31
_POSIX_TIMER_MAX constant, 39–40
_POSIX_TIMERS constant, 55, 57
_POSIX_TIMESTAMP_RESOLUTION constant, 44
posix_trace_event function, 331
_POSIX_TTY_NAME_MAX constant, 39–40
posix_typed_mem_open function, 452
_POSIX_TYPED_MEMORY_OBJECTS constant, 31
_POSIX_TZNAME_MAX constant, 39–40
_POSIX_V6_ILP32_OFF32 constant, 70
_POSIX_V6_ILP32_OFFBIG constant, 70
_POSIX_V6_LP64_OFF64 constant, 70
_POSIX_V6_LP64_OFFBIG constant, 70
_POSIX_V7_ILP32_OFF32 constant, 70
_POSIX_V7_ILP32_OFFBIG constant, 70
_POSIX_V7_LP64_OFF64 constant, 70
_POSIX_V7_LP64_OFFBIG constant, 70
_POSIX_VDISABLE constant, 55, 57, 678–679
_POSIX_VERSION constant, 57, 188
PowerPC, xxi–xxii, xxvii
P_PGID constant, 244
PPID, see parent process ID
P_PID constant, 244
pr program, 753
prctl program, 559
pread function, 78, 451, 461–462, 592
definition of, 78
Presotto, D. L., xxxii, 229, 952
pr_exit function, 239–241, 266–268, 281, 283, 372, 896
definition of, 240
primitive system data types, 58
print program, 794, 801, 820, 824–825, 834, 843
printer communication, network, 789–843
printer spooling, 793–795
source code, 795–842
printer_status function, 814, 837–838, 843
definition of, 838
printer_thread function, 814, 832, 945
definition of, 832
printf function, 10–11, 21, 150, 159, 161–163, 175, 192, 194, 219, 226, 231, 235, 283, 309, 330, 349, 452, 552, 919–920
definition of, 159
printreq structure, 801, 809–810, 812, 820, 822–824, 827
printresp structure, 801, 809, 811, 824–827
PRIO_PGRP constant, 277
privilege, least, 256, 795, 816
pr_mask function, 356–357, 360–361, 896
definition of, 347
/proc, 136, 253
process, 11
accounting, 269–275
control, 11, 227–283
ID, 11, 228, 252
ID, parent, 228, 233, 237, 243, 246, 252, 287–288, 309, 464
identifiers, 227–228
relationships, 285–312
scheduling, 276–280
system, 228, 337
termination, 198–202
time, 20, 24, 59, 280–282
background, 296, 300, 302, 304, 306–307, 309, 321, 369, 377, 944
foreground, 296, 298, 300–303, 306, 311, 318–322, 369, 377, 680–682, 685, 689, 710, 719, 741, 944
ID, 233, 252
ID, foreground, 298, 303, 677
leader, 294–296, 306, 312, 465–466, 727
lifetime, 294
orphaned, 307–309, 469, 735
processes, cooperating, 495, 752, 945
program, 10
PROT_NONE constant, 525
protoent structure, 598
PROT_READ constant, 525, 529, 577
PROT_WRITE constant, 525, 529, 577
PR_TEXT constant, 801, 810, 825, 835–836
ps program, 237, 283, 303, 306–307, 463–465, 468–469, 480, 736, 923
pselect function, 331, 451, 501, 506
definition of, 506
pseudo terminal, 715–742
remote mode, 741
signal generation, 741
psiginfo function, 379–380, 452
definition of, 379
psignal function, 379–380, 452
definition of, 379
pthread_atfork function, 457–461
definition of, 458
pthread_attr_destroy function, 427–429
definition of, 427
pthread_attr_getdetachstate function, 428
definition of, 428
pthread_attr_getguardsize function, 430
definition of, 430
pthread_attr_getstack function, 429
definition of, 429
pthread_attr_getstacksize function, 429–430
definition of, 430
pthread_attr_init function, 427–429
definition of, 427
pthread_attr_setdetachstate function, 428
definition of, 428
pthread_attr_setguardsize function, 430
definition of, 430
pthread_attr_setstack function, 429
definition of, 429
pthread_attr_setstacksize function, 429–430
definition of, 430
pthread_attr_t data type, 427–428, 430, 451
pthread_barrierattr_destroy function, 441
definition of, 441
pthread_barrierattr_getpshared function, 441
definition of, 441
pthread_barrierattr_init function, 441
definition of, 441
pthread_barrierattr_setpshared function, 441
definition of, 441
pthread_barrier_destroy function, 418–419
definition of, 418
pthread_barrier_init function, 418–419, 421
definition of, 418
PTHREAD_BARRIER_SERIAL_THREAD constant, 419, 422
pthread_barrier_t data type, 419
pthread_barrier_wait function, 419–423
definition of, 419
pthread_cancel function, 393, 451, 453, 828
definition of, 393
PTHREAD_CANCEL_ASYNCHRONOUS constant, 453
PTHREAD_CANCEL_DEFERRED constant, 453
PTHREAD_CANCEL_DISABLE constant, 451
PTHREAD_CANCELED constant, 389, 393
PTHREAD_CANCEL_ENABLE constant, 451
pthread_cleanup_pop function, 394–396, 827, 829
definition of, 394
pthread_cleanup_push function, 394–396, 824
definition of, 394
pthread_condattr_destroy function, 440
definition of, 440
pthread_condattr_getclock function, 441
definition of, 441
pthread_condattr_getpshared function, 440
definition of, 440
pthread_condattr_init function, 440
definition of, 440
pthread_condattr_setclock function, 441
definition of, 441
pthread_condattr_setpshared function, 440
definition of, 440
pthread_condattr_t data type, 441
pthread_cond_broadcast function, 415, 422–423, 927
definition of, 415
pthread_cond_destroy function, 414, 462
definition of, 414
pthread_cond_init function, 414, 462, 941
definition of, 414
PTHREAD_COND_INITIALIZER constant, 413, 416, 455, 814
pthread_cond_signal function, 415–416, 456, 821, 942
definition of, 415
pthread_cond_t data type, 413, 416, 455, 814, 940
pthread_cond_timedwait function, 414–415, 434, 440–441, 451
definition of, 414
pthread_cond_wait function, 414–416, 434, 451, 456, 832, 927, 941
definition of, 414
pthread_create function, 385–388, 390–392, 395, 397, 421, 427–428, 456, 460, 477, 632, 817, 926, 941
definition of, 385
PTHREAD_CREATE_DETACHED constant, 428
PTHREAD_CREATE_JOINABLE constant, 428
PTHREAD_DESTRUCTOR_ITERATIONS constant, 426, 447
pthread_detach function, 396–397, 427
definition of, 397
pthread_equal function, 385, 412
definition of, 385
pthread_exit function, 198, 236, 389–391, 393–396, 447, 824–829
definition of, 389
pthread_getspecific function, 449–450
definition of, 449
pthread_join function, 389–391, 395–396, 418, 451, 926
definition of, 389
pthread_key_create function, 447–448, 450
definition of, 447
pthread_key_delete function, 447–448
definition of, 448
PTHREAD_KEYS_MAX constant, 426, 447
definition of, 455
pthread_mutexattr_destroy function, 431, 445
definition of, 431
pthread_mutexattr_getpshared function, 431
definition of, 431
pthread_mutexattr_getrobust function, 432
definition of, 432
pthread_mutexattr_gettype function, 434
definition of, 434
pthread_mutexattr_init function, 431, 438, 445
definition of, 431
pthread_mutexattr_setpshared function, 431
definition of, 431
pthread_mutexattr_setrobust function, 432
definition of, 432
pthread_mutexattr_settype function, 434, 438, 445
definition of, 434
pthread_mutexattr_t data type, 430–431, 438, 445
pthread_mutex_consistent function, 432–433, 571
definition of, 433
PTHREAD_MUTEX_DEFAULT constant, 433–434
pthread_mutex_destroy function, 400–401, 404, 407
definition of, 400
PTHREAD_MUTEX_ERRORCHECK constant, 433–434
pthread_mutex_init function, 400–401, 403, 405, 431, 438, 445, 941
definition of, 400
PTHREAD_MUTEX_INITIALIZER constant, 400, 403, 405, 408, 416, 431, 449, 455, 459, 813–814
pthread_mutex_lock function, 400–401, 403–404, 406–408, 416, 422–423, 432, 438, 445, 450, 456, 459–460, 820–821, 828–830, 832–833, 941–942
definition of, 400
PTHREAD_MUTEX_NORMAL constant, 433–434
PTHREAD_MUTEX_RECURSIVE constant, 433–434, 438, 445
PTHREAD_MUTEX_ROBUST constant, 432
PTHREAD_MUTEX_STALLED constant, 432
pthread_mutex_t data type, 400–401, 403, 405, 408, 416, 438, 445, 449, 455, 459, 813–814, 940
pthread_mutex_timedlock function, 407–409, 413
definition of, 407
pthread_mutex_trylock function, 400, 402
definition of, 400
pthread_mutex_unlock function, 400–401, 403–404, 406–407, 416, 422–423, 438–439, 445, 450, 456, 460, 820–821, 828–830, 832–833, 941–942
definition of, 400
pthread_once function, 445, 448, 450, 928
definition of, 448
PTHREAD_ONCE_INIT constant, 445, 448–449
pthread_once_t data type, 445, 449
PTHREAD_PROCESS_PRIVATE constant, 417, 431, 442
PTHREAD_PROCESS_SHARED constant, 417, 431, 442, 571
pthread_rwlockattr_destroy function, 439
definition of, 439
pthread_rwlockattr_getpshared function, 440
definition of, 440
pthread_rwlockattr_init function, 439
definition of, 439
pthread_rwlockattr_setpshared function, 440
definition of, 440
pthread_rwlockattr_t data type, 439
pthread_rwlock_destroy function, 409–410
definition of, 409
pthread_rwlock_init function, 409, 411
definition of, 409
PTHREAD_RWLOCK_INITIALIZER constant, 409
pthread_rwlock_rdlock function, 410, 412, 452
definition of, 410
pthread_rwlock_t data type, 411
pthread_rwlock_timedrdlock function, 413, 452
definition of, 413
pthread_rwlock_timedwrlock function, 413, 452
definition of, 413
pthread_rwlock_tryrdlock function, 410
definition of, 410
pthread_rwlock_trywrlock function, 410
definition of, 410
pthread_rwlock_unlock function, 410–412
definition of, 410
pthread_rwlock_wrlock function, 410–412, 452
definition of, 410
pthreads, 27, 229, 384, 426
pthread_self function, 385, 387, 391, 824
definition of, 385
pthread_setcancelstate function, 451
definition of, 451
pthread_setcanceltype function, 453
definition of, 453
pthread_setspecific function, 449–450
definition of, 449
pthread_sigmask function, 453–454, 477, 815
definition of, 454
pthread_spin_destroy function, 417
definition of, 417
pthread_spin_init function, 417
definition of, 417
pthread_spin_lock function, 418
definition of, 418
pthread_spin_trylock function, 418
definition of, 418
pthread_spin_unlock function, 418
definition of, 418
PTHREAD_STACK_MIN constant, 426, 430
pthread_t data type, 59, 384–385, 387, 390–391, 395, 411, 421, 428, 456, 460, 476, 632, 812, 814, 824, 829, 926, 941
pthread_testcancel function, 451, 453
definition of, 453
PTHREAD_THREADS_MAX constant, 426
ptrdiff_t data type, 59
ptsname function, 442, 723–725
definition of, 723
pty program, 309, 715, 720–721, 727, 729–742, 944
pty_fork function, 721, 724, 726–730, 732, 739, 741–742
definition of, 727
ptym_open function, 724, 726–728, 897
definition of, 724–725
ptys_open function, 724, 726–728, 897
definition of, 724–725
Pu, C., 65, 953
putc function, 10, 152–156, 247–248, 452, 701
definition of, 152
putchar function, 152, 175, 452, 547–548
definition of, 152
putchar_unlocked function, 442, 444, 452
definition of, 444
putc_unlocked function, 442, 444, 452
definition of, 444
putenv function, 204, 212, 251, 442, 446, 462
definition of, 212
putenv_r function, 462
puts function, 152–153, 452, 911
definition of, 153
putwc function, 452
PWD environment variable, 211
pwrite function, 78–79, 451, 461–462, 592
definition of, 78
Quarterman, J. S., 33–34, 74, 112, 116, 229, 236, 525, 951
QUIT terminal character, 678, 681, 688, 702
race conditions, 245–249, 339, 784, 922, 924
Rago, J. E., xxvii
Rago, S. A., xxxii, 88, 157, 290, 952
raise function, 331, 336–338, 365
definition of, 337
rand function, 442
raw terminal mode, 672, 704, 708, 713, 732, 734
Raymond, E. S., 952
read function, 8–10, 20, 59, 61, 64, 71–72, 78, 88, 90–91, 111, 124–125, 130, 145, 154–156, 174, 301, 308–309, 328–331, 342–343, 364–365, 378, 451, 462, 470, 482–483, 495–496, 498–502, 505–506, 508–509, 513, 517, 523–525, 530–531, 536–537, 540–541, 549–551, 553, 556, 587, 590, 592, 610, 612, 654, 656, 665–667, 672, 702–704, 708–709, 732–733, 738, 740, 748, 752, 765, 767–768, 805–806, 811, 818, 823, 836–838, 907–908, 936, 943
definition of, 71
read, scatter, 521, 644
readdir function, 5, 7, 130–135, 442, 452, 697, 823
definition of, 130
reader–writer lock attributes, 439–440
reading directories, 130–135
readlink function, 121, 123–124, 331, 452
definition of, 123
readlinkat function, 123–124, 331, 452
definition of, 123
read_lock function, 489, 493, 498, 897
readmore function, 814, 837, 840–841
definition of, 837
readn function, 523–524, 738, 806, 811, 896
definition of, 523–524
readv function, 41, 43, 329, 451, 481, 521–523, 531, 592, 613, 644, 752, 766
definition of, 521
readw_lock function, 489, 759, 763, 780, 897
group ID, 98, 102, 183, 228, 233, 252–253, 256, 270, 585
user ID, 39–40, 43, 98–99, 102, 221, 228, 233, 252–253, 256–260, 270, 276, 286, 288, 337, 381, 585, 924
realloc function, 50, 174, 207–208, 213, 661–662, 666, 761, 838, 840, 911–912
definition of, 207
advisory, 495
deadlock, 490
mandatory, 495
timing comparison, 571
recv function, 331, 451, 592, 612–615, 626–627
definition of, 612
recv_fd function, 642–644, 650, 655, 660, 896
definition of, 642, 647
recvfrom function, 331, 451, 613, 620–623
definition of, 613
recvmsg function, 331, 451, 613, 644, 647–648, 651
definition of, 613
recv_ufd function, 650
definition of, 651
RE_DUP_MAX constant, 39, 43, 49
regcomp function, 39, 43
regular file, 95
relative pathname, 5, 8, 43–44, 50, 64–65, 135, 553
reliable signals, 335–336
remote mode, pseudo terminal, 741
remove function, 116–119, 121, 125, 452
definition of, 119
remove_job function, 814, 822, 832
definition of, 822
rename function, 119–121, 125, 331, 452
definition of, 119
renameat function, 119–120, 331, 452
definition of, 119
replace_job function, 814, 821, 837
definition of, 821
REPRINT terminal character, 678, 681, 687, 690, 703
resource limits, 220–225, 233, 252, 322, 382
restarted system calls, 329–330, 342–343, 351, 354, 508, 700
restrict keyword, 26, 93, 123, 146, 148, 152–153, 156, 158–159, 161–163, 190, 192, 195, 346, 350, 385, 400, 409, 414, 428–432, 434, 440–441, 454, 502, 506, 596, 599–600, 605, 608, 613, 624
rewind function, 149, 158, 168, 452
definition of, 158
rewinddir function, 130–135, 452
definition of, 130
Ritchie, D. M., xx, 26, 143, 149, 155, 162, 164, 208, 898, 906, 950, 952
RLIM_INFINITY constant, 221, 468
rlimit structure, 220, 224, 467, 907
RLIMIT_CORE constant, 221–223, 317
RLIMIT_FSIZE constant, 221–223, 382
RLIMIT_INFINITY constant, 224, 907
RLIMIT_MEMLOCK constant, 221–223
RLIMIT_MSGQUEUE constant, 221, 223
RLIMIT_NICE constant, 221, 223
RLIMIT_NOFILE constant, 221–223, 467, 907
RLIMIT_NPROC constant, 221–223
RLIMIT_NPTS constant, 221, 223
RLIMIT_SBSIZE constant, 222–223
RLIMIT_SIGPENDING constant, 222, 224
RLIMIT_STACK constant, 222, 224
RLIMIT_SWAP constant, 222, 224
RLIMIT_VMEM constant, 222, 224
rlim_t data type, 59, 223
rlogind program, 717, 734, 741, 944
rmdir function, 117, 119–120, 125, 129–130, 331
definition of, 130
robust attribute, 431, 571
R_OK constant, 102–103
directory, 4, 8, 24, 139, 141, 233, 252, 283, 910
RS-232, 674, 685–686
Rudoff, A. M., 157, 291, 470, 589, 952
runacct program, 269
S5 file system, 65
sa program, 269
sac program, 290
Sacksen, J., xxxii
SAF (Service Access Facility), 290
safe, async-signal, 330, 446, 450, 457, 461–462, 927
SA_INTERRUPT constant, 351, 354–355
s_alloc function, 584
Salus, P. H., xxxii, 952
SA_NOCLDWAIT constant, 333, 351
Santa Cruz Operation, see SCO
SA_RESETHAND constant, 351, 354
SA_RESTART constant, 329, 351, 354, 508–509
SA_SIGINFO constant, 336, 350–353, 376, 512
saved
set-user-ID, 56, 98, 256–260, 288, 337
sbrk function, 21–23, 208, 221
_SC_AIO_PRIO_DELTA_MAX constant, 516
scaling, frequency, 785
scan_configfile function, 803–804
definition of, 803
scandir function, 452
scanf function, 150, 162–163, 452
definition of, 162
_SC_ASYNCHRONOUS_IO constant, 57
scatter read, 521, 644
_SC_BARRIERS constant, 57
_SC_CHILD_MAX constant, 43, 221
_SC_CLK_TCK constant, 42–43, 280–281
_SC_CLOCK_SELECTION constant, 57
_SC_COLL_WEIGHTS_MAX constant, 43
_SC_DELAYTIMER_MAX constant, 43
scheduling, process, 276–280
_SC_HOST_NAME_MAX constant, 43, 616, 618, 623, 815
Schwartz, A., 181, 250, 298, 949
_SC_IO_LISTIO_MAX constant, 516
_SC_JOB_CONTROL constant, 54, 57
_SC_LOGIN_NAME_MAX constant, 43
SCM_CREDENTIALS constant, 649–652
SCM_CREDS constant, 649–650, 652
SCM_CREDTYPE constant, 650, 652
_SC_MEMORY_PROTECTION constant, 57
SCM_RIGHTS constant, 645–646, 650, 652
_SC_NZERO function, 276
SCO (Santa Cruz Operation), 35
_SC_OPEN_MAX constant, 43, 52, 221, 907
_SC_PAGESIZE constant, 43, 527
_SC_PAGE_SIZE constant, 43, 527
_SC_READER_WRITER_LOCKS constant, 57
_SC_REALTIME_SIGNALS constant, 57
script program, 715, 719–720, 734, 736–737, 741–742
_SC_SAVED_IDS constant, 54, 57, 98, 256
_SC_SEM_NSEMS_MAX constant, 43
_SC_SEM_VALUE_MAX constant, 43
_SC_THREAD_ATTR_STACKADDR constant, 429
_SC_THREAD_ATTR_STACKSIZE constant, 429
_SC_THREAD_DESTRUCTOR_ITERATIONS constant, 426
_SC_THREAD_KEYS_MAX constant, 426
_SC_THREAD_PROCESS_SHARED constant, 431
_SC_THREADS constant, 57, 384
_SC_THREAD_SAFE_FUNCTIONS constant, 57, 442
_SC_THREAD_STACK_MIN constant, 426
_SC_THREAD_THREADS_MAX constant, 426
_SC_V7_ILP32_OFF32 constant, 70
_SC_V7_ILP32_OFFBIG constant, 70
_SC_V7_LP64_OFF64 constant, 70
_SC_V7_LP64_OFFBIG constant, 70
_SC_VERSION constant, 50, 54, 57
_SC_XOPEN_REALTIME constant, 57
_SC_XOPEN_REALTIME_THREADS constant, 57
_SC_XOPEN_VERSION constant, 50, 54, 57
Seebass, S., 951
SEEK_CUR constant, 67, 158, 486, 494–495, 766
seekdir function, 130–135, 452
definition of, 130
SEEK_END constant, 67, 158, 486, 494–495, 771–773, 781
SEEK_SET constant, 67, 158, 172, 486, 494–495, 498, 759, 762–763, 765–766, 768–773, 775–780, 818–819, 930–931
SEGV_ACCERR constant, 353
SEGV_MAPERR constant, 353
select function, 330–331, 343, 451, 481, 501–509, 531–532, 560, 586, 588, 592, 608–609, 626–627, 631–632, 659, 664–666, 668, 718, 732, 742, 805–806, 816–817, 928–929, 933, 936, 939, 942
definition of, 502
Seltzer, M., 744, 952
semaphore, 57, 534, 565–571
adjustment on exit, 570–571
locking timing comparison, 571, 583
sembuf structure, 568–569
definition of, 580
semctl function, 558, 562, 566–568, 570
definition of, 567
sem_destroy function, 582
definition of, 582
SEM_FAILED constant, 584
semget function, 557–558, 566–567
definition of, 567
definition of, 582
semid_ds structure, 566–568
definition of, 582
SEM_NSEMS_MAX constant, 40, 43
semop function, 452, 559, 567–570
definition of, 568
sem_open function, 579–580, 582, 584
definition of, 579
sem_post function, 331, 581–582, 584
definition of, 582
sem_t structure, 582
sem_timedwait function, 451, 581–582
definition of, 581
sem_trywait function, 581, 584
semun union, 567–568
SEM_UNDO constant, 569–570, 580, 583
sem_unlink function, 580–581, 584
definition of, 580
SEM_VALUE_MAX constant, 40, 43, 580
sem_wait function, 451, 581–582, 584
definition of, 581
send function, 331, 451, 592, 610, 616, 626–627
definition of, 610
send_err function, 642–644, 653, 656–657, 668–669, 897
definition of, 642, 644
send_fd function, 642–645, 649, 653, 656–657, 669, 897
definition of, 642, 646, 649
sendmsg function, 331, 451, 611, 613, 644–646, 650, 670
definition of, 611
sendto function, 331, 451, 610–611, 620, 622–623
definition of, 610
serv_accept function, 636–638, 641, 648, 659, 665, 667–668, 897
definition of, 636, 638
Service Access Facility, see SAF
Service Management Facility, see SMF
serv_listen function, 636–637, 659, 664–665, 667, 670, 897
definition of, 636–637
session, 295–296
ID, 233, 252, 296, 311, 463–464
leader, 295–297, 311, 318, 464–466, 469, 726–727, 742, 944
session structure, 310–311, 318, 464
descriptor, 503, 505, 532, 933
signal, 336, 344–345, 532, 933
SETALL constant, 568, 570
setasync function, definition of, 939
setbuf function, 146–147, 150, 171, 175, 247–248, 701, 930
definition of, 146
set_cloexec function, 615, 617, 622, 896
definition of, 480
setegid function, 258
definition of, 258
setenv function, 212, 251, 442
definition of, 212
seteuid function, 258–260
definition of, 258
set_fl function, 86, 482–483, 498, 896, 934
definition of, 85
setgid function, 256, 258, 288, 331, 816
definition of, 256
setgrent function, 183–184, 442, 452
definition of, 183
set-group-ID, 98–99, 102, 107–108, 110, 129, 140, 233, 253, 317, 496, 546, 723
saved, 56, 98, 257
definition of, 184
definition of, 597
setitimer function, 317, 320, 322, 381
setjmp function, 197, 213, 215–219, 225, 340, 343, 355–356, 358, 381, 924
definition of, 215
definition of, 470
definition of, 598
setpgid function, 294, 331
definition of, 294
definition of, 277
setprotoent function, 452, 598
definition of, 598
setpwent function, 180–181, 442, 452
definition of, 180
setregid function, 257–258
definition of, 257
setreuid function, 257
definition of, 257
setrlimit function, 53, 220, 382
definition of, 220
definition of, 599
setsid function, 294–295, 297, 310–311, 331, 464–467, 724, 727–728
definition of, 295
setsockopt function, 331, 624–625, 651
definition of, 624
definition of, 182
setuid function, 98, 256, 258, 260, 288, 331, 816
definition of, 256
set-user-ID, 98–99, 102, 104, 107–108, 110, 129, 140, 182, 233, 253, 256–257, 259, 267, 317, 546, 585–586, 653, 924
saved, 56, 98, 256–260, 288, 337
setutxent function, 442, 452
SETVAL constant, 568, 570
setvbuf function, 146–147, 150, 171, 175, 220, 552, 721, 936
definition of, 146
SGI (Silicon Graphics, Inc.), 35
SHA-1, 181
shadow passwords, 181–182, 196, 918
S_HANGUP constant, 510
Shannon, W. A., 525, 949
libraries, 206–207, 226, 753, 920, 947
memory, 534, 571–578
shell, see Bourne shell, Bourne-again shell, C shell, Debian Almquist shell, Korn shell, TENEX C shell
SHELL environment variable, 211, 288, 737
shell, job-control, 294, 299, 306–307, 325, 358, 377, 379, 734–735
shells, 3
S_HIPRI constant, 510
shmat function, 559, 573–576
definition of, 574
shmatt_t data type, 572
shmctl function, 558, 562, 573–575
definition of, 573
shmdt function, 574
definition of, 574
shmget function, 557–558, 572, 575
definition of, 572
shmid_ds structure, 572–574
SHMLBA constant, 574
SHM_RDONLY constant, 574
SHM_RND constant, 574
SHRT_MIN constant, 37
shutdown function, 331, 592–593, 612
definition of, 592
SHUT_RD constant, 592
SHUT_RDWR constant, 592
SHUT_WR constant, 592
S_IFBLK constant, 134
S_IFCHR constant, 134
S_IFDIR constant, 134
S_IFLNK constant, 114, 134
S_IFMT constant, 97
S_IFREG constant, 134
sig2str function, 380–381
definition of, 380
SIGABRT signal, 236, 240–241, 275, 313, 317–319, 365–367, 381, 924
sigaction function, 59, 323, 326, 329–331, 333, 335–336, 349–355, 366, 370, 374, 376, 455, 468, 476, 478–479, 510, 621, 815, 939
definition of, 350
sigaction structure, 350, 354–355, 366, 369, 374, 376, 379, 467, 476, 478, 621, 814
sigaddset function, 331, 344–345, 348, 360, 362–363, 370, 374, 378, 456, 478–479, 701, 815, 933
definition of, 344–345
SIGALRM signal, 313–314, 317, 330–332, 338–340, 342–343, 347, 354, 356–357, 364–365, 373–374, 621
sig_atomic_t data type, 59, 356–357, 361–363, 732
SIG_BLOCK constant, 346, 348, 360, 362–363, 370, 374, 454, 456, 477, 701, 815
SIGBUS signal, 317, 352–353, 527, 530
SIGCHLD signal, 238, 288, 315, 317, 331–335, 351–353, 367–368, 370–371, 377, 471, 501, 546, 723, 923, 939
semantics, 332–335
SIGCLD signal, 317, 332–336
SIGCONT signal, 301, 309, 317, 337, 377, 379
sigdelset function, 331, 344–345, 366, 374, 933
definition of, 344–345
SIG_DFL constant, 323, 333, 350–351, 366, 378–379, 476
sigemptyset function, 331, 344, 348, 354–355, 360, 362–363, 369–370, 374, 378, 456, 467, 476, 478, 621, 701, 815, 933
definition of, 344
SIGEMT signal, 317–318
SIG_ERR constant, 19, 324, 334, 340–343, 348, 354–356, 360–361, 363, 368, 550, 709, 711, 733
SIGEV_NONE constant, 518
sigfillset function, 331, 344, 366, 477, 933
definition of, 344
SIGFPE signal, 18, 240–241, 317–318, 352–353
Sigfunc data type, 354–355, 896
SIGHUP signal, 308–309, 317–318, 468, 475–479, 546, 815, 830, 843
SIG_IGN constant, 323, 333, 350, 366, 369, 379, 467, 815
SIGILL signal, 317–318, 351–353, 366
SIGINFO signal, 317–318, 682, 689
siginfo structure, 244, 283, 351–352, 376, 379, 381, 512
SIGINT signal, 18–19, 300, 314, 317, 319–320, 340–341, 347, 359–361, 364–365, 367–370, 372, 455–457, 546, 679, 681, 685, 688–689, 701–702, 709, 930, 932
SIGIO signal, 83, 317, 319, 501, 509–510, 627
SIGIOT signal, 317, 319, 365
sigismember function, 331, 344–345, 347–348, 933
definition of, 344–345
sigjmp_buf data type, 356
SIGJVM1 signal, 317
SIGJVM2 signal, 317
SIGKILL signal, 272, 275, 315, 317, 319, 321, 323, 346, 380, 735
siglongjmp function, 219, 331, 355–358, 365
definition of, 356
SIGLOST signal, 317
SIGLWP signal, 317, 319, 321
signal function, 18–19, 59, 308, 323–326, 329–335, 339–343, 348–349, 354–356, 360–361, 363, 368, 378, 510, 550, 709, 711, 939
definition of, 323, 354
signal set, 336, 344–345, 532, 933
<signal.h> header, 27, 240, 314, 324, 344–345, 380
signal_intr function, 330, 355, 364, 382, 508, 733, 896, 930
definition of, 355
signals, 18–19, 313–382
blocking, 335
delivery, 335
generation, 335
generation, pseudo terminal, 741
null, 314, 337
pending, 335
queueing, 336, 349, 376
reliable, 335–336
unreliable, 326–327
signal_thread function, 814, 830
definition of, 830
sigpause function, 331
sigpending function, 331, 335, 347–349
definition of, 347
SIGPIPE signal, 314, 317, 319, 537, 550–551, 553, 556, 587, 611, 815, 936
SIGPOLL signal, 317, 319, 501, 509–510
sigprocmask function, 331, 336, 340, 344, 346–349, 360, 362–364, 366, 370, 374, 378, 453–454, 456, 701
definition of, 346
SIGPROF signal, 317, 320
SIGPWR signal, 317–318, 320
sigqueue function, 222, 331, 353, 376–377
definition of, 376
SIGQUEUE_MAX constant, 40, 43, 376
SIGQUIT signal, 300, 317, 320, 347–349, 361–362, 367, 370, 372, 456–457, 546, 681, 689, 702, 709
SIGRTMIN constant, 376
SIGSEGV signal, 314, 317, 320, 332, 336, 352–353, 393, 527
sigset function, 331, 333
sigsetjmp function, 219, 331, 355–358
definition of, 356
SIG_SETMASK constant, 346, 348–349, 360, 362–364, 366, 370, 374, 454, 456, 701
sigset_t data type, 59, 336, 344, 347–348, 360–361, 363, 366, 369, 374, 378, 454–456, 701, 813
SIGSTKFLT signal, 317, 320
SIGSTOP signal, 315, 317, 320, 323, 346, 377
SIGSUSP signal, 689
sigsuspend function, 331, 340, 359–365, 374, 451
definition of, 359
SIGSYS signal, 317, 320
SIGTERM signal, 315, 317, 321, 325, 476–479, 709, 732–733, 742, 815, 830, 944
SIGTHAW signal, 317, 321
SIGTHR signal, 319
SIGTRAP signal, 317, 321, 351, 353
SIGTSTP signal, 300, 308, 317, 320–321, 377–379, 680, 682, 701, 735
SIGTTIN signal, 300–301, 304, 309, 317, 321, 377, 379
SIGTTOU signal, 301–302, 317, 321, 377, 379, 691
SIG_UNBLOCK constant, 346, 349, 378, 454
SIGURG signal, 83, 314, 317, 319, 322, 510–511, 626
SIGUSR1 signal, 317, 322, 324, 347, 356–358, 360–361, 363–364, 501
SIGUSR2 signal, 317, 322, 324, 363–364
sigval structure, 352
SIGVTALRM signal, 317, 322
sigwait function, 451, 454–455, 457, 475, 477, 830
definition of, 454
sigwaitinfo function, 451
SIGWAITING signal, 317, 322
SIGWINCH signal, 311, 317, 322, 710–712, 718–719, 741–742
SIGXFSZ signal, 221, 317, 322, 382, 925
SIGXRES signal, 317, 322
Silicon Graphics, Inc., see SGI
SI_MESGQ constant, 353
Singh, A., 112, 116, 952
Single UNIX Specification, see SUS
Version 3, see SUSv3
Version 4, see SUSv4
single-instance daemons, 473–474
SIOCSPGRP constant, 627
S_IRGRP constant, 99, 104, 107, 140, 149, 473, 896
S_IROTH constant, 99, 104, 107, 140, 149, 473, 896
S_IRUSR constant, 99, 104, 107, 140, 149, 169, 473, 818, 896
S_IRWXG constant, 107, 639
S_IRWXO constant, 107, 639
S_IRWXU constant, 107, 584, 639
S_ISBLK function, 96–97, 139
S_ISCHR function, 96–97, 139, 698
S_ISDIR function, 96–97, 133, 698
S_ISFIFO function, 96–97, 535, 552
S_ISGID constant, 99, 107, 140, 498
S_ISLNK function, 96–97
S_ISREG function, 96, 808
S_ISUID constant, 99, 107, 140
S_ISVTX constant, 107–109, 140
S_IWGRP constant, 99, 104, 107, 140, 149
S_IWOTH constant, 99, 104, 107, 140, 149
S_IWUSR constant, 99, 104, 107, 140, 149, 169, 473, 818, 896
S_IXGRP constant, 99, 107, 140, 498, 896
S_IXOTH constant, 99, 107, 140, 896
S_IXUSR constant, 99, 107, 140, 169, 896
size_t data type, 59–60, 71, 507, 772, 906
__SLBF constant, 166
sleep function, 230, 234, 243, 246, 272, 274, 308, 331, 334, 339–342, 348, 372–375, 381–382, 387, 391–392, 439, 451, 460, 504, 532, 606–607, 923, 925, 928, 931, 936
definition of, 373–374, 929
definition of, 933–934
SMF (Service Management Facility), 293
__SNBF constant, 165
Snow Leopard, xxi
snprintf function, 159, 901, 904
definition of, 159
Snyder, G., 951
sockaddr structure, 595–597, 605–607, 609, 622, 625, 635, 637, 639, 641, 800
sockaddr_in structure, 595–596, 603
sockaddr_in6 structure, 595–596
sockaddr_un structure, 634–638, 640–642
definition of, 626
SOCK_DGRAM constant, 590–591, 602, 608, 612, 621, 623, 632, 941
addressing, 593–605
descriptors, 590–593
I/O, asynchronous, 627
I/O, nonblocking, 608–609, 627
mechanism, 95, 534, 587, 589–628
options, 623–625
socket function, 148, 331, 590, 592, 607, 609, 621, 625, 637–638, 640–641, 808
definition of, 590
socketpair function, 148, 331, 629–630, 632, 634, 941
definition of, 630
timing, 565
socklen_t data type, 606–607, 609, 622, 625, 800
SOCK_RAW constant, 590–591, 602
SOCK_SEQPACKET constant, 590–591, 602, 605, 609, 612, 625
SOCK_STREAM constant, 319, 590–591, 602, 605, 609, 612, 614–616, 618–619, 625, 630, 635, 637, 640, 802, 808, 816
Solaris, xxi–xxii, xxv, xxvii, 3–4, 26–27, 29–30, 35–36, 38, 41, 48–49, 57–60, 62, 64–65, 70, 76, 88, 102, 108–113, 121–122, 129, 131–132, 138, 178, 182, 184–188, 208–209, 211–212, 222, 225, 229, 240, 242, 244–245, 260, 277, 288, 290, 293, 296, 298, 303, 314, 316–323, 329, 334–335, 351, 355, 371, 373, 377, 379–380, 385, 388, 392, 396, 409, 426–427, 432, 439, 471, 485, 496–497, 499, 503, 530–531, 534, 559, 561, 563, 565, 567, 572–573, 576, 592, 594, 607–608, 611–613, 627, 634, 648, 675–678, 684–691, 693, 700, 704, 716–717, 723–724, 726–727, 740–741, 744, 799, 911, 918, 925, 930, 932, 935–936, 951
SOL_SOCKET constant, 624–625, 645–646, 650–652
solutions to exercises, 905–945
source code, availability, xxx
Spafford, G., 181, 250, 298, 949
spawn function, 234
spin locks, 417–418
spooling, printer, 793–795
sprintf function, 159, 549, 616, 622, 640, 655, 657, 659, 668–669, 759, 772–773, 803, 818–819, 822–823, 825–827, 833–835, 837, 845, 945
definition of, 159
spwd structure, 918
S_RDNORM constant, 510
sscanf function, 162, 549, 551, 802–803
definition of, 162
SSIZE_MAX constant, 38, 41, 71
stack, 205, 215
standard error routines, 898–904
alternatives, 174–175
buffering, 145–147, 231, 235, 265, 367, 552, 721, 752
efficiency, 153–156
implementation, 164–167
library, 10, 143–175
streams, 143–144
versus unbuffered I/O, timing, 155
standards, 25–33
differences, 58–59
START terminal character, 678, 680–682, 686, 689, 693
stat function, 4, 7, 65, 93–95, 97, 99, 107, 121–122, 124, 126–128, 131, 138, 140–141, 170, 331, 452, 586, 592, 628, 639–640, 670, 698, 908, 910, 942
definition of, 93
stat structure, 93–96, 98, 111, 114, 124, 140, 147, 167, 170, 498, 518, 529, 535, 552, 557, 586, 638, 697–698, 757, 807, 832
STATUS terminal character, 678, 682, 687, 689, 703
<stdarg.h> header, 27, 162–163, 755, 758
__STDC_IEC_559__ constant, 31
stderr variable, 145, 483, 731, 901
STDERR_FILENO constant, 62, 145, 618–619, 643, 648, 652, 729
stdin variable, 10, 145, 154, 214, 216, 550–551, 654
STDIN_FILENO constant, 9, 62, 67, 72, 145, 308, 378, 483, 539, 544, 549–550, 619, 655–656, 679, 684, 709, 711, 728, 730–732, 739–740
<stdio.h> header, 10, 27, 38, 51, 145, 147, 151, 164, 168, 694, 755, 895
<stdlib.h> header, 27, 208, 895
stdout variable, 10, 145, 154, 247–248, 275, 901, 921, 930
STDOUT_FILENO constant, 9, 62, 72, 145, 230, 235, 378, 483, 537, 544, 549–550, 614, 618–620, 654–656, 729, 733, 739–740, 921
Stevens, D. A., xxxii
Stevens, E. M., xxxii
Stevens, S. H., xxxii
Stevens, W. R., xx, xxv–xxvi, xxxii, 157, 291, 470, 505, 589, 717, 793, 952
sticky bit, 107–109, 117, 140
Stonebraker, M. R., 743, 953
STOP terminal character, 678, 680–682, 686, 689, 693
str2sig function, 380
definition of, 380
Strang, J., 712, 953
strchr function, 767
STREAM_MAX constant, 38, 40, 43, 49
STREAMS, xxii, 88, 143, 501–502, 506, 508, 510, 534, 560, 565, 648, 716–717, 722, 726, 740
pckt , 716, 740
ptem , 716, 726
ttcompat , 716, 726
streams, standard I/O, 143–144
STREAMS-based pipes, mounted, 534
timing, 565
strerror function, 15–16, 24, 380, 442, 452, 471, 474, 478–479, 600, 615–618, 621–622, 657, 669, 823–827, 830, 833–834, 842, 899, 901, 904, 906, 931
definition of, 15
strftime function, 190, 192–196, 264, 408, 452, 919
definition of, 192
definition of, 192
strip program, 920
strlen function, 12, 231, 945
strncpy function, 809
Strong, H. R., 744, 750, 949
definition of, 195
definition of, 380
strtok function, 442, 657–658
strtok_r function, 443
strtol function, 633
stty program, 301, 691–692, 702, 713, 943
Stumm, M., 174, 531, 950
submit_file function, 807, 809, 811
definition of, 809
Sun Microsystems, xxi–xxii, xxvii, 33, 35, 76, 740, 953
SunOS, xxxi, 33, 206, 330, 354
supplementary group ID, 18, 39, 98, 101, 108, 110, 183–184, 233, 252, 258
SUS (Single UNIX Specification), xxi, xxvi, 28, 30–33, 36, 50, 53–54, 57–58, 60–61, 64, 69, 78, 88, 94, 105, 107, 109, 131, 136, 143, 157, 163, 168–169, 180, 183, 190–191, 196, 211–212, 220–221, 234, 239, 244–245, 262, 293, 296, 311, 315, 322, 330, 333, 352, 354, 410, 425, 429–431, 442, 469–472, 485, 496, 501, 507, 509, 521, 527–528, 533–534, 559, 561, 565–566, 572–573, 583, 596, 607, 610, 612, 623, 627, 645, 662, 674, 678, 683, 722–724, 744, 910, 950, 953
SUSP terminal character, 678, 680, 682, 688, 701
SUSv3 (Single UNIX Specification, Version 3), 32
SUSv4 (Single UNIX Specification, Version 4), 32, 88, 132, 143, 153, 168–169, 189, 314, 319–320, 336, 375–376, 384, 442, 501, 509–510, 525, 533, 571, 579
SVID (System V Interface Definition), xix, 32–33, 948
SVR2, 65, 187, 317, 329, 336, 340–341, 712, 948
SVR3, 76, 129, 201, 299, 313, 317, 319, 326, 329, 333, 336, 496, 502, 507, 898, 948
SVR3.0, xxxi
SVR3.1, xxxi
SVR3.2, xxxi, 36, 81, 267
SVR4, xxii, xxxi–xxxii, 3, 21, 33, 35–36, 48, 63, 65, 76, 121, 187, 209, 290, 296, 299, 310, 313, 317, 329, 333, 336, 469, 502, 507–508, 521, 712, 722, 744, 948, 953
swapper process, 227
S_WRNORM constant, 510
symbolic link, 55, 94–95, 110–111, 114, 118, 120–123, 131, 137, 141, 186, 908–909
symlink function, 123–124, 331, 452
definition of, 123
symlinkat function, 123–124, 331, 452
definition of, 123
SYMLINK_MAX constant, 39, 44, 49
SYMLOOP_MAX constant, 40, 43, 48–49
definition of, 81
synchronization mechanisms, 86–87
synchronous write, 63, 86–87
sysconf function, 20, 37, 39, 41–48, 50–54, 57, 59–60, 69, 98, 201, 221, 256, 276, 280–281, 384, 425–426, 429, 431, 442, 516, 527, 616, 618, 623, 800, 815, 907
definition of, 42
sysctl program, 315, 559
sysdef program, 559
<sys/iso/signal_iso.h> header, 314
syslog function, 452, 465, 468–476, 478–480, 615–619, 622–623, 901, 904, 928
definition of, 470
syslogd program, 470–471, 473, 475, 479–480
<sys/select.h> header, 29, 501, 504, 932–933
<sys/socket.h> header, 29, 608
system calls, 1, 21
interrupted, 327–330, 343, 351, 354–355, 365, 508
restarted, 329–330, 342–343, 351, 354, 508, 700
tracing, 497
versus functions, 21–23
system function, 23, 129, 227, 249, 264–269, 281–283, 349, 367–372, 381, 451, 538, 542, 923, 936
definition of, 265–266, 369
system identification, 187–189
System V, xxv, 87, 464, 466, 469, 475, 482, 485, 500–501, 506, 509–510, 722, 726
System V Interface Definition, see SVID
<sys/types.h> header, 29, 58, 138, 501, 557, 933
TAB0 constant, 691
TAB1 constant, 691
TAB2 constant, 691
TAB3 constant, 690–691
TABDLY constant, 676, 684, 689–691
Tankus, E., xxxii
tar program, 127, 135, 142, 910–911
tcdrain function, 322, 331, 451, 677, 693
definition of, 693
tcflow function, 322, 331, 677, 693
definition of, 693
tcflush function, 145, 322, 331, 673, 677, 693
definition of, 693
tcgetattr function, 331, 674, 677, 679, 683–684, 691–692, 695, 701, 705–707, 722, 730–731
definition of, 683
tcgetpgrp function, 298–299, 331, 674, 677
definition of, 298
tcgetsid function, 298–299, 674, 677
definition of, 299
TCIFLUSH constant, 693
TCIOFF constant, 693
TCIOFLUSH constant, 693
TCION constant, 693
TCMalloc, 210, 949
TCOFLUSH constant, 693
TCOOFF constant, 693
TCOON constant, 693
TCSADRAIN constant, 683
TCSAFLUSH constant, 679, 683, 701, 705–707
TCSANOW constant, 683–684, 728, 731
tcsendbreak function, 322, 331, 677, 682, 693–694
definition of, 693
tcsetattr function, 322, 331, 673–674, 677, 679, 683–684, 691–692, 701, 705–707, 722, 728, 731, 738
definition of, 683
tcsetpgrp function, 298–299, 301, 303, 322, 331, 674, 677
definition of, 298
tee program, 554–555
tell function, 67
TELL_CHILD function, 247–248, 362, 491, 498, 532, 539, 541, 577, 898
definition of, 363, 540
definition of, 130
TELL_PARENT function, 247, 362, 491, 532, 539, 541, 577, 898, 934
definition of, 363, 540
TELL_WAIT function, 247–248, 362, 491, 498, 532, 539, 577, 898, 934
definition of, 363, 540
telnet program, 292–293, 500, 738–739, 742
telnetd program, 291–292, 500–501, 717, 734, 923, 944
TERM environment variable, 211, 287, 289
termcap , 712–713, 953
controlling, 63, 233, 252, 270, 292, 295–298, 301, 303–304, 306, 309, 311–312, 318, 321, 377, 463, 465–466, 469, 480, 680, 685, 691, 694, 700, 702, 716, 724, 726–727, 898, 953
identification, 694–700
I/O, 671–713
logins, 285–290
mode, cbreak, 672, 704, 708, 713
mode, raw, 672, 704, 708, 713, 732, 734
options, 683–691
parity, 688
special input characters, 678–682
window size, 311, 322, 710–712, 718, 727, 741–742
termination, process, 198–202
termios structure, 64, 311, 674, 677–679, 683–684, 692–693, 695, 701, 703–706, 708, 722, 727, 730–732, 738, 741–742, 897, 944
<termios.h> header, 29, 88, 674
Thompson, K., 75, 181, 229, 743, 951–953
thread–fork interactions, 457–461
threads, 14, 27, 229, 383–423, 578
concepts, 383–385
control, 425–462
creation, 385–388
I/O, 461–462
reentrancy, 442–446
synchronization, 397–422
termination, 388–397
thread–signal interactions, 453–457
thundering herd, 927
tick, clock, 20, 42–43, 49, 59, 270, 280
calendar, 20, 24, 59, 126, 189, 191–192, 264, 270
process, 20, 24, 59, 280–282
values, 20
TIME terminal value, 687, 703–704, 708, 713, 943
time function, 189–190, 194, 264, 331, 357, 639–640, 919, 929
definition of, 189
timer_getoverrun function, 331
timer_settime function, 331, 353
times function, 42, 59, 280–281, 331, 522
definition of, 280
timespec structure, 94, 126, 128, 189–190, 375, 407–408, 413–414, 437–438, 506, 832
time_t data type, 20, 59, 94, 189, 192, 196, 906
timeval structure, 190, 414, 421, 437, 503, 506, 805–806, 929, 933
full-duplex pipes, 565
standard I/O versus unbuffered I/O, 155
synchronization mechanisms, 86–87
writev versus other techniques, 522
timing comparison, mutex, 571
TIOCGWINSZ constant, 710–711, 719, 730, 897
TIOCPKT constant, 740
TIOCREMOTE constant, 741
TIOCSCTTY constant, 297–298, 727–728
TIOCSIG constant, 741
TIOCSWINSZ constant, 710, 718, 728, 741
tip program, 713
tm structure, 191, 194, 408, 919
TMPDIR environment variable, 211
tmpfile function, 167–171, 366, 452
definition of, 167
tmpnam function, 38, 167–171, 442
definition of, 167
TOCTTOU error, 65, 250, 953
Torvalds, L., 35
tracing system calls, 497
transactions, database, 952
TRAP_BRKPT constant, 353
tread function, 800, 805–806, 825, 838–839
definition of, 805
treadn function, 800, 806, 824
definition of, 806
Trickey, H., 229, 952
truncate function, 112, 121, 125, 474
definition of, 112
file, 112
filename, 65–66
pathname, 65–66
truss program, 497
ttcompat STREAMS module, 716, 726
tty_atexit function, 705, 731, 897
definition of, 708
tty_cbreak function, 704, 709, 897
definition of, 705
ttyname function, 137, 276, 442, 452, 695–696, 699
definition of, 695, 698
TTY_NAME_MAX constant, 40, 43, 49
tty_raw function, 704, 709, 713, 731, 897
definition of, 706
tty_reset function, 704, 709, 897
definition of, 707
tty_termios function, 705, 897
definition of, 708
TZ environment variable, 190, 192, 195–196, 211, 919
TZNAME_MAX constant, 40, 43, 49
tzset function, 452
Ubuntu, xxii, 7, 26, 35, 290
ucred structure, 649, 651
UFS file system, 49, 57, 65, 113, 116, 129
UID, see user ID
uid_t data type, 59
uint16_t data type, 595
uint32_t data type, 595
UltraSPARC, xxii, xxvii
umask function, 104–107, 222, 331, 466–467
definition of, 104
umask program, 105, 141
definition of, 187
unbuffered I/O timing, standard I/O versus, 155
definition of, 151
ungetwc function, 452
uninitialized data segment, 205
<unistd.h> header, 9, 29, 53, 62, 110, 442, 501, 755, 895
UNIX Architecture, 1–2
timing, 565
UNIX System implementations, 33
Unix-to-Unix Copy, see UUCP
unlink function, 114, 116–119, 121–122, 125, 141, 169–170, 331, 366, 452, 497, 553, 637, 639, 641, 823, 826–827, 837, 909, 911, 937, 942
definition of, 117
unlinkat function, 116–119, 331, 452
definition of, 117
un_lock function, 489, 759–760, 762, 768, 770–771, 773, 777–778, 780, 897
definition of, 723
Unrau, R., 174, 531, 950
unreliable signals, 326–327
unsetenv function, 212, 442
definition of, 212
update_jobno function, 814, 819, 832, 843
definition of, 819
Upstart, 290
uptime program, 614–615, 617, 619–620, 622–623, 628
USER environment variable, 210, 288
user ID, 16, 255–260
effective, 98–99, 101–102, 106, 110, 126, 140, 228, 233, 253, 256–260, 276, 286, 288, 337, 381, 558, 562, 568, 573, 586–587, 637, 640, 809, 918
real, 39–40, 43, 98–99, 102, 221, 228, 233, 252–253, 256–260, 270, 276, 286, 288, 337, 381, 585, 924
UTC (Coordinated Universal Time), 20, 189, 192, 196
utimensat function, 125–128, 331, 452, 910
definition of, 126
utimes function, 125–128, 141, 331, 452, 910
definition of, 127
utmp file, 186–187, 276, 312, 734, 923, 930
utsname structure, 187–188, 196
UUCP (Unix-to-Unix Copy), 188
uucp program, 500
V7, 329, 726
va_list data type, 758, 899–903
automatic, 205, 215, 217, 219, 226
global, 219
register, 217
static, 219
volatile, 217, 219, 340, 357
/var/log/account/pacct file, 269
va_start function, 758, 899–903
definition of, 161
VDSUSP constant, 678
VEOF constant, 678–679, 704
VEOL constant, 678, 704
VEOL2 constant, 678
vfork function, 229, 234–236, 283, 921–922
definition of, 161
vfscanf function, 163
definition of, 163
vi program, 377, 497, 499, 672, 711–713, 943
VINTR constant, 678–679
vipw program, 179
VKILL constant, 678
VLNEXT constant, 678
VMIN constant, 703–705, 707
v-node, 74–76, 78, 136, 312, 642, 907, 950
Vo, K. P., 135, 174, 949–950, 953
volatile variables, 217, 219, 340, 357
definition of, 161
VQUIT constant, 678
vscanf function, 163
definition of, 163
definition of, 161
definition of, 161
definition of, 163
definition of, 472
VTDLY constant, 676, 684, 689, 691
wait function, 231–232, 237–246, 249, 255, 264, 267, 280, 282–283, 301, 317, 328–329, 331, 333–335, 351, 368, 371–372, 451, 471, 499, 546, 588, 936
definition of, 238
Wait, J. W., xxxii
definition of, 245
definition of, 245
WAIT_CHILD function, 247, 362, 491, 532, 539, 577, 898, 934
definition of, 363, 540
waitid function, 244–245, 283, 451
definition of, 244
WAIT_PARENT function, 247–248, 362, 491, 498, 532, 539, 577, 898
definition of, 363, 540
waitpid function, 11–13, 19, 23, 237–245, 254, 261, 265–267, 282, 285, 294, 301, 315, 329, 331, 370–371, 451, 498, 538, 545–546, 587–588, 618, 935, 937, 939
definition of, 238
wall program, 723
Weeks, M. S., 206, 949
Wei, J., 65, 953
Weinberger, P. J., 76, 262, 743, 947, 953
WERASE terminal character, 678, 682, 685–687, 703
WEXITSTATUS function, 239–240
who program, 187, 734
WIFSTOPPED function, 239–240, 242
Williams, T., 310, 953
Wilson, G. A., xxxii
pseudo terminal, 741
terminal, 311, 322, 710–712, 718, 727, 741–742
winsize structure, 311, 710–711, 727, 730, 732, 742, 897, 944
Winterbottom, P., 229, 952
W_OK constant, 102
Wolff, R., xxxii
Wolff, S., xxxii
worker_thread structure, 812–813, 828–829
working directory, see current directory worm, Internet, 153
Wright, G. R., xxxii
delayed, 81
gather, 521, 644
synchronous, 63, 86–87
write function, 8–10, 20–21, 59, 61, 63–64, 68–69, 72, 77–79, 86–88, 90, 125, 145–146, 156, 167, 174, 230–231, 234, 247, 328–329, 331, 342–343, 378, 382, 451, 474, 482–484, 491, 495–498, 502, 505, 509, 513, 517, 522–526, 530–532, 537–538, 540, 549–551, 553, 555, 560, 565, 587, 590, 592, 610, 614, 620, 643, 654–655, 672, 752, 760, 773, 810, 819, 826, 836, 907–908, 921, 925, 934, 936–937, 945
definition of, 72
write_lock function, 489, 493, 498, 818, 897
writen function, 523–524, 644, 732–733, 738, 810–811, 824–827, 836, 896
definition of, 523–524
writev function, 41, 43, 329, 451, 481, 521–523, 531–532, 592, 611, 644, 655, 660, 752, 771, 773, 832, 836
definition of, 521
writew_lock function, 489, 491, 759, 763, 769, 771–772, 777, 787, 897
wscanf function, 452
wtmp file, 186–187, 312, 923
Wulf, W. A., 953
x86, xxi
Xenix, 33, 485, 726
X_OK constant, 102
X/Open, xxvi, 31, 953
X/Open Portability Guide, 31–32
_XOPEN_REALTIME constant, 31, 57
_XOPEN_REALTIME_THREADS constant, 31, 57
_XOPEN_SOURCE constant, 57–58
_XOPEN_UNIX constant, 30–31, 57
XPG3 (X/Open Portability Guide, Issue 3), xxxi, 33, 953
XPG4 (X/Open Portability Guide, Issue 4), 32, 54
XSI, 30–31, 53–54, 57, 94, 107, 109, 131–132, 143, 161, 163, 168–169, 180, 183, 211–212, 220, 222, 239, 242, 244–245, 252, 257, 276, 293, 315, 317, 322, 329, 333, 350–352, 377, 429, 431, 442, 469–472, 485, 521, 526, 528, 534, 553, 562–563, 566, 571, 576, 578, 587–588, 666, 676, 685, 687, 689–691, 722, 724, 744, 910
Yigit, O., 744, 952
zombie, 237–238, 242, 283, 333, 351, 923
Cloud Monk is Retired ( for now). Buddha with you. © 2025 and Beginningless Time - Present Moment - Three Times: The Buddhas or Fair Use. Disclaimers
SYI LU SENG E MU CHYWE YE. NAN. WEI LA YE. WEI LA YE. SA WA HE.