Mauerer bindex.tex V1 - 09/05/2008 9:44am Page 1298
C programming(continued)
C programming(continued)
reference counters, 1200–1201
simplification as optimization technique,
1185–1187
source code to machine program process,
1176–1180
summary, 1221
caches/caching
block devices options, 950
buffer cache.Seebuffer cache
comparing page cache and buffer cache, 20
freeing memory by reducing kernel cache,
1030
hot-n-cold pages, 183–186
initializing during system startup,
1228–1232
page cache.Seepage cache
pros/cons of, 949
shrinking, 1092–1095
slab cache.Seeslab cache
swap cache.Seeswap cache
call table, system calls,834–835
canonical addresses, 189
central control, data synchronization,
1000–1002
CFS (completely fair scheduling), 106–117
data structures, 106–107
handling new tasks, 116–117
handling periodic tick, 114–115
latency tracking, 110–111
overview of, 38, 106
queue manipulation, 112–113
selecting next task, 113–114
virtual clock, 107–110
wake-up preemption, 115–116
character devices
accessing, 397
block devices compared with, 412–413
opening device files, 409–411
range database for, 404–405
reading from/writing to device files, 412
registering, 405–406
representing, 409
standard file operations, 407–408
types of peripheral devices, 17–18
checksums
calculating, 1137
module methods, 512–513
chicken-and-egg problem, slab allocator,
270
child processes
resource management, 443
task relationships, 62
chip-level hardware encapsulation,
interrupts handlers, 854
classes, scheduler, 89–91
classic directory allocation, Ex2, 634
classical mutexes, 362–363
classical timers.Seelow-resolution timers
cleanup functions, modules, 492–493
clock bases, 921
clock event devices
defining, 914–916
overview of, 896, 908
clock sources, 911–913
abstraction and, 895
defining, 911–913
overview of, 908
working with, 913
clone
executing system calls and, 65
process duplication with, 64
clone
overview of, 47
PID (process identification) and, 54
code
code generation compiler phase,
1175–1176
coding styles and, 1274–1276
dead code elimination, 1190
documenting, 1276–1277
spinlock protection and, 354–355