An interesting operating systems/ computer architecture question

Discussion in 'Programming' started by threeonethree, Aug 30, 2009.

Thread Status:
Not open for further replies.
  1. threeonethree

    threeonethree Member

    Joined:
    May 31, 2007
    Messages:
    104
    Likes Received:
    0
    Trophy Points:
    16
    Why is the interrupt vector stored in the low memory? can it be stored in high memory?

    This is the question my teacher asked the very first day in operating systems class.

    I studied whole day but cudnt come to a conclusion .. i think its because the high memory is used for user space.. But then the question arises why is high memory used for userspace and why is low memory for interrupt vector and o/s?
     
  2. infra_red_dude

    infra_red_dude Wire muncher!

    Joined:
    Nov 5, 2003
    Messages:
    6,156
    Likes Received:
    5
    Trophy Points:
    0
    Bingo! You got it :)

    Consider 2 machines, one with a total virtual memory of 512K and another with 256K (hypothetical scenario). Lets say the interrupt vectors are stored in the higher end - 512K. On the first machine, its fine but what on the second machine? The IVs don't exist! Isn't that a problem??? A flaw???

    This was true during the olden days of 8-bit and 16-bit processors. These guys looked into the future and said, surely the memory addressing capacity will increase so lets make sure that the IVs are stored in a safe place which is future proof and hence the tradition. Most of the IVs and pointers are stored on the lower end of the address space. This is also the reason why the system space (or the kernel space) is at the start of the address space.
     
Thread Status:
Not open for further replies.

Share This Page