As already described in the previous article, the relocation register is added to the base register in each address of the user process when sent to memory. In this memory mapping there is a limit registers consisting of the logical address value range. With the limit registers and relocation registers, each logical address must be smaller than the limit register. Process mapping carried out by the MMU (Memory Management Unit) by adding up the value of relocation to a logical address register. Which has been mapped address is then sent to memory. In the picture below we can see that a process that has a base and limit registers 30 004 12 090 registers will be mapped to physical memory with the first according to the base address registers (30 004) and ends at address (30004 + 12090 = 42094).
![]() |
Base and limit register |
When the CPU scheduler selects a process to be executed, he will enter a relocation register and also limit its registers. Register relocation allows the operating system to resize partitions in memory dynamically. For example, the code and buffers are allocated to drivers equipment in the operating system can be removed from memory if the equipment is rarely used. Such code is called a transient operating system code, therefore this code can "come and away "from memory depending on when he is needed. So the use of this code can be transient change the size of the operating system during program execution takes place.
No comments:
Post a Comment