You are asked to design the virtual memory system for a new operating system working on small mobile devices. The memory operates at 333 MHz with a word size of 4 bytes. Swapped pages are stored on a flash memory drive which has a latency of 0.24 ms and bandwidth of 40MB/s.
A typical device is expected to have physical memory of 16 MB. It is expected to run 8 programs simultaneously. Each of the programs has a 32 bit address space. The typical
program allocates 16MB of memory with a working set size of 1MB.
Each of these programs can experience a page fault at any moment. For user experience reasons, the OS can not spend more than 30ms in handling the page fault.
Using this information, select an appropriate page size and page table organization (if possible). Because of cost reasons, you must ensure that no more than 5% of the memory is used for page table storage.