Memory management techniques Memory management (operating systems)




1 memory management techniques

1.1 single contiguous allocation
1.2 partitioned allocation
1.3 paged memory management
1.4 segmented memory management





memory management techniques
single contiguous allocation

single allocation simplest memory management technique. computer s memory, exception of small portion reserved operating system, available single application. ms-dos example of system allocates memory in way. embedded system running single application might use technique.


a system using single contiguous allocation may still multitask swapping contents of memory switch among users. versions of music operating system used technique.


partitioned allocation

partitioned allocation divides primary memory multiple memory partitions, contiguous areas of memory. each partition might contain information specific job or task. memory management consists of allocating partition job when starts , unallocating when job ends.


partitioned allocation requires hardware support prevent jobs interfering 1 or operating system. ibm system/360 used lock-and-key technique. other systems used base , bounds registers contained limits of partition , flagged invalid accesses. univac 1108 storage limits register had separate base/bound sets instructions , data. system took advantage of memory interleaving place called i bank , d bank in separate memory modules.


partitions may either static, defined @ initial program load (ipl) or boot time or computer operator, or dynamic, automatically created specific job. ibm system/360 operating system multiprogramming fixed number of tasks (mft) example of static partitioning, , multiprogramming variable number of tasks (mvt) example of dynamic. mvt , successors use term region distinguish dynamic partitions static ones in other systems.


partitions may relocatable using hardware typed memory, burroughs corporation b5500, or base , bounds registers pdp-10 or ge-635. relocatable partitions able compacted provide larger chunks of contiguous physical memory. compaction moves in-use areas of memory eliminate holes or unused areas of memory caused process termination in order create larger contiguous free areas.


some systems allow partitions swapped out secondary storage free additional memory. versions of ibm s time sharing option (tso) swapped users in , out of single time-sharing partition.


paged memory management

paged allocation divides computer s primary memory fixed-size units called page frames, , program s virtual address space pages of same size. hardware memory management unit maps pages frames. physical memory can allocated on page basis while address space appears contiguous.


usually, paged memory management, each job runs in own address space. however, there single address space operating systems run processes within single address space, such ibm i, runs processes within large address space, , ibm os/vs2 svs, ran jobs in single 16mib virtual address space.


paged memory can demand-paged when system can move pages required between primary , secondary memory.


segmented memory management

segmented memory memory management technique not provide user s program linear , contiguous address space. segments areas of memory correspond logical grouping of information such code procedure or data array. segments require hardware support in form of segment table contains physical address of segment in memory, size, , other data such access protection bits , status (swapped in, swapped out, etc.)


segmentation allows better access protection other schemes because memory references relative specific segment , hardware not permit application reference memory not defined segment.


it possible implement segmentation or without paging. without paging support segment physical unit swapped in , out of memory if required. paging support pages unit of swapping , segmentation adds additional level of security.


addresses in segmented system consist of segment id , offset relative segment base address, defined offset zero.


the intel ia-32 (x86) architecture allows process have 16,383 segments of 4gib each. ia-32 segments subdivisions of computer s linear address space, virtual address space provided paging hardware.


the multics operating system best known system implementing segmented memory. multics segments subdivisions of computer s physical memory of 256 pages, each page being 1k 36-bit words in size, resulting in maximum segment size of 1mib (with 9-bit bytes, used in multics). process have 4046 segments.








Comments

Popular posts from this blog

The Missionaries and the Congo Congo Free State propaganda war

Discography Tommy Denander

Fuji List of motion picture film stocks