home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #18 / NN_1992_18.iso / spool / comp / os / linux / 8100 < prev    next >
Encoding:
Internet Message Format  |  1992-08-12  |  3.9 KB

  1. Path: sparky!uunet!mcsun!sun4nl!orcenl!jhelberg
  2. From: jhelberg@nl.oracle.com (Joost Helberg)
  3. Newsgroups: comp.os.linux
  4. Subject: loadable device drivers
  5. Message-ID: <2659@nlsun1.oracle.nl>
  6. Date: 13 Aug 92 07:05:43 GMT
  7. Organization: Oracle Europe
  8. Lines: 100
  9. X-Newsreader: Tin 1.1 PL3
  10.  
  11. X-Disclaimer: This message was written by an unauthenticated user
  12.               at Oracle Corporation.  The opinions expressed are those
  13.               of the user and not necessarily those of Oracle.
  14.  
  15. If you're interested in the pros of loadable drivers only, go to the
  16. end of this article.
  17. In article <1992Aug12.173012.17552@colorado.edu> you write:
  18. : In article <1992Aug11.203828.11554@crd.ge.com> davidsen@crd.ge.com (bill davidsen) writes:
  19. : >
  20. : >  Just one last thought. Linux has really taken to doing the hard stuff
  21. : >first, like virtual memory. Work is going on right now to look at
  22. : >improving the shared libraries, when most other systems don't even
  23. : >/have/ shared libraries.
  24. : >
  25. : Most AT&T variants do.  No BSD flavor I know of has shared libraries.
  26.  
  27. Next? I thought they had shared libs?
  28.  
  29. : >  It would be really great to have loadable device drivers. More to the
  30. : >point, it would allow people to add devices without generating a new
  31. : >kernel, something I believe most users would like to see. Nice a it is
  32. : >to have source, I lose an evening of use of my system every time I
  33. : >recompile the kernel.
  34. : >
  35. : Loadable device drivers are bad because you need to relocate them 
  36. : at load time.  Loadable device drivers may be impractical - for 
  37.  
  38. Relocation isn't bad, what's your point?
  39.  
  40. : instance, if your disk driver is on the root disk which you can't
  41. : read, you are SOL.  I don't like loadable device drivers - you
  42.  
  43. Of course, there are a number of drivers which will always reside
  44. in core (sticky), but the rest ....
  45.  
  46. : don't really gain anything significant that you don't get with a 
  47. : good config utility.
  48. : It takes me ~45 seconds to add a new SCSI driver into my development 
  49.  
  50. Far too long, and you have to reboot too! i.e. all users have to 
  51. get coffee or tea!
  52.  
  53. : kernel.  I have automatically generated make files and something 
  54. : like the BSD ioconf.c, table.c.  When I change the configuration 
  55. : file, table.c gets recompiled, and nothing but the new files that
  56. : were'nt built before.
  57. [STUFF DELETED]
  58.  
  59. : Assuming you run in kernel space :
  60. : 1.  You will have to allocate more kernel memory.  This is a sloppy operation,
  61.  
  62. You're right, not easy to do.
  63.  
  64. :     because currently everything assumes that kernel memory is 
  65. :     identity mapped.  You may have to swap things arround for 
  66.  
  67. The kernel must be mapped when implementing loadable device drivers (to
  68. get page-faults) so the kernel doesn't need contiguous memory --> less
  69. problems allocating memory.
  70.  
  71. :     other processes just to get a large enough chunk of contigous
  72. :     physical memory in the right place.  Messy.
  73. : 2.  You need to relocate the drivers at run time if you run them in kernel
  74. :     space, writing something like LD to load them.
  75.  
  76. Again, what is the problem here?
  77.  
  78. : Assuming you run in user space :
  79.  
  80. The driver shouldn't run in user space.
  81.  
  82. :
  83. [stuff deleted]
  84. : Get a decent config program, it will accomplish the same thing 
  85. : (except you have to reboot to use the new device driver),
  86. : without all of the negative side effects.
  87.  
  88. Positive effects:
  89. Much of the positive effects are the same as the effects for paging of user-programs.
  90.  
  91. - The kernel will never use more core than necessary. Only text/data really
  92.   used will be in core (that is using LRU algorithms). 
  93. - Updating a driver can be done at runtime shortening the development time
  94.   of driver enhancements.
  95.  
  96. --
  97.    Joost Helberg                                Rijnzathe 6
  98.    jhelberg@oracle.nl                           NL-3454 PV De Meern
  99.    jhelberg@nl.oracle.com                       The Netherlands
  100.  
  101.    Oracle Europe BV                             Product Line Development    
  102.    Phone: +31 3406 94211                        Fax:   +31 3406 65609
  103.