home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / os / research / 1078 < prev    next >
Encoding:
Internet Message Format  |  1992-11-19  |  2.0 KB

  1. Path: sparky!uunet!zaphod.mps.ohio-state.edu!wupost!darwin.sura.net!spool.mu.edu!olivea!hal.com!darkstar.UCSC.EDU!osr
  2. From: welch@parc.xerox.com (Brent Welch)
  3. Newsgroups: comp.os.research
  4. Subject: Re: Microkernel for Real-Time Computing
  5. Message-ID: <1egg77INNi7h@darkstar.UCSC.EDU>
  6. Date: 19 Nov 92 16:43:19 GMT
  7. References: <1e92s7INN8dg@darkstar.UCSC.EDU>
  8. Organization: Xerox PARC
  9. Lines: 39
  10. Approved: comp-os-research@ftp.cse.ucsc.edu
  11. NNTP-Posting-Host: ftp.cse.ucsc.edu
  12. Originator: osr@ftp
  13.  
  14. yk7m@uvacs.cs.Virginia.EDU (Young-Kuk Kim) writes:
  15.  
  16. >Does anybody explain to me why and how a microkernel (e.g., Mach, Chorus)
  17. >can provide a deterministic computing base for real-time applications, 
  18. >while a traditional monolithic kernel cannot?
  19.  
  20. >In other words, my questions are:
  21.  
  22. >1. What are the advantages of microkernel for real-time applications
  23. >over a traditional monolithic kernel, and why?
  24.  
  25. >2. What are the advantages of microkernel approach, comparing to 
  26. >traditional real-time executives? 
  27.  
  28.  
  29. >-- Young-kuk Kim
  30.  
  31. Operating system structure and real time scheduling ought to be
  32. orthogonal issues.  In fact, for example, most versions of Mach
  33. that you'll find in use are not real-time kernels.  For the source
  34. of truth on that, send mail to tokuda@cs.cmu.edu and ask him
  35. what the state of real-time mach is.
  36.  
  37. The key to real time is in the scheduler, and whether or not
  38. a process is pre-emptable when it is executing inside the
  39. protected operating system kernel.  The latest version of SunOS
  40. (Solaris 2.0), for example, has preemptible kernel threads.
  41. Most versions of UNIX however, do not allow a process to be
  42. interrupted when it is executing inside the kernel (not counting
  43. device interrupts).  Another important consideration is how long
  44. it takes to service device interrupts.  Interrupts and pre-emption
  45. usually have to be blocked when servicing the interrupt.  However
  46. you don't want to do full blown TCP protocol handling at this point.
  47. Instead, you have to structure your system so that a thread is
  48. scheduled to do most of the work, even if it is a kernel thread.
  49.  
  50. --
  51.  
  52.     Brent Welch
  53.