home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   alt.os.development      Operating system development chatter      4,255 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 2,780 of 4,255   
   Joe Monk to All   
   Re: PDOS/86   
   12 Aug 21 11:31:17   
   
   From: joemonk64@gmail.com   
      
   > > The S/370 has "base registers". These are under    
   > > application control - not managed by the OS. I    
   > > had previously thought you meant that segment    
   > > registers and base registers are classified as    
   > > "relocation registers" but now I'm not sure.   
      
   > x86 and S/370 have no relocation registers. In case    
   > of 360 it is not clear why. One guess is that    
   > IBM thought that "more is better" and assumed that    
   > base registers will be more flexible than relocation    
   > register. Or they underestimated need to relocate    
   > code. 8086 probably was intended to run single    
   > program, so no need for relocation. In case    
   > of 8086 they added segmentation, and having    
   > _both_ segmention and relocation would be    
   > a bit odd.   
      
   S/360 and later have no relocation registers because they dont need them.   
   Remember the only 360 to have DAT was the model 67.   
      
   A base address merely refers to an address within the address space of the   
   problem program (CSECT), or to a data area (DSECT).   
      
   If you look at S/360 POP, you will see:   
      
   Base Address (B) is a 24-bit number contained in a general register specified   
   by the program in the B field of the instruction. The B field is included in   
   every address specification. The base address can be used as a means of static   
   relocation of    
   programs and data. In array-type calculations, it can specify the location of   
   an array and, in record-type processing, it can identify the record. The base   
   address provides for addressing the entire main storage. The base address may   
   also be used for    
   indexing purposes.   
      
   But now look at S/370 POP:   
      
   The base address (B) is a 24-bit number contained in a general register   
   specified by the program in a four-bit field, called the B field, in the   
   instruction. Base addresses can be used as a means of independently addressing   
   each program and data area. In    
   array-type calculations, it can designate the location of an array, and, in   
   record-type processing, it can identify the record. The base address provides   
   for addressing the entire storage. The base address may also be used for   
   indexing.   
      
   See that subtle, but significant change?   
      
   "The base address can be used as a means of static relocation of programs and   
   data."   
      
   -vs-   
      
   "Base addresses can be used as a means of independently addressing each   
   program and data area."   
      
   Joe   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca