In the earlier operating system, memory management was done by simple partitioning technology, and the memory partition was a continuous allocation method.
1. Single Continuous distribution
Can only be used for single-user, single-tasking operating systems.
Divides the memory into the system area and the user area two parts, the system area only provides to the operating system to use, usually is placed in the memory low address part;
The user area refers to all the memory space except the system area, which is provided to the user
2. Fixed partition allocation
The system divides these user main memory spaces into several fixed-size areas, each of which is used by a program, and the partition size can be equal or unequal.
There are two questions: 1) The program may be too large to fit into any one partition.
2) Low utilization of main memory, when the program is less than the fixed partition size, easy to produce internal debris
3. Dynamic Partition allocation
When the process enters memory, partitions are created dynamically based on the size of the process, making the partition exactly the size of the process
Easy to generate external debris (can be solved by compact technology)
Allocation policy for dynamic partitioning:
1) First adaptive algorithm: Free partition in order to increase the number of addresses in the chain, allocate memory in order to find, find the size can meet the requirements of the first free partition
2) Best fit algorithm: Free partition increments by capacity to form a partition chain to find the first free partition to meet the requirements
3) Worst-fit algorithm: The free partition is linked in a descending order of capacity, finding the first free partition that satisfies the requirement, that is, selecting the largest partition
4) Cyclic first-time adaptation algorithm: evolved from the first adaptation algorithm, the difference is that the memory is allocated from the end of the last search to continue to find
Continuous Distribution Management Mode