home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / comp / arch / 11941 < prev    next >
Encoding:
Text File  |  1992-12-24  |  3.8 KB  |  74 lines

  1. Newsgroups: comp.arch
  2. Path: sparky!uunet!wupost!micro-heart-of-gold.mit.edu!uw-beaver!kolding
  3. From: kolding@cs.washington.edu (Eric Koldinger)
  4. Subject: Re: IBM AS/400 is the world's slowest computer
  5. Message-ID: <1992Dec25.033918.3246@beaver.cs.washington.edu>
  6. Sender: news@beaver.cs.washington.edu (USENET News System)
  7. Organization: Computer Science & Engineering, U. of Washington, Seattle
  8. References: <Bzs3zn.43H.2@cs.cmu.edu> <1992Dec24.203452.22045@beaver.cs.washington.edu> <BzsIFK.EMF.2@cs.cmu.edu>
  9. Date: Fri, 25 Dec 92 03:39:18 GMT
  10. Lines: 62
  11.  
  12. In article <BzsIFK.EMF.2@cs.cmu.edu> lindsay+@cs.cmu.edu (Donald Lindsay) writes:
  13. >kolding@cs.washington.edu (Eric Koldinger) writes:
  14. >>The AS/400 uses a tagged memory-system and tagged registers to
  15. >>protect capabilities (or pointers, as they call them).  There are
  16. >>also a number of operations that only take place on capabilities.
  17. >>This makes it rather unlikely that they'd use a stock micro-processor
  18. >>from the workstation group.
  19. >
  20. >I don't think that RPG programmers deal with capabilities, so, the
  21. >stock microprocessor needs only a stock RPG.
  22.  
  23. RPG doesn't use the capability features, but OS/400 certainly does.  Don't
  24. forget that a computer is more than just the applications that it runs.  RPG
  25. coulde easily be implemented on any machine out there, but you wouldn't call it
  26. an AS/400.  Just because I can run C on it, I don't call it a PDP-11, eh?
  27.  
  28. >What other languages are of importance on the AS/400? What is the OS
  29. >written in, and are capabilities actually explicit at the source
  30. >level?
  31.  
  32. Last I checked (4 years ago), the AS/400 supported RPG III, COBOL (I think),
  33. Pascal, PL/I, and they were coming out with a C compiler.  You don't generally
  34. use the capabilities at the applications level, and the languages provide no
  35. real ability to manipulate capabilities (I've often wondered exactly what C
  36. ended up looking like on that machine, as pointers and ints are definitely not
  37. the same, and casting an int to a pointer makes no sense).
  38.  
  39. The OS (and the various levels of "microcode", which are actually what most
  40. people would consider to be part of the OS) are written in IBM proprietary
  41. languages that all start with the letters PL/.   Depending on which level of
  42. the machine you're programming for, the language may or may not be able to
  43. manipulate capabilities explicitly.  Having never actually used these
  44. languages, I can't say more than that.
  45.  
  46. >My experience with software-based capabilites has been positive, so
  47. >it's not clear to me, offhand, that a stock RS/6000 is out of the
  48. >question.
  49.  
  50. There's a fundamental difference between hardware and software capabilities.
  51. Software capabilities can be forged, however improbable.  For example, Amoeba
  52. capabilities are just long integers (32, 64 bits?).  You can forge one, but I
  53. wouldn't bet on it.  Hardware capabilities are secure and cannot be forged.  On
  54. the AS/400 there is no way to turn an integer into a capability, even for the
  55. OS (although certain layers of the "microcode" probably can).  Software
  56. capabilities also do not (efficiently) support the fine grained protection of
  57. hardware capabilities.  On an architecture like the AS/400, EVERY memory
  58. reference is checked against a capability, and individual bytes can be
  59. protected.  Software capabilities are typically used to protect larger grained
  60. objects, and are only checked when that object is "bound" to your protection
  61. domain.
  62.  
  63. A stock RS/6000 could certainly run most (all?) AS/400 applications, probably
  64. faster than an AS/400.  It couldn't, however, (efficiently) support the AS/400
  65. OS, or the full architectural specification.
  66.  
  67. Someone from IBM Rochester might want to correct me if my memory is failing
  68. here.  Merry Christmas...
  69. -- 
  70.                     |   Eric Koldinger
  71.     Your tax dollars at play.    |   University of Washington
  72.                  |   Department of Computer Science
  73.                 |   kolding@cs.washington.edu
  74.