Modern operating systems - Third edition

Other bestselling titles by Andrew S. Tanenbaum Structured Computer Organization, 5th edition This widely read classic, now in its fifth edition, provides the ideal introduction to computer architecture. It covers the topic in an easy-to-understand way, bottom up. There is a chapter on digital logic for beginners, followed by chapters on microarchitecture, the instruction set architecture level, operating systems, assembly language, and parallel computer architectures. Computer Networks, 4th edition This best seller, currently in its fourth edition, provides the ideal introduction to today's and tomorrow's networks. It explains in detail how modern networks are structured. Starting with the physical layer and working up to the application layer, the book covers a vast number of important topics, including wireless communication, fiber optics, data link protocols, Ethernet, routing algorithms, network performance, security, DNS, electronic mail, the World Wide Web, and multimedia. The book has especially thorough coverage of TCP/IP and the Internet.

pdf552 trang | Chia sẻ: tlsuongmuoi | Lượt xem: 2179 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Modern operating systems - Third edition, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Effective UID, 800 EFS (see Encrypting File System) Electrically erasable PROM, 23 Elevator algorithm, 379 Linux, 774-775 Embedded operating system, 33-34,998 Encoding, video, 476-482 Encryption, 615,616,694,913,914 Encryption file system, 913 End-to-end argument, 968 ENIAC, 8 EPOC, 927 Brmo variable, 112 Error checking, 982 Error-correcting code, 330 Error handling, 341 disk, 380-383 Error reporting, 355 Escape character, 396 Escape sequence, 398 Ethernet, 581-582 Event, 866 Event-driven paradigm, 962 Exclusive lock, 780 Executable program virus, 672-674 Execution paradigms, 962-963 Executive, Vista, 832 Executive layer, Vista, 837-841 Existing resource vector, 442 Exokernei, 69,968-969 Exploiting code bugs, 657-665 Exploiting locality, 989 Ext2 file system, Linux, 784-791 INDEX 1051 Ext3 file system, Linux, 791-792 Extensible system, 970 Extent, file, 274 External fragmentation, 236 F Fair-share scheduling, 158 False sharing, 561-562 FAT (see File Allocation Table) FAT-16 file system, 255, 902 FAT-32 file system, 255,902 FCFS (see First-Come First-Served algorithm) Fiber, 468, 583, 860, 867 Field, 473 FIFO (see First-in First-Out algorithm) File, 38-41 block special, 41,258,768 character special, 41,258, 768 goat, 693 header, 71-72,732 immediate, 908 implementation, 272-278 implemented with list, 275-276 mapped, 223 memory-mapped, 756 object, 72 persistent, 254 random access, 260 raw block, 774 regular, 258 sequential access, 260 shared, 281-283 sparse, 908 special, 768 File access, 260 File allocation table, 276 File attribute, 261-262 File caching, multimedia, 510-511 File compression. Vista, 912-913 File data structure, Linux, 785 File descriptor, 40,265,781 File encryption, Vista, 913-914 File extension, 256-257 File handle, NFS, 794 File naming, 255-257 File operation, 262-263 File sharing, semantics, 592-594 File structure, 257-258 File system, 253-323 CD-ROM, 310-311 FAT-16,902 free block management, 293-295 ISO 9660,311-314 Linux, 775-797 log-structured, 285-287 multimedia, 491-514 Symbian, 932,944-949 UNLXV7,319-321 virtual, 286-289 Vista, 902-914 File system, FAT-32,902 File system backup, 296-302 File-system-based middleware, 589-594 File system block size, 290 File system calls example, 263-266 Linux, 781 File system consistency, 302-305 File system filter driver, 842 File system implementation, 271-289 File system layout, 271-272 File system management, 290-310 File system performance, 305-309 File system research, 322 File system security, Symbian, 945-946 File system structure, Vista, 904-908 File type, 258-260 Filter, 729,901 Vista, 841 Filter driver, Vista, 900 Finger daemon, 681 Finite-state machine, 97 Firewall, 691-693 stateless, 692 First-come first-served algorithm, 377 First-come first-served scheduling, 150-151 First-fit algorithm, 184 First generation computer, 7-8 First-tn first-out algorithm, 202 INDEX Flag, command, 728 Flash device, 859 Flash memory, 23 Flashing, 843 Fly-by mode, 336 Folder (see Directory) Font, 411 Format string attack, 660-662 FORTRAN, 8-10 FORTRAN monitor system, 10-11 Fourth generation computer, 13-16 Fragmentation, 218, 310 Frame, 472 CD-ROM, 367 Free block, 293 FreeBSD, 16 Frequency masking, 482 Gabor wavelet, 653 Gang scheduling, 544-546 Gates, Bill, 13-14 GDI (see Graphics Device Interface) GDT (see Global Descriptor Table) Generic right, 627 GID (see Group ID) Global descriptor table, 240 Global paging algorithm, 214-215 Global variable, 114-115 Globus toolkit, 601 Gnome, 16,5 GNU Public License, 723 Goat file, 693 Gooey (see Graphical user interface) GPL (see GNU Public License) Grand unified bootloader, 751 Graphical user interface, 1-2,14,402-409,721 Graphics adapter, 404 Graphics device interface, 408 Green book, CD-ROM, 368 Grid, 547, 601 Group, 624 Group ID, 37 Group ID, Linux, 799 GRUB (see GRand Unified Bootloader) Guaranteed scheduling, 156-157 Guest operating system, 69, 568 GUI (see Graphical User Interface) H Hacker, 640 HAL (see Hardware Abstraction Layer) Handheld computer operating system, 33 Handle, 87,818 Symbian, 929 Vista, 846-848 Hard fault, Vista, 885 Hard link, 271 Hard real time, 158 Hard real-time operating system, 34 Hardware abstraction layer, 829-832, 830 HD DVD (see High-Definition DVD) Head skew, 375 Header files, C, 71-72,731 Heap, 755 Hibernation, Vista, 901 Hierarchical directory system, 266 High-definition DVD, 373-374,466 High-level format, 377 High Sierra CD-ROM, 368 Hints, 988-989 History of Linux, 722-724 History of MS-DOS, 810 History of operating systems, 7-16 History of UNIX and Linux, 716-724 History of Windows, 809-815 Hive, Vista, 825,826, 840 Hoare, C.A.R., 134 Honeypot, 703 Host, 457,583 Host operating system, 68,568 Hungarian notation, 407 Hypercube, 548 Hyperlink, 588 Hyperthreading, 20 INDEX 1053 Hypervisor, 68 type 1,568,569-570 type 2,570-571 Hypervisor call, 572 I I-node, 55,277-278 I-node data structure, Linux, 785 I-node table, Linux, 788 I-space, 219 IAT (see Import Address Table) IBM 1401,9 IBM 7094,9-10 IBM zSeries, 11 IBSYS, 10 IC (see Integrated Circuit) IDE disk (see Integrated Drive Electronics disk) Ideal processor, Vista, 872 Idempotency, 286 Identity theft, 667 IDL (see Interface Definition Language) IDS (see Intrusion Detection System) HOP, 595 Immediate file, Vista, 908 Impersonation, Vista, 916 Implementation of I/O in Linux, 771 Implementation of I/O in Vista, 897-902 Implementation of memory management in Linux, 758-767 Implementation of memory management in Vista, 881-890 Implementation of operating systems, 967-982 Implementation of paging, 225-232 Implementation of processes in Linux, 741-748 Implementation of processes in Vista, 867-869 Implementation of security in Linux, 802 Implementation of security in Vista, 918 Implementation of segmentation, 235-236 Implementation of the file system in Linux, 784-792 Implementation of the file system in Vista, 904-914 Implementation of the object manager in Vista, 844-854 Implementation of threads in Linux, 741-748 Implementation of threads in Vista, 867-869 Import address table, Vista, 855 Imprecise interrupt, 340-34! Incremental dump, 298 Indirection, 980 Industry standard architecture, 29 Input/output, 327-425,41-42 buffered, 342,353-355 interrupt-driven, 344-345 programmed, 342-344 software layers, 346-358 Symbian, 941-944 using DMA, 345 Input/output-bound process, 145 Input/output completion port, Vista, 896 Input/output device, 25-28, 328-329 Input/output hardware, 327-34f Input/output in Linux, 767-775 Input/output in Vista, 892-902 Input/output manager, Vista, 838 Input/output MMU, 576 Input/output port, 330 Input/output port space, 26 Input/output request packet, 851,898-899 Input/output research, 423-424 Input/output scheduler, 773 Input/output software device-independent, 351-356 goals, 341-342 principles, 341-345 user-space, 357-358 Input/output system calls in Linux, 771 Input/output virtualization, 576-577 Input software, 392-397 Insider attacks, 654-657 Instruction backup, 227-228 Integer overflow attack, 663 Integrated circuit, 11 Integrated drive electronics disk, 26, 359 Integrity checker, 697 Integrity level, 917 1054 INDEX Intel core 2,15 Interconnection technology, 547-549 Interface definition language, 594 Interfaces to Linux, 726-727 Interlaced video, 473 Interleaved disk, 529 Internal fragmentation, 217-218 Internet, 582-584 Internet interorb protocol, 595 Internet protocol, 586,770 Interpretation, 706-707 Interprocess communication, 37,117-145 Symbian, 936-937 Vista, 864-865 Interrupt, 27, 337-241 imprecise, 340-341 precise, 339-340 Interrupt-driven input/output, 344-345 Interrupt handler, 346-347 Interrupt service routine, 834 Interrupt vector, 27,90,338 Intrinsics, 400 Intruder, 613-614 Intrusion detection system, 693, 701 Invalid page, Vista, 877 Inverted page table, 198-199 IP (see Internet Protocol) IP address, 586,642 IPC (see InterProcess Communication) Iris recognition, 653 IRP (see Input/output Request Packet) ISA (see Industry Standard Architecture) ISO 9660 file system, 311-314 ISR (see Interrupt Service Routine) J Jailing, 700-701 Java development kit, 708 Java security, 707-709 Java virtual machine, 69, 706-708 JavaSpace, 600-601 JBD (see Journaling Block Device) JDK (see Java Development Kit) Jiffy, 748 Jini, 599-601 Jitter, 469 Job, 8 Jobs, Steve, 14 Jobs and fibers. Vista, 859-860 Joint photographic experts group, 476 Joliet extensions, 315-316 Journal, 824 Journaling, Vista, 913 Journaling block device, 792 Journaling file system, 285-286 Journaling file system, Linux, 791 JPEG (see Joint Photographic Experts Group) JPEG Standard, 476-479 JVM (see Java Virtual Machine) K KDE, 16,5 Kerckhoffs' principle, 615 Kernel, Vista, 828, 832 Kernel extension, Symbian, 942 Kernel layer. Vista, 832-834 Kernel mode, 1 Kernel-mode driver framework, 897 Kernel structure, Linux, 732-735 Kernel threads, 970 Key cryptographic, 615 file, 258 Vista, 844 Keyboard software, 393-396 Keylogger, 666 Kildall, Gary, 13 KMDF (see Kernel-Mode Driver Framework) L -2,23 -2,23 LAN (see Local Area Network) INDEX 1055 Land, CD-ROM, 365,366 Laptop mode, 767 Large address spaces, 996 Large memory, 45 Large programming project, 72-73 Late binding, 974 Layered system, 61-62, 967-968 LDT (see Local Descriptor Table) Lease, 599 Least recently used algorithm, 204-205, 884 simulating, 205-207 Legacy hardware, 31 Lightweight process, 99 Limit register, 178-179 Linda, 596-597 Line discipline, 774 Linear address, 242 Link, 281,777 Linked list allocation, 275-276 Linker, 72 Linus elevator scheduler, 774-785 Linux, 13,5,715-802 booting, 751-753 history, 13,722-724 implementation of processes, 741-748 Linux block special file, 768 Linux character special file, 768 Linux CLONE call, 746-747 Linux dentry data structure, 785 Linux disk scheduler, 774-775 Linux elevator algorithm, 774-775 Linux ext2 file system, 784-791,785 Linux ext3 file system, 791-792 Linux file data structure, 785 Linux file system, 775-797, 775-798 Linux file system cails, 781, 781-784 Linux goals, 725-726 Linux group ID, 799 Linux i-node data structure, 785 Linux i-node table, 788 Linux input/output, 767-775 Linux input/output system calls, 771-775 Linux interfaces, 726-727 Linux journaling file system, 791 Linux kernel structure, 732-735 Linux loadable module, 775 Linux memory allocation mechanism, 762-763 Linux memory management, 754-767 Linux memory-management system calls, 757-758 Linux networking, 769-771 Linux object cache, 763 Linux open file description table, 790 Linux page descriptor, 759 Linux page reclaiming algorithm, 764-767 Linux paging, 764-767 Linux physical memory management, 758-762 Linux process, 735-753 Linux process identifier, 736 Linux process management, 737-741 Linux process-management system calls, 737-741 Linux process scheduling, 748-751 Linux raw block file, 774 Linux raw file, 774 Linux runqueue, 749 Linux scheduling, 748-751 Linux security, 799-802 Linux special file, 768 Linux superblock, 786 Linux system call access, 112,637,677, 801, 802 alarm, 114,388,741,990 brk, 53, 755,757 chdir, 56,673, 747, 783 chmod, 57,670, 801 chown, 670 clone, 746,748,972,973 close, 54, 262,288,491,702,770,781,795,796 closedir, 270 creat, 781,784 create, 262,270,631,781 exec, 52, 53,79, 108, 621, 659, 675, 738, 739 740, 744,758, 817, 863, 965, 972, 973 execve, 52, 58, 85, 86 exit, 53, 86,702,740 fend, 783 fork, 50, 52,58,79, 85, 86,102,103,220 221,458, 535,736,737,738,743, 744 745, 746, 747, 764,804, 805, 817, 858 859, 863, 965, 972, 982 fstat, 54, 782 fsuid, 807 fsync, 767 1056 INDEX Linux system call (continued) getpid, 736 ioctl, 771, 894, 896 kill, 57, 87,741 link, 55, 270,783,784 lseek, 54,79, 287,745,747, 782, 806, 961 mkdir, 55,783 mmap, 757, 805,823 mount, 40, 56,796, 797 munmap, 757 nice, 749 open, 54, 112, 262, 268, 287, 316, 323, 356 433,439,491,625, 701,768,781,785 787,795, 796,798, 894,929,931 opendir, 270 pause, 89,741 pipe, 782 read, 19, 36,47,48,54,57, 64,96, 97, 102 106,107,168,260, 262, 265, 270, 287 288, 289, 342, 353,4, 491, 492,592 593, 620, 701,702,726,750, 756, 767 768, 781,782,785,788,790,795,796 797,802,894,959, 961,965 readdir, 270,783 rename, 263,270,323 request, 433 rewinddir, 784 rmdir, 55,783 select, 106, 107,169, 837 setgid, 802 setuid, 802, 807 sigaction, 741 signal, 135,346 Stat, 54,782, 786,788 sync, 307,767, 896 umount, 56 unlink, 56,79,271,783,784 wait, 135, 136,137,346 waitpid, 52,53,738,740 write, 4, 54,263,265,287,288, 307, 354 357,592,620,701, 702,756, 767, 768 770,781,782,785,792,798, 802, 894 Linux task, 742 Linux thread, 744-748 Linux user ID, 799 Linux utility program, 730-732 Linux virtual address space, 763-764 Linux virtual file system, 784-785 Linux waitqueue, 751 Livelock, 457-458 Load balancing, 563-566 Load control, 216-217 Loadable module, Linux, 775 Local area network, 581 Local descriptor table, 240 Local paging algorithm, 214-215 Local procedure call, 817 Local vs. global paging, 214-216 Locality of reference, 207 Location independence, 592 Location transparency, 591-592 Lock, fde, 779 Lock variable, 119 Locking pages, 228-229 Log-structured file system, 283 Logic bomb, 654-655 Logical block addressing, 361 Logical dump, 299 Login spoofing, 656 Lookup service, Jini, 599 Loosely coupled system, 523 Lossy encoding, 476 Lottery scheduling, 157 Low-level format, 374 LPC (see Local Procedure Call) LRU (see Least Recently Used algorithm) Luminance, 473 M Macintosh, 14, 16 Macro, 71 Macro virus, 677 Macroblock, 480 Magic number, 259 Magnetic disk, 359 Mailbox, 141 Mailslot, 864 Mainframe, 8 INDEX 1057 Mainframe operating system, 32 Major device, 352,768 Malware, 665-690 Mandatory access control, 632 Mapped file, 223 Mapped page writer. Vista, 889 Marshaling, parameter, 557 Mask, audio, 482 Master boot record, 271,377,751 Master file table, Vista, 904 Master-slave multiprocessor, 534 Mauchley, John, 8 MBR (see Master Boot Record) MD5 (see Message Digest 5) MDL (see Memory Descriptor List) Mechanism vs. policy, 65, 159-160 231-232,971-972 Memory, 21-24,420 managing free, 182-185 paged, 186-232 segmented, 232-245 virtual, 186-245 Memory allocation mechanism Linux, 762-763 Memory compaction, 181 Memory descriptor list, 899 Memory hierarchy, 21,173 Memory management, 173-246 Linux,754-767 Symbian, 933,937-941 using bitmaps, 183 using free lists, 183-185 using overlays, 186 Vista, 840, 875-890 Memory management research, 245 Memory management system calls in Linux, 757 Memory management system calls in Vista, 880 Memory management unit, 25, 187-190 Memory manager, 173 Memory-mapped file, 756 Memor> • -mpped input/output, 330-334 Menu ssure, 887 Memo Wl^ident virus, 674-675 Memory virtualization, 574-575 Mesh, 547 Message digest 5, 618 Message passing, 140-144 Message passing design issues, 138,140 Message-passing interface, 142 Message type module, Symbian, 952 Metadata, 261 Metafile, 410 Method, 407,594 Metric units, 76-77 MFT (see Master File Table) Mickey, 397 Microcomputer, 13 Microkernel, 62-65, 572-573,930-933, 969-970 MINIX 3,63-65 Microkernel design, Symbian, 930 Microprogram, 241 Microsoft, 14-15 Microsoft disk operating system, 14, 15, 254 316-319,324,810,811,906 Middleware, 580 coordination-based, 596 document-based, 588-589 file-system-based, 589-594 object-based, 594-595 Millennium edition, 15 Mimicry attack, 703 Mini-port, Vista, 843 MINIX, 721-722 history, 14 MINIX 3, 63-65 Minor device, 56, 352,768 Missing block, 303 MMU (see Memory Management Unit) Mobile code, 703-704 Model-based intrusion detection, 701-703 Modeling multiprogramming, 91-93 Modified page writer, Vista, 889 Modules in Linux, 775 Monitor, 134-140 Monoalphabetic substitution cipher, 616 Monolithic system, 60-61 Moore's law, 531 Motif, 400 Motion picture experts group, 479 Mounted file system, 40,341 1058 I N D E X Mounting, 56 Mouse software, 397 MP3 (see MPEG audio layer 3) MPEG (see Motion Picture Experts Group) MPEG audio layer 3,482-485 MPEG standard, 479-482 MPI (see Message-Passing Interface) MS-DOS (see Microsoft Disk Operating System) MS-DOS 1.0, 810 MS-DOS-based Windows, 811 MS-DOS file system, 316-319 Multicomputer, 546-566 Multicomputer hardware, 547-551 Multicomputer scheduling, 563 Multicore chip, 20-21,531,577-578,995-996 MULTICS (see MULTiplexed Information and Computing Service) Multilevel page table, 196-198 Multilevel security, 632-634 Multimedia, 465-516,997 Multimedia caching, 508-511 Multimedia disk scheduling, 511-514 Multimedia file placement, 497-508 Multimedia file system, 491-514 near video on demand, 502-504 organization, 497-502 Multimedia files, 470-476 Multimedia in Symbian, 933 Multimedia operating systems, 465-516 audio encoding, 482-485 introduction, 466-470 process scheduling, 485-491 research, 514-515 video encoding, 471-474 Multimedia scheduling, 485-491 Multimedia server, 492 Multiple-processor system research, 602-603 Multiple queue scheduling, 154-156 Multiplexed Information and Computing Service 12-13,47,236-240,716 Multiplexing, 6-7 Multiprocessor, 82,524-546 Multiprocessor hardware, 524-532 Multiprocessor operating system 34-35,532-546 Multiprocessor operating system types 534-538 Multiprocessor scheduling, 540-546 Multiprocessor synchronization, 536-539 Multiprogramming, 11, 82-84 modeling, 91-93 Multisession CD-ROM, 370 Multistage switching network, 527-529 Multithreaded code, 114-117 Multithreading, 20,99 Murphy's law, 116 Mutation engine, 696 Mutex, 130-134 Mutexes in E^hreads, 130 Mutual exclusion, 117 busy waiting, 20 disabling interrupts, 120-121 lock variable, 119 Peterson's solution, 123-124 priority inversion, 124 sleep and wakeup, 125-126 spin lock, 120 strict alternation, 121 -122 with busy waiting, 120-125 Mythical man month, 990 N Naming, 973 Naming transparency, 591-592 Nanokernel, Symbian, 931 Nanothread, Symbian, 934-935 Narrow striping, 508 NC-NUMA (see No Cache NUMA multiprocessor) Near video on demand, 494-497 Network device, 774 Network file system, 288,792-798 architecture, 793 implementation, 796-798 protocols, 793-796 version 4,798 Network hardware, 581-584 Network interface, 549-551 Network operating system, 16 I N D E X 1059 Network processor, 551 Network protocol, 585,585-587 Network service, 584-585 Networking, 996-997 Linux, 769-771 Symbian, 932 New technology file system, 902-914 New technology operating system, 816 Next fit algorithm, 184 NFS (see Network File System) NFU (see Not Frequently Used algorithm) No cache NUMA multiprocessor, 529 No silver bullet, 994 Nonblocking call, 553-556 Nonblocking network, 526 Noncanonical mode, 394 Nonpreemptable resource, 432-433 Nonpreemptive scheduling, 146 Nonresident attribute, NTFS, 906 Nonuniform memory access, 872 Nonuniform memory access multiprocessor 529-531 Nonvolatile RAM, 385 Not frequently used algorithm, 205-206 Not recently used algorithm, 201-202 Notification event, 866 Notification object, 837 NRU (see Not Recently Used algorithm) NT (see Windows NT) NT-based Windows, 811-814 NT namespace, 820 NTFS (see New Technology File System) NTOS (see New Technology Operating System) NUMA multiprocessor (see Nonuniform memory access multiprocessor) Nyquist theorem, 475 o Object, 594,623,820,838, 844,848 849,850, 851,852,853 Object adapter, 595 Object-based middleware, 594-595 Object cache, Linux, 763 Object file, 72 Object manager, 820 Vista, 838 Object name space. Vista, 848-854 Object orientation, Symbian, 929-930 Object request broker, 594 Off-line operation, 9 Omega network, 527 One-shot mode, 387 One-time password, 647-648 One-way function, 617 One-way hash chain, 647 Ontogeny recapitulates phylogeny, 44-47 Open file description table, Linux, 790 Operating system, 1 as a resource manager, 6-7 as extended machine, 4-5 Berkeley UNIX, 719-720 BSD, 13 FreeBSD, 16 history, 7-16 Linux, 5,13,715-802 MINIX, 12,63-65,7256 PDP-11 UNIX, 717-718 Portable UNIX, 718-719 Standard UNIX, 720-721 UNIX, 12 Windows 2000,15,3,813 Windows 2003,814 Windows 3.0, 812 Windows 95,3,811 Windows 98, 3,811 Windows Me, 15,3,811 Windows NT, 15,3 Windows NT 4.0, 813 Windows server 2008, 809 Windows Vista, 3,809-922 Windows XP, 15,3,813 Operating system concepts, 35-47 Operating system design, 955-999 brute force, 981-982 caching, 987-988 error checking, 982 exploiting locality, 989 goals, 956-957 hiding the hardware, 977-980 1060 INDEX Operating system design {continued) hints, 988-989 implementation, 967-982 interfaces, 959-966 paradigms, 961-964 performance optimization, 983-990 principles, 959-961 reentrancy, 981 space-time tradeoffs, 984-987 trends, 994-999 why is it hard?, 957-959 Operating system structure, 60-70 client-server, 65 layered, 61-62 microkernel, 62-65 monolithic, 60-61 virtual machine, 65-69 Optimal page replacement algorithm, 200-201 Optimization, goals, 984 Optimizing the common case, 989 Orange book, 369 ORB (see Object Request Broker) Organ-pipe algorithm, 505 Orthogonality, 972-973 OS/2,811 OS/360, 11-12 Ostrich algorithm, 439 Output software, 397-412 Overlapped seek, 359 Overlay, 186 Overview of Linux, 724-735 Overwriting virus, 672 P P operation, 126 -2,720 Packet sniffer, 644 PAE (see Physical Address Extension) Page, 186-190 Page allocator, 762 Page daemon, 765 Page descriptor, Linux, 759 Page directory, 243 Symbian, 939 Page fault, 189 Page fault frequency algorithm, 215-216 Page-fault handling, 226-227 Linux, 764-767 Vista, 882-886 Page frame, 188 Page frame number database. Vista, 887 Page frame reclaiming algorithm, 764-767 Page replacement algorithm, 199-214, 765 aging, 206 clock, 203-204 ftrst-in first-out, 202 global, 214-215 least recently used, 204-205 Linux, 764-767 local, 214-215 not frequently used, 205-206 not recently used, 201-202 optimal, 200-201 page fault frequency, 215-216 second-chance, 202-203 summary of, 213-214 Vista, 886-887 working set, 207-211 WSclock, 211-212 Page size, 217-218 Page table, 190-192 inverted, 198-199 multilevel, 196-198 Page table, large memory, 196 Page table entry, 191-192 Pagefile, Vista, 877-879 Paging, 187-190 copy-on-write, 221 implementation, 225-232 instruction backup, 227-228 locking pages, 228-229 optimization, 192-196 separation of policy and mechanism, 231-232 shared pages, 219-221 Paging daemon, 224 Paging in Linux, 764-767 Paging systems, design issues, 214-225 Parallel systems, 997 INDEX 1061 Parasitic vims, 673 Paravirt ops, 574 Paravirtualization, 69, 572-574 Parent process, 736 Partition, 12,31, 56,229,286,310,317, 318 377, 675, 765,786 Password, 261, 624, 640-651, 655, 656 Password security, UNIX, 645-646 Paterson, Tim, 14 Path name, 40,267-270 absolute, 267 relative, 268 Payload, virus, 671 PCI bus, 29 PCI Express, 29 PDA (see Personal Digital Assistant) PDP-1, 14 PDP-11, 717, 718 PDP-11 UNIX, 717-718 PEB (see Process Environment Block) Pentium, 15 Pentium, segmentation, 240-235 Perceptual coding, 482 Perfect shuffle, 527 Performance, 983-990 Periodic real-time system, 159 Peripheral component interconnect, 29 Personal computer operating system, 33 Personal digital assistant, 33 Personal firewall, 693 Peterson, G.L., 121 Peterson's solution, 121 PFF (see Page fault frequency algorithm) PFN database (see Page Frame Number database) PFRA (see Page Frame Reclaiming Algorithm) Physical address extension, 763, 884 Physical dump, 298 Physical memory management Linux, 758-762 Vista, 887-890 PID (see Process IDentifier) Pidgin Pascal, 136-138 Pinned page, 228-229, 759 Pipe, 41,737 Pipe symbol, 729 Pipeline, 18-19,730 Pit, CD-ROM, 365-366 Pixel, 473 PKI (see Public Key Infrastructure) Plaintext, 615 Play point, 496 Plug and play, 30, 839, 893 Pointer, in C, 70-71 POLA (see Principle of Least Authority) Policy vs. mechanism, 65, 159-160 231-232,971-972 Polling, 344 Polymorphic virus, 696 Pop-up thread, 112-114,556 Port, 644 Portable C compiler, 718 Portable UNIX, 718-719 Port number, 692 Port scan, 644 Position-independent code, 223 POSIX, 12,48-57, 720 POSIX threads, 104-106 Power management, 415-423 application issues, 422-423 battery, 421-422 CPU, 419-420 disk, 418-419 display, 417-418 hardware issues, 416-417 memory, 420 operating system issues, 417 thermal, 421 wireless communication, 420-421 Power manager. Vista, 901 PowerShell, 826 Preamble, 330 Precise interrupt, 339-340 Preemptable resource, 432-433 Preemptive scheduling, 147 Prepaging, 208, 882, 885 Present/absent bit, 189 Primary volume descriptor, 311 Principal, 623,76 Principle of least authority, 621 Printer daemon, 116 1062 INDEX Priority inversion, 124, 874 Priority scheduling, 153-154 Privacy, 612 Privilege escalation attack, 665 Privileged instruction, 569 Process, 36-38, 81-15,89-91 compute-bound, 145 implementation in Linux, 741-748 input/output-bound, 145 IPC Linux, 735-753 IPC Symbian, 932, 933-937 IPC Vista, 857-875, 858-859 Process behavior, 147-148 Process control block, 89 Process creation, 84-86 Process environment block, Vista, 858 Process group, 737 Process hierarchy, 87 Process ID, 52 Process identifier, 736 Process management, Linux, 737-741 Process manager. Vista, 839 Process model, 82-84 Process scheduling, Linux, 748-751 multimedia, 485-491 Process state, 88-89 Process switch, 152 Process table, 36, 89 Process termination, 86-87 Processor, 17-21 Processor allocation algorithm, 564 graph-theoretic, 564-565 receiver-initiated, 566 sender-initiated, 565-566 Processor sharing, 170 Producer-consumer problem, 124 with Java, 139-141 with message passing, 142-144 with monitors, 137-139 with Pthreads, 133 with semaphores, 129-130 Program counter, 18 Program status word, 18 Programmed input/output, 342-344 Programming Vista, 815-827 Progressive video, 473 Project management, 990-994 bad-news diode, 992 chief programmer team, 992 mythical man month, 990 no silver bullet, 994 role of experience, 993 second-system effect, 993 team structure, 991-993 Prompt, 43 shell, 728 Proportionality, 149 Protection, 42 Protection command, 631 Protection domain, 620-622 Protection hardware, 45-46 Protection mechanism, 611,620-639 Protection ring, 244 Protocol, 585 BFS, 794 communication, 456 Symbian, 951-952 Protocol stack, 586 PRT module, Symbian, 952 Pseudoparallelism, 82 Psion, 926-927 PSW, 18 Psychoacoustics, 482 Pthreads, 104-106,132-134 Public-key cryptography, 616-617 Public key infrastructure, 619 Publish/subscribe, 598,599 Publish/Subscribe system, 598-599 Pull server, multimedia, 492 Pulse code modulation, 475 Push server, multimedia, 492 Q Quality of service, 469,584 Quantization, 477 Quantization noise, 475 Quantum, 152 Quick-fit algorithm, 185 Quota, 295,296,846 I N D E X 1063 R R-node, 797 NFS, 797 Race condition, 117-119,125 RAID (see Redundant Array of Inexpensive Disks) RAM (see Random Access Memory) Random access file, 260 Random access memory, 23 Rate monotonic scheduling, 488-489 Raw block file, Linux, 774 Raw mode, 394 Read ahead, 308 NFS, 798 Read-only memory, 23 Readers and writers problem, 165-166 Readyboost, Vista, 892 Readyboot, Vista, 892 Real time, 388 Real-time operating system, 34-35 Real-time scheduling, 158-161,486-491 Recovery console. Vista, 844 Recovery from deadlock, 445-446 through killing processes, 446 through preemption, 445 through rollback, 445-446 Recycle bin, 297 Red book, CD-ROM, 365 Redundant array of inexpensive disks 361-365 Reed-Solomon code, 368 Reentrancy, 981 Reentrant device driver, 350 Reference monitor, 706 Referenced pointer, 846 Regedit, 826 Registry, Windows, 825 Regular file, 258 Reincarnation server, 64 Relative path, 777 Relative path name, 268 Remote access model, 589-590 Remote procedure call, 556-558 implementation, 557-558 Removable media, Symbian, 944 Rendezvous, 142 Reparse point. Vista, 904,907,911 Replication, 561 Request matrix, 442 Request-reply service, 585 Research deadlock, 459 file system, 322 input/output, 423-424 memory management, 245 multimedia operating system, 514-515 multiple-processor system, 602-603 operating systems in general, 74-75 processes and threads, 166-167 security, 709-710 Reserved page. Vista, 877 Resource, 402,432-435 nonpreemptable, 432-433 preemptable, 432-433 Resource acquisition, 433-435 Resource deadlock, 435-436 Resource trajectories, 447-448 * Response time, 149 Restricted token, Vista, 859 Return to Hoc attack, 662-663 Reusability, 980-981 Right, 620 RMS (see Rate Monotonic Scheduling) Rock ridge extensions, 314-315 Role, 624 Role of experience, 993 Root, 800 Root directory, 40, 266 Root file system, 40 Rootktt, 686-690 Sony, 689-690 types, 686-687 Rootkit detection, 687-689 Round, 511 Round robin scheduling, 152-153 Router, 457,583 RFC (see Remote Procedure Call) RSA (Rivest-Shamir-Adelman) algorithm, 617 Run time for C programs, 73 Runqueue, Linux, 749 RWX bits, 42 1064 INDEX s SACL (see System Access Control List) Safe-boot, Vista, 843 Safe state, 448-449 Salt, 646 Sandboxing, 704-706 SATA disk (see Serial ATA disk) Scan code, 393 Scan-EDF algorithm, 513 Schedulable real-time system, 159 Scheduler, 143 Linux disk, 774-775 Scheduler activations, 111-112 Scheduling, when to do, 148-149 Scheduling algorithm, 145-161 affinity, 543 batch system, 149-148,150-152 categories, 147 earliest-deadline-first, 489-491 fair-share, 158 first-come first-served, 150-151 gang, 544-546 goals, 148-150 guaranteed, 156-157 interactive system, 148-149, 152-158 introduction, 145-150 Linux, 748-751 lottery, 157 multicomputer, 563 multimedia, 485-491 multiple-queue, 154-156 multiprocessor, 540-546 nonpreemptive, 147 preemptive, 147 priority, 153-154 rate-monotonic, 488-489 real-time, 148,150,158-161,486-491 round-robin, 152-153 shortest-job-first, 151-152 shortest-process-next, 156 shortest-remaining-time-next, 152 smart, 542 thread, 160-161 two-level, 543 Vista, 870-875 Scheduling mechanism, 159 Scheduling policy, 159 Script kiddy, 645 SCSI (see Small Computer System Interface) Second-chance algorithm, 202-203 Second-generation computer, 8 Second-system effect, 993 Secret-key cryptography, 615-616 Section, 819 Secure hash algorithm-1, 618 Secure hash algorithm-256,618 Secure hash algorithm-512,618 Secure system, formal model, 630-632 Secure virtual machine, 569 Security, 609-711 Linux, 799-802 Symbian, 945-949 Vista, 914-920 Security by obscurity, 615 Security descriptor. Vista, 819,916 Security identifier, 915 Security in Symbian, 946-949 Security in Vista, 914-920 Security reference monitor, Vista, 840 Security research, 709-710 Security system calls Linux, 801 Vista, 917-918 Segment, 233 data, 53-54 stack, 53-54 text, 53-54 Segmentation, 232-244 implementation, 235-236 Segmentation with paging, 236-245 MULTICS 238-242 Pentium, 240-245 Self-map, Vista, 868,885 Semantics of file sharing, 592-594 Semaphore, 128-130 binary, 127 Send and receive primitives, 553 Sensitive instruction, 569 Sensor node, 999 Sensor node operating system, 34 Separate instruction and data space, 219 INDEX 1065 Separation of policy and mechanism, 231-232 Sequential access, 260 Sequential consistency, 562-563, 592 Sequential process, 82 Serial ATA disk, 359 Server, 65 Server operating system, 32 Server stub, 557 Session, CD-ROM, 370 Session semantics, 593 Set-top box, 468 SETUID bit, 800 SHA-I (see Secure Hash Algorithm-1) SHA-256 (see Secure Hash Algorithm-256) SHA-512 (see Secure Hash Algorithm-512) Shadow page table, 575 Shared fde, 281-283 Shared hosting, 67 Shared library, 221-223 Shared lock, 780 Shared-memory multiprocessor, 524-546 Shared page, 219-221 Shared text segment, 756 Shell, 36, 1,42-44,727-730 Shell script, 730 Shellcode, 662 Short name, Vista, 906 Shortest-job-first scheduling, 151-152 Shortest-process-next, 156 Shortest-remaining-time-next scheduling, 152 Shortest-seek-first algorithm, 378 SID (see Security Identifier) Side-by-side versions, Vista, 856 Side-channel, 651 Signal, 737 Signals, in multithreaded code, 114 Signature block, 618 Simple security property, 633 Single-indirect block, 320,791 Single-interleaved disk, 376 Single large expensive disk, 361 Single-level directory system, 266 Skeleton, 594 SLED (see Single Large Expensive Disk) Sleep and wakeup, 125-126 Small computer system interface, 30 Smart card, 649-651 Smart card operating system, 35 Smart scheduling, 542 SMP (see Symmetric Multiprocessor) Snooping, 531 Socket, 769, 864 Symbian, 936-937 Soft fault, Vista, 877,885 Soft real time, 158 Soft real-time operating system, 34-35 Soft timer, 391-392 Sony rootkit, 689-690 Source code virus, 677-678 Space sharing,543 Space-time trade-offs, 984-987 Sparse file. Vista, 908 Special file, 41 Special file, Linux, 768 Spin lock, 120,537 Spinning vs. switching, 539-540 Spooler directory, 117-118 Spooling, 11,357 Spooling directory, 357 Spyware, 682-686 actions taken, 685-686 Square-wave mode, 387 Stable storage, 383-386 Stack pointer, 18 Stack segment, 53-54 Standard error, 729 Standard input, 729 Standard output, 729 Standard UNIX, 720-721 Standby list, Vista, 878 Standby mode, Vista, 902 Star property, 633 Starvation, 163,459 Stateful firewall, 693 Stateful server, 798 Stateless firewall, 692- Stateless server, 795 Static disk scheduling, multimedia, 511-513 Static relocation, 177 Static vs. dynamic structures, 975-976 Steganography, 637-639 Storage allocation, Vista, 908-911 1066 INDEX Store-and-forward packet switching, 548 Stored value card, 649 Strict alternation, 121-122 Striping, disk, 362 Structure, operating system, 967-971 Stub, 557, 558, 594 Subject, 623 Superblock, 272,785 Linux, 786 Superfetch, Vista, 882 Superscalar CPU, 18-19 Superuser, 37, 800 Supervisor mode, 1 Svchost.exe, 857 SVID (see System V Interface Definition) SVM (see Secure Virtual Machine) Swap area, 765 Swapper process, 764 Swappiness, 766 Swapping, 179-182 Symbian, 925-100 history, 926-928 overview, 928-933 Symbian active object, 935-936 Symbian application engine, 926 Symbian communication, 933, 949-953 Symbian device driver, 941-942 Symbian DMA, 942-943 Symbian features, 932-933 Symbian file system, 932,944-949 Symbian handle, 929 Symbian history, 926-93 Symbian input/output, 941-944 Symbian kernel layer, 931 Symbian memory management, 933, 937-941 Symbian microkernel, 930 Symbian modules, 951-952 Symbian multimedia, 933 Symbian nanokernel, 931 Symbian nanothread, 934-935 Symbian networking, 932 Symbian object orientation, 929-930 Symbian process, 932,933-937 Symbian security, 946-949 Symbian thread, 934-935 Symbolic link.^pL.281 Symmetric-key cryptography, 615-616 Symmetric multiprocessor, 534-536 Synchronization, 128 barrier, 144-145 Vista, 865-867 Synchronization event, 866 Synchronization object, 837 Synchronized method, java, 137 Synchronous call, 553-556 Synchronous input/output, 342 System access control list, 916 System availability, 612 System call, 19 directory management, 55-57 file management, 54 Linux file system, 781-784 Linux input/output, 771-775 Linux memory management, 757-758 Linux process management, 737-741 Linux security, 801-802 miscellaneous, 56-57 process management, 50-54 Vista input/output, 894-896 Vista memory management, 880-881 Vista process management, 865-867 Vista security, 917-918 System call interface, 964-966 System calls, 47-59 System on a chip, 532 System process, Vista, 862 System structure, 967-971 System V, 12 System V interface definition, 720 T Tagged architecture, 626 Tape, 25 Task, Linux, 742 TCB (see Trusted Computing Base) TCP (see Transmission Control Protocol) TCP/IP, 720 Team structure, 991-993 TEB (see Thread Environment Block) INDEX 1067 Template, Linda, 597 Temporal masking, 484 Termcap, 398 Terminal, 392 Text segment, 53-54,754 Text window, 398 Thermal management, 421 Thin client, 413-415 THINC (see THIN Client) Third generation computer, 10-13 Thompson, Ken, 12 Thrashing, 207 Thread environment block. Vista, 858 Thread local storage, Vista, 858 Thread model, classical, 100-104 Thread scheduling, 160 Thread usage, 93-10 Threads, 93-11 hybrid implementation, 110-111 kernel space implementation, 109-110 Linux, 744-748 POSIX, 104-106 Symbian, 934-935 user space implementation, 106-109 Vista, 860-875 Threat, 6II-6I2 Throughput, 149 Tightly coupled system, 523 Time bomb, 655 Time-space tradeoffs, 984-987 Timer, 386-392 Timesharing, 11-13 multiprocessor, 541-543 TLB (see Translation Lookaside Buffer) Token, 824 Top-Down implementation, 976-977 TPM (see Trusted Platform Module) Transactional memory, 859 Transfer model, 589-590 remote access model, 589-590 upload/download model, 589 Translation lookaside buffer, 193-195, 194 195-196, 881 hard miss, 196 soft miss, 196 Translation table base register, 939 Transmission control protocol, 586, 770 Transparency location, 591-592 naming, 591-592 Trap, 19-20,655 Trap door, 655 TRAP instruction, 49-50 Trends in operating system design, 994-999 distributed systems, 997 embedded systems, 998 large address spaces, 996 mobile devices, 998 multicore chips, 995-100 multimedia, 997 networking, 996-997 parallel systems, 997 sensors, 999 virtualization, 995 Triple-indirect block, 320, 791 Trojan horse, 668-670 Trusted computing base, 629-630 Trusted platform module, 619 Trusted system, 628-629 TSL instruction, 124-125 TSY module, Symbian, 952 TTBR (see Translation Table Base Register) Tuple, 596-597 Tuple space, 596-597 Turnaround time, 149 Two-level scheduling, 543 Two-Phase locking, 455-456 Type 1 hypervisor, 568, 569-570 Type 2 hypervisor, 568, 570-571 u UAC (see User Account Control) UDF (see Universal Disk Format) UDP (see User Datagram Protocol) UID (see User ID) UMA multiprocessor bus-based, 524-525 crossbar switched, 525-527 with multistage switching, 527-529 1068 INDEX UMA multiprocessor (see Uniform Memory Access multiprocessor) UMDF (see User-Mode Driver Framework) Unbuffered input/output, Vista, 891 Undefined external, 221 Unicode, 820 UNICS.716-717,721 FONT Uniform memory access multiprocessor 524-529 Uniform naming, 341 Uniform resource locator, 588-589 Universal coordinated time, 387 Universal disk format, 274 Universal serial bus, 30 UNIX, 16 (see also Linux) Berkeley, 719-720 history, 717-721 PDP-11, 717-718 portable, 718-719 standard, 720-721 UNIX Password Security, 645-646 UNIX V7 File system, 319 Unsafe state, 448-449 Upcall, 110 Upload/download model, 589-590 URL (see Uniform Resource Locator) USB (see Universal Serial Bus) User account control, 919 User datagram protocol, 770 User-friendly system, 14 User ID, 37 Linux, 799 User interface paradigms, 961 User mode, 2 User-mode driver framework, 897 User shared data, Vista, 858 UTC (see Universal Coordinated Time) V V-node, 288,797 V-node, NFS, 796 V operation, 126 VAD (see Virtual Address Descriptor) Vampire tap, 581 VCR Control Functions, 492 VFS (see Virtual File System) Video compression, 476-482 Video decoding, 476 Video encoding, 471-474,476-482 Video on demand, 466 Video RAM, 404 Video server, 467 Virtual address, 187-190 Virtual address allocation, Vista, 877 Virtual address descriptor, 881 Virtual address space, 187-190 Linux, 763-764 Virtual appliance, 577 Virtual disk, 571 Virtual file system, 286 Linux, 784-785 Virtual kernel mode, 569 Virtual machine, 568,65-69 rediscovery, 67-69 Virtual machine interface, 573 Virtual machine monitor, 66-68, 568 Virtual memory, 24-25,47, 180,186-245 design issues, 214-225 MULTICS, 236-240 page replacement algorithms, 199-214 paging, 187-190 Pentium, 240-245 Virtual memory interface, 224-225 Virtualization, 566-578,995 input/output, 576-577 licensing issues, 578 memory, 574-575 requirements, 568-569 Virtualization technology, 569 Virus, 670 boot sector, 675-676 cavity, 674 companion, 671 device driver, 676-677 executable program, 672-674 macro, 677 memory resident, 674-675 operation of, 671 INDEX 1069 Virus (continued) overwriting, 672 parasitic, 673 polymorphic, 696 source code, 677-678 Virus avoidance, 698-699 Virus dropper, 671 Virus pay load, 671 Virus scanner, 693-697 Vista, 3,809-922 history, 814-815 Vista access control list, 824 Vista access token, 915 Vista access violation, 884 Vista afUnitized thread, 85S Vista alternate data stream, 908 Vista and large memories, 879-880 Vista API call AddAccessAllowedAce, 917 AddAccessDeniedAce, 918 CreateDirectory, 59 CreateFile, 823,853,917 CreateFileMapping, 881 CreateProcess, 58,86, 817, 862, 867, 868 869,917,965 CreateSemaphore, 847,865 DeleteAce, 918 DupIicateHandle, 865 EnterCriticalSection, 866,989 ExceptPortHandle, 819 ExitProcess, 58, 86 FlushFileBuffers, 307 GetFileAttributesEx, 59 GetLocalTime, 59 GetTokenlnformation, 915 InitiaiizeAcI,917 InitializeSecurityDescriptor, 917 loCallDriver, 897,898 IoCompleteRequest, 897,911 lopParseDevice, 851,852 LeaveCriticalSection, 866 Lookup AccountSid, 917 NtAllocateVirtualMemory, 820 NtCancelloFile, 896 NtClose, 849, 850 NtCreateFile, 820, 849, 851, 895, 896 NtCreateProcess, 817, 819, 849,863 NtCreateThread, 820, 863 NtCreateUserProcess, 868, 869 NtDeviceloControIFile, 896 NtDuplicateObject, 820 NtFlushBuffersFile, 896 NtFsControlFile, 896,913 NtLockFile, 896 NtMapViewOfSection, 820 NtNotifyChangeDirectoryFile, 896,913 NtQueryDirectoryFile, 895 NtQuerylnformationFile, 896 NtQueryVolumelnformationFile, 895 NtReadFile, 895 NeReadVirtualMemory, 820 NtResumeThread, 869 NtSetlnformationFile, 896 NtSetVolumelnformationFile, 895 NtUnlockFile, 896 NtWriteFile, 895 NtWriteVirtualMemory, 820 ObCreateObjeefType, 853 ObOpenObjectByName, 851 OpenSemaphore, 847 ProcHandle, 820 PulseEvent, 866 QueueUserAPC, 836 ReadFile,911 ReleaseMutex, 866 Releases emaphore, 865 RemoveDirectory, 59 ResetEvent, 866 SectionHandle, 819 SetCurrentDirectory, 59 SetEvent, 866 SetFilePointer, 59 SetPriorityCIass, 871 SetSecurityDescriptorDacl, 918 SetThreadPriority, 871 SwitchToFiber, 860 ' TerminateProcess, 87 ValidDataLength, 891 WaitForMuItipIeObjects, 837,844,865, 922 WaitForSingleObject, 58, 865,866 Vista application verifier, 848 Vista balance set manager, 887 1070 INDEX Vista bandwidth reservation, 894 Vista bank switching, 879 Vista base priority, 871 Vista base record, 904 Vista boot drivers, 843 Vista cache manager, 840 Vista class driver, 843 Vista committed page, 877 Vista configuration manager, 840 Vista context data structure, 861 Vista current priority, 871 Vista default data stream, 908 Vista device driver, 897-898 Vista device drivers, 841-843 Vista device object, 841 Vista device stack, 841,900-902 Vista discretionary acl, 915 Vista driver object, 893 Vista driver verifier, 897 Vista dynamic disk, 893 Vista executive, 832 Vista executive layer, 837-841 Vista file compression, 912-913 Vista file encryption, 913-914 Vista file system, 902-914 Vista file system structure, 904-908 Vista filter, 841 Vista filter driver, 900 Vista handle, 846-848 Vista hard fault, 885 Vista hibernation, 901 Vista hive, 825 Vista ideal processor, 872 Vista immediate file, 908 Vista impersonation, 916 Vista import address table, 855 Vista input/output API calls, 894 Vista input/output completion port, 896 Vista input/output manager, 838 Vista interprocess communication, 864-865 Vista invalid page, 877 Vista jobs and fibers, 859-860 Vista journaling, 913 Vista kernel;-828r832-834" • Vista key, 844 Vista mapped page writer, 889 Vista master file table, 904 Vista memory manager, 840 Vista memory pressure, 887 Vista mini-port, 843 Vista modified page writer, 889 Vista nonresident attribute, 906 Vista object manager, 838 Vista object name space, 848-854 Vista page fault handling, 882-886 Vista page frame number database, 887 Vista page replacement algorithm, 886-887 Vista pagefile, 877-879 Vista physical memory management, 887-890 Vista power manager, 901 Vista process, 857-875, 858-859 Vista process API calls, 862-867 Vista process environment block, 858 Vista process manager, 839 Vista readyboost, 892 Vista readyboot, 892 Vista recovery console, 844 Vista reparse points, 904,911 Vista restricted token, 859 Vista safe-boot, 843 Vista scheduling, 870-875 Vista security API calls, 917-918 Vista security descriptor, 916 Vista security reference monitor, 840 Vista self-map, 868, 885 Vista short name, 906 Vista side-by-side versions, 856 Vista soft fault, 877, 885 Vista sparse files, 908 Vista standby list, 878 Vista standby mode, 902 Vista storage allocation, 908-911 Vista structure, 827-857 Vista superfetch, 882 Vista synchronization, 865-867 Vista system process, 862 Vista thread environment block, 858 Vista thread local storage, 858 Vista threads, 860-875 : Vista unbuffered input/output, 891 Vista user shared data, 858 Vista virtual address allocation, 877 INDEX 1071 Vista volume shadow copy, 893 Vista zeropage thread, 889 VM/370, 66-67 VMI (see Virtual Machine Interface) VMS, 15 VMware, 68, 570 Volume shadow copy, Vista, 893 Volume table of contents, 370 VT {see Virtualization Technology) VTOC (see Volume Table Of Contents) W WaitForMultipieObject, 837 Waitqueue, Linux, 751 VVakeup, 126 Wakeup-waiting bit, 126 WAN (see Wide Area Network) War dialer, 642 Watchdog timer, 390 Waveform coding, 482 WDF (see Windows Driver Foundation) WDM (see Windows Driver Model) Web browser, 588 Web page, 588 Web server, multithreaded, 95-97 When to schedule, 148-149 White-hat hacker, 640 Wide area network, 581 Wide striping, 508 Widgets, 400 Wild card, 624, 728 Win32 API, 57-59,812, 821-827 Window, 404 Window manager, 401 Windows 3.0,812 Windows 95,3,811 Windows 98, 3,811 Windows 2000,15, 3,813 Windows 2003, 814 Window_s^river^undation. 892,. —, W i n f f 6 w s ^ n v e r ^ r 3 e T f ^ % ^ ^ ^ Windows Me, 15, 3 , 8 1 1 " " " Windows NT, 3,15 Windows NT 4.0, 813 Windows NT API, 818-821 Windows on Windows, 821-822 Windows registry, 825 Windows server 2008, 809 Windows subsystem, 816 Windows Vista (see Vista) Windows XP, 15,3,813 Wireless communication, 420 WndProc, 407 Worker thread, 96 Working directory, 40, 268-269,777 Working set, 207 Working set algorithm, 207-211 Working set model, 208 Worm, 680-682 Wormhole routing, 549 Worst-fit algorithm, 185 WOW (see Windows on Windows) Write-through cache, 307 Wsclock,211 WSclock,2I3 WSClock algorithm, 211 X X (see X Window System) X client, 399 X intrinsics, 400 X resource, 402 X server, 399 X widget, 400 X window manager, 401 X window system, 5,16,398-402,722 -2 -2, 15 Xenix, 14 Xlib, 400 Y Yellow book, CD-ROM, 366-367 1072 INDEX Z Z/VM, 66 ZeroPage thread, Vista, 889 Zipf, George, 504 Zipfslaw, 504 Zombie, 612,666 Zombie state, 740 ..ZSeries, IBM, 11 ,

Các file đính kèm theo tài liệu này:

  • pdfModern operating systems - third edition.pdf
Tài liệu liên quan