Final answer:
In a virtual memory system with 16-bit virtual addresses and a 1kb page size, the offset is 10 bits and the virtual page number is 6 bits. The size of the page table is 256 bytes.
Step-by-step explanation:
In a virtual memory system with 16-bit virtual addresses and a page size of 1kb, we can determine the number of bits used for the offset and virtual page number. The offset is calculated by taking the logarithm base 2 of the page size (in this case, 1kb or 1024 bytes) which gives us 10 bits. Since the virtual address is 16 bits, we can subtract 10 bits from it to get the number of bits used for the virtual page number, which is 6 bits.
Now, let's calculate the size of the page table. The page table needs to store information for each possible virtual page. Since we have 6 bits for the virtual page number, we have a total of 2^6 = 64 possible virtual pages. Assuming 4 bytes per page table entry, the size of the page table can be calculated as follows: 64 virtual pages * 4 bytes per page table entry = 256 bytes.