home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / arch / 10983 < prev    next >
Encoding:
Internet Message Format  |  1992-11-20  |  3.4 KB

  1. Path: sparky!uunet!zaphod.mps.ohio-state.edu!cs.utexas.edu!sun-barr!decwrl!deccrl!news.crl.dec.com!dbased.nuo.dec.com!nntpd.lkg.dec.com!sousa.tay.dec.com!human.enet.dec.com!supnik
  2. From: supnik@human.enet.dec.com (Bob Supnik)
  3. Newsgroups: comp.arch
  4. Subject: Alpha AXP PALcode
  5. Summary: PALcode purposes
  6. Keywords: AXP, PALcode
  7. Message-ID: <2249@sousa.tay.dec.com>
  8. Date: 20 Nov 92 22:05:19 GMT
  9. Sender: newsa@sousa.tay.dec.com
  10. Organization: Digital Equipment Corporation
  11. Lines: 56
  12.  
  13.  
  14. The PAL mechanism in the AXP architecture was intended to allow for
  15. abstraction of privileged operations such as memory management, interrupts,
  16. exceptions, privileged instructions, system start, and system halt, so that
  17.  
  18. a) operating systems would see consistent operations from chip to chip,
  19. b) the chips would be free to vary the underlying hardware, and
  20. c) the set of privileged functions could vary among operating systems.
  21.  
  22. To this end, the architecture defines that events relating to memory
  23. management, interrupts, exceptions, privileged instructions, system start,
  24. and system halt are handled by a library or layer of code, called the
  25. Privileged Architecture Library.  Using either standard or special resources
  26. in the chip, PAL must be able to provide the service or handling required
  27. by the operating system model.
  28.  
  29. As a mechanism, PAL typically is implemented as an orthogonal 'state' to
  30. the normal protection model.  When in PAL 'state', the system:
  31.  
  32. a) may have access to extra instructions, which will be implementation specific
  33. b) may have access to special registers, which will be implementation specific
  34. c) operates with interrupts disabled
  35. d) operates without (further) instruction stream TLB misses or exceptions
  36.  
  37. PAL differs from a kernel mode exception in that no transition of either the
  38. visible memory management state or the visible interrupt state.  Loads and
  39. stores are checked against the prevailing mode at the time of invoking PAL,
  40. not against kernel mode.  The interrupt system can be queried for pending
  41. interrupts. 
  42.  
  43. PAL is typically provided as part of the console/bootstram ROM.  Thus, it
  44. is loaded into memory during boot time and appears to the operating system
  45. as part of the 'BIOS' or instruction set.
  46.  
  47. The advantages of PAL are:
  48.  
  49. a) the large number of implementation specific registers needed to control
  50.    the chip or recover from errors are hidden from the operating system
  51. b) privileged facilities can be tailored to an operating system's natural
  52.    model or preferences
  53. c) underlying hardware for privileged operations can be changed dramatically
  54.    from implementation to implementation without changing the operating system
  55. d) it provides the right control points to virtualize the architecture without
  56.    ring compression, even for 4-ring software systems like VMS
  57.  
  58. Some examples of b)  In VMS, many VAXisms such as REI and interlocked queues
  59. are provide via PALcode.  The fact that PAL routines run in the protection
  60. mode of the caller, rather than in kernel, makes this emulation feasible.
  61. In Windows NT, the operating system has a 'hardwired' belief that page table
  62. entries are 32b wide.  In Alpha AXP, they are 64b wide.  Since the TLB
  63. service routine is in PAL, dynamic expansion from 32b to 64b is done there,
  64. and extensive source code changes were avoided.
  65.  
  66. Bob Supnik    >Supnik@human.enet.dec.com
  67.         >All opinions expressed are those of a hardline microcoder
  68.         >and do not reflect those of Digital Equipment Corporation
  69.