|
|
Авторизация |
|
|
Поиск по указателям |
|
|
|
|
|
|
|
|
|
|
Love R. — Linux kernel development |
|
|
Предметный указатель |
Scheduler, runqueues, macros 45
Scheduler, runqueues, spinning processes 46
Scheduler, schedule() function 48—49
Scheduler, sleeping tasks 52—54
Scheduler, system calls 60—62
Scheduler, timeslice 39—43 51
Scheduler, timeslice, calculations 42
Scheduler, timeslice, nice values 51
Scheduler, timeslice, recalculating 48 51—52
Scheduler, user preemption 58
Scheduler, wait queues 52—53
Scheduler, waking up tasks 53—54
Scheduler, yielding 40
scheduler_tick() function 169
schedule_delayed_work() function 113—114
schedule_timeout() function 177—179
Scheduling algorithm 43—44
SCHED_FIFO real-time scheduling policy 59—60
sched_getaffinity() system call 61
sched_getscheduler() system call 61
sched_get_priority min() system call 61
sched_get_priority_max() system call 61
SCHED_RR real-time scheduling policy 59—60
sched_setaffinity() system call 61
sched_setparam() system call 61
sched_setscheduler() system call 61
sched_yield() system call 62
Scripts directory, kernel source tree 13
Sectors (block devices), relationship with buffers 236
Security directory, kernel source tree 13
Segmented address spaces versus flat address spaces 251
Self-generating documentation 338—339
sema MUTEX() function 146
Semaphores 143—145
Semaphores, acquiring 145
Semaphores, behaviors 143—144
Semaphores, binary 144
Semaphores, counting 144
Semaphores, creating 145
Semaphores, Dijkstra, Edsger Wybe 144
Semaphores, downing 145
Semaphores, dynamically created 145
Semaphores, functions 145
Semaphores, initializing 145
Semaphores, init_MUTEX() function 145
Semaphores, methods listing 146
Semaphores, mutex 144
Semaphores, reader-writer 147
Semaphores, reader-writer, declaring 146
Semaphores, reader-writer, lock conversion 147
Semaphores, releasing 146
Semaphores, statically declared 145
Semaphores, upping 145
Semaphores, versus spin locks 144 148
sema_init() function 146
Seq locks 150—151
Sequent DYNIX/ptx 2
settimeofday() system call 171
Setting kset fields for kobjects 296
SGI Irix 2
SHA hash, entropy pools, access 355
SHA hash, entropy pools, random number generator 355
Shannon entropy, random number generator 354
Shannon, Claude, entropy and random number generation 354
Shared interrupt handlers 81—82
Siblings, process family hierarchy 29—30
Signed_char data type 327—328
Singly linked lists 345
Slab allocator interface 198—200
Slab allocator interface, flags, SLAB_CACHE_DMA 199
Slab allocator interface, flags, SLAB_HWCACHE_ALIGN 198
Slab allocator interface, flags, SLAB_MUST_HWCACHE_ALIGN 199
Slab allocator interface, flags, SLAB_NO_REAP 198
Slab allocator interface, flags, SLAB_PANIC 199
Slab allocator interface, flags, SLAB_POISON 199
Slab allocator interface, flags, SLAB_RED_ZONE 199
Slab allocator interface, process descriptors, allocating 25—26
Slab allocator interface, task_struct structure example 200—201
Slab layer, caches 195
Slab layer, design of 195
Slab layer, inode data structure example 195—198
Slab layer, objects 195
Slab layer, origins of 194
Slab layer, tenets of 19d
SLAB_CACHE_DMA flag, slab allocator interface 199
SLAB_HWCACHE _ALIGN flag, slab allocator interface 198
SLAB_MUST_HWCACHE_ALIGN flag, slab allocator interface 199
SLAB_NO_REAP flag, slab allocator interface 198
SLAB_PANIC flag, slab allocator interface 199
SLAB_POISON flag, slab allocator interface 199
SLAB_RED_ZONE flag, slab allocator interface 199
Sleeping locks 143—145
Sleeping locks, behaviors 143—144
Sleeping locks, versus spin locks 144
Sleeping tasks 52—54
SMP (Symmetrical Multiprocessing) 334
SMP-safe code 125
smp_mb() function 155
smp_read_barrier depends() function 155
smp_rmb() function 155
smp_wmb() function 155
Soft real-time scheduling policies 60
Softirqs, interrupt handlers, bottom half mechanism 97—98
Softirqs, interrupt handlers, bottom half mechanism, executing 98—100
Softirqs, interrupt handlers, bottom half mechanism, handler registration 100—101
Softirqs, interrupt handlers, bottom half mechanism, index assignments 100
Softirqs, interrupt handlers, bottom half mechanism, raising 101
Softirqs, interrupt handlers, bottom halves 96
Softirqs, spin locks 141
software interrupts 96
Solaris (Sun) 2
Sound directory, kernel source tree 13
Source code, downloading 11
Source code, incremental patch 11
Source code, installing 12
Source code, kernel patches 12
Source code, tarball, installing 11—12
Source tree (kernel), root directories 12—13
Spawning multiple build jobs, kernel build process 15
Special data types 326
spin locks 137—140
Spin locks, basic uses 138
Spin locks, code defined 138
Spin locks, contended 137
Spin locks, debugging 139
Spin locks, duration held 137
Spin locks, non-recursive nature 138
Spin locks, reader-writer 141—142
Spin locks, reader-writer, listing of methods 142—143
Spin locks, softirqs 141
Spin locks, spin_lock_bh() function 140
Spin locks, spin_lock_init() function 140
Spin locks, spin_try_lock() function 140
Spin locks, tasklets 141
Spin locks, use in interrupt handlers 138—139
Spin locks, versus semaphores 148
spin _is_locked() function 140
Spinning processes 46
spin_lock() function 140
spin_lock_bh() function 140
spin_lock_init() function 140
spin_lock_irq() function 139 140
spin_lock_irqsave() function 140
spin_lock_irqstore() function 139
spin_trylock() function 140
spin_try_lock() function 140
spin_unlock() function 140
spin_unlock_bh() function 140
spin_unlock_irq() function 139—140
spin_unlock_irqrestore() function 140
| spin_unlock_irqstore() function 139
Stable kernel 8 11
Stable kernel, maintenance 341
Stacks, kernel, small, fixed-size 19—20
Stacks, memory, static allocations 201—202
Starving processes 52
States of processes, manipulating 29
Static priority-based scheduling 50
Statistics, debugging 318—319
Status, interrupt system 91—92
Storing process descriptors 26—27
Struct kobj type 295
Struct kobject 294
Struct ksets 295
Struct subsystems 295
Structure initializers 340
Structures, padding in data alignment 329—330
Submitting, bug reports 341—342
Submitting, patches 343
Subscribing to Linux Kernel Mailing List (LKML) 335
Subsystems (ksets) 294
Sun Solaris 2
Superblock object (VFS) 212—217
Supervisor (operating systems) 4
Sychronization 124—125
Symmetrical multiprocessing 7
Symmetrical multiprocessing, introduction of 119
Symmetrical multiprocessing, portability 334
Synchronization 120 130
Synchronization, atomic operations, bitwise 134—136
Synchronization, atomic operations, increments 131
Synchronization, atomic operations, integers 132—134
Synchronization, atomic operations, interfaces 131
Synchronization, atomic operations, supported architectures 131
Synchronization, barriers 153—155
Synchronization, completion variables 148—149
Synchronization, critical regions, ATM processing example 120—122
Synchronization, kernel 20
Synchronization, locks, Big Kernel Lock (BKL) 149—150
Synchronization, locks, data versus code 139
Synchronization, locks, semaphores 143—147
Synchronization, locks, semaphores versus spin locks 148
Synchronization, locks, seq locks 150—151
Synchronization, locks, spin locks 137—143
Synchronization, locks, spin locks versus semaphores 148
Synchronization, race conditions, ATM processing example 120—122
Synchronous interrupts 76
syscalls see "System calls"
Sysfs file system (kobjects), adding 300
Sysfs file system (kobjects), dentry variable 298
Sysfs file system (kobjects), device topology 298—299
Sysfs file system (kobjects), devices directory 299
Sysfs file system (kobjects), file attributes 300—301
Sysfs file system (kobjects), file attributes, conventions 302—303
Sysfs file system (kobjects), file attributes, creating 301—302
Sysfs file system (kobjects), file attributes, destroying 302
Sysfs file system (kobjects), HAL (hardware abstraction layer) 299
Sysfs file system (kobjects), removing 300
Sysfs file system (kobjects), root directories 298—299
Sysfs file system (kobjects), tile additions 300
syslogd daemon 311
SysRq (system request) key, commands 315—316
system calls 4
System calls, accessing 65
System calls, accessing from user-space 72—73
System calls, API (Application Programming Interface) 64
System calls, arguments 65
System calls, behaviors 65
System calls, binding 71—72
System calls, C library 64
System calls, C library, accessing from user-space 72—73
System calls, context 70
System calls, correct, denoting 67
System calls, handlers 66
System calls, handlers, denoting correct calls 67
System calls, implementation 68
System calls, implementation, alternatives 74
System calls, implementation, pros and cons 73—74
System calls, kernel 64
System calls, multiplexing 68
System calls, numbers 65—66
System calls, open() 209
System calls, parameter passing 67
System calls, parameters, verifying 68—70
System calls, performance 66
System calls, POSIX 64
System calls, purpose of 63
System calls, read() 209
System calls, return values 65
System calls, scheduler 60—62
System calls, scheduler, processor time, yielding 62
System calls, sched_getaffinity() 61
System calls, sched_getparam() 61
System calls, sched_getscheduler() 61
System calls, sched_get_priority_max() 61
System calls, sched_get_priority_min() 61
System calls, sched_setaffinity() 61
System calls, sched_setparam() 61
System calls, sched_setscheduler() 61
System calls, sched_yield() 62
System calls, settimeofday() 171
System calls, side effects 65
System calls, time() 171
System calls, write() 209
System calls, yield() 62
System timer 157—158 167
System uptime 157—158
system_call() function 67
Tarball, distribution formats 11—12
Tarball, uncompressing 11—12
TASK INTERACTIVEO macro, use in timeslices 52
Task list, process descriptors 24
Task queues 95—96
task rq_unlock() function 45
Tasklets 97
Tasklets, interrupt handlers (bottom half mechanism) 101
Tasklets, interrupt handlers (bottom half mechanism), declaring 104
Tasklets, interrupt handlers (bottom half mechanism), disabling 105
Tasklets, interrupt handlers (bottom half mechanism), ksoftirqd threads 105—107
Tasklets, interrupt handlers (bottom half mechanism), old BH interface 107
Tasklets, interrupt handlers (bottom half mechanism), removing 105
Tasklets, interrupt handlers (bottom half mechanism), scheduling 102—105
Tasklets, interrupt handlers (bottom half mechanism), structure of 102
Tasklets, interrupt handlers (bottom half mechanism), writing 104
Tasklets, spin locks 141
tasklet_action() function 103
tasklet_disable() function 105
tasklet_disable_nosync() function 105
tasklet_enable() function 105
tasklet_hi action() function 103
tasklet_hi_schedule() function 102
tasklet_kill() function 105
tasklet_schedule() function 102—105
Tasks 24 see
Tasks, blocked 52—54
Tasks, parentless 37—38
Tasks, runnable state versus sleeping state 50
Tasks, sleeping 52—54
Tasks, waking up 53—54
TASK_INTERRUPTIBLE state 27
task_rq_lock() function 45
TASK_RUNNING Mate 27
TASK_STOPPED state 28
task_struct structure, slab allocator interface 200—201
task_timeslice() function 51
TASK_UNINTERRUPTIBLE state 28
TASK_ZOMBIE state 28
Temporal locality, disk cache 269
Temporary mappings, high memory 203—204
terminating processes 35—38
|
|
|
Реклама |
|
|
|