home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #19 / NN_1992_19.iso / spool / comp / unix / bsd / 4731 < prev    next >
Encoding:
Text File  |  1992-08-26  |  8.8 KB  |  172 lines

  1. Newsgroups: comp.unix.bsd
  2. Path: sparky!uunet!cs.utexas.edu!sun-barr!ames!haven.umd.edu!darwin.sura.net!Sirius.dfn.de!math.fu-berlin.de!unidui!du9ds3!veit
  3. From: veit@du9ds3.uni-duisburg.de (Holger Veit)
  4. Subject: Re: WD Ethernet Card not found on warmboot
  5. References: <1992Aug21.171828.14323@doug.cae.wisc.edu> <1992Aug24.085511.21092@autelca.ascom.ch> <veit.714671205@du9ds3> <1992Aug25.035924.29631@fcom.cc.utah.edu> <veit.714724604@du9ds3> <1992Aug25.165542.5689@gateway.novell.com>
  6. Date: 26 Aug 92 14:50:09 GMT
  7. Reply-To: veit@du9ds3.uni-duisburg.de
  8. Organization: Uni-Duisburg FB9 Datenverarbeitung
  9. Sender: @unidui.uni-duisburg.de
  10. Message-ID: <veit.714840609@du9ds3>
  11. Lines: 159
  12.  
  13. In <1992Aug25.165542.5689@gateway.novell.com> terry@thisbe.npd.Novell.COM (Terry Lambert) writes:
  14.  
  15. >In article <veit.714724604@du9ds3>, veit@du9ds3.uni-duisburg.de (Holger Veit) writes:
  16. >|> In <1992Aug25.035924.29631@fcom.cc.utah.edu> terry@cs.weber.edu (A Wizard of Earth C) writes:
  17. >|> >In article <veit.714671205@du9ds3> veit@du9ds3.uni-duisburg.de writes:
  18. >|> >>DO YOU REALLY NEED THIS? 
  19. [...]
  20. >|> You seem to carry your OS around, don't you? During installation I can
  21. >|> live with a large "GENERIC" kernel which has support for all possible devices.
  22. >|> After it has been relocated to the disk (IDE,SCSI or whatever) you can
  23. >|> eliminate the unnecessary devices, and get this "small" kernel.
  24.  
  25. >Yes, but the idea is to have a generic kernel that has a piece of each SCSI
  26. >driver in it (the probe), and loads the rest based on the results of the probe.
  27. >This lets me have an apparently large kernel which is actually a small kernel.
  28. >Thus, like a stripped kernel, we can run in 640K, for instance.  This is important
  29. >for systems like the Amiga, where I have a limited amount of "fast" vs. "chip"
  30. >ram.  It would also allow me to load 100% into the cache on some systems if I
  31. >could get the kernel small enough.  Then I could really haul.
  32.  
  33. The question is what a kernel really is. Even device drivers are IMHO "kernel",
  34. loadable or not. It is quite uninteresting which size all the parts have in
  35. a disk directory. A microkernel of 100K and 10 loaded "value-added" or 
  36. "mandatory" drivers, 100K each, is 1.1MB and needs 1.1MB in memory unless 
  37. you want to do swapping on parts of the kernel which I would regard with 
  38. suspect. You may, however, allocate different parts of the kernel to faster
  39. or slower memory and tune your system (although, I personally think the
  40. Amiga is a hacked hardware with its chip and fast ram).
  41.  
  42. >The main advantage of loadable kernel modules is the ability to reconfigure
  43. >without rebuilding the kernel.  Many people are having problems in that they
  44. >can not install enough to, for instance, recompile the kernel to get a new
  45. >ethernet driver in so thay can remote mount /usr so they can recompile the kernel
  46. >to get a new ethernet driver [ ... reminds me of the anti-cocaine commercial ...].
  47.  
  48. The kernel source subtree is ~ 5 MB, and needs 2-3 MB more to generate. I
  49. think that was an unlucky decision to bundle it into the 40MB src01 file set
  50. which contains the complete source of all the utilities which some people even 
  51. do not know of that they exist at all. In a less busy moment, I think I'll
  52. unpack this part and repack it into the "kernel01" kit and make it available
  53. on the next FTP server (10 meters distance).
  54.  
  55. >|> >Another use would be loadable file systems, also with an initially small
  56. >|> >kernel.
  57. >|> 
  58. >|> Loadable filesystems is a good idea, if you frequently reconfigure your
  59. >|> disk layout. You may certainly have a UFS system, NFS, MFS, CDFS, and 
  60. >|> DOS/FAT FS (the last to be written yet). I would call these the basic 
  61. >|> facilities of the kernel. If you have no network card, not much RAM, no CDROM, 
  62. >|> and/or no DOS partitions, you can live with the UFS only. Do you want to load
  63. >|> them whenever you need them, for instance if you want to run mtools the DOS FS
  64. >|> driver (server?) is loaded on line? Sounds like microkernel stuff such as
  65. >|> MACH.
  66.  
  67. >First off, I've got the DOS/FAT FS I wrote for 0.0 basically up.  8-). 8-).
  68. >Give me 2-3 weeks to clean it up (I have a very specific rewrite of the VFS
  69. >layer in mind, and I want it to be easily convertable to the new interface)
  70. >before I release it.
  71.  
  72. That's good news.
  73.  
  74. [...]
  75. >No, generally, with the exception of ISOFS and possibly DOSFS, I *don't* want to
  76. >"load as needed".  But I do want the ability to run a bunch of machines off the
  77. >same base kernel, with only the applicable device drivers for that hardware
  78. >loaded.
  79.  
  80. This is what I meant with "carrying the OS around." I see a little bit more
  81. convenience for sysops here, but but not very much else. It means you can
  82. throw a number of strange files on a system and let it find the best solution.
  83. I hate this kind of "user friendlyness", not for job security of the sysops, 
  84. but because in the long terms the knowledge necessary not to lose track of
  85. the system will disappear. With the OS/2 I installed on my system just to
  86. see what it does I have already lost the insight almost because everything is
  87. hidden under a "user friendly" surface and every kind of trouble shooting
  88. (for which there is no need: there are no bugs and there are exactly (int)NULL
  89. questions in comp.os.os2.* groups ;-) ;-) ;-) ;-) becomes a tricky or dirty 
  90. hack of the knowing wizards. 
  91.  
  92. >Yes, this sounds like microkernel, but I draw one important distinction:  In most
  93. >cases, the kernel will actually *be* small as opposed to just providing a subset
  94. >of kernel services.  This is much more to my liking, given the meaning of "micro"
  95. >I was taught in my Latin classes.
  96.  
  97. Yes, MIT uses a different dictionary for looking up "micro".
  98.  
  99. >|> >The ability to load system calls buys you, again, a standard kernel with,
  100. >|> >as an example, a kernel implementation of variable granularity locks (with
  101. >|> >intention modes).
  102. >|> 
  103. >|> >There are lots of things which it would be nice to be able to put in the
  104. >|> >kernel, use, and remove.
  105. >|> 
  106. >|> Which system calls do you want to make "loadable"? It is an interesting idea
  107. >|> to add features but it makes the software that rely on it unportable.
  108.  
  109. >The only thing that is "unportable" about it are any device drivers you load.
  110. >Given a uniform underlying interface, everything else would have no problem
  111. >running.  My major peeve with VFS is that it doesn't have a uniform underlying
  112. >interface; only the top side is well defined.
  113.  
  114. >As to system call candidates for being "loadable":
  115.  
  116. >o    Auditing (auditsys)
  117. >o    Quotas (oldquota, quotactl)
  118. >o    Accounting (sysacct)
  119. >o    Async I/O for a threads library (aioread, aiowrite, aiowait, aiocancel)
  120. >o    Real time scheduling (rtschedule)
  121. >o    SysV compatable semaphores (semsys)
  122. >o    SysV compatable message queues (msgsys)
  123. >o    SysV compatable shared memory (shmsys)
  124. >o    386 debug register access (???)
  125. >o    Backward compatability calls (otime, ostime, oalarm, outime, opause,
  126. >    onice, oftime, osetpgrp, otimes, ossig, ovlimit, ovtimes, osetuid,
  127. >    osetgid, ostat, ofstat)
  128. >o    SysV compatable calls (omount, oumount)
  129. >o    Tracing (vtrace)
  130. >o    Grandfathering of wait3
  131. >o    Debugging (debug)
  132. >o    NFS client (async_daemon)
  133. >o    NFS server (nfs_svc, nfs_getfh, exportfs)
  134. >o    RFS (rfssys)
  135. >o    VPIX or a clone thereof (vpixsys)
  136. >o    Vax Unibus (resuba)
  137.  
  138. And why then loadable instead of configurable (by kernel generation)? Some of
  139. them are already excludable by #ifdef's and appear as an option in kernel
  140. config, others will possibly follow in future releases. 
  141.  
  142. Perhaps I was not accurate enough (you unfortunately removed my sarcastic
  143. remark on the "QEMM for UNIX"): The interface you can use for inclusion or 
  144. loading of the above optional features is good for "value-adding" as well.
  145. Anyone has a much easier job to add his own "feature" to the system and
  146. uses this for his own applications, for instance some special 
  147. block read system call which returns a disk block in reversed order
  148. (I know this is a stupid example but there ARE such ill brains) and allocates
  149. a SYScall number for it (lets say 0x12345678 to use unique long numbers in
  150. this interface). Another one uses the same number for the famous "Apple-II
  151. emulator trap" and immediately, we have a conflict. Things like that on
  152. other levels are the daily pain under "free" systems like MSDOS. The simple
  153. example could be solved by a RPC like numbering system, but the more
  154. interesting problems that deal with resource scheduling ("The tape drive is 
  155. mine! No, I was faster!") remain or could come up again from the abyss.
  156.  
  157. Holger
  158.  
  159.  
  160. >                    Terry Lambert
  161. >                    terry_lambert@gateway.novell.com
  162. >                    terry@icarus.weber.edu
  163.  
  164. >---
  165. >Disclaimer:  Any opinions in this posting are my own and not those of
  166. >my present or previous employers.
  167. -- 
  168. |  |   / Holger Veit             | INTERNET: veit@du9ds3.uni-duisburg.de
  169. |__|  /  University of Duisburg  | BITNET: veit%du9ds3.uni-duisburg.de@UNIDO
  170. |  | /   Dept. of Electr. Eng.   | "No, my programs are not BUGGY, these are
  171. |  |/    Inst. f. Dataprocessing |          just unexpected FEATURES"
  172.