home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #18 / NN_1992_18.iso / spool / comp / sys / acorn / 8294 < prev    next >
Encoding:
Internet Message Format  |  1992-08-20  |  5.5 KB

  1. Path: sparky!uunet!stanford.edu!agate!ucbvax!upjomon.usl.com!lithgow
  2. From: lithgow@upjomon.usl.com (Malcolm Lithgow)
  3. Newsgroups: comp.sys.acorn
  4. Subject: OS differences and improvements (Was Re: new PC's, what's happening acorn?)
  5. Message-ID: <9208210141.AA26129@ucbvax.Berkeley.EDU>
  6. Date: 21 Aug 92 00:14:48 GMT
  7. Sender: daemon@ucbvax.BERKELEY.EDU
  8. Lines: 113
  9.  
  10. Berkeley still hasn't set up comp-sys-acorn-advocacy -- are they ever
  11. going to?
  12.  
  13. [In message "Re: new PC's, what's happening acorn?", Joerg Scheurich writes:]
  14. >In article <9208170409.AA05185@ucbvax.Berkeley.EDU> lithgow@upjomon.usl.com (Malcolm Lithgow) writes:
  15. >>Of course, Acorn's UNIX is much more light-weight, but UNIX is simply too
  16. >>heavy for any single-user work. And what advantages does it offer? 
  17. >
  18. >1. It supports a orthogonal multitasking:
  19. >   (processes are rather independend from others eg. try to use the 
  20. >   change-directory-command in a few taskwindows ...)
  21.  
  22. The only time I find myself needing a working directory is when I wish to
  23. do a compilation, or some such task. The new DDE allows multiple working
  24. directories -- one per task, in fact, through that new module that also
  25. gives us more-than-256-byte command lines.
  26.  
  27. >2. virtual memory system: 
  28. >   With it you can handle big data very simple, cause the length of your
  29. >   arrays (and programcode itself) is not restricted by the available 
  30. >   RAM-memory.
  31.  
  32. I am rapidly coming to regard OS-level virtual memory as a *disadvantage*
  33. rather than an advantage.
  34.  
  35. Why? Simply because (a) OS-level virtual memory is very stupid, and slows
  36. down memory accesses enormously, when it is exercised, (b) because having
  37. such VM available encourages programmers to use it, which then exercises
  38. VM, which then slows down your machine.
  39.  
  40. What is the solution?
  41.  
  42. I'm not claiming that VM is bad -- it is very useful.  What I am claiming
  43. is that it should not be built in at the OS level, where nothing is known
  44. about the data being manipulated (in conventional OS's, such as UNIX),
  45. and so no optimizations can be made using knowledge of the access
  46. patterns.
  47.  
  48. To solve this, the development environment(s) for an OS should include
  49. libraries of common data structures (standard arrays, matrices,
  50. associative arrays, tagged tables, lists, stacks, text buffers, draw
  51. buffers, frame buffers, etc.) and these libraries should include
  52. optimized VM code, which can make use of the knowledge of the behaviour
  53. of the data. Also, the compiled code itself should also have its own VM
  54. manager, which can make use of information generated at, or after,
  55. compile time.
  56.  
  57. Problems you may raise:
  58.  
  59. This makes the libraries non-portable. Big deal! Look at libc for UNIX,
  60. it is very non-portable already. For a quick port, you could base all
  61. your library code on the array library, and use it's simple (UNIX-style)
  62. VM. For a better port, you get better results.
  63.  
  64. The several different VM managers take up valuable memory. True, they
  65. each consume memory, but there is no need for them to be very large, and
  66. they should be able to share a lot of code, if written properly. And they
  67. should be shared libraries. I think the trade-off would be worth it.
  68.  
  69. Proof of concept:
  70.  
  71. Rob Pike wrote an editor for Plan-9, I believe, called red, or
  72. something.  He spent a lot of time developing a local VM system for this
  73. editor (unecessary, since Plan-9 already has VM), which apparently
  74. improved performance immensely (ie. orders of magnitude, where VM was
  75. involved).
  76.  
  77. >3. a lot of easy portable, freeware/shareware/Publicdomain software
  78. >   Just a example: did someone ported g++ or mtc to riscos ?
  79.  
  80. What's mtc? I think you're on a rather shaky limb here. My Arch (with a
  81. 20MB) hard disk has the GNU equivalents of all the useful UNIX utilities,
  82. and lots of extra stuff that UNIX doesn't have (such as windowing
  83. spreadsheets, draw packages, etc.). You are terribly misrepresenting the
  84. situation when you pick two of the rare packages that haven't been
  85. ported. (Of course, you could also include such things as mush, or elm,
  86. or less, in that list -- but why bother, since they are things that are
  87. not particularly useful under RISC OS -- has StrongEd been ported to
  88. UNIX?)
  89.  
  90. >4. Unix become a industrial standart for higher range computers.
  91. >   Compared with UNIX is RISCOS very exotic ...
  92.  
  93. So what?
  94.  
  95. Other than the fact that UNIX *has not* become a standard for any type of
  96. computer (have you ever tried to port programs from one version of UNIX
  97. to another, or examined the complexity added to free packages to make
  98. them more portable?), what benefit does UNIX being a standard give you?
  99.  
  100. If you want to stick to *real* standards then we should all be using MVS,
  101. or VMS for smaller systems (or DOS for unusable systems).
  102.  
  103. >There are a lot of advantages to have UNIX on every platform (maybe this is 
  104. >not true on the Commodore C64 ...)
  105.  
  106. Yeah? Name one. And don't tell me application portability, because it
  107. isn't an advantage for me, and neither is it much of an advantage for,
  108. say, large businesses, who merely want to transfer their data to the new
  109. system, and are going to have to retrain their employees, anyway (a small
  110. cost compared to their other outlay). And don't say reduced training
  111. costs -- UNIX would *increase* training costs over even a mix of Mac, and
  112. RISC OS (for example).
  113.  
  114. What the industry should be striving for (and, to my utter disgust,
  115. isn't) is standard data formats between all applications across all
  116. platforms. (Standard communication protocols are, thank goodness, being
  117. addressed.)
  118.  
  119. UNIX is a nice software development environment. Nothing more. But even
  120. at that I think RISC OS is better.
  121.  
  122. -Malcolm.  lithgow@usl.com  These are merely my opinions.
  123.