I am reading Robert Love's linux kernel development book. In that, book he is mentioning about register-impaired architecture. I don't know what is register-impaired architecture. Kindly explain me, if anyone knows about this.

Thanks in advance.

  • xyz-impaired person is somebody that cannot do xyz or does not have enough of xyz .... so i am guessing that register-impaired device does not have enough registers ... such device would have to copy data into and out of general memory, usually by way of a stack – jsotola Jun 26 '19 at 6:17

The context can make it somewhat clearer (emphasis mine):

This allowed architectures with few registers, such as x86, to calculate the location of the process descriptor via the stack pointer without using an extra register to store the location.With the process descriptor now dynamically created via the slab allocator, a new structure, struct thread_info, was created that again lives at the bottom of the stack (for stacks that grow down) and at the top of the stack (for stacks that grow up).3

3 Register-impaired architectures were not the only reason for creating struct thread_info.

The author is just joking about the architectures like x86 having few registers. "X-impaired" ~ X is diminished compared to others. (For example, "financially impaired" = does not have enough money.)

  • 1
    If you want yo give some context: that was written at the time of 32bit x86 -- x86-64 is no longer register impaired, and the extra registers were a big drive for its adoption, probably more than the direct access to a 64bit address space. – pizdelect Jun 26 '19 at 6:56
  • Yes, that's often mentioned as one of the plus points of x86-64 in the recent mess of Ubuntu removing support for 32-bit x86. – muru Jun 26 '19 at 6:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.