Hello! I have a question with the task:

Three procedures A, B and C, located in different files, were combined into one program using a linker and loaded into memory. Their sizes are 900, 1000 and 1300 machine words, respectively. Consider the following memory management schemes:

a) Paging organization (without segmentation). The page size is 1000 words, the page table takes up one page.

b) Segment organization (without pages). For each procedure uses its own memory segment. The segment table takes 1000 words.

c) Segment-page organization. The combination of information from a) and b).

For all three organization schemes, determine the amount of memory required by the program to load it fully into RAM (that is, to load the procedures and all the necessary tables).

I read about these organizations, but I don’t quite understand what to make at the decision. I would appreciate any tips

  • 2
    I do not know the theory, especially how it is taught. But I can assume that with the paging organization, the total volume of the program requires a rounded top up to the page size (4000) + page table. With a segment, just the size of the program (3200) + table of segments. Option C 4000 + 2 tables, if each segment should not be aligned to the page size. True, in practice, the program still needs a data segment and possibly a stack, but in your theory, it seems that it’s customary not to remember. And in practice, the segments can be limited to the same multiplicity of what size - Mike
  • Push away from your training manual. In real life, in addition to the library procedures procedures, there is also a start / finalizing code, global variables, etc., and the procedures are not required to be loaded into memory exactly one by one. - VladD

0