1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858
|
<!DOCTYPE kdeveloptoc>
<kdeveloptoc>
<title>LIBC (umn.edu)</title>
<base href="http://epoxy.mrs.umn.edu/doc/glibc-doc/html/"/>
<tocsect1 name="1. Introduction" url="chapters_1.html#SEC1">
<tocsect2 name="1.1 Getting Started" url="chapters_1.html#SEC2"/>
<tocsect2 name="1.2 Standards and Portability" url="chapters_1.html#SEC3">
<tocsect3 name="1.2.1 ISO C" url="chapters_1.html#SEC4"/>
<tocsect3 name="1.2.2 POSIX (The Portable Operating System Interface)" url="chapters_1.html#SEC5"/>
<tocsect3 name="1.2.3 Berkeley Unix" url="chapters_1.html#SEC6"/>
<tocsect3 name="1.2.4 SVID (The System V Interface Description)" url="chapters_1.html#SEC7"/>
<tocsect3 name="1.2.5 XPG (The X/Open Portability Guide)" url="chapters_1.html#SEC8"/>
</tocsect2>
<tocsect2 name="1.3 Using the Library" url="chapters_1.html#SEC9">
<tocsect3 name="1.3.1 Header Files" url="chapters_1.html#SEC10"/>
<tocsect3 name="1.3.2 Macro Definitions of Functions" url="chapters_1.html#SEC11"/>
<tocsect3 name="1.3.3 Reserved Names" url="chapters_1.html#SEC12"/>
<tocsect3 name="1.3.4 Feature Test Macros" url="chapters_1.html#SEC13"/>
</tocsect2>
<tocsect2 name="1.4 Roadmap to the Manual" url="chapters_1.html#SEC14"/>
</tocsect1>
<tocsect1 name="2. Error Reporting" url="chapters_2.html#SEC15">
<tocsect2 name="2.1 Checking for Errors" url="chapters_2.html#SEC16"/>
<tocsect2 name="2.2 Error Codes" url="chapters_2.html#SEC17"/>
<tocsect2 name="2.3 Error Messages" url="chapters_2.html#SEC18"/>
</tocsect1>
<tocsect1 name="3. Virtual Memory Allocation And Paging" url="chapters_3.html#SEC19">
<tocsect2 name="3.1 Process Memory Concepts" url="chapters_3.html#SEC20"/>
<tocsect2 name="3.2 Allocating Storage For Program Data" url="chapters_3.html#SEC21">
<tocsect3 name="3.2.1 Memory Allocation in C Programs" url="chapters_3.html#SEC22">
<tocsect4 name="3.2.1.1 Dynamic Memory Allocation" url="chapters_3.html#SEC23"/>
</tocsect3>
<tocsect3 name="3.2.2 Unconstrained Allocation" url="chapters_3.html#SEC24">
<tocsect4 name="3.2.2.1 Basic Memory Allocation" url="chapters_3.html#SEC25"/>
<tocsect4 name="3.2.2.2 Examples of malloc" url="chapters_3.html#SEC26"/>
<tocsect4 name="3.2.2.3 Freeing Memory Allocated with malloc" url="chapters_3.html#SEC27"/>
<tocsect4 name="3.2.2.4 Changing the Size of a Block" url="chapters_3.html#SEC28"/>
<tocsect4 name="3.2.2.5 Allocating Cleared Space" url="chapters_3.html#SEC29"/>
<tocsect4 name="3.2.2.6 Efficiency Considerations for malloc" url="chapters_3.html#SEC30"/>
<tocsect4 name="3.2.2.7 Allocating Aligned Memory Blocks" url="chapters_3.html#SEC31"/>
<tocsect4 name="3.2.2.8 Malloc Tunable Parameters" url="chapters_3.html#SEC32"/>
<tocsect4 name="3.2.2.9 Heap Consistency Checking" url="chapters_3.html#SEC33"/>
<tocsect4 name="3.2.2.10 Memory Allocation Hooks" url="chapters_3.html#SEC34"/>
<tocsect4 name="3.2.2.11 Statistics for Memory Allocation with malloc" url="chapters_3.html#SEC35"/>
<tocsect4 name="3.2.2.12 Summary of malloc-Related Functions" url="chapters_3.html#SEC36"/>
</tocsect3>
<tocsect3 name="3.2.3 Allocation Debugging" url="chapters_3.html#SEC37">
<tocsect4 name="3.2.3.1 How to install the tracing functionality" url="chapters_3.html#SEC38"/>
<tocsect4 name="3.2.3.2 Example program excerpts" url="chapters_3.html#SEC39"/>
<tocsect4 name="3.2.3.3 Some more or less clever ideas" url="chapters_3.html#SEC40"/>
<tocsect4 name="3.2.3.4 Interpreting the traces" url="chapters_3.html#SEC41"/>
</tocsect3>
<tocsect3 name="3.2.4 Obstacks" url="chapters_3.html#SEC42">
<tocsect4 name="3.2.4.1 Creating Obstacks" url="chapters_3.html#SEC43"/>
<tocsect4 name="3.2.4.2 Preparing for Using Obstacks" url="chapters_3.html#SEC44"/>
<tocsect4 name="3.2.4.3 Allocation in an Obstack" url="chapters_3.html#SEC45"/>
<tocsect4 name="3.2.4.4 Freeing Objects in an Obstack" url="chapters_3.html#SEC46"/>
<tocsect4 name="3.2.4.5 Obstack Functions and Macros" url="chapters_3.html#SEC47"/>
<tocsect4 name="3.2.4.6 Growing Objects" url="chapters_3.html#SEC48"/>
<tocsect4 name="3.2.4.7 Extra Fast Growing Objects" url="chapters_3.html#SEC49"/>
<tocsect4 name="3.2.4.8 Status of an Obstack" url="chapters_3.html#SEC50"/>
<tocsect4 name="3.2.4.9 Alignment of Data in Obstacks" url="chapters_3.html#SEC51"/>
<tocsect4 name="3.2.4.10 Obstack Chunks" url="chapters_3.html#SEC52"/>
<tocsect4 name="3.2.4.11 Summary of Obstack Functions" url="chapters_3.html#SEC53"/>
</tocsect3>
<tocsect3 name="3.2.5 Automatic Storage with Variable Size" url="chapters_3.html#SEC54">
<tocsect4 name="3.2.5.1 alloca Example" url="chapters_3.html#SEC55"/>
<tocsect4 name="3.2.5.2 Advantages of alloca" url="chapters_3.html#SEC56"/>
<tocsect4 name="3.2.5.3 Disadvantages of alloca" url="chapters_3.html#SEC57"/>
<tocsect4 name="3.2.5.4 GNU C Variable-Size Arrays" url="chapters_3.html#SEC58"/>
</tocsect3>
</tocsect2>
<tocsect2 name="3.3 Resizing the Data Segment" url="chapters_3.html#SEC59"/>
<tocsect2 name="3.4 Locking Pages" url="chapters_3.html#SEC60">
<tocsect3 name="3.4.1 Why Lock Pages" url="chapters_3.html#SEC61"/>
<tocsect3 name="3.4.2 Locked Memory Details" url="chapters_3.html#SEC62"/>
<tocsect3 name="3.4.3 Functions To Lock And Unlock Pages" url="chapters_3.html#SEC63"/>
</tocsect2>
</tocsect1>
<tocsect1 name="4. Character Handling" url="chapters_4.html#SEC64">
<tocsect2 name="4.1 Classification of Characters" url="chapters_4.html#SEC65"/>
<tocsect2 name="4.2 Case Conversion" url="chapters_4.html#SEC66"/>
<tocsect2 name="4.3 Character class determination for wide characters" url="chapters_4.html#SEC67"/>
<tocsect2 name="4.4 Notes on using the wide character classes" url="chapters_4.html#SEC68"/>
<tocsect2 name="4.5 Mapping of wide characters." url="chapters_4.html#SEC69"/>
</tocsect1>
<tocsect1 name="5. String and Array Utilities" url="chapters_5.html#SEC70">
<tocsect2 name="5.1 Representation of Strings" url="chapters_5.html#SEC71"/>
<tocsect2 name="5.2 String and Array Conventions" url="chapters_5.html#SEC72"/>
<tocsect2 name="5.3 String Length" url="chapters_5.html#SEC73"/>
<tocsect2 name="5.4 Copying and Concatenation" url="chapters_5.html#SEC74"/>
<tocsect2 name="5.5 String/Array Comparison" url="chapters_5.html#SEC75"/>
<tocsect2 name="5.6 Collation Functions" url="chapters_5.html#SEC76"/>
<tocsect2 name="5.7 Search Functions" url="chapters_5.html#SEC77">
<tocsect3 name="5.7.1 Compatibility String Search Functions" url="chapters_5.html#SEC78"/>
</tocsect2>
<tocsect2 name="5.8 Finding Tokens in a String" url="chapters_5.html#SEC79"/>
<tocsect2 name="5.9 strfry" url="chapters_5.html#SEC80"/>
<tocsect2 name="5.10 Trivial Encryption" url="chapters_5.html#SEC81"/>
<tocsect2 name="5.11 Encode Binary Data" url="chapters_5.html#SEC82"/>
<tocsect2 name="5.12 Argz and Envz Vectors" url="chapters_5.html#SEC83">
<tocsect3 name="5.12.1 Argz Functions" url="chapters_5.html#SEC84"/>
<tocsect3 name="5.12.2 Envz Functions" url="chapters_5.html#SEC85"/>
</tocsect2>
</tocsect1>
<tocsect1 name="6. Character Set Handling" url="chapters_6.html#SEC86">
<tocsect2 name="6.1 Introduction to Extended Characters" url="chapters_6.html#SEC87"/>
<tocsect2 name="6.2 Overview about Character Handling Functions" url="chapters_6.html#SEC88"/>
<tocsect2 name="6.3 Restartable Multibyte Conversion Functions" url="chapters_6.html#SEC89">
<tocsect3 name="6.3.1 Selecting the conversion and its properties" url="chapters_6.html#SEC90"/>
<tocsect3 name="6.3.2 Representing the state of the conversion" url="chapters_6.html#SEC91"/>
<tocsect3 name="6.3.3 Converting Single Characters" url="chapters_6.html#SEC92"/>
<tocsect3 name="6.3.4 Converting Multibyte and Wide Character Strings" url="chapters_6.html#SEC93"/>
<tocsect3 name="6.3.5 A Complete Multibyte Conversion Example" url="chapters_6.html#SEC94"/>
</tocsect2>
<tocsect2 name="6.4 Non-reentrant Conversion Function" url="chapters_6.html#SEC95">
<tocsect3 name="6.4.1 Non-reentrant Conversion of Single Characters" url="chapters_6.html#SEC96"/>
<tocsect3 name="6.4.2 Non-reentrant Conversion of Strings" url="chapters_6.html#SEC97"/>
<tocsect3 name="6.4.3 States in Non-reentrant Functions" url="chapters_6.html#SEC98"/>
</tocsect2>
<tocsect2 name="6.5 Generic Charset Conversion" url="chapters_6.html#SEC99">
<tocsect3 name="6.5.1 Generic Character Set Conversion Interface" url="chapters_6.html#SEC100"/>
<tocsect3 name="6.5.2 A complete iconv example" url="chapters_6.html#SEC101"/>
<tocsect3 name="6.5.3 Some Details about other iconv Implementations" url="chapters_6.html#SEC102"/>
<tocsect3 name="6.5.4 The iconv Implementation in the GNU C library" url="chapters_6.html#SEC103">
<tocsect4 name="6.5.4.1 Format of `gconv-modules' files" url="chapters_6.html#SEC104"/>
<tocsect4 name="6.5.4.2 Finding the conversion path in iconv" url="chapters_6.html#SEC105"/>
<tocsect4 name="6.5.4.3 iconv module data structures" url="chapters_6.html#SEC106"/>
<tocsect4 name="6.5.4.4 iconv module interfaces" url="chapters_6.html#SEC107"/>
</tocsect3>
</tocsect2>
</tocsect1>
<tocsect1 name="7. Locales and Internationalization" url="chapters_7.html#SEC108">
<tocsect2 name="7.1 What Effects a Locale Has" url="chapters_7.html#SEC109"/>
<tocsect2 name="7.2 Choosing a Locale" url="chapters_7.html#SEC110"/>
<tocsect2 name="7.3 Categories of Activities that Locales Affect" url="chapters_7.html#SEC111"/>
<tocsect2 name="7.4 How Programs Set the Locale" url="chapters_7.html#SEC112"/>
<tocsect2 name="7.5 Standard Locales" url="chapters_7.html#SEC113"/>
<tocsect2 name="7.6 Accessing Locale Information" url="chapters_7.html#SEC114">
<tocsect3 name="7.6.1 localeconv: It is portable but small...small" url="chapters_7.html#SEC115">
<tocsect4 name="7.6.1.1 Generic Numeric Formatting Parameters" url="chapters_7.html#SEC116"/>
<tocsect4 name="7.6.1.2 Printing the Currency Symbol" url="chapters_7.html#SEC117"/>
<tocsect4 name="7.6.1.3 Printing the Sign of a Monetary Amount" url="chapters_7.html#SEC118"/>
</tocsect3>
<tocsect3 name="7.6.2 Pinpoint Access to Locale Data" url="chapters_7.html#SEC119"/>
</tocsect2>
<tocsect2 name="7.7 A dedicated function to format numbers" url="chapters_7.html#SEC120"/>
<tocsect2 name="7.8 Yes-or-No Questions" url="chapters_7.html#SEC121"/>
</tocsect1>
<tocsect1 name="8. Message Translation" url="chapters_8.html#SEC122">
<tocsect2 name="8.1 X/Open Message Catalog Handling" url="chapters_8.html#SEC123">
<tocsect3 name="8.1.1 The catgets function family" url="chapters_8.html#SEC124"/>
<tocsect3 name="8.1.2 Format of the message catalog files" url="chapters_8.html#SEC125"/>
<tocsect3 name="8.1.3 Generate Message Catalogs files" url="chapters_8.html#SEC126"/>
<tocsect3 name="8.1.4 How to use the catgets interface" url="chapters_8.html#SEC127">
<tocsect4 name="8.1.4.1 Not using symbolic names" url="chapters_8.html#SEC128"/>
<tocsect4 name="8.1.4.2 Using symbolic names" url="chapters_8.html#SEC129"/>
<tocsect4 name="8.1.4.3 How does to this allow to develop" url="chapters_8.html#SEC130"/>
</tocsect3>
</tocsect2>
<tocsect2 name="8.2 The Uniforum approach to Message Translation" url="chapters_8.html#SEC131">
<tocsect3 name="8.2.1 The gettext family of functions" url="chapters_8.html#SEC132">
<tocsect4 name="8.2.1.1 What has to be done to translate a message?" url="chapters_8.html#SEC133"/>
<tocsect4 name="8.2.1.2 How to determine which catalog to be used" url="chapters_8.html#SEC134"/>
<tocsect4 name="8.2.1.3 Additional functions for more complicated situations" url="chapters_8.html#SEC135"/>
<tocsect4 name="8.2.1.4 How to specify the output character set gettext uses" url="chapters_8.html#SEC137"/>
<tocsect4 name="8.2.1.5 How to use gettext in GUI programs" url="chapters_8.html#SEC138"/>
<tocsect4 name="8.2.1.6 User influence on gettext" url="chapters_8.html#SEC139"/>
</tocsect3>
<tocsect3 name="8.2.2 Programs to handle message catalogs for gettext" url="chapters_8.html#SEC140"/>
</tocsect2>
</tocsect1>
<tocsect1 name="9. Searching and Sorting" url="chapters_9.html#SEC141">
<tocsect2 name="9.1 Defining the Comparison Function" url="chapters_9.html#SEC142"/>
<tocsect2 name="9.2 Array Search Function" url="chapters_9.html#SEC143"/>
<tocsect2 name="9.3 Array Sort Function" url="chapters_9.html#SEC144"/>
<tocsect2 name="9.4 Searching and Sorting Example" url="chapters_9.html#SEC145"/>
<tocsect2 name="9.5 The hsearch function." url="chapters_9.html#SEC146"/>
<tocsect2 name="9.6 The tsearch function." url="chapters_9.html#SEC147"/>
</tocsect1>
<tocsect1 name="10. Pattern Matching" url="chapters_10.html#SEC148">
<tocsect2 name="10.1 Wildcard Matching" url="chapters_10.html#SEC149"/>
<tocsect2 name="10.2 Globbing" url="chapters_10.html#SEC150">
<tocsect3 name="10.2.1 Calling glob" url="chapters_10.html#SEC151"/>
<tocsect3 name="10.2.2 Flags for Globbing" url="chapters_10.html#SEC152"/>
<tocsect3 name="10.2.3 More Flags for Globbing" url="chapters_10.html#SEC153"/>
</tocsect2>
<tocsect2 name="10.3 Regular Expression Matching" url="chapters_10.html#SEC154">
<tocsect3 name="10.3.1 POSIX Regular Expression Compilation" url="chapters_10.html#SEC155"/>
<tocsect3 name="10.3.2 Flags for POSIX Regular Expressions" url="chapters_10.html#SEC156"/>
<tocsect3 name="10.3.3 Matching a Compiled POSIX Regular Expression" url="chapters_10.html#SEC157"/>
<tocsect3 name="10.3.4 Match Results with Subexpressions" url="chapters_10.html#SEC158"/>
<tocsect3 name="10.3.5 Complications in Subexpression Matching" url="chapters_10.html#SEC159"/>
<tocsect3 name="10.3.6 POSIX Regexp Matching Cleanup" url="chapters_10.html#SEC160"/>
</tocsect2>
<tocsect2 name="10.4 Shell-Style Word Expansion" url="chapters_10.html#SEC161">
<tocsect3 name="10.4.1 The Stages of Word Expansion" url="chapters_10.html#SEC162"/>
<tocsect3 name="10.4.2 Calling wordexp" url="chapters_10.html#SEC163"/>
<tocsect3 name="10.4.3 Flags for Word Expansion" url="chapters_10.html#SEC164"/>
<tocsect3 name="10.4.4 wordexp Example" url="chapters_10.html#SEC165"/>
<tocsect3 name="10.4.5 Details of Tilde Expansion" url="chapters_10.html#SEC166"/>
<tocsect3 name="10.4.6 Details of Variable Substitution" url="chapters_10.html#SEC167"/>
</tocsect2>
</tocsect1>
<tocsect1 name="11. Input/Output Overview" url="chapters_11.html#SEC168">
<tocsect2 name="11.1 Input/Output Concepts" url="chapters_11.html#SEC169">
<tocsect3 name="11.1.1 Streams and File Descriptors" url="chapters_11.html#SEC170"/>
<tocsect3 name="11.1.2 File Position" url="chapters_11.html#SEC171"/>
</tocsect2>
<tocsect2 name="11.2 File Names" url="chapters_11.html#SEC172">
<tocsect3 name="11.2.1 Directories" url="chapters_11.html#SEC173"/>
<tocsect3 name="11.2.2 File Name Resolution" url="chapters_11.html#SEC174"/>
<tocsect3 name="11.2.3 File Name Errors" url="chapters_11.html#SEC175"/>
<tocsect3 name="11.2.4 Portability of File Names" url="chapters_11.html#SEC176"/>
</tocsect2>
</tocsect1>
<tocsect1 name="12. Input/Output on Streams" url="chapters_12.html#SEC177">
<tocsect2 name="12.1 Streams" url="chapters_12.html#SEC178"/>
<tocsect2 name="12.2 Standard Streams" url="chapters_12.html#SEC179"/>
<tocsect2 name="12.3 Opening Streams" url="chapters_12.html#SEC180"/>
<tocsect2 name="12.4 Closing Streams" url="chapters_12.html#SEC181"/>
<tocsect2 name="12.5 Streams and Threads" url="chapters_12.html#SEC182"/>
<tocsect2 name="12.6 Streams in Internationalized Applications" url="chapters_12.html#SEC183"/>
<tocsect2 name="12.7 Simple Output by Characters or Lines" url="chapters_12.html#SEC184"/>
<tocsect2 name="12.8 Character Input" url="chapters_12.html#SEC185"/>
<tocsect2 name="12.9 Line-Oriented Input" url="chapters_12.html#SEC186"/>
<tocsect2 name="12.10 Unreading" url="chapters_12.html#SEC187">
<tocsect3 name="12.10.1 What Unreading Means" url="chapters_12.html#SEC188"/>
<tocsect3 name="12.10.2 Using ungetc To Do Unreading" url="chapters_12.html#SEC189"/>
</tocsect2>
<tocsect2 name="12.11 Block Input/Output" url="chapters_12.html#SEC190"/>
<tocsect2 name="12.12 Formatted Output" url="chapters_12.html#SEC191">
<tocsect3 name="12.12.1 Formatted Output Basics" url="chapters_12.html#SEC192"/>
<tocsect3 name="12.12.2 Output Conversion Syntax" url="chapters_12.html#SEC193"/>
<tocsect3 name="12.12.3 Table of Output Conversions" url="chapters_12.html#SEC194"/>
<tocsect3 name="12.12.4 Integer Conversions" url="chapters_12.html#SEC195"/>
<tocsect3 name="12.12.5 Floating-Point Conversions" url="chapters_12.html#SEC196"/>
<tocsect3 name="12.12.6 Other Output Conversions" url="chapters_12.html#SEC197"/>
<tocsect3 name="12.12.7 Formatted Output Functions" url="chapters_12.html#SEC198"/>
<tocsect3 name="12.12.8 Dynamically Allocating Formatted Output" url="chapters_12.html#SEC199"/>
<tocsect3 name="12.12.9 Variable Arguments Output Functions" url="chapters_12.html#SEC200"/>
<tocsect3 name="12.12.10 Parsing a Template String" url="chapters_12.html#SEC201"/>
<tocsect3 name="12.12.11 Example of Parsing a Template String" url="chapters_12.html#SEC202"/>
</tocsect2>
<tocsect2 name="12.13 Customizing printf" url="chapters_12.html#SEC203">
<tocsect3 name="12.13.1 Registering New Conversions" url="chapters_12.html#SEC204"/>
<tocsect3 name="12.13.2 Conversion Specifier Options" url="chapters_12.html#SEC205"/>
<tocsect3 name="12.13.3 Defining the Output Handler" url="chapters_12.html#SEC206"/>
<tocsect3 name="12.13.4 printf Extension Example" url="chapters_12.html#SEC207"/>
<tocsect3 name="12.13.5 Predefined printf Handlers" url="chapters_12.html#SEC208"/>
</tocsect2>
<tocsect2 name="12.14 Formatted Input" url="chapters_12.html#SEC209">
<tocsect3 name="12.14.1 Formatted Input Basics" url="chapters_12.html#SEC210"/>
<tocsect3 name="12.14.2 Input Conversion Syntax" url="chapters_12.html#SEC211"/>
<tocsect3 name="12.14.3 Table of Input Conversions" url="chapters_12.html#SEC212"/>
<tocsect3 name="12.14.4 Numeric Input Conversions" url="chapters_12.html#SEC213"/>
<tocsect3 name="12.14.5 String Input Conversions" url="chapters_12.html#SEC214"/>
<tocsect3 name="12.14.6 Dynamically Allocating String Conversions" url="chapters_12.html#SEC215"/>
<tocsect3 name="12.14.7 Other Input Conversions" url="chapters_12.html#SEC216"/>
<tocsect3 name="12.14.8 Formatted Input Functions" url="chapters_12.html#SEC217"/>
<tocsect3 name="12.14.9 Variable Arguments Input Functions" url="chapters_12.html#SEC218"/>
</tocsect2>
<tocsect2 name="12.15 End-Of-File and Errors" url="chapters_12.html#SEC219"/>
<tocsect2 name="12.16 Recovering from errors" url="chapters_12.html#SEC220"/>
<tocsect2 name="12.17 Text and Binary Streams" url="chapters_12.html#SEC221"/>
<tocsect2 name="12.18 File Positioning" url="chapters_12.html#SEC222"/>
<tocsect2 name="12.19 Portable File-Position Functions" url="chapters_12.html#SEC223"/>
<tocsect2 name="12.20 Stream Buffering" url="chapters_12.html#SEC224">
<tocsect3 name="12.20.1 Buffering Concepts" url="chapters_12.html#SEC225"/>
<tocsect3 name="12.20.2 Flushing Buffers" url="chapters_12.html#SEC226"/>
<tocsect3 name="12.20.3 Controlling Which Kind of Buffering" url="chapters_12.html#SEC227"/>
</tocsect2>
<tocsect2 name="12.21 Other Kinds of Streams" url="chapters_12.html#SEC228">
<tocsect3 name="12.21.1 String Streams" url="chapters_12.html#SEC229"/>
<tocsect3 name="12.21.2 Obstack Streams" url="chapters_12.html#SEC230"/>
<tocsect3 name="12.21.3 Programming Your Own Custom Streams" url="chapters_12.html#SEC231">
<tocsect4 name="12.21.3.1 Custom Streams and Cookies" url="chapters_12.html#SEC232"/>
<tocsect4 name="12.21.3.2 Custom Stream Hook Functions" url="chapters_12.html#SEC233"/>
</tocsect3>
</tocsect2>
<tocsect2 name="12.22 Formatted Messages" url="chapters_12.html#SEC234">
<tocsect3 name="12.22.1 Printing Formatted Messages" url="chapters_12.html#SEC235"/>
<tocsect3 name="12.22.2 Adding Severity Classes" url="chapters_12.html#SEC236"/>
<tocsect3 name="12.22.3 How to use fmtmsg and addseverity" url="chapters_12.html#SEC237"/>
</tocsect2>
</tocsect1>
<tocsect1 name="13. Low-Level Input/Output" url="chapters_13.html#SEC238">
<tocsect2 name="13.1 Opening and Closing Files" url="chapters_13.html#SEC239"/>
<tocsect2 name="13.2 Input and Output Primitives" url="chapters_13.html#SEC240"/>
<tocsect2 name="13.3 Setting the File Position of a Descriptor" url="chapters_13.html#SEC241"/>
<tocsect2 name="13.4 Descriptors and Streams" url="chapters_13.html#SEC242"/>
<tocsect2 name="13.5 Dangers of Mixing Streams and Descriptors" url="chapters_13.html#SEC243">
<tocsect3 name="13.5.1 Linked Channels" url="chapters_13.html#SEC244"/>
<tocsect3 name="13.5.2 Independent Channels" url="chapters_13.html#SEC245"/>
<tocsect3 name="13.5.3 Cleaning Streams" url="chapters_13.html#SEC246"/>
</tocsect2>
<tocsect2 name="13.6 Fast Scatter-Gather I/O" url="chapters_13.html#SEC247"/>
<tocsect2 name="13.7 Memory-mapped I/O" url="chapters_13.html#SEC248"/>
<tocsect2 name="13.8 Waiting for Input or Output" url="chapters_13.html#SEC249"/>
<tocsect2 name="13.9 Synchronizing I/O operations" url="chapters_13.html#SEC250"/>
<tocsect2 name="13.10 Perform I/O Operations in Parallel" url="chapters_13.html#SEC251">
<tocsect3 name="13.10.1 Asynchronous Read and Write Operations" url="chapters_13.html#SEC252"/>
<tocsect3 name="13.10.2 Getting the Status of AIO Operations" url="chapters_13.html#SEC253"/>
<tocsect3 name="13.10.3 Getting into a Consistent State" url="chapters_13.html#SEC254"/>
<tocsect3 name="13.10.4 Cancellation of AIO Operations" url="chapters_13.html#SEC255"/>
<tocsect3 name="13.10.5 How to optimize the AIO implementation" url="chapters_13.html#SEC256"/>
</tocsect2>
<tocsect2 name="13.11 Control Operations on Files" url="chapters_13.html#SEC257"/>
<tocsect2 name="13.12 Duplicating Descriptors" url="chapters_13.html#SEC258"/>
<tocsect2 name="13.13 File Descriptor Flags" url="chapters_13.html#SEC259"/>
<tocsect2 name="13.14 File Status Flags" url="chapters_13.html#SEC260">
<tocsect3 name="13.14.1 File Access Modes" url="chapters_13.html#SEC261"/>
<tocsect3 name="13.14.2 Open-time Flags" url="chapters_13.html#SEC262"/>
<tocsect3 name="13.14.3 I/O Operating Modes" url="chapters_13.html#SEC263"/>
<tocsect3 name="13.14.4 Getting and Setting File Status Flags" url="chapters_13.html#SEC264"/>
</tocsect2>
<tocsect2 name="13.15 File Locks" url="chapters_13.html#SEC265"/>
<tocsect2 name="13.16 Interrupt-Driven Input" url="chapters_13.html#SEC266"/>
<tocsect2 name="13.17 Generic I/O Control operations" url="chapters_13.html#SEC267"/>
</tocsect1>
<tocsect1 name="14. File System Interface" url="chapters_14.html#SEC268">
<tocsect2 name="14.1 Working Directory" url="chapters_14.html#SEC269"/>
<tocsect2 name="14.2 Accessing Directories" url="chapters_14.html#SEC270">
<tocsect3 name="14.2.1 Format of a Directory Entry" url="chapters_14.html#SEC271"/>
<tocsect3 name="14.2.2 Opening a Directory Stream" url="chapters_14.html#SEC272"/>
<tocsect3 name="14.2.3 Reading and Closing a Directory Stream" url="chapters_14.html#SEC273"/>
<tocsect3 name="14.2.4 Simple Program to List a Directory" url="chapters_14.html#SEC274"/>
<tocsect3 name="14.2.5 Random Access in a Directory Stream" url="chapters_14.html#SEC275"/>
<tocsect3 name="14.2.6 Scanning the Content of a Directory" url="chapters_14.html#SEC276"/>
<tocsect3 name="14.2.7 Simple Program to List a Directory, Mark II" url="chapters_14.html#SEC277"/>
</tocsect2>
<tocsect2 name="14.3 Working with Directory Trees" url="chapters_14.html#SEC278"/>
<tocsect2 name="14.4 Hard Links" url="chapters_14.html#SEC279"/>
<tocsect2 name="14.5 Symbolic Links" url="chapters_14.html#SEC280"/>
<tocsect2 name="14.6 Deleting Files" url="chapters_14.html#SEC281"/>
<tocsect2 name="14.7 Renaming Files" url="chapters_14.html#SEC282"/>
<tocsect2 name="14.8 Creating Directories" url="chapters_14.html#SEC283"/>
<tocsect2 name="14.9 File Attributes" url="chapters_14.html#SEC284">
<tocsect3 name="14.9.1 The meaning of the File Attributes" url="chapters_14.html#SEC285"/>
<tocsect3 name="14.9.2 Reading the Attributes of a File" url="chapters_14.html#SEC286"/>
<tocsect3 name="14.9.3 Testing the Type of a File" url="chapters_14.html#SEC287"/>
<tocsect3 name="14.9.4 File Owner" url="chapters_14.html#SEC288"/>
<tocsect3 name="14.9.5 The Mode Bits for Access Permission" url="chapters_14.html#SEC289"/>
<tocsect3 name="14.9.6 How Your Access to a File is Decided" url="chapters_14.html#SEC290"/>
<tocsect3 name="14.9.7 Assigning File Permissions" url="chapters_14.html#SEC291"/>
<tocsect3 name="14.9.8 Testing Permission to Access a File" url="chapters_14.html#SEC292"/>
<tocsect3 name="14.9.9 File Times" url="chapters_14.html#SEC293"/>
<tocsect3 name="14.9.10 File Size" url="chapters_14.html#SEC294"/>
</tocsect2>
<tocsect2 name="14.10 Making Special Files" url="chapters_14.html#SEC295"/>
<tocsect2 name="14.11 Temporary Files" url="chapters_14.html#SEC296"/>
</tocsect1>
<tocsect1 name="15. Pipes and FIFOs" url="chapters_15.html#SEC297">
<tocsect2 name="15.1 Creating a Pipe" url="chapters_15.html#SEC298"/>
<tocsect2 name="15.2 Pipe to a Subprocess" url="chapters_15.html#SEC299"/>
<tocsect2 name="15.3 FIFO Special Files" url="chapters_15.html#SEC300"/>
<tocsect2 name="15.4 Atomicity of Pipe I/O" url="chapters_15.html#SEC301"/>
</tocsect1>
<tocsect1 name="16. Sockets" url="chapters_16.html#SEC302">
<tocsect2 name="16.1 Socket Concepts" url="chapters_16.html#SEC303"/>
<tocsect2 name="16.2 Communication Styles" url="chapters_16.html#SEC304"/>
<tocsect2 name="16.3 Socket Addresses" url="chapters_16.html#SEC305">
<tocsect3 name="16.3.1 Address Formats" url="chapters_16.html#SEC306"/>
<tocsect3 name="16.3.2 Setting the Address of a Socket" url="chapters_16.html#SEC307"/>
<tocsect3 name="16.3.3 Reading the Address of a Socket" url="chapters_16.html#SEC308"/>
</tocsect2>
<tocsect2 name="16.4 Interface Naming" url="chapters_16.html#SEC309"/>
<tocsect2 name="16.5 The Local Namespace" url="chapters_16.html#SEC310">
<tocsect3 name="16.5.1 Local Namespace Concepts" url="chapters_16.html#SEC311"/>
<tocsect3 name="16.5.2 Details of Local Namespace" url="chapters_16.html#SEC312"/>
<tocsect3 name="16.5.3 Example of Local-Namespace Sockets" url="chapters_16.html#SEC313"/>
</tocsect2>
<tocsect2 name="16.6 The Internet Namespace" url="chapters_16.html#SEC314">
<tocsect3 name="16.6.1 Internet Socket Address Formats" url="chapters_16.html#SEC315"/>
<tocsect3 name="16.6.2 Host Addresses" url="chapters_16.html#SEC316">
<tocsect4 name="16.6.2.1 Internet Host Addresses" url="chapters_16.html#SEC317"/>
<tocsect4 name="16.6.2.2 Host Address Data Type" url="chapters_16.html#SEC320"/>
<tocsect4 name="16.6.2.3 Host Address Functions" url="chapters_16.html#SEC321"/>
<tocsect4 name="16.6.2.4 Host Names" url="chapters_16.html#SEC322"/>
</tocsect3>
<tocsect3 name="16.6.3 Internet Ports" url="chapters_16.html#SEC323"/>
<tocsect3 name="16.6.4 The Services Database" url="chapters_16.html#SEC324"/>
<tocsect3 name="16.6.5 Byte Order Conversion" url="chapters_16.html#SEC325"/>
<tocsect3 name="16.6.6 Protocols Database" url="chapters_16.html#SEC326"/>
<tocsect3 name="16.6.7 Internet Socket Example" url="chapters_16.html#SEC327"/>
</tocsect2>
<tocsect2 name="16.7 Other Namespaces" url="chapters_16.html#SEC328"/>
<tocsect2 name="16.8 Opening and Closing Sockets" url="chapters_16.html#SEC329">
<tocsect3 name="16.8.1 Creating a Socket" url="chapters_16.html#SEC330"/>
<tocsect3 name="16.8.2 Closing a Socket" url="chapters_16.html#SEC331"/>
<tocsect3 name="16.8.3 Socket Pairs" url="chapters_16.html#SEC332"/>
</tocsect2>
<tocsect2 name="16.9 Using Sockets with Connections" url="chapters_16.html#SEC333">
<tocsect3 name="16.9.1 Making a Connection" url="chapters_16.html#SEC334"/>
<tocsect3 name="16.9.2 Listening for Connections" url="chapters_16.html#SEC335"/>
<tocsect3 name="16.9.3 Accepting Connections" url="chapters_16.html#SEC336"/>
<tocsect3 name="16.9.4 Who is Connected to Me?" url="chapters_16.html#SEC337"/>
<tocsect3 name="16.9.5 Transferring Data" url="chapters_16.html#SEC338">
<tocsect4 name="16.9.5.1 Sending Data" url="chapters_16.html#SEC339"/>
<tocsect4 name="16.9.5.2 Receiving Data" url="chapters_16.html#SEC340"/>
<tocsect4 name="16.9.5.3 Socket Data Options" url="chapters_16.html#SEC341"/>
</tocsect3>
<tocsect3 name="16.9.6 Byte Stream Socket Example" url="chapters_16.html#SEC342"/>
<tocsect3 name="16.9.7 Byte Stream Connection Server Example" url="chapters_16.html#SEC343"/>
<tocsect3 name="16.9.8 Out-of-Band Data" url="chapters_16.html#SEC344"/>
</tocsect2>
<tocsect2 name="16.10 Datagram Socket Operations" url="chapters_16.html#SEC345">
<tocsect3 name="16.10.1 Sending Datagrams" url="chapters_16.html#SEC346"/>
<tocsect3 name="16.10.2 Receiving Datagrams" url="chapters_16.html#SEC347"/>
<tocsect3 name="16.10.3 Datagram Socket Example" url="chapters_16.html#SEC348"/>
<tocsect3 name="16.10.4 Example of Reading Datagrams" url="chapters_16.html#SEC349"/>
</tocsect2>
<tocsect2 name="16.11 The inetd Daemon" url="chapters_16.html#SEC350">
<tocsect3 name="16.11.1 inetd Servers" url="chapters_16.html#SEC351"/>
<tocsect3 name="16.11.2 Configuring inetd" url="chapters_16.html#SEC352"/>
</tocsect2>
<tocsect2 name="16.12 Socket Options" url="chapters_16.html#SEC353">
<tocsect3 name="16.12.1 Socket Option Functions" url="chapters_16.html#SEC354"/>
<tocsect3 name="16.12.2 Socket-Level Options" url="chapters_16.html#SEC355"/>
</tocsect2>
<tocsect2 name="16.13 Networks Database" url="chapters_16.html#SEC356"/>
</tocsect1>
<tocsect1 name="17. Low-Level Terminal Interface" url="chapters_17.html#SEC357">
<tocsect2 name="17.1 Identifying Terminals" url="chapters_17.html#SEC358"/>
<tocsect2 name="17.2 I/O Queues" url="chapters_17.html#SEC359"/>
<tocsect2 name="17.3 Two Styles of Input: Canonical or Not" url="chapters_17.html#SEC360"/>
<tocsect2 name="17.4 Terminal Modes" url="chapters_17.html#SEC361">
<tocsect3 name="17.4.1 Terminal Mode Data Types" url="chapters_17.html#SEC362"/>
<tocsect3 name="17.4.2 Terminal Mode Functions" url="chapters_17.html#SEC363"/>
<tocsect3 name="17.4.3 Setting Terminal Modes Properly" url="chapters_17.html#SEC364"/>
<tocsect3 name="17.4.4 Input Modes" url="chapters_17.html#SEC365"/>
<tocsect3 name="17.4.5 Output Modes" url="chapters_17.html#SEC366"/>
<tocsect3 name="17.4.6 Control Modes" url="chapters_17.html#SEC367"/>
<tocsect3 name="17.4.7 Local Modes" url="chapters_17.html#SEC368"/>
<tocsect3 name="17.4.8 Line Speed" url="chapters_17.html#SEC369"/>
<tocsect3 name="17.4.9 Special Characters" url="chapters_17.html#SEC370">
<tocsect4 name="17.4.9.1 Characters for Input Editing" url="chapters_17.html#SEC371"/>
<tocsect4 name="17.4.9.2 Characters that Cause Signals" url="chapters_17.html#SEC372"/>
<tocsect4 name="17.4.9.3 Special Characters for Flow Control" url="chapters_17.html#SEC373"/>
<tocsect4 name="17.4.9.4 Other Special Characters" url="chapters_17.html#SEC374"/>
</tocsect3>
<tocsect3 name="17.4.10 Noncanonical Input" url="chapters_17.html#SEC375"/>
</tocsect2>
<tocsect2 name="17.5 BSD Terminal Modes" url="chapters_17.html#SEC376"/>
<tocsect2 name="17.6 Line Control Functions" url="chapters_17.html#SEC377"/>
<tocsect2 name="17.7 Noncanonical Mode Example" url="chapters_17.html#SEC378"/>
<tocsect2 name="17.8 Pseudo-Terminals" url="chapters_17.html#SEC379">
<tocsect3 name="17.8.1 Allocating Pseudo-Terminals" url="chapters_17.html#SEC380"/>
<tocsect3 name="17.8.2 Opening a Pseudo-Terminal Pair" url="chapters_17.html#SEC381"/>
</tocsect2>
</tocsect1>
<tocsect1 name="18. Syslog" url="chapters_18.html#SEC382">
<tocsect2 name="18.1 Overview of Syslog" url="chapters_18.html#SEC383"/>
<tocsect2 name="18.2 Submitting Syslog Messages" url="chapters_18.html#SEC384">
<tocsect3 name="18.2.1 openlog" url="chapters_18.html#SEC385"/>
<tocsect3 name="18.2.2 syslog, vsyslog" url="chapters_18.html#SEC386"/>
<tocsect3 name="18.2.3 closelog" url="chapters_18.html#SEC387"/>
<tocsect3 name="18.2.4 setlogmask" url="chapters_18.html#SEC388"/>
<tocsect3 name="18.2.5 Syslog Example" url="chapters_18.html#SEC389"/>
</tocsect2>
</tocsect1>
<tocsect1 name="19. Mathematics" url="chapters_19.html#SEC390">
<tocsect2 name="19.1 Predefined Mathematical Constants" url="chapters_19.html#SEC391"/>
<tocsect2 name="19.2 Trigonometric Functions" url="chapters_19.html#SEC392"/>
<tocsect2 name="19.3 Inverse Trigonometric Functions" url="chapters_19.html#SEC393"/>
<tocsect2 name="19.4 Exponentiation and Logarithms" url="chapters_19.html#SEC394"/>
<tocsect2 name="19.5 Hyperbolic Functions" url="chapters_19.html#SEC395"/>
<tocsect2 name="19.6 Special Functions" url="chapters_19.html#SEC396"/>
<tocsect2 name="19.7 Known Maximum Errors in Math Functions" url="chapters_19.html#SEC397"/>
<tocsect2 name="19.8 Pseudo-Random Numbers" url="chapters_19.html#SEC398">
<tocsect3 name="19.8.1 ISO C Random Number Functions" url="chapters_19.html#SEC399"/>
<tocsect3 name="19.8.2 BSD Random Number Functions" url="chapters_19.html#SEC400"/>
<tocsect3 name="19.8.3 SVID Random Number Function" url="chapters_19.html#SEC401"/>
</tocsect2>
<tocsect2 name="19.9 Is Fast Code or Small Code preferred?" url="chapters_19.html#SEC402"/>
</tocsect1>
<tocsect1 name="20. Arithmetic Functions" url="chapters_20.html#SEC403">
<tocsect2 name="20.1 Integers" url="chapters_20.html#SEC404"/>
<tocsect2 name="20.2 Integer Division" url="chapters_20.html#SEC405"/>
<tocsect2 name="20.3 Floating Point Numbers" url="chapters_20.html#SEC406"/>
<tocsect2 name="20.4 Floating-Point Number Classification Functions" url="chapters_20.html#SEC407"/>
<tocsect2 name="20.5 Errors in Floating-Point Calculations" url="chapters_20.html#SEC408">
<tocsect3 name="20.5.1 FP Exceptions" url="chapters_20.html#SEC409"/>
<tocsect3 name="20.5.2 Infinity and NaN" url="chapters_20.html#SEC410"/>
<tocsect3 name="20.5.3 Examining the FPU status word" url="chapters_20.html#SEC411"/>
<tocsect3 name="20.5.4 Error Reporting by Mathematical Functions" url="chapters_20.html#SEC412"/>
</tocsect2>
<tocsect2 name="20.6 Rounding Modes" url="chapters_20.html#SEC413"/>
<tocsect2 name="20.7 Floating-Point Control Functions" url="chapters_20.html#SEC414"/>
<tocsect2 name="20.8 Arithmetic Functions" url="chapters_20.html#SEC415">
<tocsect3 name="20.8.1 Absolute Value" url="chapters_20.html#SEC416"/>
<tocsect3 name="20.8.2 Normalization Functions" url="chapters_20.html#SEC417"/>
<tocsect3 name="20.8.3 Rounding Functions" url="chapters_20.html#SEC418"/>
<tocsect3 name="20.8.4 Remainder Functions" url="chapters_20.html#SEC419"/>
<tocsect3 name="20.8.5 Setting and modifying single bits of FP values" url="chapters_20.html#SEC420"/>
<tocsect3 name="20.8.6 Floating-Point Comparison Functions" url="chapters_20.html#SEC421"/>
<tocsect3 name="20.8.7 Miscellaneous FP arithmetic functions" url="chapters_20.html#SEC422"/>
</tocsect2>
<tocsect2 name="20.9 Complex Numbers" url="chapters_20.html#SEC423"/>
<tocsect2 name="20.10 Projections, Conjugates, and Decomposing of Complex Numbers" url="chapters_20.html#SEC424"/>
<tocsect2 name="20.11 Parsing of Numbers" url="chapters_20.html#SEC425">
<tocsect3 name="20.11.1 Parsing of Integers" url="chapters_20.html#SEC426"/>
<tocsect3 name="20.11.2 Parsing of Floats" url="chapters_20.html#SEC427"/>
</tocsect2>
<tocsect2 name="20.12 Old-fashioned System V number-to-string functions" url="chapters_20.html#SEC428"/>
</tocsect1>
<tocsect1 name="21. Date and Time" url="chapters_21.html#SEC429">
<tocsect2 name="21.1 Time Basics" url="chapters_21.html#SEC430"/>
<tocsect2 name="21.2 Elapsed Time" url="chapters_21.html#SEC431"/>
<tocsect2 name="21.3 Processor And CPU Time" url="chapters_21.html#SEC432">
<tocsect3 name="21.3.1 CPU Time Inquiry" url="chapters_21.html#SEC433"/>
<tocsect3 name="21.3.2 Processor Time Inquiry" url="chapters_21.html#SEC434"/>
</tocsect2>
<tocsect2 name="21.4 Calendar Time" url="chapters_21.html#SEC435">
<tocsect3 name="21.4.1 Simple Calendar Time" url="chapters_21.html#SEC436"/>
<tocsect3 name="21.4.2 High-Resolution Calendar" url="chapters_21.html#SEC437"/>
<tocsect3 name="21.4.3 Broken-down Time" url="chapters_21.html#SEC438"/>
<tocsect3 name="21.4.4 High Accuracy Clock" url="chapters_21.html#SEC439"/>
<tocsect3 name="21.4.5 Formatting Calendar Time" url="chapters_21.html#SEC440"/>
<tocsect3 name="21.4.6 Convert textual time and date information back" url="chapters_21.html#SEC441">
<tocsect4 name="21.4.6.1 Interpret string according to given format" url="chapters_21.html#SEC442"/>
<tocsect4 name="21.4.6.2 A More User-friendly Way to Parse Times and Dates" url="chapters_21.html#SEC443"/>
</tocsect3>
<tocsect3 name="21.4.7 Specifying the Time Zone with TZ" url="chapters_21.html#SEC444"/>
<tocsect3 name="21.4.8 Functions and Variables for Time Zones" url="chapters_21.html#SEC445"/>
<tocsect3 name="21.4.9 Time Functions Example" url="chapters_21.html#SEC446"/>
</tocsect2>
<tocsect2 name="21.5 Setting an Alarm" url="chapters_21.html#SEC447"/>
<tocsect2 name="21.6 Sleeping" url="chapters_21.html#SEC448"/>
</tocsect1>
<tocsect1 name="22. Resource Usage And Limitation" url="chapters_22.html#SEC449">
<tocsect2 name="22.1 Resource Usage" url="chapters_22.html#SEC450"/>
<tocsect2 name="22.2 Limiting Resource Usage" url="chapters_22.html#SEC451"/>
<tocsect2 name="22.3 Process CPU Priority And Scheduling" url="chapters_22.html#SEC452">
<tocsect3 name="22.3.1 Absolute Priority" url="chapters_22.html#SEC453">
<tocsect4 name="22.3.1.1 Using Absolute Priority" url="chapters_22.html#SEC454"/>
</tocsect3>
<tocsect3 name="22.3.2 Realtime Scheduling" url="chapters_22.html#SEC455"/>
<tocsect3 name="22.3.3 Basic Scheduling Functions" url="chapters_22.html#SEC456"/>
<tocsect3 name="22.3.4 Traditional Scheduling" url="chapters_22.html#SEC457">
<tocsect4 name="22.3.4.1 Introduction To Traditional Scheduling" url="chapters_22.html#SEC458"/>
<tocsect4 name="22.3.4.2 Functions For Traditional Scheduling" url="chapters_22.html#SEC459"/>
</tocsect3>
</tocsect2>
<tocsect2 name="22.4 Querying memory available resources" url="chapters_22.html#SEC460">
<tocsect3 name="22.4.1 Overview about traditional Unix memory handling" url="chapters_22.html#SEC461"/>
<tocsect3 name="22.4.2 How to get information about the memory subsystem?" url="chapters_22.html#SEC462"/>
</tocsect2>
<tocsect2 name="22.5 Learn about the processors available" url="chapters_22.html#SEC463"/>
</tocsect1>
<tocsect1 name="23. Non-Local Exits" url="chapters_23.html#SEC464">
<tocsect2 name="23.1 Introduction to Non-Local Exits" url="chapters_23.html#SEC465"/>
<tocsect2 name="23.2 Details of Non-Local Exits" url="chapters_23.html#SEC466"/>
<tocsect2 name="23.3 Non-Local Exits and Signals" url="chapters_23.html#SEC467"/>
<tocsect2 name="23.4 Complete Context Control" url="chapters_23.html#SEC468"/>
</tocsect1>
<tocsect1 name="24. Signal Handling" url="chapters_24.html#SEC470">
<tocsect2 name="24.1 Basic Concepts of Signals" url="chapters_24.html#SEC471">
<tocsect3 name="24.1.1 Some Kinds of Signals" url="chapters_24.html#SEC472"/>
<tocsect3 name="24.1.2 Concepts of Signal Generation" url="chapters_24.html#SEC473"/>
<tocsect3 name="24.1.3 How Signals Are Delivered" url="chapters_24.html#SEC474"/>
</tocsect2>
<tocsect2 name="24.2 Standard Signals" url="chapters_24.html#SEC475">
<tocsect3 name="24.2.1 Program Error Signals" url="chapters_24.html#SEC476"/>
<tocsect3 name="24.2.2 Termination Signals" url="chapters_24.html#SEC477"/>
<tocsect3 name="24.2.3 Alarm Signals" url="chapters_24.html#SEC478"/>
<tocsect3 name="24.2.4 Asynchronous I/O Signals" url="chapters_24.html#SEC479"/>
<tocsect3 name="24.2.5 Job Control Signals" url="chapters_24.html#SEC480"/>
<tocsect3 name="24.2.6 Operation Error Signals" url="chapters_24.html#SEC481"/>
<tocsect3 name="24.2.7 Miscellaneous Signals" url="chapters_24.html#SEC482"/>
<tocsect3 name="24.2.8 Signal Messages" url="chapters_24.html#SEC483"/>
</tocsect2>
<tocsect2 name="24.3 Specifying Signal Actions" url="chapters_24.html#SEC484">
<tocsect3 name="24.3.1 Basic Signal Handling" url="chapters_24.html#SEC485"/>
<tocsect3 name="24.3.2 Advanced Signal Handling" url="chapters_24.html#SEC486"/>
<tocsect3 name="24.3.3 Interaction of signal and sigaction" url="chapters_24.html#SEC487"/>
<tocsect3 name="24.3.4 sigaction Function Example" url="chapters_24.html#SEC488"/>
<tocsect3 name="24.3.5 Flags for sigaction" url="chapters_24.html#SEC489"/>
<tocsect3 name="24.3.6 Initial Signal Actions" url="chapters_24.html#SEC490"/>
</tocsect2>
<tocsect2 name="24.4 Defining Signal Handlers" url="chapters_24.html#SEC491">
<tocsect3 name="24.4.1 Signal Handlers that Return" url="chapters_24.html#SEC492"/>
<tocsect3 name="24.4.2 Handlers That Terminate the Process" url="chapters_24.html#SEC493"/>
<tocsect3 name="24.4.3 Nonlocal Control Transfer in Handlers" url="chapters_24.html#SEC494"/>
<tocsect3 name="24.4.4 Signals Arriving While a Handler Runs" url="chapters_24.html#SEC495"/>
<tocsect3 name="24.4.5 Signals Close Together Merge into One" url="chapters_24.html#SEC496"/>
<tocsect3 name="24.4.6 Signal Handling and Nonreentrant Functions" url="chapters_24.html#SEC497"/>
<tocsect3 name="24.4.7 Atomic Data Access and Signal Handling" url="chapters_24.html#SEC498">
<tocsect4 name="24.4.7.1 Problems with Non-Atomic Access" url="chapters_24.html#SEC499"/>
<tocsect4 name="24.4.7.2 Atomic Types" url="chapters_24.html#SEC500"/>
<tocsect4 name="24.4.7.3 Atomic Usage Patterns" url="chapters_24.html#SEC501"/>
</tocsect3>
</tocsect2>
<tocsect2 name="24.5 Primitives Interrupted by Signals" url="chapters_24.html#SEC502"/>
<tocsect2 name="24.6 Generating Signals" url="chapters_24.html#SEC503">
<tocsect3 name="24.6.1 Signaling Yourself" url="chapters_24.html#SEC504"/>
<tocsect3 name="24.6.2 Signaling Another Process" url="chapters_24.html#SEC505"/>
<tocsect3 name="24.6.3 Permission for using kill" url="chapters_24.html#SEC506"/>
<tocsect3 name="24.6.4 Using kill for Communication" url="chapters_24.html#SEC507"/>
</tocsect2>
<tocsect2 name="24.7 Blocking Signals" url="chapters_24.html#SEC508">
<tocsect3 name="24.7.1 Why Blocking Signals is Useful" url="chapters_24.html#SEC509"/>
<tocsect3 name="24.7.2 Signal Sets" url="chapters_24.html#SEC510"/>
<tocsect3 name="24.7.3 Process Signal Mask" url="chapters_24.html#SEC511"/>
<tocsect3 name="24.7.4 Blocking to Test for Delivery of a Signal" url="chapters_24.html#SEC512"/>
<tocsect3 name="24.7.5 Blocking Signals for a Handler" url="chapters_24.html#SEC513"/>
<tocsect3 name="24.7.6 Checking for Pending Signals" url="chapters_24.html#SEC514"/>
<tocsect3 name="24.7.7 Remembering a Signal to Act On Later" url="chapters_24.html#SEC515"/>
</tocsect2>
<tocsect2 name="24.8 Waiting for a Signal" url="chapters_24.html#SEC516">
<tocsect3 name="24.8.1 Using pause" url="chapters_24.html#SEC517"/>
<tocsect3 name="24.8.2 Problems with pause" url="chapters_24.html#SEC518"/>
<tocsect3 name="24.8.3 Using sigsuspend" url="chapters_24.html#SEC519"/>
</tocsect2>
<tocsect2 name="24.9 Using a Separate Signal Stack" url="chapters_24.html#SEC520"/>
<tocsect2 name="24.10 BSD Signal Handling" url="chapters_24.html#SEC521">
<tocsect3 name="24.10.1 BSD Function to Establish a Handler" url="chapters_24.html#SEC522"/>
<tocsect3 name="24.10.2 BSD Functions for Blocking Signals" url="chapters_24.html#SEC523"/>
</tocsect2>
</tocsect1>
<tocsect1 name="25. The Basic Program/System Interface" url="chapters_25.html#SEC524">
<tocsect2 name="25.1 Program Arguments" url="chapters_25.html#SEC525">
<tocsect3 name="25.1.1 Program Argument Syntax Conventions" url="chapters_25.html#SEC526"/>
<tocsect3 name="25.1.2 Parsing Program Arguments" url="chapters_25.html#SEC527"/>
</tocsect2>
<tocsect2 name="25.2 Parsing program options using getopt" url="chapters_25.html#SEC528">
<tocsect3 name="25.2.1 Using the getopt function" url="chapters_25.html#SEC529"/>
<tocsect3 name="25.2.2 Example of Parsing Arguments with getopt" url="chapters_25.html#SEC530"/>
<tocsect3 name="25.2.3 Parsing Long Options with getopt_long" url="chapters_25.html#SEC531"/>
<tocsect3 name="25.2.4 Example of Parsing Long Options with getopt_long" url="chapters_25.html#SEC532"/>
</tocsect2>
<tocsect2 name="25.3 Parsing Program Options with Argp" url="chapters_25.html#SEC533">
<tocsect3 name="25.3.1 The argp_parse Function" url="chapters_25.html#SEC534"/>
<tocsect3 name="25.3.2 Argp Global Variables" url="chapters_25.html#SEC535"/>
<tocsect3 name="25.3.3 Specifying Argp Parsers" url="chapters_25.html#SEC536"/>
<tocsect3 name="25.3.4 Specifying Options in an Argp Parser" url="chapters_25.html#SEC537">
<tocsect4 name="25.3.4.1 Flags for Argp Options" url="chapters_25.html#SEC538"/>
</tocsect3>
<tocsect3 name="25.3.5 Argp Parser Functions" url="chapters_25.html#SEC539">
<tocsect4 name="25.3.5.1 Special Keys for Argp Parser Functions" url="chapters_25.html#SEC540"/>
<tocsect4 name="25.3.5.2 Functions For Use in Argp Parsers" url="chapters_25.html#SEC541"/>
<tocsect4 name="25.3.5.3 Argp Parsing State" url="chapters_25.html#SEC542"/>
</tocsect3>
<tocsect3 name="25.3.6 Combining Multiple Argp Parsers" url="chapters_25.html#SEC543"/>
<tocsect3 name="25.3.7 Flags for argp_parse" url="chapters_25.html#SEC544"/>
<tocsect3 name="25.3.8 Customizing Argp Help Output" url="chapters_25.html#SEC545">
<tocsect4 name="25.3.8.1 Special Keys for Argp Help Filter Functions" url="chapters_25.html#SEC546"/>
</tocsect3>
<tocsect3 name="25.3.9 The argp_help Function" url="chapters_25.html#SEC547"/>
<tocsect3 name="25.3.10 Flags for the argp_help Function" url="chapters_25.html#SEC548"/>
<tocsect3 name="25.3.11 Argp Examples" url="chapters_25.html#SEC549">
<tocsect4 name="25.3.11.1 A Minimal Program Using Argp" url="chapters_25.html#SEC550"/>
<tocsect4 name="25.3.11.2 A Program Using Argp with Only Default Options" url="chapters_25.html#SEC551"/>
<tocsect4 name="25.3.11.3 A Program Using Argp with User Options" url="chapters_25.html#SEC552"/>
<tocsect4 name="25.3.11.4 A Program Using Multiple Combined Argp Parsers" url="chapters_25.html#SEC553"/>
</tocsect3>
<tocsect3 name="25.3.12 Argp User Customization" url="chapters_25.html#SEC554">
<tocsect4 name="25.3.12.1 Parsing of Suboptions" url="chapters_25.html#SEC555"/>
</tocsect3>
<tocsect3 name="25.3.13 Parsing of Suboptions Example" url="chapters_25.html#SEC556"/>
</tocsect2>
<tocsect2 name="25.4 Environment Variables" url="chapters_25.html#SEC557">
<tocsect3 name="25.4.1 Environment Access" url="chapters_25.html#SEC558"/>
<tocsect3 name="25.4.2 Standard Environment Variables" url="chapters_25.html#SEC559"/>
</tocsect2>
<tocsect2 name="25.5 System Calls" url="chapters_25.html#SEC560"/>
<tocsect2 name="25.6 Program Termination" url="chapters_25.html#SEC561">
<tocsect3 name="25.6.1 Normal Termination" url="chapters_25.html#SEC562"/>
<tocsect3 name="25.6.2 Exit Status" url="chapters_25.html#SEC563"/>
<tocsect3 name="25.6.3 Cleanups on Exit" url="chapters_25.html#SEC564"/>
<tocsect3 name="25.6.4 Aborting a Program" url="chapters_25.html#SEC565"/>
<tocsect3 name="25.6.5 Termination Internals" url="chapters_25.html#SEC566"/>
</tocsect2>
</tocsect1>
<tocsect1 name="26. Processes" url="chapters_26.html#SEC567">
<tocsect2 name="26.1 Running a Command" url="chapters_26.html#SEC568"/>
<tocsect2 name="26.2 Process Creation Concepts" url="chapters_26.html#SEC569"/>
<tocsect2 name="26.3 Process Identification" url="chapters_26.html#SEC570"/>
<tocsect2 name="26.4 Creating a Process" url="chapters_26.html#SEC571"/>
<tocsect2 name="26.5 Executing a File" url="chapters_26.html#SEC572"/>
<tocsect2 name="26.6 Process Completion" url="chapters_26.html#SEC573"/>
<tocsect2 name="26.7 Process Completion Status" url="chapters_26.html#SEC574"/>
<tocsect2 name="26.8 BSD Process Wait Functions" url="chapters_26.html#SEC575"/>
<tocsect2 name="26.9 Process Creation Example" url="chapters_26.html#SEC576"/>
</tocsect1>
<tocsect1 name="27. Job Control" url="chapters_27.html#SEC577">
<tocsect2 name="27.1 Concepts of Job Control" url="chapters_27.html#SEC578"/>
<tocsect2 name="27.2 Job Control is Optional" url="chapters_27.html#SEC579"/>
<tocsect2 name="27.3 Controlling Terminal of a Process" url="chapters_27.html#SEC580"/>
<tocsect2 name="27.4 Access to the Controlling Terminal" url="chapters_27.html#SEC581"/>
<tocsect2 name="27.5 Orphaned Process Groups" url="chapters_27.html#SEC582"/>
<tocsect2 name="27.6 Implementing a Job Control Shell" url="chapters_27.html#SEC583">
<tocsect3 name="27.6.1 Data Structures for the Shell" url="chapters_27.html#SEC584"/>
<tocsect3 name="27.6.2 Initializing the Shell" url="chapters_27.html#SEC585"/>
<tocsect3 name="27.6.3 Launching Jobs" url="chapters_27.html#SEC586"/>
<tocsect3 name="27.6.4 Foreground and Background" url="chapters_27.html#SEC587"/>
<tocsect3 name="27.6.5 Stopped and Terminated Jobs" url="chapters_27.html#SEC588"/>
<tocsect3 name="27.6.6 Continuing Stopped Jobs" url="chapters_27.html#SEC589"/>
<tocsect3 name="27.6.7 The Missing Pieces" url="chapters_27.html#SEC590"/>
</tocsect2>
<tocsect2 name="27.7 Functions for Job Control" url="chapters_27.html#SEC591">
<tocsect3 name="27.7.1 Identifying the Controlling Terminal" url="chapters_27.html#SEC592"/>
<tocsect3 name="27.7.2 Process Group Functions" url="chapters_27.html#SEC593"/>
<tocsect3 name="27.7.3 Functions for Controlling Terminal Access" url="chapters_27.html#SEC594"/>
</tocsect2>
</tocsect1>
<tocsect1 name="28. System Databases and Name Service Switch" url="chapters_28.html#SEC595">
<tocsect2 name="28.1 NSS Basics" url="chapters_28.html#SEC596"/>
<tocsect2 name="28.2 The NSS Configuration File" url="chapters_28.html#SEC597">
<tocsect3 name="28.2.1 Services in the NSS configuration File" url="chapters_28.html#SEC598"/>
<tocsect3 name="28.2.2 Actions in the NSS configuration" url="chapters_28.html#SEC599"/>
<tocsect3 name="28.2.3 Notes on the NSS Configuration File" url="chapters_28.html#SEC600"/>
</tocsect2>
<tocsect2 name="28.3 NSS Module Internals" url="chapters_28.html#SEC601">
<tocsect3 name="28.3.1 The Naming Scheme of the NSS Modules" url="chapters_28.html#SEC602"/>
<tocsect3 name="28.3.2 The Interface of the Function in NSS Modules" url="chapters_28.html#SEC603"/>
</tocsect2>
<tocsect2 name="28.4 Extending NSS" url="chapters_28.html#SEC604">
<tocsect3 name="28.4.1 Adding another Service to NSS" url="chapters_28.html#SEC605"/>
<tocsect3 name="28.4.2 Internals of the NSS Module Functions" url="chapters_28.html#SEC606"/>
</tocsect2>
</tocsect1>
<tocsect1 name="29. Users and Groups" url="chapters_29.html#SEC607">
<tocsect2 name="29.1 User and Group IDs" url="chapters_29.html#SEC608"/>
<tocsect2 name="29.2 The Persona of a Process" url="chapters_29.html#SEC609"/>
<tocsect2 name="29.3 Why Change the Persona of a Process?" url="chapters_29.html#SEC610"/>
<tocsect2 name="29.4 How an Application Can Change Persona" url="chapters_29.html#SEC611"/>
<tocsect2 name="29.5 Reading the Persona of a Process" url="chapters_29.html#SEC612"/>
<tocsect2 name="29.6 Setting the User ID" url="chapters_29.html#SEC613"/>
<tocsect2 name="29.7 Setting the Group IDs" url="chapters_29.html#SEC614"/>
<tocsect2 name="29.8 Enabling and Disabling Setuid Access" url="chapters_29.html#SEC615"/>
<tocsect2 name="29.9 Setuid Program Example" url="chapters_29.html#SEC616"/>
<tocsect2 name="29.10 Tips for Writing Setuid Programs" url="chapters_29.html#SEC617"/>
<tocsect2 name="29.11 Identifying Who Logged In" url="chapters_29.html#SEC618"/>
<tocsect2 name="29.12 The User Accounting Database" url="chapters_29.html#SEC619">
<tocsect3 name="29.12.1 Manipulating the User Accounting Database" url="chapters_29.html#SEC620"/>
<tocsect3 name="29.12.2 XPG User Accounting Database Functions" url="chapters_29.html#SEC621"/>
<tocsect3 name="29.12.3 Logging In and Out" url="chapters_29.html#SEC622"/>
</tocsect2>
<tocsect2 name="29.13 User Database" url="chapters_29.html#SEC623">
<tocsect3 name="29.13.1 The Data Structure that Describes a User" url="chapters_29.html#SEC624"/>
<tocsect3 name="29.13.2 Looking Up One User" url="chapters_29.html#SEC625"/>
<tocsect3 name="29.13.3 Scanning the List of All Users" url="chapters_29.html#SEC626"/>
<tocsect3 name="29.13.4 Writing a User Entry" url="chapters_29.html#SEC627"/>
</tocsect2>
<tocsect2 name="29.14 Group Database" url="chapters_29.html#SEC628">
<tocsect3 name="29.14.1 The Data Structure for a Group" url="chapters_29.html#SEC629"/>
<tocsect3 name="29.14.2 Looking Up One Group" url="chapters_29.html#SEC630"/>
<tocsect3 name="29.14.3 Scanning the List of All Groups" url="chapters_29.html#SEC631"/>
</tocsect2>
<tocsect2 name="29.15 User and Group Database Example" url="chapters_29.html#SEC632"/>
<tocsect2 name="29.16 Netgroup Database" url="chapters_29.html#SEC633">
<tocsect3 name="29.16.1 Netgroup Data" url="chapters_29.html#SEC634"/>
<tocsect3 name="29.16.2 Looking up one Netgroup" url="chapters_29.html#SEC635"/>
<tocsect3 name="29.16.3 Testing for Netgroup Membership" url="chapters_29.html#SEC636"/>
</tocsect2>
</tocsect1>
<tocsect1 name="30. System Management" url="chapters_30.html#SEC637">
<tocsect2 name="30.1 Host Identification" url="chapters_30.html#SEC638"/>
<tocsect2 name="30.2 Platform Type Identification" url="chapters_30.html#SEC639"/>
<tocsect2 name="30.3 Controlling and Querying Mounts" url="chapters_30.html#SEC640">
<tocsect3 name="30.3.1 Mount Information" url="chapters_30.html#SEC641">
<tocsect4 name="30.3.1.1 The `fstab' file" url="chapters_30.html#SEC642"/>
<tocsect4 name="30.3.1.2 The `mtab' file" url="chapters_30.html#SEC643"/>
<tocsect4 name="30.3.1.3 Other (Non-libc) Sources of Mount Information" url="chapters_30.html#SEC644"/>
</tocsect3>
<tocsect3 name="30.3.2 Mount, Unmount, Remount" url="chapters_30.html#SEC645"/>
</tocsect2>
<tocsect2 name="30.4 System Parameters" url="chapters_30.html#SEC646"/>
</tocsect1>
<tocsect1 name="31. System Configuration Parameters" url="chapters_31.html#SEC647">
<tocsect2 name="31.1 General Capacity Limits" url="chapters_31.html#SEC648"/>
<tocsect2 name="31.2 Overall System Options" url="chapters_31.html#SEC649"/>
<tocsect2 name="31.3 Which Version of POSIX is Supported" url="chapters_31.html#SEC650"/>
<tocsect2 name="31.4 Using sysconf" url="chapters_31.html#SEC651">
<tocsect3 name="31.4.1 Definition of sysconf" url="chapters_31.html#SEC652"/>
<tocsect3 name="31.4.2 Constants for sysconf Parameters" url="chapters_31.html#SEC653"/>
<tocsect3 name="31.4.3 Examples of sysconf" url="chapters_31.html#SEC654"/>
</tocsect2>
<tocsect2 name="31.5 Minimum Values for General Capacity Limits" url="chapters_31.html#SEC655"/>
<tocsect2 name="31.6 Limits on File System Capacity" url="chapters_31.html#SEC656"/>
<tocsect2 name="31.7 Optional Features in File Support" url="chapters_31.html#SEC657"/>
<tocsect2 name="31.8 Minimum Values for File System Limits" url="chapters_31.html#SEC658"/>
<tocsect2 name="31.9 Using pathconf" url="chapters_31.html#SEC659"/>
<tocsect2 name="31.10 Utility Program Capacity Limits" url="chapters_31.html#SEC660"/>
<tocsect2 name="31.11 Minimum Values for Utility Limits" url="chapters_31.html#SEC661"/>
<tocsect2 name="31.12 String-Valued Parameters" url="chapters_31.html#SEC662"/>
</tocsect1>
<tocsect1 name="32. DES Encryption and Password Handling" url="chapters_32.html#SEC663">
<tocsect2 name="32.1 Legal Problems" url="chapters_32.html#SEC664"/>
<tocsect2 name="32.2 Reading Passwords" url="chapters_32.html#SEC665"/>
<tocsect2 name="32.3 Encrypting Passwords" url="chapters_32.html#SEC666"/>
<tocsect2 name="32.4 DES Encryption" url="chapters_32.html#SEC667"/>
</tocsect1>
<tocsect1 name="33. Debugging support" url="chapters_33.html#SEC668">
<tocsect2 name="33.1 Backtraces" url="chapters_33.html#SEC669"/>
</tocsect1>
<tocsect1 name="34. POSIX Threads" url="chapters_34.html#SEC670">
<tocsect2 name="34.1 Basic Thread Operations" url="chapters_34.html#SEC671"/>
<tocsect2 name="34.2 Thread Attributes" url="chapters_34.html#SEC672"/>
<tocsect2 name="34.3 Cancellation" url="chapters_34.html#SEC673"/>
<tocsect2 name="34.4 Cleanup Handlers" url="chapters_34.html#SEC674"/>
<tocsect2 name="34.5 Mutexes" url="chapters_34.html#SEC675"/>
<tocsect2 name="34.6 Condition Variables" url="chapters_34.html#SEC676"/>
<tocsect2 name="34.7 POSIX Semaphores" url="chapters_34.html#SEC677"/>
<tocsect2 name="34.8 Thread-Specific Data" url="chapters_34.html#SEC678"/>
<tocsect2 name="34.9 Threads and Signal Handling" url="chapters_34.html#SEC679"/>
<tocsect2 name="34.10 Threads and Fork" url="chapters_34.html#SEC680"/>
<tocsect2 name="34.11 Streams and Fork" url="chapters_34.html#SEC681"/>
<tocsect2 name="34.12 Miscellaneous Thread Functions" url="chapters_34.html#SEC682"/>
</tocsect1>
<tocsect1 name="A. C Language Facilities in the Library" url="chapters_35.html#SEC683">
<tocsect2 name="A.1 Explicitly Checking Internal Consistency" url="chapters_35.html#SEC684"/>
<tocsect2 name="A.2 Variadic Functions" url="chapters_35.html#SEC685">
<tocsect3 name="A.2.1 Why Variadic Functions are Used" url="chapters_35.html#SEC686"/>
<tocsect3 name="A.2.2 How Variadic Functions are Defined and Used" url="chapters_35.html#SEC687">
<tocsect4 name="A.2.2.1 Syntax for Variable Arguments" url="chapters_35.html#SEC688"/>
<tocsect4 name="A.2.2.2 Receiving the Argument Values" url="chapters_35.html#SEC689"/>
<tocsect4 name="A.2.2.3 How Many Arguments Were Supplied" url="chapters_35.html#SEC690"/>
<tocsect4 name="A.2.2.4 Calling Variadic Functions" url="chapters_35.html#SEC691"/>
<tocsect4 name="A.2.2.5 Argument Access Macros" url="chapters_35.html#SEC692"/>
</tocsect3>
<tocsect3 name="A.2.3 Example of a Variadic Function" url="chapters_35.html#SEC693">
<tocsect4 name="A.2.3.1 Old-Style Variadic Functions" url="chapters_35.html#SEC694"/>
</tocsect3>
</tocsect2>
<tocsect2 name="A.3 Null Pointer Constant" url="chapters_35.html#SEC695"/>
<tocsect2 name="A.4 Important Data Types" url="chapters_35.html#SEC696"/>
<tocsect2 name="A.5 Data Type Measurements" url="chapters_35.html#SEC697">
<tocsect3 name="A.5.1 Computing the Width of an Integer Data Type" url="chapters_35.html#SEC698"/>
<tocsect3 name="A.5.2 Range of an Integer Type" url="chapters_35.html#SEC699"/>
<tocsect3 name="A.5.3 Floating Type Macros" url="chapters_35.html#SEC700">
<tocsect4 name="A.5.3.1 Floating Point Representation Concepts" url="chapters_35.html#SEC701"/>
<tocsect4 name="A.5.3.2 Floating Point Parameters" url="chapters_35.html#SEC702"/>
<tocsect4 name="A.5.3.3 IEEE Floating Point" url="chapters_35.html#SEC703"/>
</tocsect3>
<tocsect3 name="A.5.4 Structure Field Offset Measurement" url="chapters_35.html#SEC704"/>
</tocsect2>
</tocsect1>
<tocsect1 name="B. Summary of Library Facilities" url="chapters_36.html#SEC705"/>
<tocsect1 name="C. Installing the GNU C Library" url="chapters_37.html#SEC706">
<tocsect2 name="C.1 Configuring and compiling GNU Libc" url="chapters_37.html#SEC707"/>
<tocsect2 name="C.2 Installing the C Library" url="chapters_37.html#SEC708"/>
<tocsect2 name="C.3 Recommended Tools for Compilation" url="chapters_37.html#SEC709"/>
<tocsect2 name="C.4 Supported Configurations" url="chapters_37.html#SEC710"/>
<tocsect2 name="C.5 Specific advice for Linux systems" url="chapters_37.html#SEC711"/>
<tocsect2 name="C.6 Reporting Bugs" url="chapters_37.html#SEC712"/>
</tocsect1>
<tocsect1 name="D. Library Maintenance" url="chapters_38.html#SEC713">
<tocsect2 name="D.1 Adding New Functions" url="chapters_38.html#SEC714"/>
<tocsect2 name="D.2 Porting the GNU C Library" url="chapters_38.html#SEC715">
<tocsect3 name="D.2.1 Layout of the `sysdeps' Directory Hierarchy" url="chapters_38.html#SEC716"/>
<tocsect3 name="D.2.2 Porting the GNU C Library to Unix Systems" url="chapters_38.html#SEC717"/>
</tocsect2>
</tocsect1>
<tocsect1 name="E. Contributors to the GNU C Library" url="chapters_39.html#SEC718"/>
</kdeveloptoc>
|