home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / arch / 10978 < prev    next >
Encoding:
Text File  |  1992-11-20  |  3.1 KB  |  60 lines

  1. Newsgroups: comp.arch
  2. Path: sparky!uunet!zaphod.mps.ohio-state.edu!sample.eng.ohio-state.edu!purdue!decwrl!adobe!usenet
  3. From: zstern@adobe.com (Zalman Stern)
  4. Subject: Re: DEC Alpha architecture issues
  5. Message-ID: <1992Nov21.011653.24554@adobe.com>
  6. Sender: usenet@adobe.com (USENET NEWS)
  7. Organization: Adobe Systems Incorporated
  8. References: <By0xy0.FsA.2@cs.cmu.edu>
  9. Date: Sat, 21 Nov 1992 01:16:53 GMT
  10. Lines: 48
  11.  
  12. In article <By0xy0.FsA.2@cs.cmu.edu>  writes:
  13. > woodacre@mips.com (Michael Woodacre) writes:
  14. >     [ in reference to PALcode ]
  15. > >Can you explain how this is different from kernel code with interrupts
  16. > >disabled on any other risc processor?
  17. > Think of it as a supervisor state. This state doesn't just have
  18. > interrupts disabled:  it also has direct access to a large variety of
  19. > implementation-specific internal registers. For example, TLB reloads
  20. > are done by PALcode, whereas the "normal" code in the OS need only
  21. > know architectural things (things that remain constant across
  22. > implementations). 
  23.  
  24. This is effectively provided by the coprocessor 0 enable bit on a MIPS  
  25. architecture machine. (Which is probably ignored in kernel mode but not  
  26. supervisor mode or vice-versa (I can never remember which is which).) In any  
  27. event, it is a reliability/robustness issue not a functionality issue. I can  
  28. write my kernel to not use any of the protected features except in a small  
  29. set of routines through an architected interface. (And in fact RISC/OS on  
  30. MIPS platforms did this for many things because the coprocessor 0  
  31. functionality is quite different on the various R-series implementations.)
  32.  
  33. > Also, PALcode can be entered from user state - you don't need to do a
  34. > system call, with its heavy-duty state-change overheads.
  35.  
  36. This is an implementation issue. (And certainly if you spec a  lot of  
  37. lightweight primitive operations via sys-or-PAL calls, you better make them  
  38. fast.) The only significant difference between MIPS syscall and Alpha  
  39. PALcall in terms of speed is that PALcall has many exception vectors where  
  40. you need some dispatch code on the MIPS. (Anybody have cycle counts?) Even  
  41. this is not an architectural issue. I could implement an Alpha processor  
  42. with a single exception vector and I could implement a MIPS processor with  
  43. 16 million of them (or so). (And there's the 'ol RISC argument that the  
  44. single vector might be faster. Supposedly Cray's only have one exception  
  45. vector though...)
  46.  
  47. The point I'm trying to make is that DEC's "Privelleged Architecture  
  48. Library" is probably a good abstraction but it doesn't require big changes  
  49. in hardware. (Nor is it all that original.) Also, it has a certain amount of  
  50. intellectual and logistical complexity. There's a layer between the OS  
  51. writer and the hardware. You must understand the layer, and somebody must  
  52. provide the code for the layer. If that interface is not a good match to  
  53. your needs there's going to be a problem.
  54. --
  55. Zalman Stern           zalman@adobe.com            (415) 962 3824
  56. Adobe Systems, 1585 Charleston Rd., POB 7900, Mountain View, CA 94039-7900
  57.   "Yeah. Ask 'em if they'll upgrade my shifters too." Bill Watterson
  58.