Prev | Current Page 309 | Next

Carl Reynolds and Paul Tymann

"Schaum's Outline of Principles of Computer Science"


In a dynamic multiprogramming environment, with processes of different sizes starting and terminating all
the time, it became important to make wise choices about how to allocate memory. It was all too easy to end up
with processes scattered throughout memory, with small unallocated blocks of memory between, and no blocks
of memory large enough to run another program. For example, a ready program might require 12K of space,
and there might be more than that much unused memory, but the unused memory might be scattered widely,
with no one block being 12K or larger.
Unusable memory scattered between allocated partitions is called ???external fragmentation.??? On the other
hand, unused memory within an allocated block is called ???internal fragmentation.??? Internal fragmentation
results because the OS allocates memory in rather large units, usually in ???pages??? of 1024 to 4096 memory
addresses at a time. Almost always the last page allocated to a process is not entirely used, and so the unused
portion constitutes internal fragmentation.
Unused memory blocks are called ???holes,??? and much research was devoted to finding the most efficient
way to allocate memory to processes. The ???best fit??? approach sought the smallest hole that was big enough for
the new process.


Pages:
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
Everest Poker Bonus Kod spolszczenia poker w internecie Wisła noclegi płyta drogowa