You are on page 1of 2

Peter Lim

Chapter 8

8.9 Explain the difference between internal and external fragmentation.

- Space can be wasted when certain areas of memory are allocated and these two ways are
internal fragmentation and external fragmentation
- Internal fragmentation is the wasted space inside of an allocated area of a memory
- External fragmentation is the wasted space outside the allocated area of memory

8.12 Most systems allow a program to allocate more memory to its address space during
execution. Allocation of data in the heap segments of programs is an example of such allocated
memory. What is required to support dynamic memory allocation in the following schemes?
a. Contiguous memory allocation

- Program cannot grow its own allocated memory space


- The whole program needs to be relocated

b. Pure segmentation

- It is similar to Contiguous memory allocation. The whole program needs to be relocated

c. Pure paging

- Incremental allocation of new pages is possible in this scheme without requiring


relocation of the programs address space.

8.14 On a system with paging, a process cannot access memory that it does not own. Why? How
could the operating system allow access to other memory? Why should it or should it not?

- There is no way for a process to refer to a page it does not own because the page will not
be in the page table. To allow such access, an operating system simply needs to allow
entries for non-process memory to be added to the process's page table
8.15 Explain why mobile operating systems such as iOS and Android do not support swapping.

- Space constraint and flash memory are the reasons why swapping is not supported
- Flash memory supports a limited number of write operations

8.17 Compare paging with segmentation with respect to how much memory the address
translation structures require to convert virtual addresses to physical addresses.

- Paging requires more memory overhead to maintain the translation structures


- Segmentation requires just two registers per segment
- One to maintain the base of the segment
- Other to maintain the extent of the segment
- Paging on the other hand requires one entry per page
and this entry provides the physical address inwhich the page is located

8.18 Explain why address space identifiers (ASIDs) are used.

- Address space identifiers spots each process and at the same time, protection is
guaranteed in that process
- An ASID allows the TLB to contain entries for several different processes simultaneously

8.26 Why are segmentation and paging sometimes combined into one scheme?

- It is to improve upon each other


- Segmented paging is most helpful when the page table is large
- Paged segmentation handles the case of having very long segments that require a lot of
time for allocation
- By doing this, wasted memory is reduced because of external fragmentation

You might also like