Operations on Address Spaces

Address spaces connect backing stores with memory segments. Not only data structures but also functions are needed to perform the transfer operations between the two. Because address spaces can be used in various combinations, the requisite functions are not defined statically but must be determined according to the particular mapping with the help of a special structure that holds function pointers to the appropriate implementation.

4To be more accurate, the insert operations are embedded between radix_tree_preload() ... and radix_tree_ preload_end(). The use of per-CPU variables means that kernel preemption (see Chapter 2) must be disabled and then enabled again upon completion of the operation. This is currently the only task of radix_tree_preload_end.

As demonstrated when discussing struct address_space, each address space contains a pointer to an address_space_operations instance that holds the above function list:

Continue reading here: Info

Was this article helpful?

0 0